Mercurial > hg > xemacs-beta
comparison src/window.h @ 272:c5d627a313b1 r21-0b34
Import from CVS: tag r21-0b34
author | cvs |
---|---|
date | Mon, 13 Aug 2007 10:28:48 +0200 |
parents | 65c19d2020f7 |
children | c42ec1d1cded |
comparison
equal
deleted
inserted
replaced
271:c7b7086b0a39 | 272:c5d627a313b1 |
---|---|
295 #define WINDOWP(x) RECORDP (x, window) | 295 #define WINDOWP(x) RECORDP (x, window) |
296 #define GC_WINDOWP(x) GC_RECORDP (x, window) | 296 #define GC_WINDOWP(x) GC_RECORDP (x, window) |
297 #define CHECK_WINDOW(x) CHECK_RECORD (x, window) | 297 #define CHECK_WINDOW(x) CHECK_RECORD (x, window) |
298 #define CONCHECK_WINDOW(x) CONCHECK_RECORD (x, window) | 298 #define CONCHECK_WINDOW(x) CONCHECK_RECORD (x, window) |
299 | 299 |
300 extern Lisp_Object Qwindow_live_p; | |
301 | |
302 #define WINDOW_LIVE_P(x) (!(x)->dead) | 300 #define WINDOW_LIVE_P(x) (!(x)->dead) |
303 #define CHECK_LIVE_WINDOW(x) do { \ | 301 #define CHECK_LIVE_WINDOW(x) do { \ |
304 CHECK_WINDOW (x); \ | 302 CHECK_WINDOW (x); \ |
305 if (!WINDOW_LIVE_P (XWINDOW (x))) \ | 303 if (!WINDOW_LIVE_P (XWINDOW (x))) \ |
306 dead_wrong_type_argument (Qwindow_live_p, (x)); \ | 304 dead_wrong_type_argument (Qwindow_live_p, (x)); \ |
310 if (!WINDOW_LIVE_P (XWINDOW (x))) \ | 308 if (!WINDOW_LIVE_P (XWINDOW (x))) \ |
311 x = wrong_type_argument (Qwindow_live_p, (x)); \ | 309 x = wrong_type_argument (Qwindow_live_p, (x)); \ |
312 } while (0) | 310 } while (0) |
313 | 311 |
314 /* 1 if W is a minibuffer window. */ | 312 /* 1 if W is a minibuffer window. */ |
315 #define MINI_WINDOW_P(W) (!EQ ((W)->mini_p, Qnil)) | 313 #define MINI_WINDOW_P(W) (!NILP ((W)->mini_p)) |
316 | 314 |
317 /* 1 if we are dealing with a parentless window (this includes the | 315 /* 1 if we are dealing with a parentless window (this includes the |
318 root window on a frame and the minibuffer window; both of these | 316 root window on a frame and the minibuffer window; both of these |
319 are siblings). */ | 317 are siblings). */ |
320 #define TOP_LEVEL_WINDOW_P(w) NILP ((w)->parent) | 318 #define TOP_LEVEL_WINDOW_P(w) NILP ((w)->parent) |
321 | 319 |
322 /* Set all redisplay flags indicating a window has changed */ | 320 /* Set all redisplay flags indicating a window has changed */ |
323 #define MARK_WINDOWS_CHANGED(w) do { \ | 321 #define MARK_WINDOWS_CHANGED(w) do { \ |
324 (w)->windows_changed = 1; \ | 322 (w)->windows_changed = 1; \ |
325 if (!NILP (w->frame)) \ | 323 if (!NILP (w->frame)) \ |
326 MARK_FRAME_WINDOWS_CHANGED (XFRAME (w->frame)); \ | 324 { \ |
325 struct frame *mwc_frame = XFRAME (w->frame); \ | |
326 MARK_FRAME_WINDOWS_CHANGED (mwc_frame); \ | |
327 } \ | |
327 else \ | 328 else \ |
328 windows_changed = 1; \ | 329 windows_changed = 1; \ |
329 } while (0) | 330 } while (0) |
330 | 331 |
331 #define WINDOW_TTY_P(w) FRAME_TTY_P (XFRAME ((w)->frame)) | 332 #define WINDOW_TTY_P(w) FRAME_TTY_P (XFRAME ((w)->frame)) |
332 #define WINDOW_X_P(w) FRAME_X_P (XFRAME ((w)->frame)) | 333 #define WINDOW_X_P(w) FRAME_X_P (XFRAME ((w)->frame)) |
333 #define WINDOW_NS_P(w) FRAME_NS_P (XFRAME ((w)->frame)) | 334 #define WINDOW_NS_P(w) FRAME_NS_P (XFRAME ((w)->frame)) |
334 #define WINDOW_WIN_P(w) FRAME_WIN_P (XFRAME ((w)->frame)) | 335 #define WINDOW_WIN_P(w) FRAME_WIN_P (XFRAME ((w)->frame)) |
335 | 336 |
336 DECLARE_LRECORD (window_configuration, struct window_config); | 337 DECLARE_LRECORD (window_configuration, struct window_config); |
338 | |
339 EXFUN (Fget_buffer_window, 3); | |
340 EXFUN (Fmove_to_window_line, 2); | |
341 EXFUN (Frecenter, 2); | |
342 EXFUN (Freplace_buffer_in_windows, 1); | |
343 EXFUN (Fselect_window, 1); | |
344 EXFUN (Fselected_window, 1); | |
345 EXFUN (Fset_window_buffer, 2); | |
346 EXFUN (Fset_window_hscroll, 2); | |
347 EXFUN (Fset_window_point, 2); | |
348 EXFUN (Fset_window_start, 3); | |
349 EXFUN (Fwindow_buffer, 1); | |
350 EXFUN (Fwindow_highest_p, 1); | |
351 EXFUN (Fwindow_point, 1); | |
352 EXFUN (Fwindow_start, 1); | |
337 | 353 |
338 /* The minibuffer window of the selected frame. | 354 /* The minibuffer window of the selected frame. |
339 Note that you cannot test for minibufferness of an arbitrary window | 355 Note that you cannot test for minibufferness of an arbitrary window |
340 by comparing against this; but you can test for minibufferness of | 356 by comparing against this; but you can test for minibufferness of |
341 the selected window or of any window that is displayed. */ | 357 the selected window or of any window that is displayed. */ |
342 extern Lisp_Object minibuf_window; | 358 extern Lisp_Object minibuf_window; |
343 | 359 |
344 /* Non-nil => window to for C-M-v to scroll | |
345 when the minibuffer is selected. */ | |
346 extern Lisp_Object Vminibuf_scroll_window; | |
347 | |
348 /* Prompt to display in front of the minibuffer contents, or nil */ | 360 /* Prompt to display in front of the minibuffer contents, or nil */ |
349 extern Lisp_Object Vminibuf_prompt; | 361 extern Lisp_Object Vminibuf_prompt; |
350 /* Prompt to display in front of the minibuffer prompt, or nil */ | 362 /* Prompt to display in front of the minibuffer prompt, or nil */ |
351 extern Lisp_Object Vminibuf_preprompt; | 363 extern Lisp_Object Vminibuf_preprompt; |
352 | |
353 /* Depth in minibuffer invocations */ | |
354 extern int minibuf_level; | |
355 | 364 |
356 Lisp_Object allocate_window (void); | 365 Lisp_Object allocate_window (void); |
357 int window_char_width (struct window *, int include_margins_p); | 366 int window_char_width (struct window *, int include_margins_p); |
358 int window_char_height (struct window *, int include_gutters_p); | 367 int window_char_height (struct window *, int include_gutters_p); |
359 int window_displayed_height (struct window *); | 368 int window_displayed_height (struct window *); |
381 Error_behavior errb); | 390 Error_behavior errb); |
382 int buffer_window_count (struct buffer *b, struct frame *f); | 391 int buffer_window_count (struct buffer *b, struct frame *f); |
383 int buffer_window_mru (struct window *w); | 392 int buffer_window_mru (struct window *w); |
384 void check_frame_size (struct frame *frame, int *rows, int *cols); | 393 void check_frame_size (struct frame *frame, int *rows, int *cols); |
385 struct window *decode_window (Lisp_Object window); | 394 struct window *decode_window (Lisp_Object window); |
386 struct window *find_window_by_pixel_pos (unsigned int pix_x, | 395 struct window *find_window_by_pixel_pos (int pix_x, int pix_y, Lisp_Object win); |
387 unsigned int pix_y, | |
388 Lisp_Object win); | |
389 | 396 |
390 /* new functions to handle the window mirror */ | 397 /* new functions to handle the window mirror */ |
391 void free_window_mirror (struct window_mirror *mir); | 398 void free_window_mirror (struct window_mirror *mir); |
392 Lisp_Object real_window (struct window_mirror *mir, int no_abort); | 399 Lisp_Object real_window (struct window_mirror *mir, int no_abort); |
393 struct window_mirror *find_window_mirror (struct window *w); | 400 struct window_mirror *find_window_mirror (struct window *w); |