Fix a crash when emulator, in non-debugger mode, opens the breakpoint UIs at launch
[clinton/Virtual-Jaguar-Rx.git] / src / gui / mainwin.h
index ac98b38..e0aa8d1 100644 (file)
@@ -4,6 +4,8 @@
 // by James Hammons\r
 // (C) 2010 Underground Software\r
 //\r
+// Modified by Jean-Paul Mari\r
+//\r
 \r
 #ifndef __MAINWIN_H__\r
 #define __MAINWIN_H__\r
 \r
 // Main windows\r
 class GLWidget;\r
-class VideoWindow;\r
+//class VideoWindow;\r
 class AboutWindow;\r
 class HelpWindow;\r
 class FilePickerWindow;\r
 //class VideoOutputWindow;\r
-class DasmWindow;\r
+//class DasmWindow;\r
 class m68KDasmWindow;\r
 class GPUDasmWindow;\r
 class DSPDasmWindow;\r
@@ -41,10 +43,14 @@ class LocalBrowserWindow;
 class CallStackBrowserWindow;\r
 class HeapAllocatorBrowserWindow;\r
 class Memory1BrowserWindow;\r
-class BrkWindow;\r
+class BreakpointsWindow;\r
+class NewFnctBreakpointWindow;\r
 class ExceptionVectorTableBrowserWindow;\r
+class FilesrcListWindow;\r
+class CartFilesListWindow;\r
 \r
 \r
