MCPcopy Create free account
hub / github.com/OpenStarbound/OpenStarbound / GraphicsMenu

Method GraphicsMenu

source/frontend/StarGraphicsMenu.cpp:16–133  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

14namespace Star {
15
16GraphicsMenu::GraphicsMenu(PaneManager* manager,UniverseClientPtr client)
17 : m_paneManager(manager) {
18 GuiReader reader;
19 reader.registerCallback("cancel",
20 [&](Widget*) {
21 dismiss();
22 });
23 reader.registerCallback("accept",
24 [&](Widget*) {
25 apply();
26 applyWindowSettings();
27 });
28 reader.registerCallback("resSlider", [=](Widget*) {
29 Vec2U res = m_resList[fetchChild<SliderBarWidget>("resSlider")->val()];
30 m_localChanges.set("fullscreenResolution", jsonFromVec2U(res));
31 syncGui();
32 });
33 reader.registerCallback("interfaceScaleSlider", [=](Widget*) {
34 auto interfaceScaleSlider = fetchChild<SliderBarWidget>("interfaceScaleSlider");
35 m_localChanges.set("interfaceScale", (uint64_t)m_interfaceScaleList[interfaceScaleSlider->val()]);
36 syncGui();
37 });
38 reader.registerCallback("zoomSlider", [=](Widget*) {
39 auto zoomSlider = fetchChild<SliderBarWidget>("zoomSlider");
40 m_localChanges.set("zoomLevel", m_zoomList[zoomSlider->val()]);
41 Root::singleton().configuration()->set("zoomLevel", m_zoomList[zoomSlider->val()]);
42 syncGui();
43 });
44 reader.registerCallback("cameraSpeedSlider", [=](Widget*) {
45 auto cameraSpeedSlider = fetchChild<SliderBarWidget>("cameraSpeedSlider");
46 m_localChanges.set("cameraSpeedFactor", m_cameraSpeedList[cameraSpeedSlider->val()]);
47 Root::singleton().configuration()->set("cameraSpeedFactor", m_cameraSpeedList[cameraSpeedSlider->val()]);
48 syncGui();
49 });
50 reader.registerCallback("speechBubbleCheckbox", [=](Widget*) {
51 auto button = fetchChild<ButtonWidget>("speechBubbleCheckbox");
52 m_localChanges.set("speechBubbles", button->isChecked());
53 Root::singleton().configuration()->set("speechBubbles", button->isChecked());
54 syncGui();
55 });
56 reader.registerCallback("interactiveHighlightCheckbox", [=](Widget*) {
57 auto button = fetchChild<ButtonWidget>("interactiveHighlightCheckbox");
58 m_localChanges.set("interactiveHighlight", button->isChecked());
59 Root::singleton().configuration()->set("interactiveHighlight", button->isChecked());
60 syncGui();
61 });
62 reader.registerCallback("fullscreenCheckbox", [=](Widget*) {
63 bool checked = fetchChild<ButtonWidget>("fullscreenCheckbox")->isChecked();
64 m_localChanges.set("fullscreen", checked);
65 if (checked)
66 m_localChanges.set("borderless", !checked);
67 syncGui();
68 });
69 reader.registerCallback("borderlessCheckbox", [=](Widget*) {
70 bool checked = fetchChild<ButtonWidget>("borderlessCheckbox")->isChecked();
71 m_localChanges.set("borderless", checked);
72 if (checked)
73 m_localChanges.set("fullscreen", !checked);

Callers

nothing calls this directly

Calls 15

jsonFromVec2UFunction · 0.85
singletonClass · 0.85
jsonToIntListFunction · 0.85
jsonToVec2UListFunction · 0.85
jsonToFloatListFunction · 0.85
valMethod · 0.80
configurationMethod · 0.80
isCheckedMethod · 0.80
setCursorHardwareMethod · 0.80
assetsMethod · 0.80
jsonMethod · 0.80
getStringMethod · 0.80

Tested by

no test coverage detected