summaryrefslogtreecommitdiff
path: root/src/termhooks.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/termhooks.h')
-rw-r--r--src/termhooks.h32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/termhooks.h b/src/termhooks.h
index f9bf9d785b6..04104eb41e9 100644
--- a/src/termhooks.h
+++ b/src/termhooks.h
@@ -37,7 +37,14 @@ enum scroll_bar_part {
scroll_bar_to_top,
scroll_bar_to_bottom,
scroll_bar_end_scroll,
- scroll_bar_move_ratio
+ scroll_bar_move_ratio,
+ scroll_bar_before_handle,
+ scroll_bar_horizontal_handle,
+ scroll_bar_after_handle,
+ scroll_bar_left_arrow,
+ scroll_bar_right_arrow,
+ scroll_bar_to_leftmost,
+ scroll_bar_to_rightmost
};
/* Output method of a terminal (and frames on this terminal, respectively). */
@@ -130,6 +137,19 @@ enum event_kind
whose scroll bar was clicked in.
.timestamp gives a timestamp (in
milliseconds) for the click. */
+ HORIZONTAL_SCROLL_BAR_CLICK_EVENT, /* .code gives the number of the mouse button
+ that was clicked.
+ .modifiers holds the state of the modifier
+ keys.
+ .part is a lisp symbol indicating which
+ part of the scroll bar got clicked.
+ .x gives the distance from the start of the
+ scroll bar of the click; .y gives the total
+ length of the scroll bar.
+ .frame_or_window gives the window
+ whose scroll bar was clicked in.
+ .timestamp gives a timestamp (in
+ milliseconds) for the click. */
SELECTION_REQUEST_EVENT, /* Another X client wants a selection from us.
See `struct selection_input_event'. */
SELECTION_CLEAR_EVENT, /* Another X client cleared our selection. */
@@ -518,6 +538,16 @@ struct terminal
int position);
+ /* Set the horizontal scroll bar for WINDOW to have its upper left
+ corner at (TOP, LEFT), and be LENGTH rows high. Set its handle to
+ indicate that we are displaying PORTION characters out of a total
+ of WHOLE characters, starting at POSITION. If WINDOW doesn't yet
+ have a scroll bar, create one for it. */
+ void (*set_horizontal_scroll_bar_hook) (struct window *window,
+ int portion, int whole,
+ int position);
+
+
/* The following three hooks are used when we're doing a thorough
redisplay of the frame. We don't explicitly know which scroll bars
are going to be deleted, because keeping track of when windows go