version 1.2, 2009/07/13 23:11:35 |
version 1.3, 2009/07/19 13:21:40 |
|
|
const struct cmd_entry cmd_resize_pane_entry = { |
const struct cmd_entry cmd_resize_pane_entry = { |
"resize-pane", "resizep", |
"resize-pane", "resizep", |
CMD_PANE_WINDOW_USAGE "[-DU] [adjustment]", |
CMD_PANE_WINDOW_USAGE "[-DU] [adjustment]", |
CMD_ARG01, CMD_CHFLAG('D')|CMD_CHFLAG('U'), |
CMD_ARG01, |
|
CMD_CHFLAG('D')|CMD_CHFLAG('L')|CMD_CHFLAG('R')|CMD_CHFLAG('U'), |
cmd_resize_pane_init, |
cmd_resize_pane_init, |
cmd_pane_parse, |
cmd_pane_parse, |
cmd_resize_pane_exec, |
cmd_resize_pane_exec, |
|
|
cmd_pane_init(self, key); |
cmd_pane_init(self, key); |
data = self->data; |
data = self->data; |
|
|
|
if (key == KEYC_ADDCTL(KEYC_UP)) |
|
data->chflags |= CMD_CHFLAG('U'); |
if (key == KEYC_ADDCTL(KEYC_DOWN)) |
if (key == KEYC_ADDCTL(KEYC_DOWN)) |
data->chflags |= CMD_CHFLAG('D'); |
data->chflags |= CMD_CHFLAG('D'); |
|
if (key == KEYC_ADDCTL(KEYC_LEFT)) |
|
data->chflags |= CMD_CHFLAG('L'); |
|
if (key == KEYC_ADDCTL(KEYC_RIGHT)) |
|
data->chflags |= CMD_CHFLAG('R'); |
|
|
if (key == KEYC_ADDESC(KEYC_UP)) |
if (key == KEYC_ADDESC(KEYC_UP)) { |
|
data->chflags |= CMD_CHFLAG('U'); |
data->arg = xstrdup("5"); |
data->arg = xstrdup("5"); |
|
} |
if (key == KEYC_ADDESC(KEYC_DOWN)) { |
if (key == KEYC_ADDESC(KEYC_DOWN)) { |
data->chflags |= CMD_CHFLAG('D'); |
data->chflags |= CMD_CHFLAG('D'); |
data->arg = xstrdup("5"); |
data->arg = xstrdup("5"); |
} |
} |
|
if (key == KEYC_ADDESC(KEYC_LEFT)) { |
|
data->chflags |= CMD_CHFLAG('L'); |
|
data->arg = xstrdup("5"); |
|
} |
|
if (key == KEYC_ADDESC(KEYC_RIGHT)) { |
|
data->chflags |= CMD_CHFLAG('R'); |
|
data->arg = xstrdup("5"); |
|
} |
} |
} |
|
|
int |
int |
|
|
} |
} |
} |
} |
|
|
if (!(data->chflags & CMD_CHFLAG('D'))) |
if (data->chflags & (CMD_CHFLAG('L')|CMD_CHFLAG('R'))) { |
adjust = -adjust; |
if (data->chflags & CMD_CHFLAG('L')) |
if (layout_resize(wp, adjust) != 0) { |
adjust = -adjust; |
ctx->error(ctx, "layout %s " |
layout_resize_pane(wp, LAYOUT_LEFTRIGHT, adjust); |
"does not support resizing", layout_name(wp->window)); |
} else { |
return (-1); |
if (data->chflags & CMD_CHFLAG('U')) |
|
adjust = -adjust; |
|
layout_resize_pane(wp, LAYOUT_TOPBOTTOM, adjust); |
} |
} |
server_redraw_window(wl->window); |
server_redraw_window(wl->window); |
|
|