void add_script_to_user_menu( char * fname , char * title ) { int i ; /* * Insert script info at end of existing entries */ for(i = 1; i < USER_MENU_ITEMS + 1; i++) { if(!user_submenu_items[i].text) // insert script title & full filename in next available spot { strcpy(conf.user_menu_script_file[i-1], fname) ; strcpy(conf.user_menu_script_title[i-1], title) ; user_submenu_items[i].symbol = 0x35; user_submenu_items[i].opt_len = 0 ; user_submenu_items[i].type = MENUITEM_PROC; user_submenu_items[i].text = (int) conf.user_menu_script_title[i-1]; user_submenu_items[i].value = (int *) gui_load_user_menu_script ; user_submenu_items[i].arg = (int) conf.user_menu_script_file[i-1] ; char buf[200]; sprintf(buf,lang_str(LANG_USER_MENU_ITEM_ADDED), lang_str(user_submenu_items[i].text)); gui_mbox_init(LANG_MENU_USER_MENU, (int)buf, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); return; } } gui_mbox_init(LANG_MENU_USER_MENU, LANG_USER_MENU_FULL, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); }
static void add_extern_to_user_menu(const char* fname, char* title, char sym, short type, int* func) { int i; /* * Insert script/module info at end of existing entries */ CMenuItem *items = (CMenuItem*)user_submenu.menu; gui_menu_erase_and_redraw(); for(i = 1; i < USER_MENU_ITEMS + 1; i++) { if (!items[i].text) // insert script/module title & full filename in next available spot { if (conf.user_menu_vars.items[i-1].script_file == 0) conf.user_menu_vars.items[i-1].script_file = malloc(CONF_STR_LEN); strcpy(conf.user_menu_vars.items[i-1].script_file, fname); if (conf.user_menu_vars.items[i-1].script_title == 0) conf.user_menu_vars.items[i-1].script_title = malloc(CONF_STR_LEN); strcpy(conf.user_menu_vars.items[i-1].script_title, title); items[i].symbol = sym; items[i].opt_len = 0; items[i].type = type; items[i].text = (int) conf.user_menu_vars.items[i-1].script_title; items[i].value = func; items[i].arg = (int) conf.user_menu_vars.items[i-1].script_file; sprintf(msgbuf,lang_str(LANG_USER_MENU_ITEM_ADDED), lang_str(items[i].text)); gui_mbox_init(LANG_MENU_USER_MENU, (int)msgbuf, MBOX_BTN_OK|MBOX_TEXT_CENTER|MBOX_FUNC_RESTORE, NULL); camera_info.state.user_menu_has_changed = 1; return; } } gui_mbox_init(LANG_MENU_USER_MENU, LANG_USER_MENU_FULL, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); }
static void del_usermenu() { if (inUserMenu(gui_menu_curr_item)) { mod_menu_item = curr_menu->menu[gui_menu_curr_item]; sprintf(msgbuf, lang_str(LANG_USER_MENU_DEL), lang_str(mod_menu_item.text)); gui_mbox_init(LANG_INFORMATION, (int)msgbuf, MBOX_BTN_YES_NO|MBOX_DEF_BTN1|MBOX_TEXT_CENTER, del_usermenu_item); } }
//------------------------------------------------------------------- void add_user_menu_item(CMenuItem curr_menu_item, int* cur_memnu_item_indx) { int i; /* * Insert new Item at end of existing entries */ for(i = 1; i < USER_MENU_ITEMS + 1; i++) { if(!user_submenu_items[i].text) { user_submenu_items[i] = curr_menu_item; char buf[200]; sprintf(buf,lang_str(LANG_USER_MENU_ITEM_ADDED), lang_str(curr_menu_item.text)); gui_mbox_init(LANG_MENU_USER_MENU, (int)buf, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); return; } } gui_mbox_init(LANG_MENU_USER_MENU, LANG_USER_MENU_FULL, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); }
int gui_module_kbd_process() { switch (kbd_get_autoclicked_key()) { case KEY_SET: modinspect_redraw=2; break; case KEY_DISPLAY: gui_mbox_init( (int)"Module Inspector", (int)"Unload all modules?", MBOX_TEXT_CENTER|MBOX_BTN_YES_NO|MBOX_DEF_BTN2, modinspect_unload_cb); break; } return 0; }
void add_usermenu_item(unsigned int btn) { gui_menu_erase_and_redraw(); if (btn == MBOX_BTN_YES) { int i; /* * Insert new Item at end of existing entries */ CMenuItem *items = (CMenuItem*)user_submenu.menu; for (i = 1; i < USER_MENU_ITEMS + 1; i++) { if (!items[i].text) { items[i] = mod_menu_item; camera_info.state.user_menu_has_changed = 1; return; } } gui_mbox_init(LANG_MENU_USER_MENU, LANG_USER_MENU_FULL, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); } }
static void module_run_error(int err, char *name) { char buf[100]; sprintf(buf, lang_str(err), name); gui_mbox_init(LANG_ERROR, (int)buf, MBOX_BTN_OK|MBOX_TEXT_CENTER, NULL); }