diff options
Diffstat (limited to 'src/yuzu/main.h')
-rw-r--r-- | src/yuzu/main.h | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/src/yuzu/main.h b/src/yuzu/main.h index 38e66ccd0..aed15a0a0 100644 --- a/src/yuzu/main.h +++ b/src/yuzu/main.h @@ -13,9 +13,7 @@ #include <QTranslator> #include "common/common_types.h" -#include "core/core.h" #include "core/hle/service/acc/profile_manager.h" -#include "ui_main.h" #include "yuzu/compatibility_list.h" #include "yuzu/hotkeys.h" @@ -45,6 +43,11 @@ enum class StartGameType { Global, // Only uses global configuration }; +namespace Core { +enum class SystemResultStatus : u32; +class System; +} // namespace Core + namespace Core::Frontend { struct ControllerParameters; struct InlineAppearParameters; @@ -73,6 +76,10 @@ enum class SwkbdReplyType : u32; enum class WebExitReason : u32; } // namespace Service::AM::Applets +namespace Ui { +class MainWindow; +} + enum class EmulatedDirectoryTarget { NAND, SDMC, @@ -107,7 +114,7 @@ class GMainWindow : public QMainWindow { public: void filterBarSetChecked(bool state); void UpdateUITheme(); - GMainWindow(); + explicit GMainWindow(); ~GMainWindow() override; bool DropAction(QDropEvent* event); @@ -153,6 +160,7 @@ signals: public slots: void OnLoadComplete(); void OnExecuteProgram(std::size_t program_index); + void OnExit(); void ControllerSelectorReconfigureControllers( const Core::Frontend::ControllerParameters& parameters); void SoftwareKeyboardInitialize( @@ -259,6 +267,7 @@ private slots: void OnMenuInstallToNAND(); void OnMenuRecentFile(); void OnConfigure(); + void OnConfigureTas(); void OnConfigurePerGame(); void OnLoadAmiibo(); void OnOpenYuzuFolder(); @@ -270,10 +279,12 @@ private slots: void ShowFullscreen(); void HideFullscreen(); void ToggleWindowMode(); + void ResetWindowSize(u32 width, u32 height); void ResetWindowSize720(); + void ResetWindowSize900(); void ResetWindowSize1080(); void OnCaptureScreenshot(); - void OnCoreError(Core::System::ResultStatus, std::string); + void OnCoreError(Core::SystemResultStatus, std::string); void OnReinitializeKeys(ReinitializeKeyBehavior behavior); void OnLanguageChanged(const QString& locale); void OnMouseActivity(); @@ -300,9 +311,11 @@ private: void OpenURL(const QUrl& url); void LoadTranslation(); void OpenPerGameConfiguration(u64 title_id, const std::string& file_name); + QString GetTasStateDescription() const; - Ui::MainWindow ui; + std::unique_ptr<Ui::MainWindow> ui; + std::unique_ptr<Core::System> system; std::unique_ptr<DiscordRPC::DiscordInterface> discord_rpc; std::shared_ptr<InputCommon::InputSubsystem> input_subsystem; @@ -318,6 +331,7 @@ private: QLabel* emu_speed_label = nullptr; QLabel* game_fps_label = nullptr; QLabel* emu_frametime_label = nullptr; + QLabel* tas_label = nullptr; QPushButton* gpu_accuracy_button = nullptr; QPushButton* renderer_status_button = nullptr; QPushButton* dock_status_button = nullptr; |