2018-05-18 05:21:22 +00:00
|
|
|
struct AboutWindow : Window {
|
|
|
|
AboutWindow();
|
|
|
|
|
|
|
|
VerticalLayout layout{this};
|
|
|
|
Canvas canvas{&layout, Size{400, 86}, 0};
|
|
|
|
HorizontalLayout informationLayout{&layout, Size{~0, ~0}};
|
|
|
|
Label informationLeft{&informationLayout, Size{~0, 0}, 3};
|
|
|
|
Label informationRight{&informationLayout, Size{~0, 0}};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct Presentation : Window {
|
|
|
|
Presentation();
|
2018-05-19 02:51:34 +00:00
|
|
|
auto clearViewport() -> void;
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
auto resizeViewport() -> void;
|
|
|
|
auto resizeWindow() -> void;
|
|
|
|
auto toggleFullscreenMode() -> void;
|
|
|
|
auto clearRecentGames() -> void;
|
|
|
|
auto updateRecentGames() -> void;
|
|
|
|
auto addRecentGame(string location) -> void;
|
|
|
|
auto updateShaders() -> void;
|
2018-05-18 05:21:22 +00:00
|
|
|
|
|
|
|
MenuBar menuBar{this};
|
2018-05-19 02:51:34 +00:00
|
|
|
Menu systemMenu{&menuBar};
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
MenuItem loadGame{&systemMenu};
|
|
|
|
Menu loadRecentGame{&systemMenu};
|
|
|
|
MenuItem resetSystem{&systemMenu};
|
|
|
|
MenuItem unloadGame{&systemMenu};
|
2018-05-19 02:51:34 +00:00
|
|
|
MenuSeparator portSeparator{&systemMenu};
|
|
|
|
Menu controllerPort1{&systemMenu};
|
|
|
|
Menu controllerPort2{&systemMenu};
|
|
|
|
MenuSeparator quitSeparator{&systemMenu};
|
|
|
|
MenuItem quit{&systemMenu};
|
2018-05-18 05:21:22 +00:00
|
|
|
Menu settingsMenu{&menuBar};
|
2018-05-19 02:51:34 +00:00
|
|
|
Menu viewMenu{&settingsMenu};
|
|
|
|
MenuItem smallView{&viewMenu};
|
|
|
|
MenuItem mediumView{&viewMenu};
|
|
|
|
MenuItem largeView{&viewMenu};
|
|
|
|
MenuSeparator viewSeparator{&viewMenu};
|
|
|
|
MenuCheckItem aspectCorrection{&viewMenu};
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
MenuCheckItem overscanCropping{&viewMenu};
|
2018-05-19 02:51:34 +00:00
|
|
|
MenuCheckItem integralScaling{&viewMenu};
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
Menu shaderMenu{&settingsMenu};
|
2018-05-19 02:51:34 +00:00
|
|
|
MenuCheckItem muteAudio{&settingsMenu};
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
MenuCheckItem showStatusBar{&settingsMenu};
|
|
|
|
MenuSeparator settingsSeparator{&settingsMenu};
|
|
|
|
MenuItem inputSettings{&settingsMenu};
|
|
|
|
MenuItem hotkeySettings{&settingsMenu};
|
|
|
|
MenuItem pathSettings{&settingsMenu};
|
2018-05-18 05:21:22 +00:00
|
|
|
Menu toolsMenu{&menuBar};
|
2018-05-19 02:51:34 +00:00
|
|
|
Menu saveState{&toolsMenu};
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
MenuItem saveState1{&saveState};
|
|
|
|
MenuItem saveState2{&saveState};
|
|
|
|
MenuItem saveState3{&saveState};
|
|
|
|
MenuItem saveState4{&saveState};
|
|
|
|
MenuItem saveState5{&saveState};
|
2018-05-19 02:51:34 +00:00
|
|
|
Menu loadState{&toolsMenu};
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
MenuItem loadState1{&loadState};
|
|
|
|
MenuItem loadState2{&loadState};
|
|
|
|
MenuItem loadState3{&loadState};
|
|
|
|
MenuItem loadState4{&loadState};
|
|
|
|
MenuItem loadState5{&loadState};
|
2018-05-19 02:51:34 +00:00
|
|
|
MenuCheckItem pauseEmulation{&toolsMenu};
|
2018-05-18 05:21:22 +00:00
|
|
|
Menu helpMenu{&menuBar};
|
|
|
|
MenuItem about{&helpMenu};
|
|
|
|
|
|
|
|
FixedLayout layout{this};
|
Update to v106r25 release.
byuu says:
Changelog:
- bsnes:
- added full input mapping support (multi-mapping, digital+analog
inputs, rumble, hotkeys, etc)
- can now load multi-part games (eg Super Game Boy) from the
command-line
- added recent games menu with list clear function; supports
multi-part games (sorting logic incomplete)
- added automatic binding of gamepads on new configuration files
- added view scaling support with aspect correction, overscan
cropping, and integral scaling modes
- added video shader support
- added status bar (can be hidden)
- added save states (both menu and hotkeys)
- added fullscreen mode support
- added support for loading compressed (ZIP) archives for any
supported media type (SNES, GB, etc)
- added frame counter
- added auto-memory saving
- added pause / block-input modes when main window loses focus
- added --fullscreen command-line option to start bsnes in
fullscreen mode
- added input settings panel
- added hotkeys settings panel
- added path settings panel (paths aren't actually used set, but
can be assigned)
- higan: fixed macOS install rule [Sintendo]
- higan: minor UI code cleanups
- nall: renamed Processor to Architecture to fix macOS builds
[Sintendo]
Yeah, you read right: recent games menu, path settings. And dynamic rate
control + screensaver suppression is on the todo list. I'm not fucking
around this time. I really want to make something special here.
2018-05-23 03:45:24 +00:00
|
|
|
Viewport viewport{&layout, Geometry{0, 0, 1, 1}};
|
|
|
|
|
|
|
|
StatusBar statusBar{this};
|
2018-05-18 05:21:22 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
extern unique_pointer<AboutWindow> aboutWindow;
|
|
|
|
extern unique_pointer<Presentation> presentation;
|