2613 |
#endif /* not USE_GTK */ |
#endif /* not USE_GTK */ |
2614 |
#endif /* not USE_X_TOOLKIT */ |
#endif /* not USE_X_TOOLKIT */ |
2615 |
|
|
2616 |
|
/* Verify that the icon position args for this window are valid. */ |
2617 |
|
|
2618 |
|
static void |
2619 |
|
x_icon_verify (f, parms) |
2620 |
|
struct frame *f; |
2621 |
|
Lisp_Object parms; |
2622 |
|
{ |
2623 |
|
Lisp_Object icon_x, icon_y; |
2624 |
|
|
2625 |
|
/* Set the position of the icon. Note that twm groups all |
2626 |
|
icons in an icon window. */ |
2627 |
|
icon_x = x_frame_get_and_record_arg (f, parms, Qicon_left, 0, 0, RES_TYPE_NUMBER); |
2628 |
|
icon_y = x_frame_get_and_record_arg (f, parms, Qicon_top, 0, 0, RES_TYPE_NUMBER); |
2629 |
|
if (!EQ (icon_x, Qunbound) && !EQ (icon_y, Qunbound)) |
2630 |
|
{ |
2631 |
|
CHECK_NUMBER (icon_x); |
2632 |
|
CHECK_NUMBER (icon_y); |
2633 |
|
} |
2634 |
|
else if (!EQ (icon_x, Qunbound) || !EQ (icon_y, Qunbound)) |
2635 |
|
error ("Both left and top icon corners of icon must be specified"); |
2636 |
|
} |
2637 |
|
|
2638 |
/* Handle the icon stuff for this window. Perhaps later we might |
/* Handle the icon stuff for this window. Perhaps later we might |
2639 |
want an x_set_icon_position which can be called interactively as |
want an x_set_icon_position which can be called interactively as |
2640 |
well. */ |
well. */ |
3123 |
tem = x_get_arg (dpyinfo, parms, Qunsplittable, 0, 0, RES_TYPE_BOOLEAN); |
tem = x_get_arg (dpyinfo, parms, Qunsplittable, 0, 0, RES_TYPE_BOOLEAN); |
3124 |
f->no_split = minibuffer_only || EQ (tem, Qt); |
f->no_split = minibuffer_only || EQ (tem, Qt); |
3125 |
|
|
3126 |
|
x_icon_verify (f, parms); |
3127 |
|
|
3128 |
/* Create the X widget or window. */ |
/* Create the X widget or window. */ |
3129 |
#ifdef USE_X_TOOLKIT |
#ifdef USE_X_TOOLKIT |
3130 |
x_window (f, window_prompting, minibuffer_only); |
x_window (f, window_prompting, minibuffer_only); |