1
-
(
void
)writeToPasteboard:(NSPasteboard
*
)pb
2 {
3 [pb declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:self];
4 [pb setString: string forType:NSStringPboardType];
5 }
6
7 - (BOOL)readFromPasteboard:(NSPasteboard * )pb
8 {
9 NSArray * types = [pb types];
10 if ([types containsObject:NSStringPboardType])
11 {
12 NSString * value = [pb stringForType:NSStringPboardType];
13 if ([value length] == 1 )
14 {
15 [self setString:value];
16 return YES;
17 }
18 }
19
20 return NO;
21 }
22
23 - (IBAction)cut:(id)sender
24 {
25 [self copy:sender];
26 [self setString: @"" ];
27 }
28
29 - (IBAction)copy:(id)sender
30 {
31 NSPasteboard * pb = [NSPasteboard generalPasteboard];
32 [self writeToPasteboard:pb];
33 }
34
35 - (IBAction)paste:(id)sender
36 {
37 NSPasteboard * pb = [NSPasteboard generalPasteboard];
38 if ( ! [self readFromPasteboard:pb])
39 {
40 NSBeep();
41 }
42 }
2 {
3 [pb declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:self];
4 [pb setString: string forType:NSStringPboardType];
5 }
6
7 - (BOOL)readFromPasteboard:(NSPasteboard * )pb
8 {
9 NSArray * types = [pb types];
10 if ([types containsObject:NSStringPboardType])
11 {
12 NSString * value = [pb stringForType:NSStringPboardType];
13 if ([value length] == 1 )
14 {
15 [self setString:value];
16 return YES;
17 }
18 }
19
20 return NO;
21 }
22
23 - (IBAction)cut:(id)sender
24 {
25 [self copy:sender];
26 [self setString: @"" ];
27 }
28
29 - (IBAction)copy:(id)sender
30 {
31 NSPasteboard * pb = [NSPasteboard generalPasteboard];
32 [self writeToPasteboard:pb];
33 }
34
35 - (IBAction)paste:(id)sender
36 {
37 NSPasteboard * pb = [NSPasteboard generalPasteboard];
38 if ( ! [self readFromPasteboard:pb])
39 {
40 NSBeep();
41 }
42 }