-
Notifications
You must be signed in to change notification settings - Fork 12
/
ClickableImageView.m
executable file
·72 lines (58 loc) · 1.17 KB
/
ClickableImageView.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#import "ClickableImageView.h"
@implementation ClickableImageView
- (void) setDelegate:(id)d
{
delegate = d;
}
- (id) delegate
{
return delegate;
}
- (void)scrollWheel:(NSEvent *)theEvent
{
[delegate scrollWheel:theEvent];
}
- (void)rightMouseDown:(NSEvent *)theEvent
{
[delegate rightMouseDown:theEvent];
}
-(void)mouseDown:(NSEvent*) evt
{
[delegate mouseDown:evt];
}
- (void)keyDown:(NSEvent *)theEvent
{
[delegate keyDown:theEvent];
}
- (BOOL)acceptsFirstResponder
{
return YES;
}
- (BOOL)acceptsFirstMouse:(NSEvent *)theEvent
{
return YES;
}
- (BOOL)canBecomeKeyView
{
return YES;
}
// this should accelerate drawing
// http://developer.apple.com/documentation/Performance/Conceptual/Drawing/index.html#//apple_ref/doc/uid/10000151i
- (BOOL)isOpaque
{
return YES;
}
// this should accelerate drawing
// http://developer.apple.com/documentation/Performance/Conceptual/Drawing/index.html#//apple_ref/doc/uid/10000151i
- (BOOL)wantsDefaultClipping
{
// no need to clip drawing
return NO;
}
// added in Color Oracle 1.1.4 for support for retina displays.
- (void)setImage:(NSImage *)image
{
[self setImageScaling: NSScaleProportionally];
[super setImage: image];
}
@end