aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorStefan Monnier2008-07-16 20:34:57 +0000
committerStefan Monnier2008-07-16 20:34:57 +0000
commit6882361b1ab140eb5c4f433b304fa08116badcd1 (patch)
treeaa37d252df53742f95da13c69986a0bc4c0c1686 /src
parentebe680424766ed6a27f1e4b98515c5e52187fe5f (diff)
downloademacs-6882361b1ab140eb5c4f433b304fa08116badcd1.tar.gz
emacs-6882361b1ab140eb5c4f433b304fa08116badcd1.zip
(lisp_to_mod): Use parse_solitary_modifier instead.
(ns_lisp_to_color): Don't mess with internal Lisp data fields. (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts): Use SDATA.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/nsterm.m49
2 files changed, 31 insertions, 23 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 8dffef41654..6351e0168f7 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,10 @@
12008-07-16 Stefan Monnier <monnier@iro.umontreal.ca> 12008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
2 2
3 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
4 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
5 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
6 Use SDATA.
7
3 * keymap.c: Remove all NS-specific code. 8 * keymap.c: Remove all NS-specific code.
4 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars. 9 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
5 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to 10 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
diff --git a/src/nsterm.m b/src/nsterm.m
index c12e3422adf..81506be6517 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -143,7 +143,6 @@ static Lisp_Object Qmodifier_value;
143/*PENDING: unsure why these defined in term files, anyway we need in keymap.c */ 143/*PENDING: unsure why these defined in term files, anyway we need in keymap.c */
144Lisp_Object Qalt, Qcontrol, Qhyper, Qmeta, Qsuper; 144Lisp_Object Qalt, Qcontrol, Qhyper, Qmeta, Qsuper;
145extern Lisp_Object Qcursor_color, Qcursor_type, Qns; 145extern Lisp_Object Qcursor_color, Qcursor_type, Qns;
146extern int lisp_to_mod (Lisp_Object lmod);
147 146
148 147
149EmacsPrefsController *prefsController; 148EmacsPrefsController *prefsController;
@@ -255,15 +254,15 @@ static BOOL inNsSelect = 0;
255 ((([e modifierFlags] & NSHelpKeyMask) ? \ 254 ((([e modifierFlags] & NSHelpKeyMask) ? \
256 hyper_modifier : 0) \ 255 hyper_modifier : 0) \
257 | (([e modifierFlags] & NSAlternateKeyMask) ? \ 256 | (([e modifierFlags] & NSAlternateKeyMask) ? \
258 lisp_to_mod (ns_alternate_modifier) : 0) \ 257 parse_solitary_modifier (ns_alternate_modifier) : 0) \
259 | (([e modifierFlags] & NSShiftKeyMask) ? \ 258 | (([e modifierFlags] & NSShiftKeyMask) ? \
260 shift_modifier : 0) \ 259 shift_modifier : 0) \
261 | (([e modifierFlags] & NSControlKeyMask) ? \ 260 | (([e modifierFlags] & NSControlKeyMask) ? \
262 lisp_to_mod (ns_control_modifier) : 0) \ 261 parse_solitary_modifier (ns_control_modifier) : 0) \
263 | (([e modifierFlags] & NS_FUNCTION_KEY_MASK) ? \ 262 | (([e modifierFlags] & NS_FUNCTION_KEY_MASK) ? \
264 lisp_to_mod (ns_function_modifier) : 0) \ 263 parse_solitary_modifier (ns_function_modifier) : 0) \
265 | (([e modifierFlags] & NSCommandKeyMask) ? \ 264 | (([e modifierFlags] & NSCommandKeyMask) ? \
266 lisp_to_mod (ns_command_modifier):0)) 265 parse_solitary_modifier (ns_command_modifier):0))
267 266
268#define EV_UDMODIFIERS(e) \ 267#define EV_UDMODIFIERS(e) \
269 ((([e type] == NSLeftMouseDown) ? down_modifier : 0) \ 268 ((([e type] == NSLeftMouseDown) ? down_modifier : 0) \
@@ -1513,10 +1512,10 @@ ns_lisp_to_color (Lisp_Object color, NSColor **col)
1513 -------------------------------------------------------------------------- */ 1512 -------------------------------------------------------------------------- */
1514{ 1513{
1515 NSTRACE (ns_lisp_to_color); 1514 NSTRACE (ns_lisp_to_color);
1516 if (XTYPE (color) == Lisp_String) 1515 if (STRINGP (color))
1517 return ns_get_color (XSTRING (color)->data, col); 1516 return ns_get_color (SDATA (color), col);
1518 else if (XTYPE (color) == Lisp_Symbol) 1517 else if (SYMBOLP (color))
1519 return ns_get_color (XSTRING (XSYMBOL (color)->xname)->data, col); 1518 return ns_get_color (SDATA (SYMBOL_NAME (color)), col);
1520 return 1; 1519 return 1;
1521} 1520}
1522 1521
@@ -3848,9 +3847,9 @@ handling_signal = 0;
3848 3847
3849 cl = [[NSColorList alloc] 3848 cl = [[NSColorList alloc]
3850 initWithName: @"Emacs" 3849 initWithName: @"Emacs"
3851 fromFile: [NSString stringWithCString: XSTRING (tem)->data]]; 3850 fromFile: [NSString stringWithCString: SDATA (tem)]];
3852 if (cl ==nil) 3851 if (cl ==nil)
3853 fatal ("Could not find %s.\n", XSTRING (tem1)->data); 3852 fatal ("Could not find %s.\n", SDATA (tem1));
3854 [cl writeToFile: nil]; 3853 [cl writeToFile: nil];
3855 } 3854 }
3856 } 3855 }
@@ -3938,7 +3937,7 @@ ns_term_shutdown (int sig)
3938{ 3937{
3939 /* code not reached in emacs.c after this is called by shut_down_emacs: */ 3938 /* code not reached in emacs.c after this is called by shut_down_emacs: */
3940 if (STRINGP (Vauto_save_list_file_name)) 3939 if (STRINGP (Vauto_save_list_file_name))
3941 unlink (XSTRING (Vauto_save_list_file_name)->data); 3940 unlink (SDATA (Vauto_save_list_file_name));
3942 3941
3943 ns_shutdown_properly = YES; 3942 ns_shutdown_properly = YES;
3944 [NSApp terminate: NSApp]; 3943 [NSApp terminate: NSApp];
@@ -4552,7 +4551,7 @@ extern void update_window_cursor (struct window *w, int on);
4552 4551
4553 if (flags & NSCommandKeyMask) 4552 if (flags & NSCommandKeyMask)
4554 { 4553 {
4555 emacs_event->modifiers |= lisp_to_mod (ns_command_modifier); 4554 emacs_event->modifiers |= parse_solitary_modifier (ns_command_modifier);
4556 /* if super (default), take input manager's word so things like 4555 /* if super (default), take input manager's word so things like
4557 dvorak / qwerty layout work */ 4556 dvorak / qwerty layout work */
4558 if (EQ (ns_command_modifier, Qsuper) 4557 if (EQ (ns_command_modifier, Qsuper)
@@ -4586,10 +4585,10 @@ extern void update_window_cursor (struct window *w, int on);
4586 } 4585 }
4587 4586
4588 if (flags & NSControlKeyMask) 4587 if (flags & NSControlKeyMask)
4589 emacs_event->modifiers |= lisp_to_mod (ns_control_modifier); 4588 emacs_event->modifiers |= parse_solitary_modifier (ns_control_modifier);
4590 4589
4591 if (flags & NS_FUNCTION_KEY_MASK && !fnKeysym) 4590 if (flags & NS_FUNCTION_KEY_MASK && !fnKeysym)
4592 emacs_event->modifiers |= lisp_to_mod (ns_function_modifier); 4591 emacs_event->modifiers |= parse_solitary_modifier (ns_function_modifier);
4593 4592
4594 if (flags & NSAlternateKeyMask) /* default = meta */ 4593 if (flags & NSAlternateKeyMask) /* default = meta */
4595 { 4594 {
@@ -4602,7 +4601,7 @@ extern void update_window_cursor (struct window *w, int on);
4602 emacs_event->modifiers = 0; 4601 emacs_event->modifiers = 0;
4603 } 4602 }
4604 else 4603 else
4605 emacs_event->modifiers |= lisp_to_mod (ns_alternate_modifier); 4604 emacs_event->modifiers |= parse_solitary_modifier (ns_alternate_modifier);
4606 } 4605 }
4607 4606
4608/*fprintf (stderr,"code =%x\tfnKey =%x\tflags = %x\tmods = %x\n",code,fnKeysym,flags,emacs_event->modifiers); */ 4607/*fprintf (stderr,"code =%x\tfnKey =%x\tflags = %x\tmods = %x\n",code,fnKeysym,flags,emacs_event->modifiers); */
@@ -5223,7 +5222,7 @@ if (NS_KEYLOG) NSLog (@"attributedSubstringFromRange request");
5223 5222
5224 tem = f->name; 5223 tem = f->name;
5225 name = [NSString stringWithUTF8String: 5224 name = [NSString stringWithUTF8String:
5226 NILP (tem) ? (unsigned char *)"Emacs" : XSTRING (tem)->data]; 5225 NILP (tem) ? (unsigned char *)"Emacs" : SDATA (tem)];
5227 [win setTitle: name]; 5226 [win setTitle: name];
5228 5227
5229 /* toolbar support */ 5228 /* toolbar support */
@@ -5242,7 +5241,7 @@ if (NS_KEYLOG) NSLog (@"attributedSubstringFromRange request");
5242 tem = f->icon_name; 5241 tem = f->icon_name;
5243 if (!NILP (tem)) 5242 if (!NILP (tem))
5244 [win setMiniwindowTitle: 5243 [win setMiniwindowTitle:
5245 [NSString stringWithUTF8String: XSTRING (tem)->data]]; 5244 [NSString stringWithUTF8String: SDATA (tem)]];
5246 5245
5247 { 5246 {
5248 NSScreen *screen = [win screen]; 5247 NSScreen *screen = [win screen];
@@ -6149,11 +6148,15 @@ static void selectItemWithTag (NSPopUpButton *popup, int tag)
6149 [cursorTypeMatrix selectCellWithTag: (cursorType == filled_box ? 1 : 6148 [cursorTypeMatrix selectCellWithTag: (cursorType == filled_box ? 1 :
6150 (cursorType == bar ? 2 : 6149 (cursorType == bar ? 2 :
6151 (cursorType == underscore ? 3 : 4)))]; 6150 (cursorType == underscore ? 3 : 4)))];
6152 selectItemWithTag (alternateModMenu, lisp_to_mod (ns_alternate_modifier)); 6151 selectItemWithTag (alternateModMenu,
6153 selectItemWithTag (commandModMenu, lisp_to_mod (ns_command_modifier)); 6152 parse_solitary_modifier (ns_alternate_modifier));
6153 selectItemWithTag (commandModMenu,
6154 parse_solitary_modifier (ns_command_modifier));
6154#ifdef NS_IMPL_COCOA 6155#ifdef NS_IMPL_COCOA
6155 selectItemWithTag (controlModMenu, lisp_to_mod (ns_control_modifier)); 6156 selectItemWithTag (controlModMenu,
6156 selectItemWithTag (functionModMenu, lisp_to_mod (ns_function_modifier)); 6157 parse_solitary_modifier (ns_control_modifier));
6158 selectItemWithTag (functionModMenu,
6159 parse_solitary_modifier (ns_function_modifier));
6157 [smoothFontsCheck setState: ns_antialias_text ? YES : NO]; 6160 [smoothFontsCheck setState: ns_antialias_text ? YES : NO];
6158 [useQuickdrawCheck setState: ns_use_qd_smoothing ? YES : NO]; 6161 [useQuickdrawCheck setState: ns_use_qd_smoothing ? YES : NO];
6159 [useSysHiliteCheck setState: prevUseHighlightColor ? YES : NO]; 6162 [useSysHiliteCheck setState: prevUseHighlightColor ? YES : NO];
@@ -6372,7 +6375,7 @@ ns_list_fonts (FRAME_PTR f, Lisp_Object pattern, int size, int maxnames)
6372 NSTRACE (ns_list_fonts); 6375 NSTRACE (ns_list_fonts);
6373 6376
6374 CHECK_STRING (pattern); 6377 CHECK_STRING (pattern);
6375 patt = XSTRING (pattern)->data; 6378 patt = SDATA (pattern);
6376 6379
6377#if 0 6380#if 0
6378/* temporary: for font_backend, we use fontsets, and when these are defined, 6381/* temporary: for font_backend, we use fontsets, and when these are defined,