X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=libchimara%2Fwindow.h;h=aa3250274a5e5e3609e12252457b587f7a61a0cf;hb=ffbf97ed80e2dc853cc636757a8254f61b6e7a4a;hp=8cd6e7d693c35499c4f57f30eb5fd81e3ba40c2a;hpb=e61fa4c92aff9cfcf486308b95610d00754408cf;p=projects%2Fchimara%2Fchimara.git diff --git a/libchimara/window.h b/libchimara/window.h index 8cd6e7d..aa32502 100644 --- a/libchimara/window.h +++ b/libchimara/window.h @@ -42,6 +42,10 @@ struct glk_window_struct /* "frame" is the widget that is the child of the ChimaraGlk container, such as a scroll window. It may be the same as "widget". */ GtkWidget *frame; + /* In text buffer windows, the scrolled window and the pager are extra + widgets that are neither "widget" nor "frame" */ + GtkWidget *scrolledwindow; + GtkWidget *pager; /* Width and height of the window's size units, in pixels */ int unit_width; int unit_height; @@ -64,7 +68,11 @@ struct glk_window_struct gboolean mouse_input_requested; GList *history; GList *history_pos; + GSList *extra_line_terminators; + GSList *current_extra_line_terminators; + /* Line input echoing (text buffers only) */ gboolean echo_line_input; + gboolean echo_current_line_input; /* Line input field (text grids only) */ glui32 input_length; GtkTextChildAnchor *input_anchor; @@ -78,7 +86,6 @@ struct glk_window_struct gulong shutdown_keypress_handler; gulong button_press_event_handler; gulong size_allocate_handler; - gulong pager_expose_handler; gulong pager_keypress_handler; gulong pager_adjustment_handler; /* Window buffer */ @@ -91,9 +98,9 @@ struct glk_window_struct gboolean hyperlink_event_requested; /* Graphics */ glui32 background_color; + cairo_surface_t *backing_store; /* Pager (textbuffer only) */ gboolean currently_paging; - PangoLayout *pager_layout; }; #endif