Kita - 2ch client for KDE part2
■ このスレッドは過去ログ倉庫に格納されています
0511421
04/11/10 22:23:30ID:Wn46hKqdttp://www.geocities.co.jp/SiliconValley-Bay/7435/patch-1110.txt
・Board クラス廃止
board.cpp, board.h は消してください。
・.kde/share/apps/kita/cache 廃止
スレの情報管理を完全にidxファイルに移しました。その影響で既読数の情報が
一時的に壊れますが、ログ自体が消える訳ではないので実害は無いと思います。
これでKitaThreadInfoクラスはいつでもThreadに統合して廃止できるようになったはず。
具体的には KitaMainWindow::loadCache() と KitaMainWindow::saveCache()
を消して、BoardManager::getThreadList()である板のスレリストを取得する際に、
新設のBoardManager::getThreadInfoFromIdx()を呼び出してその中でidxファイルから
既読数を読みこんでスレ情報のデータベース( Threadクラス )にセットます。ただし毎回
idxファイルを読んでるとオーバーヘッドが大きいのでその板を初めて開いたときだけidxを
読むようにしてます( BoardData::m_readIdx がFALSEの時だけidxを読み込む )。
同様にお気に入りスレの登録関数( FavoriteThreads::processThreadNode() )でも
idxから情報を取得するように変更しています。まとめると
(1) idxにスレ情報を保存する場所(タイミング)
→ DatInfo::slotFinishLoad() で鯖からログを取得直後
ここまで読んだはDatManager::setKokoyonNum()で直接
(2) idxからスレ情報を取得する場所(タイミング)
→BoardManager::getThreadList()である板のスレリストを取得するとき(初回のみ)
BoardManager::getCachedThreadList()でdat落ちログのリストを取得するとき
及びFavoriteThreads::readFromXML()でお気に入りスレを登録するとき
■ このスレッドは過去ログ倉庫に格納されています