ページ

2009年7月29日水曜日

SimpleCap Hotkey #4 フォーカスが外れたときの処理

このエントリーをブックマークに追加 このエントリーを含むはてなブックマーク

ホットキーを変更モードにした状態で、他のプリファレンス(例えば「範囲選択」や「ビューア」)を選び、その後再び「一般」へ戻るとホットキーが変更モードになったままになっている。



フォーカス(ファーストレスポンダー)が外れた時には変更モードを終了させる必要がある。

ファーストレスポンダーから外れる時、NSControl には resignFirstResponder が投げられる。
ADC - NSResponder Class Reference - resignFirstResponder

これを HotkeyTextField を処理してやればよい。

HotkeyTextField.m

- (BOOL)resignFirstResponder
{
[self redraw];
[self endEdit];
return YES;
}

呼出されたら変更モードを終了させる。