2011年5月27日金曜日

Cocoa NSTreeControllerを調べる

内蔵HDD以外のドライブがマウントされたら、それもちゃんとrootItemにしてNSOutlineViewに表示したい。しかし・・・NSOutlineViewで、rootItemが二つ以上ある場合はどうするの?と調べてみたら全然わからない。

ただ、NSTreeContorollerを使えば実現できることはわかったので、とりあえずそっちを調べてみた。しかしNSTreeControllerもよくわからないクラスだなあ。簡単なサンプルがないかググってみたところ、

Designed Recreations -Cocoa NSTreeController and NSTreeNode

というアーティクルと、ダウンロードできるサンプルが非常にわかりやすかった。サンプルプロジェクトを実行したらこんな感じだった。


ちょっと古いプロジェクトだとビルドできなくてがっくりすることがある。このプロジェクトの場合はTargetを64bitにしてやればビルドできた。

画像でわかるとおり、rootItemがたくさんある。nibでのbindingは、TreeControllerのNodeクラスのnameをOutlineViewにつなげているだけ。

ふむふむ、このコードを参考にして、少し実験してみることにしよう。運動会が終わったら。

0 件のコメント:

コメントを投稿