Lines Matching +full:display +full:- +full:rows

4  *  editbox.c -- implements the edit box
6 * Copyright 2007-2019,2020 Thomas E. Dickey
29 #define sTEXT -1
56 load_list(const char *file, char ***list, int *rows) in load_list() argument
63 *rows = 0; in load_list()
86 if (size != 0 && blob[size - 1] != '\n') { in load_list()
87 blob[++size - 1] = '\n'; in load_list()
118 grow_list(list, rows, (int) need + 1); in load_list()
126 free_list(char ***list, int *rows) in free_list() argument
130 for (n = 0; n < (*rows); ++n) { in free_list()
137 *rows = 0; in free_list()
141 * Display a single row in the editing window:
163 thisrow - base_row, in display_one()
187 if (lastrow - firstrow >= limit) in display_all()
211 scroll_to(int pagesize, int rows, int *base_row, int *this_row, int target) in scroll_to() argument
229 } else if (target >= rows) { in scroll_to()
230 if (*this_row < rows - 1) { in scroll_to()
231 *this_row = rows - 1; in scroll_to()
232 *base_row = rows - 1; in scroll_to()
245 if (pagesize < rows) { in scroll_to()
246 if (*base_row + pagesize >= rows) { in scroll_to()
247 *base_row = rows - pagesize; in scroll_to()
281 #define PREV_ROW (*list)[thisrow - 1]
319 * Display a dialog box for editing a copy of a file
324 int *rows, in dlg_editbox() argument
328 /* *INDENT-OFF* */ in dlg_editbox()
344 /* *INDENT-ON* */ in dlg_editbox()
353 int goal_col = -1; in dlg_editbox()
373 /* FIXME dump the rows & list */ in dlg_editbox()
417 box_width = width - 2 - (2 * MARGIN); in dlg_editbox()
418 box_height = height - (4 * MARGIN); in dlg_editbox()
428 box_height - (2 * MARGIN), in dlg_editbox()
429 box_width - (2 * MARGIN), in dlg_editbox()
432 box_height - (2 * MARGIN), in dlg_editbox()
433 box_width - (2 * MARGIN), in dlg_editbox()
488 -1, base_row, 0); in dlg_editbox()
492 height - 2, in dlg_editbox()
526 key -= M_EVENT; in dlg_editbox()
542 int cell = key - KEY_MAX; in dlg_editbox()
573 SCROLL_TO(thisrow - 1); in dlg_editbox()
591 SCROLL_TO(base_row - pagesize); in dlg_editbox()
618 --listsize; in dlg_editbox()
619 --thisrow; in dlg_editbox()
644 strncpy(buffer, input, max_len - 1)[max_len - 1] = '\0'; in dlg_editbox()
660 /* handle non-functionkeys */ in dlg_editbox()
689 grow_list(list, rows, listsize + 1); in dlg_editbox()
691 for (y = listsize; y > thisrow; --y) { in dlg_editbox()
692 (*list)[y] = (*list)[y - 1]; in dlg_editbox()
753 dlg_add_last_key(-1); in dlg_editbox()
765 int rows; in dialog_editbox() local
767 load_list(file, &list, &rows); in dialog_editbox()
768 result = dlg_editbox(title, &list, &rows, height, width); in dialog_editbox()
769 free_list(&list, &rows); in dialog_editbox()