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;
98 bool allowUnknownSoftware;
100 // bool alpineLoadSuccessful;
101 bool pauseForFileSelector;
105 bool scannedSoftwareFolder;
107 bool plzDontKillMyComputer;
108 uint32_t oldTimestamp;
109 uint32_t ringBufferPointer;
110 uint32_t ringBuffer[RING_BUFFER_SIZE];
112 QPoint mainWinPosition;
113 // QSize mainWinSize;
114 int lastEditedProfile;
121 QActionGroup * zoomActs;
122 QActionGroup * tvTypeActs;
124 QAction * quitAppAct;
135 QAction * filePickAct;
138 QAction * frameAdvanceAct;
139 QAction * fullScreenAct;
141 QAction * memBrowseAct;
142 QAction * cpuBrowseAct;
143 QAction * opBrowseAct;
144 QAction * m68kDasmBrowseAct;
145 QAction * riscDasmBrowseAct;
150 uint32_t testPattern[VIRTUAL_SCREEN_WIDTH * VIRTUAL_SCREEN_HEIGHT_PAL];
151 uint32_t testPattern2[VIRTUAL_SCREEN_WIDTH * VIRTUAL_SCREEN_HEIGHT_PAL];
154 #endif // __MAINWIN_H__