diff options
author | 2009-11-13 19:53:28 +0000 | |
---|---|---|
committer | 2009-11-13 19:53:28 +0000 | |
commit | 0e9de5d4b318503e468d9cb019fbe84d03290ff0 (patch) | |
tree | fb80958bd389f443b9e6717b7ab267cb944ce7db /usr.bin/tmux/cmd-resize-pane.c | |
parent | 1.8 broke things, back it out, correct fix coming from pjanzen (diff) | |
download | wireguard-openbsd-0e9de5d4b318503e468d9cb019fbe84d03290ff0.tar.xz wireguard-openbsd-0e9de5d4b318503e468d9cb019fbe84d03290ff0.zip |
Get rid of the ugly CMD_CHFLAG macro and use a const string (eg "dDU") in the
command entry structs and a couple of functions to check/set the flags.
Diffstat (limited to 'usr.bin/tmux/cmd-resize-pane.c')
-rw-r--r-- | usr.bin/tmux/cmd-resize-pane.c | 36 |
1 files changed, 17 insertions, 19 deletions
diff --git a/usr.bin/tmux/cmd-resize-pane.c b/usr.bin/tmux/cmd-resize-pane.c index 3c284a23a4e..429ca0532cd 100644 --- a/usr.bin/tmux/cmd-resize-pane.c +++ b/usr.bin/tmux/cmd-resize-pane.c @@ -1,4 +1,4 @@ -/* $OpenBSD: cmd-resize-pane.c,v 1.6 2009/07/30 13:45:56 nicm Exp $ */ +/* $OpenBSD: cmd-resize-pane.c,v 1.7 2009/11/13 19:53:29 nicm Exp $ */ /* * Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net> @@ -31,9 +31,8 @@ int cmd_resize_pane_exec(struct cmd *, struct cmd_ctx *); const struct cmd_entry cmd_resize_pane_entry = { "resize-pane", "resizep", - "[-DU] " CMD_TARGET_PANE_USAGE " [adjustment]", - CMD_ARG01, - CMD_CHFLAG('D')|CMD_CHFLAG('L')|CMD_CHFLAG('R')|CMD_CHFLAG('U'), + "[-DLRU] " CMD_TARGET_PANE_USAGE " [adjustment]", + CMD_ARG01, "DLRU", cmd_resize_pane_init, cmd_target_parse, cmd_resize_pane_exec, @@ -50,28 +49,28 @@ cmd_resize_pane_init(struct cmd *self, int key) data = self->data; if (key == (KEYC_UP | KEYC_CTRL)) - data->chflags |= CMD_CHFLAG('U'); + cmd_set_flag(&data->chflags, 'U'); if (key == (KEYC_DOWN | KEYC_CTRL)) - data->chflags |= CMD_CHFLAG('D'); + cmd_set_flag(&data->chflags, 'D'); if (key == (KEYC_LEFT | KEYC_CTRL)) - data->chflags |= CMD_CHFLAG('L'); + cmd_set_flag(&data->chflags, 'L'); if (key == (KEYC_RIGHT | KEYC_CTRL)) - data->chflags |= CMD_CHFLAG('R'); + cmd_set_flag(&data->chflags, 'R'); if (key == (KEYC_UP | KEYC_ESCAPE)) { - data->chflags |= CMD_CHFLAG('U'); + cmd_set_flag(&data->chflags, 'U'); data->arg = xstrdup("5"); } if (key == (KEYC_DOWN | KEYC_ESCAPE)) { - data->chflags |= CMD_CHFLAG('D'); + cmd_set_flag(&data->chflags, 'D'); data->arg = xstrdup("5"); } if (key == (KEYC_LEFT | KEYC_ESCAPE)) { - data->chflags |= CMD_CHFLAG('L'); + cmd_set_flag(&data->chflags, 'L'); data->arg = xstrdup("5"); } if (key == (KEYC_RIGHT | KEYC_ESCAPE)) { - data->chflags |= CMD_CHFLAG('R'); + cmd_set_flag(&data->chflags, 'R'); data->arg = xstrdup("5"); } } @@ -98,15 +97,14 @@ cmd_resize_pane_exec(struct cmd *self, struct cmd_ctx *ctx) } } - if (data->chflags & (CMD_CHFLAG('L')|CMD_CHFLAG('R'))) { - if (data->chflags & CMD_CHFLAG('L')) - adjust = -adjust; + if (cmd_check_flag(data->chflags, 'L')) + layout_resize_pane(wp, LAYOUT_LEFTRIGHT, -adjust); + else if (cmd_check_flag(data->chflags, 'R')) layout_resize_pane(wp, LAYOUT_LEFTRIGHT, adjust); - } else { - if (data->chflags & CMD_CHFLAG('U')) - adjust = -adjust; + else if (cmd_check_flag(data->chflags, 'U')) + layout_resize_pane(wp, LAYOUT_TOPBOTTOM, -adjust); + else if (cmd_check_flag(data->chflags, 'D')) layout_resize_pane(wp, LAYOUT_TOPBOTTOM, adjust); - } server_redraw_window(wl->window); return (0); |