画面キャプチャツールの開発に着手する。名前は「SimpleCap」。Simple Capture の略。まずはウィンドウキャプチャやタイマーキャプチャなどスタンダードな機能の実装を当面の目標としよう。完成後は公開する予定。なお動作環境は MacOSX 10.5 以上とする。
ツールはウィンドウを持たず、ステータスバーに常駐させて使うタイプにする。そこで最初のステップとしてはステータスバーにアイコンとメニューを表示させることにする。
こんな感じ。
一番左側のカメラ(?)の形をしたアイコンが SimpleCap。
メニューも出る。
ステータスバーの作成には下の情報を参照した。
Cocoaはやっぱり!ステータスバーの巻(PDF)
http://www.big.or.jp/~crane/cocoa/0900_general/ccyp_StatusBar.pdf
ADC - Status Bars(英語)
http://developer.apple.com/documentation/Cocoa/Conceptual/StatusBar/StatusBar.html
上記を見て作れば簡単にできる。
ソース:SimpleCap-1.zip
コードはこれだけ。
AppController.m
- (void)applicationDidFinishLaunching:(NSNotification *)notification
{
NSStatusBar *status_bar = [NSStatusBar systemStatusBar];
_status_item = [status_bar statusItemWithLength:NSVariableStatusItemLength];
[_status_item retain];
[_status_item setTitle:@""];
[_status_item setImage:[NSImage imageNamed:@"icon"]];
[_status_item setAlternateImage:[NSImage imageNamed:@"icon2"]];
[_status_item setHighlightMode:YES];
[_status_item setMenu:_status_menu];
}
アイコン作成には GIMPを使った。
1ドットづつ手で描く。選択時の反転画像も描いておく(icon2.tiff)。
NSStatusItemに登録しておくと選択時にこの画像が使われる。
[_status_item setAlternateImage:[NSImage imageNamed:@"icon2"]];
- - - -
開発が進んだら経過を紹介していく。