★本日までの進捗報告
ちょっと間があいたが一応ちまちまと進んでいる。
- PreferenceのカラーウェルのActionでテキスト、背景色変更。(前回の予定1)
- Preferenceの設定を反映させるため、インスタンス変数名やらメソッド名やら、インスタンス変数の扱いの統一やらなど全体のソースの見直し。(前回の予定2)
- チャンネルへの自動入室。(今のところ強制的に自動入室なので、後ほど選択できるように変更)
- Preferenceウィンドウに文字エンコード(ISO2022JPとUTF-8)を選択するNSPopupButtonの追加。
- アプリの終了でIRCサーバーにQUITコマンド送信処理追加。
2は、今までCocoa流になってなかった(REALbasic流ともいう)ので整理。あとインスタンス変数の操作も勘違いしていたところがあったので統一。
3は、処理としてはENDOFMOTDの後にJOINを送信するだけなのでたいしたことはない。(ERR_NOMOTDのほうにも同じ処理を入れとかなきゃならんのだがとりあえず正常系だけ)
4は、UTF-8対応しておけばUstreamで使えるかなあと思って。はまりどころは、NSPopupButtonのバインドで最初 Selected Index でやってみたら落ちた。ググってみたら Selected Value なら大丈夫そうだったのでやってみたらとりあえずできた。(保持データとか、判定処理とか無駄になりそうだが…まあ動けばいいかと)
5は、最初QuitメニューにAction付けたら終了しなくなった。(笑) 調べてみたらMac♪Mac♪Mac♪ – 第12回 Cocoaプログラミング(MVC)に、「// アプリケーションが終了する前のイベント – (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication *)sender;」というのがあったので、よしよしとコピペして処理追加。後でログの保存処理とか終了キャンセルとかもここでできそうである。
だが、QUIT送信はいいんだが、その後のStreamのクローズ処理までいかずに終了してしまっているようだ。本来ならクローズ処理を待ってから終了したいところなんだが待ちかたがわからないのでそのまま放置。まあそのうちログの保存確認ダイアログとか出すようになったらその処理の間にクローズすんじゃないかと思ってたりもする。
★明日の予定
- エンコードのポップアップの設定値をメッセージの送受信処理に組み込み。気が向いたらUstreamに接続して遊んで(試して)みる。
- NSTableViewにチャンネルのメンバーを表示する処理(追加、削除)を追加したいところだが、まだやりかたがよくわかっていないのでもうちょっと調べもの。










