mirror of https://github.com/bsnes-emu/bsnes.git
81 lines
3.2 KiB
C++
81 lines
3.2 KiB
C++
struct AboutWindow : Window {
|
|
AboutWindow();
|
|
|
|
VerticalLayout layout{this};
|
|
Canvas canvas{&layout, Size{399, 95}, 15};
|
|
HorizontalLayout informationLayout{&layout, Size{~0, 0}};
|
|
Label informationLeft{&informationLayout, Size{~0, 0}, 3};
|
|
Label informationRight{&informationLayout, Size{~0, 0}};
|
|
};
|
|
|
|
struct Presentation : Window {
|
|
Presentation();
|
|
auto updateEmulator() -> void;
|
|
auto clearViewport() -> void;
|
|
auto resizeViewport(bool resizeWindow = true) -> void;
|
|
auto toggleFullScreen() -> void;
|
|
auto loadShaders() -> void;
|
|
|
|
MenuBar menuBar{this};
|
|
Menu libraryMenu{&menuBar};
|
|
Menu systemMenu{&menuBar};
|
|
Menu inputPort1{&systemMenu};
|
|
Menu inputPort2{&systemMenu};
|
|
Menu inputPort3{&systemMenu};
|
|
MenuSeparator systemMenuSeparatorPorts{&systemMenu};
|
|
MenuItem reloadSystem{&systemMenu};
|
|
MenuItem unloadSystem{&systemMenu};
|
|
Menu settingsMenu{&menuBar};
|
|
Menu videoScaleMenu{&settingsMenu};
|
|
MenuItem videoScaleSmall{&videoScaleMenu};
|
|
MenuItem videoScaleMedium{&videoScaleMenu};
|
|
MenuItem videoScaleLarge{&videoScaleMenu};
|
|
Menu videoEmulationMenu{&settingsMenu};
|
|
MenuCheckItem blurEmulation{&videoEmulationMenu};
|
|
MenuCheckItem colorEmulation{&videoEmulationMenu};
|
|
MenuCheckItem scanlineEmulation{&videoEmulationMenu};
|
|
Menu videoShaderMenu{&settingsMenu};
|
|
MenuRadioItem videoShaderNone{&videoShaderMenu};
|
|
MenuRadioItem videoShaderBlur{&videoShaderMenu};
|
|
Group videoShaders{&videoShaderNone, &videoShaderBlur};
|
|
MenuSeparator videoSettingsSeparator{&settingsMenu};
|
|
MenuCheckItem synchronizeVideo{&settingsMenu};
|
|
MenuCheckItem synchronizeAudio{&settingsMenu};
|
|
MenuCheckItem muteAudio{&settingsMenu};
|
|
MenuCheckItem showStatusBar{&settingsMenu};
|
|
MenuSeparator settingsSeparator{&settingsMenu};
|
|
MenuItem showVideoSettings{&settingsMenu};
|
|
MenuItem showAudioSettings{&settingsMenu};
|
|
MenuItem showInputSettings{&settingsMenu};
|
|
MenuItem showHotkeySettings{&settingsMenu};
|
|
MenuItem showAdvancedSettings{&settingsMenu};
|
|
Menu toolsMenu{&menuBar};
|
|
Menu saveQuickStateMenu{&toolsMenu};
|
|
MenuItem saveSlot1{&saveQuickStateMenu};
|
|
MenuItem saveSlot2{&saveQuickStateMenu};
|
|
MenuItem saveSlot3{&saveQuickStateMenu};
|
|
MenuItem saveSlot4{&saveQuickStateMenu};
|
|
MenuItem saveSlot5{&saveQuickStateMenu};
|
|
Menu loadQuickStateMenu{&toolsMenu};
|
|
MenuItem loadSlot1{&loadQuickStateMenu};
|
|
MenuItem loadSlot2{&loadQuickStateMenu};
|
|
MenuItem loadSlot3{&loadQuickStateMenu};
|
|
MenuItem loadSlot4{&loadQuickStateMenu};
|
|
MenuItem loadSlot5{&loadQuickStateMenu};
|
|
MenuSeparator toolsMenuSeparator{&toolsMenu};
|
|
MenuItem cheatEditor{&toolsMenu};
|
|
MenuItem stateManager{&toolsMenu};
|
|
MenuItem manifestViewer{&toolsMenu};
|
|
Menu helpMenu{&menuBar};
|
|
MenuItem documentation{&helpMenu};
|
|
MenuItem about{&helpMenu};
|
|
|
|
FixedLayout layout{this};
|
|
Viewport viewport{&layout, Geometry{0, 0, 1, 1}};
|
|
|
|
StatusBar statusBar{this};
|
|
};
|
|
|
|
extern unique_pointer<AboutWindow> aboutWindow;
|
|
extern unique_pointer<Presentation> presentation;
|