osb/source/frontend/StarGraphicsMenu.hpp

44 lines
752 B
C++
Raw Normal View History

#pragma once
2023-06-20 14:33:09 +10:00
#include "StarPane.hpp"
2024-12-18 22:26:59 -08:00
#include "StarMainInterfaceTypes.hpp"
#include "StarUniverseClient.hpp"
2023-06-20 14:33:09 +10:00
namespace Star {
STAR_CLASS(GraphicsMenu);
2024-12-18 22:26:59 -08:00
STAR_CLASS(ShadersMenu);
2023-06-20 14:33:09 +10:00
class GraphicsMenu : public Pane {
public:
2024-12-18 22:26:59 -08:00
GraphicsMenu(PaneManager* manager,UniverseClientPtr client);
2023-06-20 14:33:09 +10:00
void show() override;
void dismissed() override;
void toggleFullscreen();
private:
static StringList const ConfigKeys;
void initConfig();
void syncGui();
void apply();
void applyWindowSettings();
2024-12-18 22:26:59 -08:00
void displayShaders();
2023-06-20 14:33:09 +10:00
List<Vec2U> m_resList;
2024-05-25 12:52:07 +10:00
List<int> m_interfaceScaleList;
2023-06-20 14:33:09 +10:00
List<float> m_zoomList;
List<float> m_cameraSpeedList;
2023-06-20 14:33:09 +10:00
JsonObject m_localChanges;
2024-12-18 22:26:59 -08:00
ShadersMenuPtr m_shadersMenu;
PaneManager* m_paneManager;
2023-06-20 14:33:09 +10:00
};
}