RubyCocoa一日目 つづき

次はActionを試してみる。
Action/TargetはSignal/Slotモデルにかなり似ている。というか何か違いがあるのかな?
ActionがSlotに相当。

InterfaceBuilderにて

Classesペイン MyController右クリック「Add Action to MyController」
Action名はreflesh: (コロンは自動的に補われるっぽい)

Instancesペインに変更
今度はUIデザイナ上のRefleshボタンからMyControllerアイコンに向かってCtrlドラッグ。
(「Ctrlドラッグはメッセージの送られる方向」と覚えるらしい。)

XCodeにて

MyController.rbを編集

require 'osx/cocoa'

class MyController < OSX::NSObject
	ib_outlet :textDate
	
	def awakeFromNib
		@textDate.setObjectValue("Hello, World!")
	end
	
	def reflesh(sender)
		@textDate.setObjectValue(OSX::NSCalendarDate.date)
	end
	
end

これで動くはず。