2011年2月5日土曜日

Macruby・NSMatrix

現在起動中のタスクを取得して、コンテキストメニュー風に表示することはできた。だからメニュー以外の表示方法にも挑戦しようと考えて、NSCollectionViewを試してみたけれどうまくいかなかった。

アイコンを縦一列にViewに並べることくらいできるはずだよな、と調べているうちにNSMatrixというViewがあることを発見。はりきってググったら、やっぱりxcatsan師匠が親切にも(^^;)サンプル付きで解説してくれていた。

で、サンプルのソースをいただいてMacRubyに書き換えていく。書いていく過程で、今までなんとなくわかっていたことが改めて理解できた。同じプロジェクトの中からなら、requireとかしないでも他のclassをnewできるのね。

今回は3つのクラスを書き換えた。NSCellのサブクラス、NSMatrixのサブクラス、そして両方をコントロールする役目のクラス。

しかし・・・NSMatrixのsizeToCellsを呼び出すところでエラーがでる。unrecognized selector sent to classって言われてしまう。うーむ、よくわかんない。NSCellのサブクラスに、理解出来ないセレクターが送りつけられた、と行っているようだけど、なにがどうしてそうなるのかわからない素人の悲しさ。

やっぱり少しObjCの勉強をしようか、と考えている。MacRubyでGUIアプリの開発は、いささか私にはまだ荷が重いのか。cocoaの知識が少ないだけにかなりつらいことがある。(楽しいことも多いけど)せっかくヒレガス本もあるので、明日はObjCの勉強を始めよう。

0 件のコメント:

コメントを投稿