2011年5月3日火曜日

Cocoa FileManager 右側のペイン NSMatrix微妙

NSMatrixで1列だけファイルを表示してみた。


左側のOutlineViewで表示するディレクトリが指定されるので、そのなかのファイルとディレクトリの各種情報を収めるクラス、そのクラスをもとに1ファイル分の表示を担当するCellクラス、と作っていって、最後はNSMatrixに [matrixView addRowWithCells:array];で1行ずつ渡している。

NSMatrixの行と列の数の指定がけっこう不自由で、addRowWithCellsでファイルの配列を渡すと、「その行(Row)の中に配列の中のファイルを横に並べていく」という動作をする。しかし横に並べるときは、あらかじめaddColumnで並べる分だけのColumnを作っておかないといけない、ようだ。

もっと柔軟に追加とか削除とかできないと面倒かも、と感じている。ウィンドウのサイズを変えると自動的に並べ替えてくれる、とか、そういうものではなさそうだ。そういう機能がほしい時はNSCollectionViewを使え、ということか。しかしNSCollectionViewはひとつのファイルを表示するのに、NSViewとNSViewControllerを使うという贅沢仕様だし。

やはり自分でNSViewとNSCellを使って地道に作ったほうが、結局は好きなようにできる感じがするなあ。どうしよう。明日以降だなあ。

0 件のコメント:

コメントを投稿