comparison src/gui-x.c @ 2:ac2d302a0011 r19-15b2

Import from CVS: tag r19-15b2
author cvs
date Mon, 13 Aug 2007 08:46:35 +0200
parents 376386a54a3c
children 9ee227acff29
comparison
equal deleted inserted replaced
1:c0c6a60d29db 2:ac2d302a0011
356 int allow_text_field_p, int no_keys_p) 356 int allow_text_field_p, int no_keys_p)
357 { 357 {
358 /* !!#### This function has not been Mule-ized */ 358 /* !!#### This function has not been Mule-ized */
359 /* This function cannot GC because gc_currently_forbidden is set when 359 /* This function cannot GC because gc_currently_forbidden is set when
360 it's called */ 360 it's called */
361 Lisp_Object name = Qnil; 361 Lisp_Object name = Qnil;
362 Lisp_Object callback = Qnil; 362 Lisp_Object callback = Qnil;
363 Lisp_Object suffix = Qnil; 363 Lisp_Object suffix = Qnil;
364 Lisp_Object active_p = Qt; 364 Lisp_Object active_p = Qt;
365 Lisp_Object include_p = Qt; 365 Lisp_Object include_p = Qt;
366 Lisp_Object selected_p = Qnil; 366 Lisp_Object selected_p = Qnil;
367 Lisp_Object keys = Qnil; 367 Lisp_Object keys = Qnil;
368 Lisp_Object style = Qnil; 368 Lisp_Object style = Qnil;
369 Lisp_Object config_tag = Qnil; 369 Lisp_Object config_tag = Qnil;
370 int length = vector_length (XVECTOR (desc)); 370 int length = vector_length (XVECTOR (desc));
371 Lisp_Object *contents = vector_data (XVECTOR (desc)); 371 Lisp_Object *contents = vector_data (XVECTOR (desc));
372 int plist_p; 372 int plist_p;
373 int selected_spec = 0, included_spec = 0; 373 int selected_spec = 0, included_spec = 0;
407 Lisp_Object key = contents [i++]; 407 Lisp_Object key = contents [i++];
408 Lisp_Object val = contents [i++]; 408 Lisp_Object val = contents [i++];
409 if (!KEYWORDP (key)) 409 if (!KEYWORDP (key))
410 signal_simple_error_2 ("not a keyword", key, desc); 410 signal_simple_error_2 ("not a keyword", key, desc);
411 411
412 if (EQ (key, Q_active)) active_p = val; 412 if (EQ (key, Q_active)) active_p = val;
413 else if (EQ (key, Q_suffix)) suffix = val; 413 else if (EQ (key, Q_suffix)) suffix = val;
414 else if (EQ (key, Q_keys)) keys = val; 414 else if (EQ (key, Q_keys)) keys = val;
415 else if (EQ (key, Q_style)) style = val; 415 else if (EQ (key, Q_style)) style = val;
416 else if (EQ (key, Q_selected)) selected_p = val, selected_spec = 1; 416 else if (EQ (key, Q_selected)) selected_p = val, selected_spec = 1;
417 else if (EQ (key, Q_included)) include_p = val, included_spec = 1; 417 else if (EQ (key, Q_included)) include_p = val, included_spec = 1;
418 else if (EQ (key, Q_config)) config_tag = val; 418 else if (EQ (key, Q_config)) config_tag = val;
419 else if (EQ (key, Q_filter)) 419 else if (EQ (key, Q_filter))
420 signal_simple_error(":filter keyword not permitted on leaf nodes", desc); 420 signal_simple_error(":filter keyword not permitted on leaf nodes", desc);
421 else 421 else
422 signal_simple_error_2 ("unknown menu item keyword", key, desc); 422 signal_simple_error_2 ("unknown menu item keyword", key, desc);
437 437
438 if (!NILP (suffix)) 438 if (!NILP (suffix))
439 { 439 {
440 CONST char *const_bogosity; 440 CONST char *const_bogosity;
441 CHECK_STRING (suffix); 441 CHECK_STRING (suffix);
442 GET_C_STRING_CTEXT_DATA_ALLOCA (suffix, const_bogosity); 442 GET_C_STRING_FILENAME_DATA_ALLOCA (suffix, const_bogosity);
443 wv->value = (char *) const_bogosity; 443 wv->value = (char *) const_bogosity;
444 wv->value = xstrdup (wv->value); 444 wv->value = xstrdup (wv->value);
445 } 445 }
446 446
447 wv_set_evalable_slot (wv->enabled, active_p); 447 wv_set_evalable_slot (wv->enabled, active_p);