Developing Cocoa Applications Using MacRuby
このチュートリアルよりさらに手軽っぽいチュートリアルを見つけたのでそっちを試したみた。
Creating our very first Mac application with Ruby, how exciting!
アムステルダムのPhusion.ちゅー会社のblogらしい。本当にこのページにあったとおり、ウィンドウにLabelとButtonはりつけただけのプロジェクトを作って実際に動かしてみました。感動して雷に打たれたのが次の2点。
1,Xcode側で書いたControllerのクラスを、InterfaceBuilder側で「NSObject」として視覚的に挿入してインスタンス化すること
これにはびっくりこきました。(びっくりこく、は北海道弁でしょうか)挿入する、といってもNSObjectのアイコンをInterfaceBuilderのウィンドウにD&Dして、クラスの名前をXcode側のControllerのクラス名にするだけ、なのですが。「え?これでいいの?」という感じ。
2,InterfaceBuilder側の部品(・・・というのかな、LibraryからD&Dするパーツ群)に名前をつけず、Controller側で「attr_accessor」とかで準備した名前と「結びつける」だけでいい。
これも強烈にびっくりでした。右ボタンドラッグで結びつけるだけ部品の名前が勝手に「:my_label」とかになっちゃう。
さらに部品がわから右ボタンドラッグしたら、こんどはController側のイベントとその部品が結びつく、というあたり。
とりあえずこういうインターフェイスは初めてでした。あんまりびっくりして、かつ天啓のように理解できたので、自分でも簡単なプロジェクトを作ってみました。
1,InterfaceBuilder側で、ウィンドウにNSTextViewを貼り付ける。
2,Controllerはこれだけ。
class Controller < NSWindowController attr_accessor :textView def file_open(sender) textView.insertText "MacRuby" end end本当にこれだけ(^^;)。 3,InterfaceBuilderでControllerをD&Dして、Class名をそろえて、TextViewにむけて右ドラッグ。これでTextViewが「textView」という名前と結びついて、Controller側から操作できるようになる。 4,で、今度はメインメニューの「File→Open」からControllerに右ドラッグ。 そうすると「def file_opne(sender)」と対応するようになる、と。 これで実行すると、「file→Open」を実行するたびに、TextViewに「MacRuby」と文字列が挿入されていく。
ふむふむ、無茶苦茶おもしろいじゃないのよ。明日ももう少し遊ぼう。今度はファイルを開くダイアログでファイルを開いて表示、というあたりかな。
こうな感じで遊んでいるので、なかなかrspecの勉強が進まないorz。
0 件のコメント:
コメントを投稿