X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fwindow.h;h=342ad440f1865ebcb201f270ce04f20ae70b76a9;hb=8afb64af7147481903a263cd94cd2f42ec9a8b67;hp=41cc21090be1cefd1db758093ba2a946fb2d3c25;hpb=6883ee56ec887c2c48abe5b06b5e66aa74031910;p=chise%2Fxemacs-chise.git- diff --git a/src/window.h b/src/window.h index 41cc210..342ad44 100644 --- a/src/window.h +++ b/src/window.h @@ -28,7 +28,9 @@ Boston, MA 02111-1307, USA. */ #define _XEMACS_WINDOW_H_ #include "redisplay.h" +#ifdef HAVE_SCROLLBARS #include "scrollbar.h" +#endif /* All windows in use are arranged into a tree, with pointers up and down. @@ -143,8 +145,14 @@ struct window face_cachel_dynarr *face_cachels; /* glyph cache elements correct for this window and its current buffer */ glyph_cachel_dynarr *glyph_cachels; - - + /* we cannot have a per-device cache of widgets / subwindows because + each visible instance needs to be a separate instance. The lowest + level of granularity we can get easily is the window that the + subwindow is in. This will fail if we attach the same subwindow + twice to a buffer. However, we are quite unlikely to do this, + especially with buttons which will need individual callbacks. The + proper solution is probably not worth the effort. */ + Lisp_Object subwindow_instance_cache; /* List of starting positions for display lines. Only valid if buffer has not changed. */ line_start_cache_dynarr *line_start_cache; @@ -321,6 +329,8 @@ int window_char_height (struct window *, int include_gutters_p); int window_displayed_height (struct window *); int window_is_leftmost (struct window *w); int window_is_rightmost (struct window *w); +int window_is_lowest (struct window *w); +int window_is_highest (struct window *w); int window_truncation_on (struct window *w); int window_needs_vertical_divider (struct window *); int window_scrollbar_width (struct window *w); @@ -332,7 +342,6 @@ int window_top_gutter_height (struct window *w); int window_bottom_gutter_height (struct window *w); int window_left_gutter_width (struct window *w, int modeline); int window_right_gutter_width (struct window *w, int modeline); -int window_bottom_toolbar_height (struct window *w); void delete_all_subwindows (struct window *w); void set_window_pixheight (Lisp_Object window, int pixheight,