Obj.C

obj.C:NSTreeControllerスタディやり直し

どうも結果が思わしくないので、NSTreeControllerのスタディをやり直しています。

実際は、思わしくないと言うよりか、かなりメチャクチャになってしまったので、以前作ったサンプルを解読し直しています。

それで、次のような構造がわかりました。

NSArrayControllerでは、次のものをBindings Inspectorで定義する。
—Model Key Path: CallFiles (自分で用意するメソッド)

NSTreeControllerでは、次のものをAtribute Inspectorで定義する。
—Children: CallFiles: mmChildrenArray (配列)
—Leaf: CallisLeaf (自分で用意するメソッド)—Class Name: FileNode (自分で用意するクラスメソッド)
—Keys: ①CallMe ②CallFiles (自分で用意するクラスメソッド)

TableColumn-Nameでは、次のものをBindings Inspectorで定義する。
—Bind to: Tree Controller
—Controller Key: arrangedObject (自動で設定される)
—Model Key Path: CallMe (自分で用意するクラスメソッド)

TableColumn-Contentsでは、次のものをBindings Inspectorで定義する。
—Bind to: Tree Controller
—Controller Key: arrangedObject (自動で設定される)
—Model Key Path:   (何も定義しない/これでいいかどうかは不明)

左側がName、右側がContentsになります。スクリーンショット 2014-05-31 22.04.41

 

さて、この勉強を続けるとして、実は、ファイル名あるいはフォルダ名だけを取り出す簡単なメソッドがあることがわかりました。見落としていました。

mmPath = filePath; 
mmName = [[NSFileManager defaultManager] displayNameAtPath:mmPath];

ソースコードは、コメントを入れて、整理してからアップします。