comparison mac/dw.m @ 1235:9327f684c9b8

Attempt at fixing Copy, Cut, Paste, Select All Mac key combos... when there is no Edit menu present.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Mon, 17 Oct 2011 16:15:13 +0000
parents bee6fc8119ec
children 46de4dbe710d
comparison
equal deleted inserted replaced
1234:bee6fc8119ec 1235:9327f684c9b8
1040 } else 1040 } else
1041 { 1041 {
1042 [super keyUp:theEvent]; 1042 [super keyUp:theEvent];
1043 } 1043 }
1044 } 1044 }
1045 -(BOOL)performKeyEquivalent:(NSEvent *)theEvent
1046 {
1047 if(([theEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask) == NSCommandKeyMask)
1048 {
1049 if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"x"])
1050 return [NSApp sendAction:@selector(cut:) to:[[self window] firstResponder] from:self];
1051 else if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"c"])
1052 return [NSApp sendAction:@selector(copy:) to:[[self window] firstResponder] from:self];
1053 else if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"v"])
1054 return [NSApp sendAction:@selector(paste:) to:[[self window] firstResponder] from:self];
1055 else if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"a"])
1056 return [NSApp sendAction:@selector(selectAll:) to:[[self window] firstResponder] from:self];
1057 }
1058 return [super performKeyEquivalent:theEvent];
1059 }
1045 -(void)dealloc { UserData *root = userdata; _remove_userdata(&root, NULL, TRUE); [super dealloc]; } 1060 -(void)dealloc { UserData *root = userdata; _remove_userdata(&root, NULL, TRUE); [super dealloc]; }
1046 @end 1061 @end
1047 1062
1048 /* Subclass for a entryfield password type */ 1063 /* Subclass for a entryfield password type */
1049 @interface DWEntryFieldPassword : NSSecureTextField 1064 @interface DWEntryFieldPassword : NSSecureTextField
1063 -(void)keyUp:(NSEvent *)theEvent 1078 -(void)keyUp:(NSEvent *)theEvent
1064 { 1079 {
1065 if(clickDefault && [[theEvent charactersIgnoringModifiers] characterAtIndex:0] == VK_RETURN) 1080 if(clickDefault && [[theEvent charactersIgnoringModifiers] characterAtIndex:0] == VK_RETURN)
1066 { 1081 {
1067 [[self window] makeFirstResponder:clickDefault]; 1082 [[self window] makeFirstResponder:clickDefault];
1068 } else 1083 }
1084 else
1069 { 1085 {
1070 [super keyUp:theEvent]; 1086 [super keyUp:theEvent];
1071 } 1087 }
1088 }
1089 -(BOOL)performKeyEquivalent:(NSEvent *)theEvent
1090 {
1091 if(([theEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask) == NSCommandKeyMask)
1092 {
1093 if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"x"])
1094 return [NSApp sendAction:@selector(cut:) to:[[self window] firstResponder] from:self];
1095 else if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"c"])
1096 return [NSApp sendAction:@selector(copy:) to:[[self window] firstResponder] from:self];
1097 else if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"v"])
1098 return [NSApp sendAction:@selector(paste:) to:[[self window] firstResponder] from:self];
1099 else if ([[theEvent charactersIgnoringModifiers] isEqualToString:@"a"])
1100 return [NSApp sendAction:@selector(selectAll:) to:[[self window] firstResponder] from:self];
1101 }
1102 return [super performKeyEquivalent:theEvent];
1072 } 1103 }
1073 -(void)dealloc { UserData *root = userdata; _remove_userdata(&root, NULL, TRUE); [super dealloc]; } 1104 -(void)dealloc { UserData *root = userdata; _remove_userdata(&root, NULL, TRUE); [super dealloc]; }
1074 @end 1105 @end
1075 1106
1076 /* Subclass for a Notebook control type */ 1107 /* Subclass for a Notebook control type */