おちゅ~しゃはGTK+ベースの2chブラウザです。
基本部分はC/C++言語でマルチスレッドな実装なので、それなりに高速に動作します。
機能追加などのご要望にも可能な限りお応えしていきたいと思います。
また落ちないことを重要視しております。
lib/ochusha_config.cがerrno.hがインクルードされていないため、ソースをいじらない限りビルドできません。
* libochushaの大改造がほぼ終了。
* 0.4.2.1まで使っていた構造体の内の大部分をGLibのタイプシステムを使うように変更した。
具体的には、
BBSThread -> OchushaBBSThread
BBSTable -> OchushaBBSTable
BoardCategory -> OchushaBoardCategory
BulletinBoard -> OchushaBulletinBoard
のように、名前も含めて完全に置き換えた。
また、以前からGLibのタイプシステムを使っていたAsyncBufferも 命名規則統一のために
AyncBuffer -> OchushaAsyncBuffer
と改名した。
* 2ch依存部分を実装したOchushaBBSThread、OchushaBulletinBoardのサブクラスであるOchushaThread2chとOchushaBoard2chを追加し、
これまでおちゅ〜しゃ(仮)のGUI制御部分を含む各所に埋まっていた2ch依存部分を可能な限り取り除いた(まだ少し残っているが追々直す予定)。
* boardlist.xmlとthreadlist.xmlのI/Oの機能を、それらに関係深いオブジェクトのメソッドとして再実装した。具体的には、 OchushaBBSTable
がboardlist.xmlの読み書きを担当し、 OchushaBulletinBoardが
threadlist.xmlの読み書きを担当する。また、以前はコールバック関数
を明示的に指定するAPIだったが、OchushaBulletinBoardや OchushaBBSThreadがサブクラス化されるタイプシステムを導入したので、XMLファイルの拡張もシグナルベースで行うようにした。
* 以上の変更をGUI関連部分にも反映させ、不要になった古い実装を全て捨てた。
* まっさらの環境で初めて実行したときの動作が微妙に予定外だったので修正した。