=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/tmux.h,v retrieving revision 1.325 retrieving revision 1.326 diff -u -r1.325 -r1.326 --- src/usr.bin/tmux/tmux.h 2012/03/20 11:01:00 1.325 +++ src/usr.bin/tmux/tmux.h 2012/04/01 13:18:38 1.326 @@ -1,4 +1,4 @@ -/* $OpenBSD: tmux.h,v 1.325 2012/03/20 11:01:00 nicm Exp $ */ +/* $OpenBSD: tmux.h,v 1.326 2012/04/01 13:18:38 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -851,6 +851,13 @@ TAILQ_HEAD(window_panes, window_pane); RB_HEAD(window_pane_tree, window_pane); +/* Window last layout. */ +struct last_layout { + char *layout; + + TAILQ_ENTRY(last_layout) entry; +}; + /* Window structure. */ struct window { u_int id; @@ -864,6 +871,9 @@ int lastlayout; struct layout_cell *layout_root; + TAILQ_HEAD(last_layouts, last_layout) layout_list; + u_int layout_list_size; + struct last_layout *layout_list_last; u_int sx; u_int sy; @@ -1998,7 +2008,8 @@ struct layout_cell *layout_create_cell(struct layout_cell *); void layout_free_cell(struct layout_cell *); void layout_print_cell(struct layout_cell *, const char *, u_int); -void layout_destroy_cell(struct layout_cell *, struct layout_cell **); +void layout_destroy_cell( + struct layout_cell *, struct layout_cell **); void layout_set_size( struct layout_cell *, u_int, u_int, u_int, u_int); void layout_make_leaf( @@ -2020,6 +2031,9 @@ struct layout_cell *layout_split_pane( struct window_pane *, enum layout_type, int, int); void layout_close_pane(struct window_pane *); +void layout_list_add(struct window *); +const char *layout_list_redo(struct window *); +const char *layout_list_undo(struct window *); /* layout-custom.c */ char *layout_dump(struct window *);