Lines Matching refs:current

215 static key_entry_t *add_new_key(keymap_t *current, char ch, int key_type,
217 static void delete_key_sequence(keymap_t *current, int key_type);
218 static void do_keyok(keymap_t *current, int key_type, bool set, bool flag,
259 add_new_key(keymap_t *current, char chr, int key_type, int symbol) in add_new_key() argument
267 if (current->mapping[(unsigned char)chr] < 0) { in add_new_key()
268 if (current->mapping[(unsigned char)chr] == MAPPING_UNUSED) { in add_new_key()
270 current->mapping[(unsigned char)chr] = in add_new_key()
271 current->count; /* map new entry */ in add_new_key()
272 ki = current->count; in add_new_key()
275 if ((current->count & (KEYMAP_ALLOC_CHUNK - 1)) == 0) in add_new_key()
277 if ((current->key = in add_new_key()
278 realloc(current->key, in add_new_key()
288 current->key[ki + i] = &the_key[i]; in add_new_key()
293 ki = - current->mapping[(unsigned char) chr]; in add_new_key()
294 current->mapping[(unsigned char) chr] = ki; in add_new_key()
297 current->count++; in add_new_key()
300 the_key = current->key[ki]; in add_new_key()
326 the_key = current->key[current->mapping[(unsigned char)chr]]; in add_new_key()
337 delete_key_sequence(keymap_t *current, int key_type) in delete_key_sequence() argument
347 if (current->mapping[i] < 0) in delete_key_sequence()
350 key = current->key[current->mapping[i]]; in delete_key_sequence()
376 keymap_t *current; in add_key_sequence() local
381 current = screen->base_keymap; /* always start with in add_key_sequence()
400 tmp_key = add_new_key(current, sequence[j], KEYMAP_MULTI, 0); in add_key_sequence()
404 key_ent = current->mapping[(unsigned char) sequence[j]]; in add_key_sequence()
406 current->key[key_ent] = tmp_key; in add_key_sequence()
409 current = current->key[key_ent]->value.next; in add_key_sequence()
417 tmp_key = add_new_key(current, sequence[length - 1], KEYMAP_LEAF, in add_key_sequence()
419 current->key[current->mapping[(int)sequence[length - 1]]] = tmp_key; in add_key_sequence()
539 keymap_t *current = _cursesi_screen->base_keymap; in inkey() local
627 mapping = current->mapping[k]; in inkey()
629 || ((current->key[mapping]->type == KEYMAP_LEAF) in inkey()
630 && (current->key[mapping]->enable == FALSE))) { in inkey()
646 if (current->key[current->mapping[k]]->type == KEYMAP_LEAF) { in inkey()
660 return current->key[current->mapping[k]]->value.symbol; in inkey()
667 current = current->key[current->mapping[k]]->value.next; in inkey()
733 do_keyok(keymap_t *current, int key_type, bool set, bool flag, int *retval) in do_keyok() argument
743 if (current->mapping[i] < 0) in do_keyok()
746 key = current->key[current->mapping[i]]; in do_keyok()