bool create_checklists_menu(void) { int size; int size_all; constname_t *names; int *indexes; XPLMClearAllMenuItems(checklistsMenu); if(get_checklist_names(&size_all, &size, &names, &indexes)){ checklists_count = size_all; for(intptr_t i = 0; i < size; ++i){ XPLMAppendMenuItem(checklistsMenu, names[i], (void *)((intptr_t) indexes[i]), 1); } free_checklist_names(size_all, size, &names, &indexes); return true; } return false; }
bool do_cleanup() { XPLMClearAllMenuItems(checklistsMenu); checklists_count = -1; if(xCheckListWidget != NULL){ if(XPIsWidgetVisible(xCheckListWidget)){ XPHideWidget(xCheckListWidget); } XPDestroyWidget(xCheckListWidget, 1); xCheckListWidget = NULL; } if(setupWidget != NULL){ if(XPIsWidgetVisible(setupWidget)){ XPHideWidget(setupWidget); } XPDestroyWidget(setupWidget, 1); setupWidget = NULL; } return true; }
void process_multi_menu() { XPLMClearAllMenuItems(MultiMenuId); XPLMAppendMenuItem(MultiMenuId, "Multi Panel Widget", (void *) "MULTI_WIDGET", 1); }