スペースバーを押してサイズ表示を制御できるようにする。
メンバ変数へフラグを用意する。初期状態は YES(表示)。
@interface RubberBandView : NSView {
:
BOOL _is_display_info;
}
スペースバーが押されたらフラグを反転させる。
- (void)keyDown:(NSEvent*)theEvent
{
switch ([theEvent keyCode]) {
case 49:
// spacebar
[self setDisplayInfo:!_is_display_info];
break;
:
後はセッターと描画制御を加えればできあがり。
- (void)setDisplayInfo:(BOOL)flag
{
_is_display_info = flag;
[self setNeedsDisplayInRect:_rect];
[self setNeedsDisplay:YES];
}
- (void)drawRect:(NSRect)rect {
if (_is_display_info) {
[self drawInformation];
}
:
スペースバーを押すと左上のサイズ数値が消える。もう一度押すと表示される。