| 15 | namespace Star { |
| 16 | |
| 17 | OptionsMenu::OptionsMenu(PaneManager* manager, UniverseClientPtr client) |
| 18 | : m_sfxRange(0, 100), m_musicRange(0, 100), m_paneManager(manager) { |
| 19 | auto root = Root::singletonPtr(); |
| 20 | auto assets = root->assets(); |
| 21 | |
| 22 | GuiReader reader; |
| 23 | |
| 24 | reader.registerCallback("instrumentSlider", [=](Widget*) { |
| 25 | updateInstrumentVol(); |
| 26 | }); |
| 27 | reader.registerCallback("sfxSlider", [=](Widget*) { |
| 28 | updateSFXVol(); |
| 29 | }); |
| 30 | reader.registerCallback("musicSlider", [=](Widget*) { |
| 31 | updateMusicVol(); |
| 32 | }); |
| 33 | reader.registerCallback("acceptButton", [=](Widget*) { |
| 34 | for (auto k : ConfigKeys) |
| 35 | root->configuration()->set(k, m_localChanges.get(k)); |
| 36 | |
| 37 | dismiss(); |
| 38 | }); |
| 39 | reader.registerCallback("tutorialMessagesCheckbox", [=](Widget*) { |
| 40 | updateTutorialMessages(); |
| 41 | }); |
| 42 | reader.registerCallback("clientIPJoinableCheckbox", [=](Widget*) { |
| 43 | updateClientIPJoinable(); |
| 44 | }); |
| 45 | reader.registerCallback("clientP2PJoinableCheckbox", [=](Widget*) { |
| 46 | updateClientP2PJoinable(); |
| 47 | }); |
| 48 | reader.registerCallback("allowAssetsMismatchCheckbox", [=](Widget*) { |
| 49 | updateAllowAssetsMismatch(); |
| 50 | }); |
| 51 | reader.registerCallback("headRotationCheckbox", [=](Widget*) { |
| 52 | updateHeadRotation(); |
| 53 | }); |
| 54 | reader.registerCallback("backButton", [=](Widget*) { |
| 55 | dismiss(); |
| 56 | }); |
| 57 | reader.registerCallback("showKeybindings", [=](Widget*) { |
| 58 | displayControls(); |
| 59 | }); |
| 60 | reader.registerCallback("showVoiceSettings", [=](Widget*) { |
| 61 | displayVoiceSettings(); |
| 62 | }); |
| 63 | reader.registerCallback("showVoicePlayers", [=](Widget*) { |
| 64 | |
| 65 | }); |
| 66 | reader.registerCallback("showModBindings", [=](Widget*) { |
| 67 | displayModBindings(); |
| 68 | }); |
| 69 | reader.registerCallback("showGraphics", [=](Widget*) { |
| 70 | displayGraphics(); |
| 71 | }); |
| 72 | |
| 73 | Json config = assets->json("/interface/optionsmenu/optionsmenu.config"); |
| 74 |
nothing calls this directly
no test coverage detected