2013-01-13 23:29:42 +00:00
|
|
|
#ifndef MAINWINDOW_H
|
|
|
|
#define MAINWINDOW_H
|
|
|
|
|
|
|
|
#include <QMainWindow>
|
2013-02-06 17:49:20 +00:00
|
|
|
#include <QTranslator>
|
2013-01-13 23:29:42 +00:00
|
|
|
|
|
|
|
#include "Core/Core.h"
|
|
|
|
#include "input/input_state.h"
|
|
|
|
#include "debugger_disasm.h"
|
2013-02-10 15:36:06 +00:00
|
|
|
#include "debugger_memory.h"
|
2013-01-13 23:29:42 +00:00
|
|
|
#include "controls.h"
|
2013-02-03 23:45:37 +00:00
|
|
|
#include "gamepaddialog.h"
|
2013-01-13 23:29:42 +00:00
|
|
|
|
|
|
|
class QtEmuGL;
|
|
|
|
namespace Ui {
|
|
|
|
class MainWindow;
|
|
|
|
}
|
|
|
|
|
|
|
|
class MainWindow : public QMainWindow
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
public:
|
|
|
|
explicit MainWindow(QWidget *parent = 0);
|
|
|
|
~MainWindow();
|
|
|
|
|
|
|
|
void UpdateMenus();
|
|
|
|
void SetZoom(float zoom);
|
|
|
|
void Create(int argc, const char *argv[], const char *savegame_directory, const char *external_directory, const char *installID);
|
|
|
|
void BrowseAndBoot();
|
|
|
|
void SetNextState(CoreState state);
|
2013-02-12 00:36:16 +00:00
|
|
|
void SetGameTitle(QString text);
|
2013-01-13 23:29:42 +00:00
|
|
|
|
|
|
|
Debugger_Disasm* GetDialogDisasm() { return dialogDisasm; }
|
2013-02-10 15:36:06 +00:00
|
|
|
Debugger_Memory* GetDialogMemory() { return memoryWindow; }
|
2013-01-13 23:29:42 +00:00
|
|
|
CoreState GetNextState() { return nextState; }
|
|
|
|
void closeEvent(QCloseEvent *event);
|
|
|
|
void keyPressEvent(QKeyEvent *);
|
|
|
|
void keyReleaseEvent(QKeyEvent *e);
|
2013-02-10 15:36:06 +00:00
|
|
|
void ShowMemory(u32 addr);
|
|
|
|
void Update();
|
2013-01-13 23:29:42 +00:00
|
|
|
public slots:
|
|
|
|
|
|
|
|
void Boot();
|
2013-02-10 15:36:06 +00:00
|
|
|
void CoreEmitWait(bool);
|
2013-01-13 23:29:42 +00:00
|
|
|
|
|
|
|
private slots:
|
|
|
|
void on_action_FileLoad_triggered();
|
|
|
|
|
|
|
|
void on_action_EmulationRun_triggered();
|
|
|
|
|
|
|
|
void on_action_EmulationStop_triggered();
|
|
|
|
|
|
|
|
void on_action_EmulationPause_triggered();
|
|
|
|
|
|
|
|
void on_action_FileLoadStateFile_triggered();
|
|
|
|
|
|
|
|
void on_action_FileSaveStateFile_triggered();
|
|
|
|
|
|
|
|
void on_action_FileQuickloadState_triggered();
|
|
|
|
|
|
|
|
void on_action_FileQuickSaveState_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsScreen1x_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsScreen2x_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsScreen3x_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsScreen4x_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsBufferedRendering_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsShowDebugStatistics_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsHardwareTransform_triggered();
|
|
|
|
|
|
|
|
void on_action_FileExit_triggered();
|
|
|
|
|
|
|
|
void on_action_CPUDynarec_triggered();
|
|
|
|
|
|
|
|
void on_action_CPUInterpreter_triggered();
|
|
|
|
|
|
|
|
void on_action_DebugLoadMapFile_triggered();
|
|
|
|
|
|
|
|
void on_action_DebugSaveMapFile_triggered();
|
|
|
|
|
|
|
|
void on_action_DebugResetSymbolTable_triggered();
|
|
|
|
|
|
|
|
void on_action_DebugDisassembly_triggered();
|
|
|
|
|
|
|
|
void on_action_DebugMemoryView_triggered();
|
|
|
|
|
|
|
|
void on_action_DebugLog_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsIgnoreIllegalReadsWrites_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsFullScreen_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsWireframe_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsDisplayRawFramebuffer_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsFastMemory_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsLinearFiltering_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsControls_triggered();
|
|
|
|
|
|
|
|
void on_action_HelpOpenWebsite_triggered();
|
|
|
|
|
|
|
|
void on_action_HelpAbout_triggered();
|
|
|
|
|
|
|
|
void on_MainWindow_destroyed();
|
|
|
|
|
|
|
|
void on_actionLogG3DDebug_triggered();
|
|
|
|
|
|
|
|
void on_actionLogG3DWarning_triggered();
|
|
|
|
|
|
|
|
void on_actionLogG3DError_triggered();
|
|
|
|
|
|
|
|
void on_actionLogG3DInfo_triggered();
|
|
|
|
|
|
|
|
void on_actionLogHLEDebug_triggered();
|
|
|
|
|
|
|
|
void on_actionLogHLEWarning_triggered();
|
|
|
|
|
|
|
|
void on_actionLogHLEInfo_triggered();
|
|
|
|
|
|
|
|
void on_actionLogHLEError_triggered();
|
|
|
|
|
|
|
|
void on_actionLogDefDebug_triggered();
|
|
|
|
|
|
|
|
void on_actionLogDefWarning_triggered();
|
|
|
|
|
|
|
|
void on_actionLogDefInfo_triggered();
|
|
|
|
|
|
|
|
void on_actionLogDefError_triggered();
|
|
|
|
|
2013-02-03 23:45:37 +00:00
|
|
|
void on_action_OptionsGamePadControls_triggered();
|
|
|
|
|
2013-02-06 17:49:20 +00:00
|
|
|
void on_language_changed(QAction *action);
|
|
|
|
|
2013-02-10 15:36:06 +00:00
|
|
|
void on_action_EmulationReset_triggered();
|
|
|
|
|
|
|
|
void on_action_DebugDumpFrame_triggered();
|
|
|
|
|
|
|
|
void on_action_EmulationRunLoad_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsVertexCache_triggered();
|
|
|
|
|
|
|
|
void on_action_OptionsUseVBO_triggered();
|
|
|
|
|
2013-02-12 00:40:53 +00:00
|
|
|
void on_action_Simple_2xAA_triggered();
|
|
|
|
|
|
|
|
void on_action_AFOff_triggered();
|
|
|
|
|
|
|
|
void on_action_AF2x_triggered();
|
|
|
|
|
|
|
|
void on_action_AF4x_triggered();
|
|
|
|
|
|
|
|
void on_action_AF8x_triggered();
|
|
|
|
|
|
|
|
void on_action_AF16x_triggered();
|
|
|
|
|
|
|
|
void on_action_Show_FPS_counter_triggered();
|
|
|
|
|
2013-02-13 22:08:55 +00:00
|
|
|
void on_action_Stretch_to_display_triggered();
|
|
|
|
|
|
|
|
void on_action_Sound_triggered();
|
|
|
|
|
2013-01-13 23:29:42 +00:00
|
|
|
private:
|
2013-02-06 17:49:20 +00:00
|
|
|
void loadLanguage(const QString &language);
|
|
|
|
void createLanguageMenu();
|
|
|
|
void changeEvent(QEvent *);
|
|
|
|
|
|
|
|
QTranslator translator;
|
|
|
|
QTranslator qtTranslator;
|
|
|
|
QString currentLanguage;
|
|
|
|
QString languagePath;
|
|
|
|
|
2013-02-12 00:36:16 +00:00
|
|
|
Ui::MainWindow *ui;
|
2013-01-13 23:29:42 +00:00
|
|
|
|
2013-02-12 00:36:16 +00:00
|
|
|
QtEmuGL* emugl;
|
2013-01-13 23:29:42 +00:00
|
|
|
CoreState nextState;
|
|
|
|
|
|
|
|
InputState input_state;
|
|
|
|
|
|
|
|
Debugger_Disasm *dialogDisasm;
|
2013-02-10 15:36:06 +00:00
|
|
|
Debugger_Memory *memoryWindow;
|
2013-01-13 23:29:42 +00:00
|
|
|
Controls* controls;
|
2013-02-03 23:45:37 +00:00
|
|
|
GamePadDialog* gamePadDlg;
|
2013-02-16 12:51:31 +00:00
|
|
|
|
|
|
|
QSet<int> pressedKeys;
|
2013-01-13 23:29:42 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // MAINWINDOW_H
|