mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Make adding mode formats a function pointer as well.
This commit is contained in:
		@@ -31,10 +31,11 @@ static void	window_copy_command(struct window_pane *, struct client *,
 | 
			
		||||
static struct screen *window_copy_init(struct window_pane *,
 | 
			
		||||
		    struct cmd_find_state *, struct args *);
 | 
			
		||||
static void	window_copy_free(struct window_pane *);
 | 
			
		||||
static void	window_copy_resize(struct window_pane *, u_int, u_int);
 | 
			
		||||
static void	window_copy_formats(struct window_pane *, struct format_tree *);
 | 
			
		||||
static int	window_copy_pagedown(struct window_pane *, int, int);
 | 
			
		||||
static void	window_copy_next_paragraph(struct window_pane *);
 | 
			
		||||
static void	window_copy_previous_paragraph(struct window_pane *);
 | 
			
		||||
static void	window_copy_resize(struct window_pane *, u_int, u_int);
 | 
			
		||||
 | 
			
		||||
static void	window_copy_redraw_selection(struct window_pane *, u_int);
 | 
			
		||||
static void	window_copy_redraw_lines(struct window_pane *, u_int, u_int);
 | 
			
		||||
@@ -113,6 +114,7 @@ const struct window_mode window_copy_mode = {
 | 
			
		||||
	.resize = window_copy_resize,
 | 
			
		||||
	.key_table = window_copy_key_table,
 | 
			
		||||
	.command = window_copy_command,
 | 
			
		||||
	.formats = window_copy_formats,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
enum {
 | 
			
		||||
@@ -472,6 +474,16 @@ window_copy_next_paragraph(struct window_pane *wp)
 | 
			
		||||
	window_copy_scroll_to(wp, ox, oy);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
window_copy_formats(struct window_pane *wp, struct format_tree *ft)
 | 
			
		||||
{
 | 
			
		||||
	struct window_copy_mode_data	*data = wp->modedata;
 | 
			
		||||
 | 
			
		||||
	format_add(ft, "selection_present", "%d", data->screen.sel != NULL);
 | 
			
		||||
	format_add(ft, "scroll_position", "%d", data->oy);
 | 
			
		||||
	format_add(ft, "rectangle_toggle", "%d", data->rectflag);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
window_copy_resize(struct window_pane *wp, u_int sx, u_int sy)
 | 
			
		||||
{
 | 
			
		||||
@@ -2447,19 +2459,6 @@ window_copy_scroll_down(struct window_pane *wp, u_int ny)
 | 
			
		||||
	screen_write_stop(&ctx);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
window_copy_add_formats(struct window_pane *wp, struct format_tree *ft)
 | 
			
		||||
{
 | 
			
		||||
	struct window_copy_mode_data	*data = wp->modedata;
 | 
			
		||||
 | 
			
		||||
	if (wp->mode != &window_copy_mode)
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	format_add(ft, "selection_present", "%d", data->screen.sel != NULL);
 | 
			
		||||
	format_add(ft, "scroll_position", "%d", data->oy);
 | 
			
		||||
	format_add(ft, "rectangle_toggle", "%d", data->rectflag);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
window_copy_rectangle_toggle(struct window_pane *wp)
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user