int show_user_menu(FileView *view, const char command[], int navigate) { static menu_info m; const int menu_type = navigate ? USER_NAVIGATE : USER; init_menu_info(&m, menu_type, strdup("No results found")); m.title = strdup(command); return capture_output_to_menu(view, command, &m); }
int capture_output(FileView *view, const char cmd[], int user_sh, menu_data_t *m, int custom_view, int very_custom_view) { if(custom_view || very_custom_view) { reset_menu_data(m); output_to_custom_flist(view, cmd, very_custom_view, 0); return 0; } return capture_output_to_menu(view, cmd, user_sh, m->state); }
int show_user_menu(FileView *view, const char command[], int navigate) { static menu_info m; init_menu_info(&m, strdup(command), strdup("No results found")); m.extra_data = navigate; m.execute_handler = &execute_users_cb; if(navigate) { m.key_handler = &filelist_khandler; } return capture_output_to_menu(view, command, 1, &m); }
int save_msg; custom_macro_t macros[] = { { .letter = 'a', .value = args, .uses_left = 1, .group = -1 }, }; static menu_info m; margs = (args[0] == '-') ? strdup(args) : shell_like_escape(args, 0); init_menu_info(&m, format_str("Locate %s", margs), strdup("No files found")); m.args = margs; m.execute_handler = &execute_locate_cb; m.key_handler = &filelist_khandler; status_bar_message("locate..."); cmd = expand_custom_macros(cfg.locate_prg, ARRAY_LEN(macros), macros); save_msg = capture_output_to_menu(view, cmd, 0, &m); free(cmd); return save_msg; } /* Callback that is called when menu item is selected. Should return non-zero * to stay in menu mode. */ static int execute_locate_cb(FileView *view, menu_info *m) { goto_selected_file(view, m->items[m->pos], 0); return 0; } /* vim: set tabstop=2 softtabstop=2 shiftwidth=2 noexpandtab cinoptions-=(0 : */