Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • keybinding.c

    r920201c r8a921b5  
    1414int owl_keybinding_init(owl_keybinding *kb, const char *keyseq, const char *command, void (*function_fn)(void), const char *desc)
    1515{
    16   char **ktokens;
    17   int    nktokens, i;
    18  
    1916  owl_function_debugmsg("owl_keybinding_init: creating binding for <%s> with desc: <%s>", keyseq, desc);
    2017  if (command && !function_fn) {
     
    2522    return(-1);
    2623  }
     24
     25  if (owl_keybinding_make_keys(kb, keyseq) != 0) {
     26    return(-1);
     27  }
     28
     29  if (command) kb->command = owl_strdup(command);
     30  kb->function_fn = function_fn;
     31  if (desc) kb->desc = owl_strdup(desc);
     32  else kb->desc = NULL;
     33  return(0);
     34}
     35
     36int owl_keybinding_make_keys(owl_keybinding *kb, const char *keyseq)
     37{
     38  char **ktokens;
     39  int    nktokens, i;
    2740
    2841  ktokens = atokenize(keyseq, " ", &nktokens);
     
    4255  }
    4356  kb->len = nktokens;
    44 
    4557  atokenize_delete(ktokens, nktokens);
    46 
    47   if (command) kb->command = owl_strdup(command);
    48   kb->function_fn = function_fn;
    49   if (desc) kb->desc = owl_strdup(desc);
    50   else kb->desc = NULL;
    5158  return(0);
    5259}
Note: See TracChangeset for help on using the changeset viewer.