X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fwindow.h;h=69cd2a766f95a3b1d5d9a2ad64ce01df20ec9528;hb=3f6ecf401c01c83743af2c1e068f57e8d2e2e410;hp=8144a47db42a692d2e1dbaea3103edcff75ee22f;hpb=2fd9701a4f902054649dde9143a3f77809afee8f;p=chise%2Fxemacs-chise.git- diff --git a/src/window.h b/src/window.h index 8144a47..69cd2a7 100644 --- a/src/window.h +++ b/src/window.h @@ -300,6 +300,13 @@ DECLARE_LRECORD (window, struct window); windows_changed = 1; \ } while (0) +/* #### This should be fixed not to call MARK_FRAME_CHANGED because + faces are cached per window. Also, other code which changes window's + face should use this macro. +*/ +#define MARK_WINDOW_FACES_CHANGED(w) \ + MARK_FRAME_FACES_CHANGED (XFRAME ((w)->frame)) + #define WINDOW_TTY_P(w) FRAME_TTY_P (XFRAME ((w)->frame)) #define WINDOW_X_P(w) FRAME_X_P (XFRAME ((w)->frame)) #define WINDOW_NS_P(w) FRAME_NS_P (XFRAME ((w)->frame)) @@ -310,7 +317,7 @@ DECLARE_LRECORD (window_configuration, struct window_config); EXFUN (Fget_buffer_window, 3); EXFUN (Fmove_to_window_line, 2); EXFUN (Frecenter, 2); -EXFUN (Freplace_buffer_in_windows, 1); +EXFUN (Freplace_buffer_in_windows, 3); EXFUN (Fselect_window, 2); EXFUN (Fselected_window, 1); EXFUN (Fset_window_buffer, 3); @@ -387,9 +394,13 @@ int invalidate_vertical_divider_cache_in_window (struct window *w, int window_divider_width (struct window *w); #define WINDOW_FRAME(w) ((w)->frame) +#define WINDOW_XFRAME(w) XFRAME (WINDOW_FRAME (w)) #define WINDOW_BUFFER(w) ((w)->buffer) +#define WINDOW_XBUFFER(w) XBUFFER (WINDOW_BUFFER (w)) #define WINDOW_DEVICE(w) FRAME_DEVICE (XFRAME (WINDOW_FRAME (w))) +#define WINDOW_XDEVICE(w) XDEVICE (WINDOW_DEVICE (w)) #define WINDOW_CONSOLE(w) DEVICE_CONSOLE (XDEVICE (WINDOW_DEVICE (w))) +#define WINDOW_XCONSOLE(w) XCONSOLE (WINDOW_CONSOLE (w)) /* XEmacs window size and positioning macros. */ #define WINDOW_TOP(w) ((w)->pixel_top)