예제 #1
0
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;
}
예제 #2
0
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;
}
예제 #3
0
void process_multi_menu()
{
    XPLMClearAllMenuItems(MultiMenuId);
    XPLMAppendMenuItem(MultiMenuId, "Multi Panel Widget", (void *) "MULTI_WIDGET", 1);
}