@@ -2663,25 +2663,64 @@ void GuiMenu::openRetroDeckGodotConfigurator()
26632663 // You can add any checks for the script's outcome here.
26642664}
26652665
2666- #endif
2667-
2668- #if defined(RETRODECK)
26692666void GuiMenu::openESDEConfiguration ()
26702667{
26712668 auto s = new GuiSettings (_ (" ES-DE CONFIGURATIONS" ));
26722669
2673- // Logging level setting for RetroDECK
2674- auto loggingLevel = std::make_shared<OptionListComponent<std::string>>(_ (" LOGGING LEVEL" ), false );
2675- loggingLevel->add (_ (" DEBUG" ), " debug" , Settings::getInstance ()->getString (" LoggingLevel" ) == " debug" );
2676- loggingLevel->add (_ (" INFO" ), " info" , Settings::getInstance ()->getString (" LoggingLevel" ) == " info" );
2677- loggingLevel->add (_ (" WARNING" ), " warning" , Settings::getInstance ()->getString (" LoggingLevel" ) == " warning" );
2678- loggingLevel->add (_ (" ERROR" ), " error" , Settings::getInstance ()->getString (" LoggingLevel" ) == " error" );
2679- s->addWithLabel (_ (" LOGGING LEVEL" ), loggingLevel);
2680- s->addSaveFunc ([loggingLevel] {
2681- Settings::getInstance ()->setString (" LoggingLevel" , loggingLevel->getSelected ());
2682- Settings::getInstance ()->saveFile ();
2683- Log::setReportingLevelFromEnv (); // Assuming this function exists to update logging level
2684- });
2670+ // UI Settings submenu
2671+ ComponentListRow uiSettingsRow;
2672+ uiSettingsRow.elements .clear ();
2673+ uiSettingsRow.addElement (std::make_shared<TextComponent>(_ (" UI SETTINGS" ),
2674+ Font::get (FONT_SIZE_MEDIUM),
2675+ mMenuColorPrimary ),
2676+ true );
2677+ uiSettingsRow.addElement (mMenu .makeArrow (), false );
2678+ uiSettingsRow.makeAcceptInputHandler (std::bind (&GuiMenu::openUIOptions, this ));
2679+ s->addRow (uiSettingsRow);
2680+
2681+ // Sound Settings submenu
2682+ ComponentListRow soundSettingsRow;
2683+ soundSettingsRow.elements .clear ();
2684+ soundSettingsRow.addElement (std::make_shared<TextComponent>(_ (" SOUND SETTINGS" ),
2685+ Font::get (FONT_SIZE_MEDIUM),
2686+ mMenuColorPrimary ),
2687+ true );
2688+ soundSettingsRow.addElement (mMenu .makeArrow (), false );
2689+ soundSettingsRow.makeAcceptInputHandler (std::bind (&GuiMenu::openSoundOptions, this ));
2690+ s->addRow (soundSettingsRow);
2691+
2692+ // Input Device Settings submenu
2693+ ComponentListRow inputDeviceSettingsRow;
2694+ inputDeviceSettingsRow.elements .clear ();
2695+ inputDeviceSettingsRow.addElement (std::make_shared<TextComponent>(_ (" INPUT DEVICE SETTINGS" ),
2696+ Font::get (FONT_SIZE_MEDIUM),
2697+ mMenuColorPrimary ),
2698+ true );
2699+ inputDeviceSettingsRow.addElement (mMenu .makeArrow (), false );
2700+ inputDeviceSettingsRow.makeAcceptInputHandler (std::bind (&GuiMenu::openInputDeviceOptions, this ));
2701+ s->addRow (inputDeviceSettingsRow);
2702+
2703+ // Game Collection Settings submenu
2704+ ComponentListRow collectionSettingsRow;
2705+ collectionSettingsRow.elements .clear ();
2706+ collectionSettingsRow.addElement (std::make_shared<TextComponent>(_ (" GAME COLLECTION SETTINGS" ),
2707+ Font::get (FONT_SIZE_MEDIUM),
2708+ mMenuColorPrimary ),
2709+ true );
2710+ collectionSettingsRow.addElement (mMenu .makeArrow (), false );
2711+ collectionSettingsRow.makeAcceptInputHandler (std::bind (&GuiMenu::openCollectionSystemOptions, this ));
2712+ s->addRow (collectionSettingsRow);
2713+
2714+ // Other Settings submenu
2715+ ComponentListRow otherSettingsRow;
2716+ otherSettingsRow.elements .clear ();
2717+ otherSettingsRow.addElement (std::make_shared<TextComponent>(_ (" OTHER SETTINGS" ),
2718+ Font::get (FONT_SIZE_MEDIUM),
2719+ mMenuColorPrimary ),
2720+ true );
2721+ otherSettingsRow.addElement (mMenu .makeArrow (), false );
2722+ otherSettingsRow.makeAcceptInputHandler (std::bind (&GuiMenu::openOtherOptions, this ));
2723+ s->addRow (otherSettingsRow);
26852724
26862725 mWindow ->pushGui (s);
26872726}
0 commit comments