[BACK]Return to cmd-select-pane.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / tmux

Diff for /src/usr.bin/tmux/cmd-select-pane.c between version 1.9 and 1.10

version 1.9, 2010/01/03 12:51:05 version 1.10, 2010/03/22 19:07:52
Line 24 
Line 24 
  * Select pane.   * Select pane.
  */   */
   
   void    cmd_select_pane_init(struct cmd *, int);
 int     cmd_select_pane_exec(struct cmd *, struct cmd_ctx *);  int     cmd_select_pane_exec(struct cmd *, struct cmd_ctx *);
   
 const struct cmd_entry cmd_select_pane_entry = {  const struct cmd_entry cmd_select_pane_entry = {
         "select-pane", "selectp",          "select-pane", "selectp",
         CMD_TARGET_PANE_USAGE,          "[-DLRU] " CMD_TARGET_PANE_USAGE,
         0, "",          0, "DLRU",
         cmd_target_init,          cmd_select_pane_init,
         cmd_target_parse,          cmd_target_parse,
         cmd_select_pane_exec,          cmd_select_pane_exec,
         cmd_target_free,          cmd_target_free,
         cmd_target_print          cmd_target_print
 };  };
   
   void
   cmd_select_pane_init(struct cmd *self, int key)
   {
           struct cmd_target_data  *data;
   
           cmd_target_init(self, key);
           data = self->data;
   
           if (key == KEYC_UP)
                   cmd_set_flag(&data->chflags, 'U');
           if (key == KEYC_DOWN)
                   cmd_set_flag(&data->chflags, 'D');
           if (key == KEYC_LEFT)
                   cmd_set_flag(&data->chflags, 'L');
           if (key == KEYC_RIGHT)
                   cmd_set_flag(&data->chflags, 'R');
           if (key == 'o')
                   data->target = xstrdup(":.+");
   }
   
 int  int
 cmd_select_pane_exec(struct cmd *self, struct cmd_ctx *ctx)  cmd_select_pane_exec(struct cmd *self, struct cmd_ctx *ctx)
 {  {
Line 51 
Line 72 
                 ctx->error(ctx, "pane not visible: %s", data->target);                  ctx->error(ctx, "pane not visible: %s", data->target);
                 return (-1);                  return (-1);
         }          }
   
           if (cmd_check_flag(data->chflags, 'L'))
                   wp = window_pane_find_left(wp);
           else if (cmd_check_flag(data->chflags, 'R'))
                   wp = window_pane_find_right(wp);
           else if (cmd_check_flag(data->chflags, 'U'))
                   wp = window_pane_find_up(wp);
           else if (cmd_check_flag(data->chflags, 'D'))
                   wp = window_pane_find_down(wp);
           if (wp == NULL) {
                   ctx->error(ctx, "pane not found");
                   return (-1);
           }
   
         window_set_active_pane(wl->window, wp);          window_set_active_pane(wl->window, wp);
         server_status_window(wl->window);          server_status_window(wl->window);
         server_redraw_window_borders(wl->window);          server_redraw_window_borders(wl->window);

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10