【Cocoa】F-Script【Smalltalk】

このエントリーをはてなブックマークに追加
1名称未設定
F-Script のためのスレです。
質問や面白いインジェクションの発表などにどうぞ。

F-Script
http://www.fscript.org/
F-Script とは
http://macwiki.sourceforge.jp/wiki/index.php/F-Script

気軽に Cocoa と戯れることができます。
Cocoa 初心者にもおすすめです。
2名称未設定:2008/07/08(火) 19:16:48 ID:Xbzcm+ks0
クイックリファレンス (厳密的な意味は考慮していない)

コメント => "hello", 文字列 => 'hello'
配列 => {0, 1, 2}, ブロック => [:arg1 :arg2| |localVal1 localVal2| ...]
(セレクタ) => #hello, リダクション => array \ block
NSMakePoint(x, y) => x<>y
NSMakeRect(x, y, w, h) => x<>y extent:w<>h
if-else => (条件) ifTrue:[...] ifFalse:[...]
while => [条件] whileTrue:[...]
for => 0 to:100 by:5 do:[:i| ...]
foreach => [:e| ...] value:@{1, 2, 3, 4, 5}
3名称未設定:2008/07/08(火) 19:17:25 ID:Xbzcm+ks0
サンプルコード
(ピリオドまで改行しないでください。たぶんコピペは動きます。)

ウィンドウとボタンを作ってみる
== コード 始め ==
window := NSWindow alloc initWithContentRect:(50<>50 extent:400<>400) styleMask:(NSTitledWindowMask+NSClosableWindowMask) backing:NSBackingStoreBuffered defer:NO.
window setTitle:'test'; orderFront:nil.
button := NSButton alloc initWithFrame:(100<>200 extent:90<>30).
button setTitle:'orz'; setBezelStyle:NSRoundedBezelStyle.
window contentView addSubview:button.
300 to:100 by:-1 do:[:i| button setFrameOrigin:(i<>200). window display.].
== コード 終わり ==
4名称未設定:2008/07/09(水) 11:05:25 ID:4xqlwsyT0
へえ、面白いね。ちょっと弄ってみた
F-Script Anywhereが上手く動かないな
5名称未設定:2008/07/09(水) 15:19:10 ID:irPl3q1I0
Leopard になってから、証明書を信頼しないと動かなくなりました。

F-Script\ Anywhere.app/Contents/Resources/Certificate.cer
をキーチェーンアクセスで開いて、証明書を追加します。
F-Script Anywhere を起動してインジェクションしようとすると
パスワードを聞いて来るので、入力します。

キーチェーンの仕様により、上手く行かない場合は一度再起動すると良いそうです。
6名称未設定:2008/07/11(金) 14:00:32 ID:GxZNiGZB0
あ、なるほどthx
これは面白い
7名称未設定:2008/07/13(日) 01:22:41 ID:iD5vJJHB0
ageなきゃ
8名称未設定:2008/07/13(日) 14:22:39 ID:CT3A/8Wk0
誰もいない予感
取り敢えず、簡単なインジェクション

QuickTime Player の前面にあるウィンドウを最前面にする
app := NSApplication sharedApplication.
app mainWindow setLevel:NSStatusWindowLevel.
9名称未設定
ageないからね