aboutsummaryrefslogtreecommitdiff
path: root/tmux.h
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2009-04-01 18:21:42 +0000
committerNicholas Marriott <nicholas.marriott@gmail.com>2009-04-01 18:21:42 +0000
commitb6450b167b089201381f02e1919f18df8881e082 (patch)
treee554848e2da982d486fa084bf2e19982b8eec894 /tmux.h
parent6789b3367a9916d823abaeba0703e3388ffcf80a (diff)
downloadrtmux-b6450b167b089201381f02e1919f18df8881e082.tar.gz
rtmux-b6450b167b089201381f02e1919f18df8881e082.tar.bz2
rtmux-b6450b167b089201381f02e1919f18df8881e082.zip
Basic horizontal splitting and layout management. Still some redraw and other
issues - particularly, don't mix with manual pane resizing and be careful when viewing from multiple clients; generally cycling the layout a few times will fix most problems. Getting this in for testing while I think about how to deal with manual mode. Split window as normal and cycle the layouts with C-b space. Some of the layouts will work better when swap-pane comes along.
Diffstat (limited to 'tmux.h')
-rw-r--r--tmux.h21
1 files changed, 16 insertions, 5 deletions
diff --git a/tmux.h b/tmux.h
index 2a0745c1..e9c35367 100644
--- a/tmux.h
+++ b/tmux.h
@@ -1,4 +1,4 @@
-/* $Id: tmux.h,v 1.293 2009-03-31 22:08:45 nicm Exp $ */
+/* $Id: tmux.h,v 1.294 2009-04-01 18:21:42 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -650,6 +650,7 @@ struct window_pane {
u_int sx;
u_int sy;
+ u_int xoff;
u_int yoff;
int flags;
@@ -684,10 +685,11 @@ struct window {
struct window_pane *active;
struct window_panes panes;
+ u_int layout;
u_int sx;
u_int sy;
-
+
int flags;
#define WINDOW_BELL 0x1
#define WINDOW_HIDDEN 0x2
@@ -1064,9 +1066,11 @@ void options_set_number(struct options *, const char *, long long);
long long options_get_number(struct options *, const char *);
/* tty.c */
+void tty_emulate_repeat(struct tty *,
+ enum tty_code_code, enum tty_code_code, u_int);
void tty_reset(struct tty *);
void tty_region(struct tty *, u_int, u_int, u_int);
-void tty_cursor(struct tty *, u_int, u_int, u_int);
+void tty_cursor(struct tty *, u_int, u_int, u_int, u_int);
void tty_cell(struct tty *,
const struct grid_cell *, const struct grid_utf8 *);
void tty_putcode(struct tty *, enum tty_code_code);
@@ -1079,7 +1083,9 @@ void tty_start_tty(struct tty *);
void tty_stop_tty(struct tty *);
void tty_set_title(struct tty *, const char *);
void tty_update_mode(struct tty *, int);
-void tty_draw_line(struct tty *, struct screen *, u_int, u_int);
+void tty_draw_line(
+ struct tty *, struct screen *, u_int, u_int, u_int);
+void tty_draw_region(struct tty *, struct screen *, u_int, u_int);
int tty_open(struct tty *, char **);
void tty_close(struct tty *, int);
void tty_free(struct tty *, int);
@@ -1193,6 +1199,7 @@ extern const struct cmd_entry cmd_lock_server_entry;
extern const struct cmd_entry cmd_move_window_entry;
extern const struct cmd_entry cmd_new_session_entry;
extern const struct cmd_entry cmd_new_window_entry;
+extern const struct cmd_entry cmd_next_layout_entry;
extern const struct cmd_entry cmd_next_window_entry;
extern const struct cmd_entry cmd_paste_buffer_entry;
extern const struct cmd_entry cmd_previous_window_entry;
@@ -1457,7 +1464,7 @@ void screen_write_cell(
struct screen_write_ctx *, const struct grid_cell *, u_char *);
/* screen-redraw.c */
-void screen_redraw_screen(struct client *, struct screen *);
+void screen_redraw_screen(struct client *);
void screen_redraw_status(struct client *);
/* screen.c */
@@ -1519,6 +1526,10 @@ void window_pane_key(struct window_pane *, struct client *, int);
void window_pane_mouse(struct window_pane *,
struct client *, u_char, u_char, u_char);
+/* layout.c */
+void layout_refresh(struct window *);
+void layout_next(struct window *);
+
/* window-clock.c */
extern const struct window_mode window_clock_mode;