2120 |
struct frame *f; |
struct frame *f; |
2121 |
Lisp_Object arg, oldval; |
Lisp_Object arg, oldval; |
2122 |
{ |
{ |
2123 |
Cursor cursor, nontext_cursor, mode_cursor, cross_cursor; |
Cursor cursor, nontext_cursor, mode_cursor, hand_cursor; |
2124 |
int count; |
int count; |
2125 |
int mask_color; |
int mask_color; |
2126 |
|
|
2183 |
if (!EQ (Qnil, Vx_sensitive_text_pointer_shape)) |
if (!EQ (Qnil, Vx_sensitive_text_pointer_shape)) |
2184 |
{ |
{ |
2185 |
CHECK_NUMBER (Vx_sensitive_text_pointer_shape); |
CHECK_NUMBER (Vx_sensitive_text_pointer_shape); |
2186 |
cross_cursor |
hand_cursor |
2187 |
= XCreateFontCursor (FRAME_W32_DISPLAY (f), |
= XCreateFontCursor (FRAME_W32_DISPLAY (f), |
2188 |
XINT (Vx_sensitive_text_pointer_shape)); |
XINT (Vx_sensitive_text_pointer_shape)); |
2189 |
} |
} |
2190 |
else |
else |
2191 |
cross_cursor = XCreateFontCursor (FRAME_W32_DISPLAY (f), XC_crosshair); |
hand_cursor = XCreateFontCursor (FRAME_W32_DISPLAY (f), XC_crosshair); |
2192 |
|
|
2193 |
if (!NILP (Vx_window_horizontal_drag_shape)) |
if (!NILP (Vx_window_horizontal_drag_shape)) |
2194 |
{ |
{ |
2200 |
else |
else |
2201 |
horizontal_drag_cursor |
horizontal_drag_cursor |
2202 |
= XCreateFontCursor (FRAME_X_DISPLAY (f), XC_sb_h_double_arrow); |
= XCreateFontCursor (FRAME_X_DISPLAY (f), XC_sb_h_double_arrow); |
|
/* TODO: hand_cursor */ |
|
2203 |
|
|
2204 |
/* Check and report errors with the above calls. */ |
/* Check and report errors with the above calls. */ |
2205 |
x_check_errors (FRAME_W32_DISPLAY (f), "can't set cursor shape: %s"); |
x_check_errors (FRAME_W32_DISPLAY (f), "can't set cursor shape: %s"); |
2224 |
&fore_color, &back_color); |
&fore_color, &back_color); |
2225 |
XRecolorCursor (FRAME_W32_DISPLAY (f), mode_cursor, |
XRecolorCursor (FRAME_W32_DISPLAY (f), mode_cursor, |
2226 |
&fore_color, &back_color); |
&fore_color, &back_color); |
2227 |
XRecolorCursor (FRAME_W32_DISPLAY (f), cross_cursor, |
XRecolorCursor (FRAME_W32_DISPLAY (f), hand_cursor, |
2228 |
&fore_color, &back_color); |
&fore_color, &back_color); |
2229 |
XRecolorCursor (FRAME_W32_DISPLAY (f), hourglass_cursor, |
XRecolorCursor (FRAME_W32_DISPLAY (f), hourglass_cursor, |
2230 |
&fore_color, &back_color); |
&fore_color, &back_color); |
|
/* TODO: hand_cursor */ |
|
2231 |
} |
} |
2232 |
|
|
2233 |
if (FRAME_W32_WINDOW (f) != 0) |
if (FRAME_W32_WINDOW (f) != 0) |
2252 |
XFreeCursor (FRAME_W32_DISPLAY (f), f->output_data.w32->modeline_cursor); |
XFreeCursor (FRAME_W32_DISPLAY (f), f->output_data.w32->modeline_cursor); |
2253 |
f->output_data.w32->modeline_cursor = mode_cursor; |
f->output_data.w32->modeline_cursor = mode_cursor; |
2254 |
|
|
2255 |
if (cross_cursor != f->output_data.w32->cross_cursor |
if (hand_cursor != f->output_data.w32->hand_cursor |
2256 |
&& f->output_data.w32->cross_cursor != 0) |
&& f->output_data.w32->hand_cursor != 0) |
2257 |
XFreeCursor (FRAME_W32_DISPLAY (f), f->output_data.w32->cross_cursor); |
XFreeCursor (FRAME_W32_DISPLAY (f), f->output_data.w32->hand_cursor); |
2258 |
f->output_data.w32->cross_cursor = cross_cursor; |
f->output_data.w32->hand_cursor = hand_cursor; |
|
/* TODO: hand_cursor */ |
|
2259 |
|
|
2260 |
XFlush (FRAME_W32_DISPLAY (f)); |
XFlush (FRAME_W32_DISPLAY (f)); |
2261 |
UNBLOCK_INPUT; |
UNBLOCK_INPUT; |
2265 |
} |
} |
2266 |
|
|
2267 |
/* Defined in w32term.c. */ |
/* Defined in w32term.c. */ |
|
void x_update_cursor (struct frame *f, int on_p); |
|
|
|
|
2268 |
void |
void |
2269 |
x_set_cursor_color (f, arg, oldval) |
x_set_cursor_color (f, arg, oldval) |
2270 |
struct frame *f; |
struct frame *f; |
5687 |
f->output_data.w32->text_cursor = w32_load_cursor (IDC_IBEAM); |
f->output_data.w32->text_cursor = w32_load_cursor (IDC_IBEAM); |
5688 |
f->output_data.w32->nontext_cursor = w32_load_cursor (IDC_ARROW); |
f->output_data.w32->nontext_cursor = w32_load_cursor (IDC_ARROW); |
5689 |
f->output_data.w32->modeline_cursor = w32_load_cursor (IDC_ARROW); |
f->output_data.w32->modeline_cursor = w32_load_cursor (IDC_ARROW); |
5690 |
f->output_data.w32->cross_cursor = w32_load_cursor (IDC_CROSS); |
f->output_data.w32->hand_cursor = w32_load_cursor (IDC_HAND); |
5691 |
f->output_data.w32->hourglass_cursor = w32_load_cursor (IDC_WAIT); |
f->output_data.w32->hourglass_cursor = w32_load_cursor (IDC_WAIT); |
5692 |
f->output_data.w32->horizontal_drag_cursor = w32_load_cursor (IDC_SIZEWE); |
f->output_data.w32->horizontal_drag_cursor = w32_load_cursor (IDC_SIZEWE); |
|
f->output_data.w32->hand_cursor = w32_load_cursor (IDC_HAND); |
|
5693 |
|
|
5694 |
/* Add the tool-bar height to the initial frame height so that the |
/* Add the tool-bar height to the initial frame height so that the |
5695 |
user gets a text display area of the size he specified with -g or |
user gets a text display area of the size he specified with -g or |