2 // mainwin.h: Header file
5 // (C) 2010 Underground Software
11 //Hrm. uh??? I thought this wasn't the way to do this stuff...???
15 #define RING_BUFFER_SIZE 32
17 // Forward declarations
21 class FilePickerWindow;
22 class MemoryBrowserWindow;
23 class CPUBrowserWindow;
24 class OPBrowserWindow;
25 class M68KDasmBrowserWindow;
26 class RISCDasmBrowserWindow;
28 class MainWin: public QMainWindow
30 // All Qt apps require this macro for signal/slot functionality to work
36 void LoadFile(QString);
40 void closeEvent(QCloseEvent *);
41 void keyPressEvent(QKeyEvent *);
42 void keyReleaseEvent(QKeyEvent *);
48 void TogglePowerState(void);
49 void ToggleRunState(void);
50 void SetZoom100(void);
51 void SetZoom200(void);
52 void SetZoom300(void);
55 void ToggleBlur(void);
56 void ShowAboutWin(void);
57 void ShowHelpWin(void);
58 void InsertCart(void);
60 void LoadSoftware(QString);
61 void ToggleCDUsage(void);
62 void FrameAdvance(void);
63 void ToggleFullScreen(void);
65 void ShowMemoryBrowserWin(void);
66 void ShowCPUBrowserWin(void);
67 void ShowOPBrowserWin(void);
68 void ShowM68KDasmBrowserWin(void);
69 void ShowRISCDasmBrowserWin(void);
72 void HandleKeys(QKeyEvent *, bool);
73 void HandleGamepads(void);
74 void SetFullScreen(bool state = true);
75 void ResizeMainWindow(void);
76 void ReadSettings(void);
77 void WriteSettings(void);
78 void WriteUISettings(void);
81 GLWidget * videoWidget;
82 AboutWindow * aboutWin;
84 FilePickerWindow * filePickWin;
85 MemoryBrowserWindow * memBrowseWin;
86 CPUBrowserWindow * cpuBrowseWin;
87 OPBrowserWindow * opBrowseWin;
88 M68KDasmBrowserWindow * m68kDasmBrowseWin;
89 RISCDasmBrowserWindow * riscDasmBrowseWin;
94 bool showUntunedTankCircuit;
96 bool allowUnknownSoftware;
98 // bool alpineLoadSuccessful;
99 bool pauseForFileSelector;
104 bool plzDontKillMyComputer;
105 uint32_t oldTimestamp;
106 uint32_t ringBufferPointer;
107 uint32_t ringBuffer[RING_BUFFER_SIZE];
109 QPoint mainWinPosition;
110 // QSize mainWinSize;
111 int lastEditedProfile;
118 QActionGroup * zoomActs;
119 QActionGroup * tvTypeActs;
121 QAction * quitAppAct;
132 QAction * filePickAct;
135 QAction * frameAdvanceAct;
136 QAction * fullScreenAct;
138 QAction * memBrowseAct;
139 QAction * cpuBrowseAct;
140 QAction * opBrowseAct;
141 QAction * m68kDasmBrowseAct;
142 QAction * riscDasmBrowseAct;
146 uint32_t testPattern[VIRTUAL_SCREEN_WIDTH * VIRTUAL_SCREEN_HEIGHT_PAL];
149 #endif // __MAINWIN_H__