ホーム : 実験室 : CocoaTableInCarbon
CocoaTableInCarbon(2008/05/08)
TableDragBindingで実装したNSTableViewの処理を、carbonプログラムから 呼び出す処理をテストしました。 carbonのメインプログラム側でデータとしてCFMutableArrayRefを用意し、それを渡して、結果もCFMutableArrayRefとして受け取ります。
操作:
- 起動すると"carbon window"にワードリストが表示されます。
- [NSTableViewで編集]ボタンをクリックします。 "Cocoa window"が表示され、ワードリストがNSTableView内に表示されます。
- ドラッグして順序を変更したり、ダブルクリックして文字列を変更します。 また追加します。
- 「完了」ボタンをクリックするとウインドウを閉じ、結果を"carbon window" に反映します。
プロジェクトはXcode 2.4以降で扱えます。
ソースプログラムのうち「MyArrayController.m」は TableDragBinding のものと全く同じです。 interface.m に carbon と cocoa の仲を取り持つ処理が入ってい ます。 sharedController が肝でしょうか。これが mycocoa.nib の中の「File's owner」
の実体(インスタンス)と考えてよさそうです。そのつもりでmycocoa.nibの定義を 確認してください。
参考文献:
- Carbon-Cocoa Integration Guide
- CocoaInCarbon (サンプルプロジェクト)
◎ ダウンロード CocoaTableInCarbon.zip(64kB)
(C)Copyright 2008, Yoshiaki Katayanagi.
|