« 太陽光発電2010年4月の実績 | トップページ | ガーデンミュージアム比叡(1) »

2010年5月 3日 (月)

Mac OS X 用メモ帳ソフトの作成に挑戦(6)

メニューでメモ用紙を他の箱に移動できるようにするためには、2つの事を解決しなければなりません。

まずメニューにメモ箱の一覧を表示するために、メニューの内容を動的に作成しなければなりません。これには、NSMenuDelegate の numberOfItemsInMenu: メソッドでメモ箱の数を返すと、menu:updateItem:atIndex:shouldCancel: メソッドがその個数分呼び出されるので、この中でNSMenuItemを設定するという方法が簡単そうです。メモ箱のArrayは、NSArrayController の arrangedObjects: メソッドで取り出せるので、この情報を使ってメニューを設定します。

つぎに、ニューで選択したメモ箱に、メモを移動させる処理の実装が必要です。これはエンティティPaper の関連であるbox に、移動先のメモ箱のid を設定してやるだけで良いようです。これだけでテーブルは更新され、UNDOもできるようです。

Image_100503_2

ついでにコンテキストメニューでもメモの追加、削除、移動ができるようにしました。これはInterfaceBuilder だけで作業が完了です。上記のメインメニュー用の処理がそのまま使えますので、新たなコーディングは必要ありません。

Image_100503_3

メニューでメモの移動できるようになりましたので、テーブルにメモ箱の欄が要らなくなりました。

Image_100503_1

« 太陽光発電2010年4月の実績 | トップページ | ガーデンミュージアム比叡(1) »

Mac」カテゴリの記事

パソコン・インターネット」カテゴリの記事

プログラミング」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/212936/48255725

この記事へのトラックバック一覧です: Mac OS X 用メモ帳ソフトの作成に挑戦(6):

« 太陽光発電2010年4月の実績 | トップページ | ガーデンミュージアム比叡(1) »

フォト

最近のトラックバック

無料ブログはココログ