void exec_action_context_service_config(int ch) { FIELD *field; int cur_page = form_page(my_form); switch (ch) { case KEY_DOWN: form_driver(my_form, REQ_NEXT_FIELD); form_driver(my_form, REQ_END_LINE); break; case KEY_UP: form_driver(my_form, REQ_PREV_FIELD); form_driver(my_form, REQ_END_LINE); break; case KEY_NPAGE: form_driver(my_form, REQ_NEXT_PAGE); set_form_page(my_form, ++cur_page); __renderers_services_config_paging(); break; case KEY_PPAGE: form_driver(my_form, REQ_PREV_PAGE); set_form_page(my_form, --cur_page); __renderers_services_config_paging(); break; case KEY_ENTER: case 10: field = current_field(my_form); __ncurses_print_info_in_footer(false, field_buffer(field, 0)); break; } }
static VALUE rbncurs_c_set_form_page(VALUE rb_form, VALUE n) { FORM* form = get_form(rb_form); return INT2NUM(set_form_page(form, NUM2INT(n))); }