mmenu; added Pick Skin and Manage Categories type options to Configure menu (still...
[pandora-libraries.git] / minimenu / mmconf.c
index b67b834..3f2fac2 100644 (file)
@@ -34,6 +34,7 @@ confitem_t page_general[] = {
   { "Show directory browser tabs",   "Show a tab for each SD card?",                            "0",                "filesystem.do_browser",   ct_boolean },
   { "Detail panel on start?",        "Show or hide the detail panel when menu starts",          "1",                "display.show_detail_pane", ct_boolean },
   { "Sub-categories as folders?",    "If no, uses tabs instead of folders within tabs.",        "1",                "tabs.subcat_as_folders",  ct_boolean },
+  { "Sub-category apps in their main cat?","If no, apps with subcategories are only in subcategories","1",          "tabs.subcat_to_parent",   ct_boolean },
   { "Start with app selected",       "Whethor selection is placed by default or not",           "0",                "minimenu.start_selected", ct_boolean },
   { "Auto discover pnd apps?",       "If no, turn on diectory browser to manually find apps",   "1",                "filesystem.do_pnd_disco", ct_boolean },
   // dropped option -- we now strictly enforce free desktop categories (or user defined, but no more bogus PXML categories)
@@ -65,6 +66,8 @@ confitem_t pages[] = {
   { "General Options",           "Miscellaneous handy options",                             NULL /* default */, NULL,                      ct_switch_page, page_general },
   { "Show/Hide Applications",    "Each application can be hidden/revealed",                 NULL /* default */, NULL,                      ct_switch_page, page_appshowhide },
   { "Show/Hide/Order Tabs",      "Each tab can be hidden/revealed or re-ordered",           NULL /* default */, NULL,                      ct_switch_page, page_tabshowhide },
+  { "Manage Custom Categories",  "Can make your own categories/tabs",                       NULL /* default */, NULL,                      ct_go_manage_categories },
+  { "Select a Minimenu Skin",    "Download alternate look and feels!",                      NULL /* default */, NULL,                      ct_go_manage_skins },
   { "",                          "",                                                        NULL,               NULL,                      ct_nil },
   { "Exit configuration",        "Quit and save configuration",                             NULL /* default */, NULL,                      ct_exit },
   { "",                          "",                                                        NULL,               NULL,                      ct_nil },
@@ -223,6 +226,8 @@ unsigned char conf_run_menu ( confitem_t *toplevel ) {
            break;
 
          case ct_nil:
+         case ct_go_manage_categories:
+         case ct_go_manage_skins:
          case ct_switch_page:
          case ct_reset:
          case ct_exit:
@@ -252,6 +257,14 @@ unsigned char conf_run_menu ( confitem_t *toplevel ) {
            page = page [ sel ].newhead;
            sel = 0; // should use a stack..
            break;
+         case ct_go_manage_categories:
+           ui_manage_categories();
+           break;
+         case ct_go_manage_skins:
+           if ( ui_pick_skin() ) {
+             emit_and_quit ( MM_RESTART );
+           }
+           break;
          case ct_filename:
            break;
          case ct_nil:
@@ -372,6 +385,8 @@ void conf_display_page ( confitem_t *page, unsigned int selitem, unsigned int fi
       break;
     case ct_exit:
       break;
+    case ct_go_manage_categories:
+    case ct_go_manage_skins:
     case ct_nil:
       break;
     } // switch
@@ -408,6 +423,8 @@ void conf_display_page ( confitem_t *page, unsigned int selitem, unsigned int fi
     case ct_reset:
     case ct_exit:
     case ct_visible_tab_list:
+    case ct_go_manage_categories:
+    case ct_go_manage_skins:
       break;
     } // switch
 
@@ -512,6 +529,8 @@ char *conf_format_int ( int v, change_type_e c ) {
   case ct_switch_page:
   case ct_visible_tab_list:
   case ct_nil:
+  case ct_go_manage_categories:
+  case ct_go_manage_skins:
     break;
 
   } // switch