+// \r
 class MainWin: public QMainWindow\r
 {\r
        // All Qt apps require this macro for signal/slot functionality to work\r
@@ -55,9 +61,11 @@ class MainWin: public QMainWindow
                MainWin(bool);\r
                void LoadFile(QString);\r
                void SyncUI(void);\r
-               void    DebuggerRefreshWindows(void);\r
-               void    DebuggerResetWindows(void);\r
-               void    RefreshAlpineWindows(void);\r
+               void DebuggerRefreshWindows(void);\r
+               void ViewRefreshWindows(void);\r
+               void AlpineRefreshWindows(void);\r
+               void DebuggerResetWindows(void);\r
+               void DebuggerReset(void);\r
 \r
        protected:\r
                void closeEvent(QCloseEvent *);\r
@@ -96,9 +104,15 @@ class MainWin: public QMainWindow
                void ShowHeapAllocatorBrowserWin(void);\r
                void ShowMemory1BrowserWin(int NumWin);\r
                void ShowExceptionVectorTableBrowserWin(void);\r
-               void NewBreakpointFunction(void);\r
+               void ShowNewFunctionBreakpointWin(void);\r
+               void ShowBreakpointsWin(void);\r
+               void DeleteAllBreakpoints(void);\r
+               void DisableAllBreakpoints(void);\r
+#if 0\r
                void ShowVideoOutputWin(void);\r
                void ShowDasmWin(void);\r
+#endif\r
+               void ShowCartFilesListWin(void);\r
                // Alpine\r
                void ShowMemoryBrowserWin(void);\r
                void ShowStackBrowserWin(void);\r
@@ -121,31 +135,34 @@ class MainWin: public QMainWindow
                GLWidget *videoWidget;\r
                QMdiArea *mainWindowCentrale;\r
                QMdiSubWindow *VideoOutputWindowCentrale;\r
-               AboutWindow * aboutWin;\r
-               HelpWindow * helpWin;\r
-               FilePickerWindow * filePickWin;\r
-               EmuStatusWindow * emuStatusWin;\r
-               MemoryBrowserWindow * memBrowseWin;\r
-               StackBrowserWindow * stackBrowseWin;\r
-               CPUBrowserWindow * cpuBrowseWin;\r
-               OPBrowserWindow * opBrowseWin;\r
-               M68KDasmBrowserWindow * m68kDasmBrowseWin;\r
-               RISCDasmBrowserWindow * riscDasmBrowseWin;\r
-               //VideoOutputWindow * VideoOutputWin;\r
+               AboutWindow *aboutWin;\r
+               HelpWindow *helpWin;\r
+               FilePickerWindow *filePickWin;\r
+               EmuStatusWindow *emuStatusWin;\r
+               MemoryBrowserWindow *memBrowseWin;\r
+               StackBrowserWindow *stackBrowseWin;\r
+               CPUBrowserWindow *cpuBrowseWin;\r
+               OPBrowserWindow *opBrowseWin;\r
+               M68KDasmBrowserWindow *m68kDasmBrowseWin;\r
+               RISCDasmBrowserWindow *riscDasmBrowseWin;\r
+               //VideoOutputWindow *VideoOutputWin;\r
                AllWatchBrowserWindow *allWatchBrowseWin;\r
                LocalBrowserWindow *LocalBrowseWin;\r
                CallStackBrowserWindow *CallStackBrowseWin;\r
                ExceptionVectorTableBrowserWindow *exceptionvectortableBrowseWin;\r
                HeapAllocatorBrowserWindow *heapallocatorBrowseWin;\r
                Memory1BrowserWindow **mem1BrowseWin;\r
-               DasmWindow * DasmWin;\r
+               //DasmWindow * DasmWin;\r
                QTabWidget *dasmtabWidget;\r
                //QDockWidget *dasmtabWidget;\r
                m68KDasmWindow *m68kDasmWin;\r
                GPUDasmWindow *GPUDasmWin;\r
                DSPDasmWindow *DSPDasmWin;\r
-               BrkWindow *brkWin;\r
-               QTimer * timer;\r
+               FilesrcListWindow *FilesrcListWin;\r
+               BreakpointsWindow *BreakpointsWin;\r
+               NewFnctBreakpointWindow *NewFunctionBreakpointWin;\r
+               CartFilesListWindow *CartFilesListWin;\r
+               QTimer *timer;\r
                bool running;\r
                int zoomLevel;\r
                bool powerButtonOn;\r
@@ -174,9 +191,10 @@ class MainWin: public QMainWindow
                QPoint mainWinPosition;\r
 //             QSize mainWinSize;\r
                int lastEditedProfile;\r
-               QMenu * fileMenu;\r
-               QMenu * helpMenu;\r
-               QMenu * debugMenu, * debugWindowsMenu, *debugWindowsBrowsesMenu, *debugWindowsWatchMenu, *debugWindowOutputMenu, *debugWindowExceptionMenu, *debugWindowsMemoryMenu, *debugNewBreakpointMenu;\r
+               QMenu *fileMenu;\r
+               QMenu *helpMenu;\r
+               QMenu *debugMenu, *debugWindowsMenu, *debugWindowsBrowsesMenu, *debugWindowsWatchMenu, *debugWindowOutputMenu, *debugWindowExceptionMenu, *debugWindowsMemoryMenu, *debugNewBreakpointMenu;\r
+               QMenu *viewMenu, *viewCartMenu;\r
                QToolBar * toolbar;\r
                QToolBar * debugbar;\r
                QToolBar * debuggerbar;\r
@@ -184,28 +202,25 @@ class MainWin: public QMainWindow
                QActionGroup * zoomActs;\r
                QActionGroup * tvTypeActs;\r
 \r
-               QAction * quitAppAct;\r
-               QAction * powerAct;\r
-               QAction * pauseAct;\r
-               QAction * x1Act;\r
-               QAction * x2Act;\r
-               QAction * x3Act;\r
-               QAction * ntscAct;\r
-               QAction * palAct;\r
-               QAction * blurAct;\r
-               QAction * aboutAct;\r
-               QAction * helpAct;\r
-               QAction * filePickAct;\r
-               QAction * configAct;\r
-               QAction * emustatusAct;\r
-               QAction * useCDAct;\r
-               QAction * frameAdvanceAct;\r
-               QAction *traceStepOverAct;\r
-               QAction *traceStepIntoAct;\r
-               QAction *restartAct;\r
-               QAction * fullScreenAct;\r
-               QAction *DasmAct;\r
-               QAction *screenshotAct;;\r
+               QAction *quitAppAct;\r
+               QAction *powerAct;\r
+               QAction *pauseAct;\r
+               QAction *x1Act;\r
+               QAction *x2Act;\r
+               QAction *x3Act;\r
+               QAction *ntscAct;\r
+               QAction *palAct;\r
+               QAction *blurAct;\r
+               QAction *aboutAct;\r
+               QAction *helpAct;\r
+               QAction *filePickAct;\r
+               QAction *configAct;\r
+               QAction *emustatusAct;\r
+               QAction *useCDAct;\r
+               QAction *frameAdvanceAct;\r
+               QAction *fullScreenAct;\r
+               //QAction *DasmAct;\r
+               QAction *screenshotAct;\r
 \r
                // Alpine\r
                QAction *memBrowseAct;\r
@@ -216,14 +231,21 @@ class MainWin: public QMainWindow
                QAction *riscDasmBrowseAct;\r
 \r
                // Debugger\r
-               QAction *VideoOutputAct;\r
+               QAction *traceStepOverAct;\r
+               QAction *traceStepIntoAct;\r
+               QAction *restartAct;\r
+               //QAction *VideoOutputAct;\r
                QAction *heapallocatorBrowseAct;\r
                QAction *allWatchBrowseAct;\r
                QAction *LocalBrowseAct;\r
                QAction *CallStackBrowseAct;\r
                QAction **mem1BrowseAct;\r
-               QAction *newBreakpointFunctionAct;\r
+               QAction *newFunctionBreakpointAct;\r
+               QAction *BreakpointsAct;\r
+               QAction *deleteAllBreakpointsAct;\r
+               QAction *disableAllBreakpointsAct;\r
                QAction *exceptionVectorTableBrowseAct;\r
+               QAction *CartFilesListAct;\r
 \r
                QIcon powerGreen;\r
                QIcon powerRed;\r