OSDN Git Service

[General][Qt] Cleanup sourcecode of GUI; made abstraction.
authorK.Ohta <whatisthis.sowhat@gmail.com>
Wed, 14 Jan 2015 13:28:41 +0000 (22:28 +0900)
committerK.Ohta <whatisthis.sowhat@gmail.com>
Wed, 14 Jan 2015 13:28:41 +0000 (22:28 +0900)
12 files changed:
source/src/emu.h
source/src/qt/common/emu_utils.h
source/src/qt/common/qt_main.cpp
source/src/qt/common/qt_main.h
source/src/qt/gui/CMakeLists.txt
source/src/qt/gui/mainwidget.h [new file with mode: 0644]
source/src/qt/gui/menu_cmt.cpp
source/src/qt/gui/menu_control.cpp
source/src/qt/gui/menu_disk.cpp
source/src/qt/gui/menu_main.cpp [new file with mode: 0644]
source/src/qt/x1turboz/MainWindow.cpp
source/src/qt/x1turboz/menuclasses.h

index 721867e..b387ec7 100644 (file)
@@ -36,7 +36,8 @@
 \r
 #elif defined(_USE_QT)\r
 # include <SDL/SDL.h>\r
-# include "menuclasses.h"\r
+//# include "menuclasses.h"\r
+# include "mainwidget.h"\r
 # include "qt_gldraw.h"\r
 # include "emu_utils.h"\r
 # include "qt_main.h"\r
index 11f17bc..153ab4e 100644 (file)
@@ -17,4 +17,4 @@ extern void open_disk(int drv, _TCHAR* path, int bank);
 extern void close_disk(int drv);
 #endif
 
-#endif
\ No newline at end of file
+#endif
index e2e2acc..41d8e8c 100644 (file)
@@ -27,7 +27,9 @@
 // emulation core\r
 EMU* emu;\r
 QApplication *GuiMain = NULL;\r
-class Ui_MainWindow *rMainWindow;\r
+\r
+// Start to define MainWindow.\r
+class META_MainWindow *rMainWindow;\r
 \r
 // buttons\r
 #ifdef USE_BUTTON\r
@@ -294,27 +296,27 @@ int screen_mode_count;
 \r
 void set_window(QMainWindow * hWnd, int mode);\r
 \r
-void Ui_MainWindow::OnWindowRedraw(class Ui_MainWindow *p)\r
+void Ui_MainWindow::OnWindowRedraw(void)\r
 {\r
   if(emu) {\r
-      emu->update_screen(p->getGraphicsView());\r
+      emu->update_screen(this->getGraphicsView());\r
   }\r
 }\r
 \r
-void Ui_MainWindow::OnWindowMove(Ui_MainWindow *p)\r
+void Ui_MainWindow::OnWindowMove(void)\r
 {\r
     if(emu) {\r
       emu->suspend();\r
     }\r
 }\r
 \r
-void Ui_MainWindow::OnWindowResize(QMainWindow *p)\r
+void Ui_MainWindow::OnWindowResize(void)\r
 {\r
   if(emu) {\r
     //if(now_fullscreen) {\r
     //emu->set_display_size(-1, -1, false);\r
     //} else {\r
-    set_window(p, config.window_mode);\r
+    set_window(this, config.window_mode);\r
     //}\r
   }\r
 }\r
@@ -377,12 +379,12 @@ extern "C" {
  \r
 }  // extern "C"\r
 \r
-\r
 bool InitInstance(int argc, char *argv[])\r
 {\r
-  rMainWindow = new Ui_MainWindow();\r
+  rMainWindow = new META_MainWindow();\r
 }  \r
 \r
+\r
 #ifdef TRUE\r
 #undef TRUE\r
 #define TRUE true\r
index 74bf8bf..cbc9511 100644 (file)
 #include "simd_types.h"
 #include "common.h"
 //#include "emu.h"
-#include "menuclasses.h"
+//#include "menuclasses.h"
+# include "mainwidget.h"
 #include "qt_dialogs.h"
 
-extern class Ui_MainWindow *rMainWindow;
+extern class META_MainWindow *rMainWindow;
 extern EMU* emu;
 // menu
 extern std::string cpp_homedir;
index 51ff9c4..f1b979c 100644 (file)
@@ -1,6 +1,7 @@
 message("* qt/gui")
 set(s_qt_gui_headers
          commonclasses.h
+         mainwidget.h
 )
 QT4_WRAP_CPP(s_qt_gui_headers_MOC ${s_qt_gui_headers})
 
@@ -9,6 +10,7 @@ add_library(qt_gui
          menu_control.cpp
          menu_disk.cpp
          menu_cmt.cpp
+         menu_main.cpp
          display_statusbar.cpp
          ${s_qt_gui_headers_MOC}
 )
diff --git a/source/src/qt/gui/mainwidget.h b/source/src/qt/gui/mainwidget.h
new file mode 100644 (file)
index 0000000..78b2f67
--- /dev/null
@@ -0,0 +1,398 @@
+/********************************************************************************
+** Form generated from reading UI file 'mainwindowjLG445.ui'
+**
+** Created by: Qt User Interface Compiler version 4.8.6
+**
+** WARNING! All changes made in this file will be lost when recompiling UI file!
+********************************************************************************/
+
+/*
+ * MainMenu / X1 Turbo Z
+ * Modified by K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ * Please use this file as templete.
+ */
+
+#ifndef _CSP_QT_MAINWIDGET_H
+#define _CSP_QT_MAINWIDGET_H
+
+#include <QtCore/QVariant>
+#include <QtGui/QAction>
+#include <QtGui/QApplication>
+#include <QtGui/QButtonGroup>
+#include <QtGui/QGraphicsView>
+#include <QtGui/QHeaderView>
+#include <QtGui/QMainWindow>
+#include <QtGui/QMenu>
+#include <QtGui/QMenuBar>
+#include <QtGui/QStatusBar>
+#include <QtGui/QWidget>
+#include <QtGui/QIconSet>
+#include <QLabel>
+
+#include "simd_types.h"
+#include "common.h"
+#include "config.h"
+#include "emu.h"
+
+
+#include "qt_main.h"
+#include "qt_gldraw.h"
+#include "commonclasses.h"
+
+/*
+ * Common Source Project/ Qt
+ * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ *  History: Jan 10, 2015 : Initial
+ */
+QT_BEGIN_NAMESPACE
+
+//#include "menuclasses.h"
+
+class Ui_MainWindow : public QMainWindow
+{
+  Q_OBJECT
+ protected:
+  QMainWindow *MainWindow;
+  QWidget *centralwidget;
+  GLDrawClass *graphicsView;
+  QStatusBar  *statusbar;
+  QMenuBar    *menubar;
+  QTimer *statusUpdateTimer;
+    
+    // Some Functions
+  void ConfigCpuSpeed(void);
+  void ConfigControlMenu(void);
+  void connectActions_ControlMenu(void);
+  void retranslateControlMenu(const char *SpecialResetTitle,  bool WithSpecialReset);
+  void ConfigFloppyMenu(void);
+
+   void OnWindowResize(void);
+   void OnWindowMove(void);
+   void OnWindowRedraw(void);
+   void CreateFloppyMenu(int drv, int drv_base);
+   void CreateFloppyPulldownMenu(int drv);
+   void ConfigFloppyMenuSub(int drv);
+   void retranslateFloppyMenu(int drv, int basedrv);
+   void CreateCMTMenu(void);
+   void CreateCMTPulldownMenu(void);
+   void ConfigCMTMenuSub(void);
+   void retranslateCMTMenu(void);
+   void ConfigCMTMenu(void);
+
+  class Action_Control *actionReset;
+  class Action_Control *actionSpecial_Reset;
+  class Action_Control *actionExit_Emulator;
+//#ifdef USE_CPU_TYPE
+  QActionGroup *actionGroup_CpuSpeed;
+  class Action_Control *actionSpeed_x1;
+  class Action_Control *actionSpeed_x2;
+  class Action_Control *actionSpeed_x4;
+  class Action_Control *actionSpeed_x8;
+  class Action_Control *actionSpeed_x16;
+//#endif
+#ifdef USE_BOOT_MODE
+#endif    
+    class Action_Control *actionPaste_from_Clipboard;
+    class Action_Control *actionStop_Pasting;
+#ifdef USE_STATE
+    class Action_Control *actionSave_State;
+    class Action_Control *actionLoad_State;
+#endif
+#ifdef USE_DEBUGGER
+    class Action_Control *actionDebugger_1;
+    class Action_Control *actionDebugger_2;
+    class Action_Control *actionDebugger_3;
+    class Action_Control *actionClose_Debuggers;
+#endif
+
+#if defined(USE_CART1) || defined(USE_CART2)
+    QActionGroup   *actionGroup_Opened_CART[2];
+    QActionGroup   *actionGroup_Protect_CART[2]; // Is needed?
+    class Action_Control *actionRecent_Opened_CART[2];
+    class Action_Control *action_Recent_List_CART[2][MAX_HISTORY];
+    class Action_Control *actionInsert_CART[2];
+    class Action_Control *actionEject_CART[2];
+    class Action_Control *actionProtection_ON_CART[2];
+    class Action_Control *actionProtection_OFF_CART[2];
+#endif
+
+#if defined(USE_FD1) || defined(USE_FD2) || defined(USE_FD3) || defined(USE_FD4) || \
+  defined(USE_FD5) || defined(USE_FD6) || defined(USE_FD7) || defined(USE_FD8)
+    QActionGroup   *actionGroup_Opened_FD[8];
+    QActionGroup   *actionGroup_Protect_FD[8];
+    class Action_Control *actionRecent_Opened_FD[8];
+    class Action_Control *action_Recent_List_FD[8][MAX_HISTORY];
+   
+    QActionGroup   *actionGroup_D88_Image_FD[8];
+    class Action_Control *actionSelect_D88_Image_FD[8];
+    class Action_Control *action_D88_ListImage_FD[8][64];
+    class Action_Control *actionInsert_FD[8];
+    class Action_Control *actionEject_FD[8];
+   
+    class Action_Control *actionProtection_ON_FD[8];
+    class Action_Control *actionProtection_OFF_FD[8];
+#endif
+
+#if defined(USE_QD1) || defined(USE_QD2)
+    QActionGroup   *actionGroup_Opened_QD[2];
+    QActionGroup   *actionGroup_Protect_QD[2];
+    class Action_Control *actionRecent_Opened_QD[2];
+    class Action_Control *action_Recent_List_QD[2][MAX_HISTORY];
+    class Action_Control *actionInsert_QD[2];
+    class Action_Control *actionEject_QD[2];
+    class Action_Control *actionProtection_ON_QD[2];
+    class Action_Control *actionProtection_OFF_QD[2];
+#endif
+#ifdef USE_TAPE    
+    QActionGroup   *actionGroup_Opened_CMT;
+    QActionGroup   *actionGroup_Protect_CMT;
+    class Action_Control *actionRecent_Opened_CMT;
+    class Action_Control *action_Recent_List_CMT[MAX_HISTORY];
+    class Action_Control *actionInsert_CMT;
+    class Action_Control *actionEject_CMT;
+    class Action_Control *actionPlay_Start;
+    class Action_Control *actionPlay_Stop;
+    class Action_Control *actionRecording;
+    class Action_Control *actionProtection_ON_CMT;
+    class Action_Control *actionProtection_OFF_CMT;
+    bool write_protect;
+#endif    
+#if defined(USE_LASER_DISC)
+    class Action_Control *actionInsert_LD;
+    class Action_Control *actionEject_LD;
+    QActionGroup   *actionGroup_Opened_LD;
+    class Action_Control *actionRecent_Opened_LD;
+    class Action_Control *action_Recent_List_LD[MAX_HISTORY];
+#endif
+#if defined(USE_BINARY)
+    QActionGroup   *actionGroup_Opened_BINARY;
+    QActionGroup   *actionGroup_Protect_BINARY; // Is needed?
+    class Action_Control *actionRecent_Opened_BINARY;
+    class Action_Control *action_Recent_List_BINARY[MAX_HISTORY];
+    class Action_Control *actionInsert_BINARY;
+    class Action_Control *actionEject_BINARY;
+    class Action_Control *actionProtection_ON_BINARY;
+    class Action_Control *actionProtection_OFF_BINARY;
+#endif
+    // Screen
+    class Action_Control *actionZoom;
+    class Action_Control *actionDisplay_Mode;
+    class Action_Control *actionScanLine;
+    class Action_Control *actionCRT_Filter;
+    class Action_Control *actionDot_by_Dot;
+    class Action_Control *actionKeep_Aspect;
+    class Action_Control *actionFill_Display;
+    class Action_Control *actionCapture_Screen;
+    
+    class Action_Control *actionAbout;
+    
+    class Action_Control *action2000Hz;
+    class Action_Control *action4000Hz;
+    class Action_Control *action8000Hz;
+    class Action_Control *action11025Hz;
+    class Action_Control *action22050Hz;
+    class Action_Control *action44100Hz;
+    class Action_Control *action48000Hz;
+    class Action_Control *action96000Hz;
+    
+    class Action_Control *action50ms;
+    class Action_Control *action100ms;
+    class Action_Control *action200ms;
+    class Action_Control *action300ms;
+    class Action_Control *action400ms;
+    
+    class Action_Control *actionStart_Record;
+    class Action_Control *actionStop_Record;
+    class Action_Control *actionStart_Record_Movie;
+    class Action_Control *actionStop_Record_Movie;
+    
+    // Manus    
+    QMenu *menuControl;
+    QMenu *menuState;
+    QMenu *menuCopy_Paste;
+    QMenu *menuCpu_Speed;
+    QMenu *menuDebugger;
+    
+#if defined(USE_CART1) || defined(USE_CART2)
+    QMenu *menuCART[8];
+    QMenu *menuCART_Recent[8];
+    QMenu *menuCART_D88[8];
+    QMenu *menuWrite_Protection_CART[8];
+#endif
+#if defined(USE_FD1) || defined(USE_FD2) || defined(USE_FD3) || defined(USE_FD4) || \
+    defined(USE_FD5) || defined(USE_FD6) || defined(USE_FD7) || defined(USE_FD8)
+    QMenu *menuFD[8];
+    QMenu *menuFD_Recent[8];
+    QMenu *menuFD_D88[8];
+    QMenu *menuWrite_Protection_FD[8];
+#endif
+#if defined(USE_QD1) || defined(USE_QD2)
+    QMenu *menuQD[2];
+    QMenu *menuQD_Recent[2];
+    QMenu *menuQD_D88[2];
+    QMenu *menuWrite_Protection_QD[2];
+#endif
+#ifdef USE_TAPE    
+    QMenu *menuCMT;
+    QMenu *menuCMT_Recent;
+    QMenu *menuWrite_Protection_CMT;
+#endif
+#ifdef USE_LASER_DISC    
+    QMenu *menuLD;
+    QMenu *menuLD_Recent;
+#endif
+#if defined(USE_BINARY)
+    QMenu *menuBINARY[1];
+    QMenu *menuBINARY_Recent[1];
+    QMenu *menuWrite_Protection_BINARY[1];
+#endif
+    
+    QMenu *menuScreen;
+    QMenu *menuStretch_Mode;
+    QMenu *menuSound;
+    QMenu *menuOutput_Frequency;
+    QMenu *menuSound_Latency;
+    QMenu *menuFrequency;
+    QMenu *menuRecord;
+    QMenu *menuRecord_sound;
+    QMenu *menuRecoad_as_movie;
+    QMenu *menuEmulator;
+    QMenu *menuHELP;
+   // Status Bar
+    QWidget *dummyStatusArea1;
+    QLabel *messagesStatusBar;
+    QWidget *dummyStatusArea2;
+#ifdef USE_FD1
+    QLabel *fd_StatusBar[8];
+#endif
+#ifdef USE_QD1
+    QLabel *qd_StatusBar[8];
+#endif
+#ifdef USE_TAPE
+    QLabel *cmt_StatusBar;
+#endif
+    // About Status bar
+     void initStatusBar(void);
+     // Constructor
+    SDL_Thread *hRunEmuThread;
+    bool bRunEmuThread;
+public:
+ Ui_MainWindow(QWidget *parent = 0);
+  ~Ui_MainWindow();
+  // Initializer : using from InitContext.
+   void createContextMenu(void);
+   void setupUi(void);
+   void retranslateUi(void);
+  // EmuThread
+   void StopEmuThread(void) {
+    bRunEmuThread = false;
+    if(hRunEmuThread != NULL) {
+      SDL_WaitThread(hRunEmuThread, NULL);
+      hRunEmuThread = NULL;
+    }
+  }
+   void LaunchEmuThread(int (*fn)(void *))
+  {
+    bRunEmuThread = true;
+    hRunEmuThread = SDL_CreateThread(fn, (void *)this);
+  }
+   bool GetEmuThreadEnabled(void) {
+       return bRunEmuThread;
+  }
+  // Getting important widgets.
+   QMainWindow *getWindow(void) { return MainWindow; }
+   QMenuBar    *getMenuBar(void) { return menubar;}
+   GLDrawClass *getGraphicsView(void) { return graphicsView; }
+   QStatusBar *getStatusBar(void) { return statusbar;}
+   void OnMainWindowClosed(void);
+  // Basic Action Definition
+   void OnCpuPower(int mode);
+#ifdef USE_BOOT_MODE
+   void OnBootMode(int mode);
+#endif
+#ifdef USE_CPU_TYPE
+   void OnCpuType(int mode);
+#endif
+#ifdef USE_DEBUGGER
+    void OnOpenDebugger(int no);
+#endif   
+#ifdef USE_TAPE    
+   bool get_wave_shaper(void);
+   bool get_direct_load_mzt(void);
+#endif
+    // Basic slots
+ public slots:
+   void open_disk_dialog(int drv);
+   void _open_disk(int drv, const QString fname);
+   void _open_cart(int drv, const QString fname);
+   void _open_cmt(bool mode,const QString path);
+   void eject_cmt(void);
+   void redraw_status_bar(void);
+#ifdef USE_TAPE
+   void open_cmt_dialog(bool play);
+   void do_write_protect_cmt(bool flag);
+   int  set_recent_cmt(int num);
+   void set_wave_shaper(bool f);
+   void set_direct_load_from_mzt(bool f);
+#ifdef USE_TAPE_BUTTON
+   void OnPushPlayButton(void);
+   void OnPushStopButton(void);
+#endif
+#endif
+   int write_protect_fd(int drv, bool flag);
+   void eject_fd(int drv);
+   void on_actionExit_triggered() {
+       save_config();
+       OnMainWindowClosed();
+       QApplication::quit();
+     }
+   void OnReset(void);
+   void OnSpecialReset(void);
+#ifdef USE_STATE
+   void OnLoadState(void);
+   void OnSaveState(void);
+#endif
+#ifdef USE_BOOT_MODE
+   void set_boot_mode(int mode) {
+       OnBootMode(mode);
+  }
+#endif
+#ifdef USE_CPU_TYPE
+   void set_cpu_type(int mode) {
+       OnCpuType(mode);
+  }
+#endif
+   void set_cpu_power(int pw) {
+       OnCpuPower(pw);
+  }
+   
+#ifdef USE_AUTO_KEY
+   void OnStartAutoKey(void);
+   void OnStopAutoKey(void);
+#endif
+#ifdef USE_DEBUGGER
+   void OnCloseDebugger(void);
+   void open_debugger(int no){
+       OnOpenDebugger(no);
+  }
+#endif
+   int set_d88_slot(int drive, int num);
+   int set_recent_disk(int, int);
+
+signals:
+   int on_boot_mode(int);
+   int on_cpu_type(int);
+   int on_cpu_power(int);
+   int on_open_debugger(int);
+   int on_insert_fd(int);
+   int on_eject_fd(int);
+   int do_open_disk(int, QString);
+   int do_recent_cmt(bool);
+};
+//namespace Ui {
+//    class Ui_MainWindow;
+//} // namespace Ui
+
+QT_END_NAMESPACE
+
+#endif
index b0e86da..d857095 100644 (file)
@@ -182,7 +182,7 @@ void Ui_MainWindow::eject_cmt(void)
   if(emu) emu->close_tape();
 }
 
-void Ui_MainWindow::CreateCMTMenu(Ui_MainWindow *p)
+void Ui_MainWindow::CreateCMTMenu(void)
 {
   menuCMT = new QMenu(menubar);
   menuCMT->setObjectName(QString::fromUtf8("menuCMT", -1));
@@ -191,7 +191,7 @@ void Ui_MainWindow::CreateCMTMenu(Ui_MainWindow *p)
   //CreateCMTPulldownMenu(p);
 }
 
-void Ui_MainWindow::CreateCMTPulldownMenu(Ui_MainWindow *p)
+void Ui_MainWindow::CreateCMTPulldownMenu(void)
 {
   
   menuCMT->addAction(actionInsert_CMT);
@@ -220,46 +220,46 @@ void Ui_MainWindow::CreateCMTPulldownMenu(Ui_MainWindow *p)
 
 }
 
-void Ui_MainWindow::ConfigCMTMenuSub(Ui_MainWindow *p)
+void Ui_MainWindow::ConfigCMTMenuSub(void)
 {
   
-  actionInsert_CMT = new Action_Control(p);
+  actionInsert_CMT = new Action_Control(this);
   actionInsert_CMT->setObjectName(QString::fromUtf8("actionInsert_CMT"));
   actionInsert_CMT->binds->setPlay(true);
   actionInsert_CMT->binds->setNumber(0);
   
-  actionEject_CMT = new Action_Control(p);
+  actionEject_CMT = new Action_Control(this);
   actionEject_CMT->setObjectName(QString::fromUtf8("actionEject_CMT"));
   actionEject_CMT->binds->setPlay(true);
 
-  actionPlay_Start = new Action_Control(p);
+  actionPlay_Start = new Action_Control(this);
   actionPlay_Start->setObjectName(QString::fromUtf8("actionPlay_Start"));
   actionPlay_Start->binds->setPlay(true);
 
-  actionPlay_Stop = new Action_Control(p);
+  actionPlay_Stop = new Action_Control(this);
   actionPlay_Stop->setObjectName(QString::fromUtf8("actionPlay_Stop"));
   actionPlay_Stop->binds->setPlay(true);
 
-  actionRecording = new Action_Control(p);
+  actionRecording = new Action_Control(this);
   actionRecording->setObjectName(QString::fromUtf8("actionRecording"));
   actionRecording->binds->setPlay(false);
   actionRecording->binds->setNumber(0);
   
-  actionGroup_Opened_CMT = new QActionGroup(p);
-  actionRecent_Opened_CMT = new Action_Control(p);
+  actionGroup_Opened_CMT = new QActionGroup(this);
+  actionRecent_Opened_CMT = new Action_Control(this);
   actionRecent_Opened_CMT->setObjectName(QString::fromUtf8("actionRecent_Opened_CMT"));
   actionRecent_Opened_CMT->binds->setPlay(true);
   
   {
     int ii;
-    actionGroup_Opened_CMT = new QActionGroup(p);
+    actionGroup_Opened_CMT = new QActionGroup(this);
     actionGroup_Opened_CMT->setExclusive(true);
     
-    actionRecent_Opened_CMT = new Action_Control(p);
+    actionRecent_Opened_CMT = new Action_Control(this);
     actionRecent_Opened_CMT->setObjectName(QString::fromUtf8("actionSelect_Recent_CMT"));
     actionRecent_Opened_CMT->binds->setPlay(true); // For safety
     for(ii = 0; ii < MAX_HISTORY; ii++) {
-      action_Recent_List_CMT[ii] = new Action_Control(p);
+      action_Recent_List_CMT[ii] = new Action_Control(this);
       action_Recent_List_CMT[ii]->binds->setPlay(true);
       action_Recent_List_CMT[ii]->binds->setNumber(ii);
       action_Recent_List_CMT[ii]->setText(QString::fromUtf8(config.recent_tape_path[ii]));
@@ -273,11 +273,11 @@ void Ui_MainWindow::ConfigCMTMenuSub(Ui_MainWindow *p)
   
   {
     int ii;
-    actionProtection_ON_CMT = new Action_Control(p);
+    actionProtection_ON_CMT = new Action_Control(this);
     actionProtection_ON_CMT->setObjectName(QString::fromUtf8("actionProtection_ON_CMT"));
     actionProtection_ON_CMT->setCheckable(true);
     actionProtection_ON_CMT->setChecked(true);
-    actionProtection_OFF_CMT = new Action_Control(p);
+    actionProtection_OFF_CMT = new Action_Control(this);
     actionProtection_OFF_CMT->setObjectName(QString::fromUtf8("actionProtection_OFF_CMT"));
     actionProtection_OFF_CMT->setCheckable(true);
     actionProtection_OFF_CMT->setChecked(false);
@@ -287,7 +287,7 @@ void Ui_MainWindow::ConfigCMTMenuSub(Ui_MainWindow *p)
     connect(actionProtection_ON_CMT, SIGNAL(triggered()), actionProtection_ON_CMT->binds, SLOT(do_set_write_protect_cmt()));
     connect(actionProtection_ON_CMT->binds, SIGNAL(sig_set_write_protect_cmt(bool)), this, SLOT(do_write_protect_cmt(bool)));
 
-    actionGroup_Protect_CMT = new QActionGroup(p);
+    actionGroup_Protect_CMT = new QActionGroup(this);
     //actionGroup_Protect_CMT->setExclusive(true);
     actionGroup_Protect_CMT->addAction(actionProtection_ON_CMT);
     actionGroup_Protect_CMT->addAction(actionProtection_OFF_CMT);
@@ -306,7 +306,7 @@ void Ui_MainWindow::ConfigCMTMenuSub(Ui_MainWindow *p)
 
 }
 
-void Ui_MainWindow::retranslateCMTMenu(Ui_MainWindow *p)
+void Ui_MainWindow::retranslateCMTMenu(void)
 {
 
   actionInsert_CMT->setText(QApplication::translate("MainWindow", "Insert", 0, QApplication::UnicodeUTF8));
@@ -324,12 +324,12 @@ void Ui_MainWindow::retranslateCMTMenu(Ui_MainWindow *p)
 
 
 
-void Ui_MainWindow::ConfigCMTMenu(Ui_MainWindow *p)
+void Ui_MainWindow::ConfigCMTMenu(void)
 {
   
 #if defined(USE_TAPE)
   write_protect = true;
-  ConfigCMTMenuSub(p); 
+  ConfigCMTMenuSub(); 
 #endif
    
 }
index fa37557..348403d 100644 (file)
@@ -8,7 +8,6 @@
 
 QT_BEGIN_NAMESPACE
 
-
 void Object_Menu_Control::set_boot_mode(void) {
    emit on_boot_mode(bindValue);
 }
@@ -24,11 +23,11 @@ void Object_Menu_Control::open_debugger(void) {
 }
 
 
-void Ui_MainWindow::ConfigCpuSpeed(Ui_MainWindow *p)
+void Ui_MainWindow::ConfigCpuSpeed(void)
 {
    
    
-  actionSpeed_x1 = new Action_Control(p);
+  actionSpeed_x1 = new Action_Control(this);
   actionSpeed_x1->setObjectName(QString::fromUtf8("actionSpeed_x1"));
   actionSpeed_x1->setCheckable(true);
   actionSpeed_x1->setChecked(true);
@@ -36,21 +35,21 @@ void Ui_MainWindow::ConfigCpuSpeed(Ui_MainWindow *p)
   connect(actionSpeed_x1, SIGNAL(triggered()), actionSpeed_x1->binds, SLOT(set_cpupower())); // OK?  
   connect(actionSpeed_x1->binds, SIGNAL(on_cpu_power(int)), this, SLOT(set_cpu_power(int))); // OK?  
   
-  actionSpeed_x2 = new Action_Control(p);
+  actionSpeed_x2 = new Action_Control(this);
   actionSpeed_x2->setObjectName(QString::fromUtf8("actionSpeed_x2"));
   actionSpeed_x2->setCheckable(true);
   actionSpeed_x2->binds->setValue1(1);
   connect(actionSpeed_x2, SIGNAL(triggered()), actionSpeed_x2->binds, SLOT(set_cpupower())); // OK?  
   connect(actionSpeed_x2->binds, SIGNAL(on_cpu_power(int)), this, SLOT(set_cpu_power(int))); // OK?  
   
-  actionSpeed_x4 = new Action_Control(p);
+  actionSpeed_x4 = new Action_Control(this);
   actionSpeed_x4->setObjectName(QString::fromUtf8("actionSpeed_x4"));
   actionSpeed_x4->setCheckable(true);
   actionSpeed_x4->binds->setValue1(2);
   connect(actionSpeed_x4, SIGNAL(triggered()), actionSpeed_x4->binds, SLOT(set_cpupower())); // OK?  
   connect(actionSpeed_x4->binds, SIGNAL(on_cpu_power(int)), this, SLOT(set_cpu_power(int))); // OK?  
   
-  actionSpeed_x8 = new Action_Control(p);
+  actionSpeed_x8 = new Action_Control(this);
   actionSpeed_x8->setObjectName(QString::fromUtf8("actionSpeed_x8"));
   actionSpeed_x8->setCheckable(true);
   actionSpeed_x8->binds->setValue1(3);
@@ -58,14 +57,14 @@ void Ui_MainWindow::ConfigCpuSpeed(Ui_MainWindow *p)
   connect(actionSpeed_x8->binds, SIGNAL(on_cpu_power(int)), this, SLOT(set_cpu_power(int))); // OK?  
 
   
-  actionSpeed_x16 = new Action_Control(p);
+  actionSpeed_x16 = new Action_Control(this);
   actionSpeed_x16->setObjectName(QString::fromUtf8("actionSpeed_x16"));
   actionSpeed_x16->setCheckable(true);
   actionSpeed_x16->binds->setValue1(4);
   connect(actionSpeed_x16, SIGNAL(triggered()), actionSpeed_x16->binds, SLOT(set_cpupower())); // OK?  
   connect(actionSpeed_x16->binds, SIGNAL(on_cpu_power(int)), this, SLOT(set_cpu_power(int))); // OK?  
 
-  actionGroup_CpuSpeed = new QActionGroup(p);
+  actionGroup_CpuSpeed = new QActionGroup(this);
   actionGroup_CpuSpeed->setExclusive(true);
   actionGroup_CpuSpeed->addAction(actionSpeed_x1);
   actionGroup_CpuSpeed->addAction(actionSpeed_x2);
@@ -75,67 +74,67 @@ void Ui_MainWindow::ConfigCpuSpeed(Ui_MainWindow *p)
    
 }
 
-void Ui_MainWindow::ConfigControlMenu(Ui_MainWindow *p)
+void Ui_MainWindow::ConfigControlMenu(void)
 {
-  actionReset = new Action_Control(p);
+  actionReset = new Action_Control(this);
   actionReset->setObjectName(QString::fromUtf8("actionReset"));
   connect(actionReset, SIGNAL(triggered()), this, SLOT(OnReset())); // OK?  
 
-  actionSpecial_Reset = new Action_Control(p);
+  actionSpecial_Reset = new Action_Control(this);
   actionSpecial_Reset->setObjectName(QString::fromUtf8("actionSpecial_Reset"));
   connect(actionSpecial_Reset, SIGNAL(triggered()), this, SLOT(OnSpecialReset())); // OK?  
 
-  actionExit_Emulator = new Action_Control(p);
+  actionExit_Emulator = new Action_Control(this);
   actionExit_Emulator->setObjectName(QString::fromUtf8("actionExit_Emulator"));
   connect(actionExit_Emulator, SIGNAL(triggered()), this, SLOT(on_actionExit_triggered())); // OnGuiExit()?  
 
-  actionPaste_from_Clipboard = new Action_Control(p);
+  actionPaste_from_Clipboard = new Action_Control(this);
   actionPaste_from_Clipboard->setObjectName(QString::fromUtf8("actionPaste_from_Clipboard"));
   connect(actionPaste_from_Clipboard, SIGNAL(triggered()),
                     this, SLOT(OnStartAutoKey())); // OK?  
 
-  actionStop_Pasting = new Action_Control(p);
+  actionStop_Pasting = new Action_Control(this);
   actionStop_Pasting->setObjectName(QString::fromUtf8("actionStop_Pasting"));
   connect(actionStop_Pasting, SIGNAL(triggered()),
                   this, SLOT(OnStopAutoKey())); // OK?  
   
-  actionSave_State = new Action_Control(p);
+  actionSave_State = new Action_Control(this);
   actionSave_State->setObjectName(QString::fromUtf8("actionSave_State"));
   connect(actionSave_State, SIGNAL(triggered()),
                   this, SLOT(OnSaveState())); // OK?  
 
-  actionLoad_State = new Action_Control(p);
+  actionLoad_State = new Action_Control(this);
   actionLoad_State->setObjectName(QString::fromUtf8("actionLoad_State"));
   connect(actionLoad_State, SIGNAL(triggered()),
                   this, SLOT(OnLoadState())); // OK?  
 
-  actionDebugger_1 = new Action_Control(p);
+  actionDebugger_1 = new Action_Control(this);
   actionDebugger_1->setObjectName(QString::fromUtf8("actionDebugger_1"));
   actionDebugger_1->binds->setValue1(0);
   connect(actionDebugger_1, SIGNAL(triggered()), actionDebugger_1->binds, SLOT(call_open_debugger())); // OK?  
   connect(actionDebugger_1->binds, SIGNAL(on_open_debugger(int)), this, SLOT(open_debugger(int))); // OK?  
 
-  actionDebugger_2 = new Action_Control(p);
+  actionDebugger_2 = new Action_Control(this);
   actionDebugger_2->setObjectName(QString::fromUtf8("actionDebugger_2"));
   actionDebugger_2->binds->setValue1(1);
   connect(actionDebugger_2, SIGNAL(triggered()), actionDebugger_2->binds, SLOT(call_open_debugger())); // OK?  
   connect(actionDebugger_2->binds, SIGNAL(on_open_debugger(int)), this, SLOT(open_debugger(int))); // OK?  
   
-  actionDebugger_3 = new Action_Control(p);
+  actionDebugger_3 = new Action_Control(this);
   actionDebugger_3->binds->setValue1(2);
   actionDebugger_3->setObjectName(QString::fromUtf8("actionDebugger_3"));
   connect(actionDebugger_3, SIGNAL(triggered()), actionDebugger_3->binds, SLOT(call_open_debugger())); // OK?  
   connect(actionDebugger_3->binds, SIGNAL(on_open_debugger(int)), this, SLOT(open_debugger(int))); // OK?  
 
-  actionClose_Debuggers = new Action_Control(p);
+  actionClose_Debuggers = new Action_Control(this);
   actionClose_Debuggers->setObjectName(QString::fromUtf8("actionClose_Debuggers"));
   connect(actionClose_Debuggers, SIGNAL(triggered()),
                   this, SLOT(OnCloseDebugger())); // OK?  
 
-  ConfigCpuSpeed(p);
+  ConfigCpuSpeed();
 }
 
-void Ui_MainWindow::connectActions_ControlMenu(QMenuBar *menubar)
+void Ui_MainWindow::connectActions_ControlMenu(void)
 {
        
         menuControl->addAction(actionReset);
@@ -178,7 +177,7 @@ void Ui_MainWindow::createContextMenu(void)
 }
 
 
-void Ui_MainWindow::retranslateControlMenu(Ui_MainWindow *p, const char *SpecialResetTitle,  bool WithSpecialReset)
+void Ui_MainWindow::retranslateControlMenu(const char *SpecialResetTitle,  bool WithSpecialReset)
 {
   actionReset->setText(QApplication::translate("MainWindow", "Reset", 0, QApplication::UnicodeUTF8));
   if(WithSpecialReset)
@@ -211,4 +210,4 @@ void Ui_MainWindow::retranslateControlMenu(Ui_MainWindow *p, const char *Special
   menuDebugger->setTitle(QApplication::translate("MainWindow", "Debugger", 0, QApplication::UnicodeUTF8));
 }
 
-QT_END_NAMESPACE
\ No newline at end of file
+QT_END_NAMESPACE
index 268a3ef..0b1c9ff 100644 (file)
@@ -187,7 +187,7 @@ void Ui_MainWindow::eject_fd(int drv)
    close_disk(drv);
 }
 
-void Ui_MainWindow::CreateFloppyMenu(Ui_MainWindow *p, int drv, int drv_base)
+void Ui_MainWindow::CreateFloppyMenu(int drv, int drv_base)
 {
   QString drv_base_name = QString::number(drv_base); 
   menuFD[drv] = new QMenu(menubar);
@@ -196,7 +196,7 @@ void Ui_MainWindow::CreateFloppyMenu(Ui_MainWindow *p, int drv, int drv_base)
   menuWrite_Protection_FD[drv]->setObjectName(QString::fromUtf8("menuWrite_Protection_FD", -1) + drv_base_name);
 }
 
-void Ui_MainWindow::CreateFloppyPulldownMenu(Ui_MainWindow *p, int drv)
+void Ui_MainWindow::CreateFloppyPulldownMenu(int drv)
 {
   
   menuFD[drv]->addAction(actionInsert_FD[drv]);
@@ -235,37 +235,37 @@ void Ui_MainWindow::CreateFloppyPulldownMenu(Ui_MainWindow *p, int drv)
 
 }
 
-void Ui_MainWindow::ConfigFloppyMenuSub(Ui_MainWindow *p, int drv)
+void Ui_MainWindow::ConfigFloppyMenuSub(int drv)
 {
   QString drive_name = QString::number(drv);
   
-  actionInsert_FD[drv] = new Action_Control(p);
+  actionInsert_FD[drv] = new Action_Control(this);
   actionInsert_FD[drv]->setObjectName(QString::fromUtf8("actionInsert_FD") + drive_name);
   actionInsert_FD[drv]->binds->setDrive(drv);
   actionInsert_FD[drv]->binds->setNumber(0);
   
-  actionEject_FD[drv] = new Action_Control(p);
+  actionEject_FD[drv] = new Action_Control(this);
   actionEject_FD[drv]->setObjectName(QString::fromUtf8("actionEject_FD") + drive_name);
   actionEject_FD[drv]->binds->setDrive(drv);
   actionEject_FD[drv]->binds->setNumber(0);
   
-  actionGroup_Opened_FD[drv] = new QActionGroup(p);
-  actionRecent_Opened_FD[drv] = new Action_Control(p);
+  actionGroup_Opened_FD[drv] = new QActionGroup(this);
+  actionRecent_Opened_FD[drv] = new Action_Control(this);
   actionRecent_Opened_FD[drv]->setObjectName(QString::fromUtf8("actionRecent_Opened_FD") + drive_name);
   actionRecent_Opened_FD[drv]->binds->setDrive(drv);
   actionRecent_Opened_FD[drv]->binds->setNumber(0);
   
   {
     int ii;
-    actionGroup_D88_Image_FD[drv] = new QActionGroup(p);
+    actionGroup_D88_Image_FD[drv] = new QActionGroup(this);
     actionGroup_D88_Image_FD[drv]->setExclusive(true);
     
-    actionSelect_D88_Image_FD[drv] = new Action_Control(p);
+    actionSelect_D88_Image_FD[drv] = new Action_Control(this);
     actionSelect_D88_Image_FD[drv]->setObjectName(QString::fromUtf8("actionSelect_D88_Image_FD") + drive_name);
     actionSelect_D88_Image_FD[drv]->binds->setDrive(drv);
     actionSelect_D88_Image_FD[drv]->binds->setNumber(0);
     for(ii = 0; ii < MAX_D88_BANKS; ii++) {
-      action_D88_ListImage_FD[drv][ii] = new Action_Control(p);
+      action_D88_ListImage_FD[drv][ii] = new Action_Control(this);
       action_D88_ListImage_FD[drv][ii]->binds->setDrive(drv);
       action_D88_ListImage_FD[drv][ii]->binds->setNumber(ii);
       actionGroup_D88_Image_FD[drv]->addAction(action_D88_ListImage_FD[drv][ii]);
@@ -277,15 +277,15 @@ void Ui_MainWindow::ConfigFloppyMenuSub(Ui_MainWindow *p, int drv)
   }
   {
     int ii;
-    actionGroup_Opened_FD[drv] = new QActionGroup(p);
+    actionGroup_Opened_FD[drv] = new QActionGroup(this);
     actionGroup_Opened_FD[drv]->setExclusive(true);
     
-    actionRecent_Opened_FD[drv] = new Action_Control(p);
+    actionRecent_Opened_FD[drv] = new Action_Control(this);
     actionRecent_Opened_FD[drv]->setObjectName(QString::fromUtf8("actionSelect_Recent_FD") + drive_name);
     actionRecent_Opened_FD[drv]->binds->setDrive(drv);
     actionRecent_Opened_FD[drv]->binds->setNumber(0);
     for(ii = 0; ii < MAX_HISTORY; ii++) {
-      action_Recent_List_FD[drv][ii] = new Action_Control(p);
+      action_Recent_List_FD[drv][ii] = new Action_Control(this);
       action_Recent_List_FD[drv][ii]->binds->setDrive(drv);
       action_Recent_List_FD[drv][ii]->binds->setNumber(ii);
       action_Recent_List_FD[drv][ii]->setText(QString::fromUtf8(config.recent_disk_path[drv][ii]));
@@ -298,15 +298,15 @@ void Ui_MainWindow::ConfigFloppyMenuSub(Ui_MainWindow *p, int drv)
   }
     {
     int ii;
-    actionGroup_Protect_FD[drv] = new QActionGroup(p);
+    actionGroup_Protect_FD[drv] = new QActionGroup(this);
     actionGroup_Protect_FD[drv]->setExclusive(true);
-    actionProtection_ON_FD[drv] = new Action_Control(p);
+    actionProtection_ON_FD[drv] = new Action_Control(this);
     actionProtection_ON_FD[drv]->setObjectName(QString::fromUtf8("actionProtection_ON_FD") + drive_name);
     actionProtection_ON_FD[drv]->setCheckable(true);
     actionProtection_ON_FD[drv]->setChecked(true);
     actionProtection_ON_FD[drv]->binds->setDrive(drv);
     actionProtection_ON_FD[drv]->binds->setNumber(0);
-    actionProtection_OFF_FD[drv] = new Action_Control(p);
+    actionProtection_OFF_FD[drv] = new Action_Control(this);
     actionProtection_OFF_FD[drv]->setObjectName(QString::fromUtf8("actionProtection_OFF_FD") + drive_name);
     actionProtection_OFF_FD[drv]->setCheckable(true);
     actionProtection_OFF_FD[drv]->binds->setDrive(drv);
@@ -331,7 +331,7 @@ void Ui_MainWindow::ConfigFloppyMenuSub(Ui_MainWindow *p, int drv)
 
 }
 
-void Ui_MainWindow::retranslateFloppyMenu(Ui_MainWindow *p, int drv, int basedrv)
+void Ui_MainWindow::retranslateFloppyMenu(int drv, int basedrv)
 {
 
   QString drive_name = (QApplication::translate("MainWindow", "Floppy ", 0, QApplication::UnicodeUTF8));
@@ -354,32 +354,32 @@ void Ui_MainWindow::retranslateFloppyMenu(Ui_MainWindow *p, int drv, int basedrv
 
 
 
-void Ui_MainWindow::ConfigFloppyMenu(Ui_MainWindow *p)
+void Ui_MainWindow::ConfigFloppyMenu(void)
 {
   
 #if defined(USE_FD1)
-  ConfigFloppyMenuSub(p, 0); 
+  ConfigFloppyMenuSub(0); 
 #endif
 #if defined(USE_FD2)
-  ConfigFloppyMenuSub(p, 1);
+  ConfigFloppyMenuSub(1);
 #endif
 #if defined(USE_FD3)
-  ConfigFloppyMenuSub(p, 2);
+  ConfigFloppyMenuSub(2);
 #endif
 #if defined(USE_FD4)
-  ConfigFloppyMenuSub(p, 3);
+  ConfigFloppyMenuSub(3);
 #endif
 #if defined(USE_FD5)
-  ConfigFloppyMenuSub(p, 4);
+  ConfigFloppyMenuSub(4);
 #endif
 #if defined(USE_FD6)
-  ConfigFloppyMenuSub(p, 5);
+  ConfigFloppyMenuSub(5);
 #endif
 #if defined(USE_FD7)
-  ConfigFloppyMenuSub(p, 6);
+  ConfigFloppyMenuSub(6);
 #endif
 #if defined(USE_FD8)
-  ConfigFloppyMenuSub(p, 7);
+  ConfigFloppyMenuSub(7);
 #endif
    
 }
diff --git a/source/src/qt/gui/menu_main.cpp b/source/src/qt/gui/menu_main.cpp
new file mode 100644 (file)
index 0000000..a405eb3
--- /dev/null
@@ -0,0 +1,381 @@
+/*
+ * Common Source code Project:
+ * Ui->Qt->gui->menu_main for generic.
+ * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ *   License : GPLv2
+ *   History :
+ * Jan 14, 2015 : Initial, moved from qt/x1turboz/MainWindow.cpp .
+ */
+
+#include <QtCore/QVariant>
+#include <QtGui>
+#include "menuclasses.h"
+#include "emu.h"
+#include "qt_main.h"
+
+
+QT_BEGIN_NAMESPACE
+
+Ui_MainWindow::Ui_MainWindow(QWidget *parent) : QMainWindow(parent)
+{
+   setupUi();
+   createContextMenu();
+}
+
+Ui_MainWindow::~Ui_MainWindow()
+{
+}
+
+void Ui_MainWindow::setupUi(void)
+{
+  
+   MainWindow = new QMainWindow();
+   if (MainWindow->objectName().isEmpty())
+            MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
+        MainWindow->resize(1288, 862);
+   
+       ConfigControlMenu();
+        ConfigFloppyMenu();
+        ConfigCMTMenu();
+       
+       
+       //actionInsert_QD0 = new QAction(MainWindow);
+        //actionInsert_QD0->setObjectName(QString::fromUtf8("actionInsert_QD0"));
+        //actionEject_QD0 = new QAction(MainWindow);
+        //actionEject_QD0->setObjectName(QString::fromUtf8("actionEject_QD0"));
+        //actionResent_Images_QD0 = new QAction(MainWindow);
+        //actionResent_Images_QD0->setObjectName(QString::fromUtf8("actionResent_Images_QD0"));
+        //actionProtection_ON_QD0 = new QAction(MainWindow);
+        //actionProtection_ON_QD0->setObjectName(QString::fromUtf8("actionProtection_ON_QD0"));
+        //actionProtection_OFF_QD0 = new QAction(MainWindow);
+        //actionProtection_OFF_QD0->setObjectName(QString::fromUtf8("actionProtection_OFF_QD0"));
+       
+        actionZoom = new Action_Control(this);
+        actionZoom->setObjectName(QString::fromUtf8("actionZoom"));
+        actionDisplay_Mode = new Action_Control(this);
+        actionDisplay_Mode->setObjectName(QString::fromUtf8("actionDisplay_Mode"));
+        actionScanLine = new Action_Control(this);
+        actionScanLine->setObjectName(QString::fromUtf8("actionScanLine"));
+        actionScanLine->setCheckable(true);
+        actionScanLine->setChecked(true);
+       
+        actionCRT_Filter = new Action_Control(this);
+        actionCRT_Filter->setObjectName(QString::fromUtf8("actionCRT_Filter"));
+        actionCRT_Filter->setEnabled(false);
+        actionDot_by_Dot = new Action_Control(this);
+        actionDot_by_Dot->setObjectName(QString::fromUtf8("actionDot_by_Dot"));
+        actionDot_by_Dot->setCheckable(true);
+        actionDot_by_Dot->setChecked(true);
+        actionKeep_Aspect = new Action_Control(this);
+        actionKeep_Aspect->setObjectName(QString::fromUtf8("actionKeep_Aspect"));
+        actionKeep_Aspect->setCheckable(true);
+        actionFill_Display = new Action_Control(this);
+        actionFill_Display->setObjectName(QString::fromUtf8("actionFill_Display"));
+        actionFill_Display->setCheckable(true);
+       
+        actionCapture_Screen = new Action_Control(this);
+        actionCapture_Screen->setObjectName(QString::fromUtf8("actionCapture_Screen"));
+       
+        actionAbout = new Action_Control(this);
+        actionAbout->setObjectName(QString::fromUtf8("actionAbout"));
+       
+        action2000Hz = new Action_Control(this);
+        action2000Hz->setObjectName(QString::fromUtf8("action2000Hz"));
+        action2000Hz->setCheckable(true);
+        action4000Hz = new Action_Control(this);
+        action4000Hz->setObjectName(QString::fromUtf8("action4000Hz"));
+        action4000Hz->setCheckable(true);
+        action8000Hz = new Action_Control(this);
+        action8000Hz->setObjectName(QString::fromUtf8("action8000Hz"));
+        action8000Hz->setCheckable(true);
+        action11025Hz = new Action_Control(this);
+        action11025Hz->setObjectName(QString::fromUtf8("action11025Hz"));
+        action11025Hz->setCheckable(true);
+        action22050Hz = new Action_Control(this);
+        action22050Hz->setObjectName(QString::fromUtf8("action22050Hz"));
+        action22050Hz->setCheckable(true);
+        action44100Hz = new Action_Control(this);
+        action44100Hz->setObjectName(QString::fromUtf8("action44100Hz"));
+        action44100Hz->setCheckable(true);
+        action48000Hz = new Action_Control(this);
+        action48000Hz->setObjectName(QString::fromUtf8("action48000Hz"));
+        action48000Hz->setCheckable(true);
+        action96000Hz = new Action_Control(this);
+        action96000Hz->setObjectName(QString::fromUtf8("action96000Hz"));
+        action96000Hz->setCheckable(true);
+       
+        action50ms = new Action_Control(this);
+        action50ms->setObjectName(QString::fromUtf8("action50ms"));
+        action50ms->setCheckable(true);
+        action100ms = new Action_Control(this);
+        action100ms->setObjectName(QString::fromUtf8("action100ms"));
+        action100ms->setCheckable(true);
+        action100ms->setChecked(false);
+        action200ms = new Action_Control(this);
+        action200ms->setObjectName(QString::fromUtf8("action200ms"));
+        action300ms = new Action_Control(this);
+        action300ms->setObjectName(QString::fromUtf8("action300ms"));
+        action300ms->setCheckable(true);
+        action400ms = new Action_Control(this);
+        action400ms->setObjectName(QString::fromUtf8("action400ms"));
+        action400ms->setCheckable(true);
+       
+        actionStart_Record = new Action_Control(this);
+        actionStart_Record->setObjectName(QString::fromUtf8("actionStart_Record"));
+        actionStart_Record->setCheckable(true);
+        actionStop_Record = new Action_Control(this);
+        actionStop_Record->setObjectName(QString::fromUtf8("actionStop_Record"));
+        actionStop_Record->setCheckable(true);
+        actionStart_Record_Movie = new Action_Control(this);
+        actionStart_Record_Movie->setObjectName(QString::fromUtf8("actionStart_Record_Movie"));
+        actionStart_Record_Movie->setCheckable(true);
+        actionStop_Record_Movie = new Action_Control(this);
+        actionStop_Record_Movie->setObjectName(QString::fromUtf8("actionStop_Record_Movie"));
+        actionStop_Record_Movie->setCheckable(false);
+       
+   
+        graphicsView = new GLDrawClass(MainWindow);
+        graphicsView->setObjectName(QString::fromUtf8("graphicsView"));
+        graphicsView->setGeometry(QRect(0, 0, 1280, 800));
+        MainWindow->setCentralWidget(graphicsView);
+       
+
+        statusbar = new QStatusBar(MainWindow);
+        statusbar->setObjectName(QString::fromUtf8("statusbar"));
+        MainWindow->setStatusBar(statusbar);
+        initStatusBar();
+       
+        menubar = new QMenuBar(MainWindow);
+        menubar->setObjectName(QString::fromUtf8("menubar"));
+        menubar->setGeometry(QRect(0, 0, 1288, 27));
+        menuControl = new QMenu(menubar);
+        menuControl->setObjectName(QString::fromUtf8("menuControl"));
+        menuState = new QMenu(menuControl);
+        menuState->setObjectName(QString::fromUtf8("menuState"));
+        menuCopy_Paste = new QMenu(menuControl);
+        menuCopy_Paste->setObjectName(QString::fromUtf8("menuCopy_Paste"));
+        menuCpu_Speed = new QMenu(menuControl);
+        menuCpu_Speed->setObjectName(QString::fromUtf8("menuCpu_Speed"));
+        menuDebugger = new QMenu(menuControl);
+        menuDebugger->setObjectName(QString::fromUtf8("menuDebugger"));
+       
+       CreateFloppyMenu(0, 1);
+       CreateFloppyMenu(1, 2);
+
+       //        menuQD0 = new QMenu(menubar);
+        //menuQD0->setObjectName(QString::fromUtf8("menuQD0"));
+        //menuWrite_Protection_QD0 = new QMenu(menuQD0);
+        //menuWrite_Protection_QD0->setObjectName(QString::fromUtf8("menuWrite_Protection_QD0"));
+       CreateCMTMenu();
+       
+        menuScreen = new QMenu(menubar);
+        menuScreen->setObjectName(QString::fromUtf8("menuScreen"));
+        menuStretch_Mode = new QMenu(menuScreen);
+        menuStretch_Mode->setObjectName(QString::fromUtf8("menuStretch_Mode"));
+        menuSound = new QMenu(menubar);
+        menuSound->setObjectName(QString::fromUtf8("menuSound"));
+        menuOutput_Frequency = new QMenu(menuSound);
+        menuOutput_Frequency->setObjectName(QString::fromUtf8("menuOutput_Frequency"));
+        menuSound_Latency = new QMenu(menuSound);
+        menuSound_Latency->setObjectName(QString::fromUtf8("menuSound_Latency"));
+        menuFrequency = new QMenu(menubar);
+        menuFrequency->setObjectName(QString::fromUtf8("menuFrequency"));
+        menuRecord = new QMenu(menubar);
+        menuRecord->setObjectName(QString::fromUtf8("menuRecord"));
+        menuRecord_sound = new QMenu(menuRecord);
+        menuRecord_sound->setObjectName(QString::fromUtf8("menuRecord_sound"));
+        menuRecoad_as_movie = new QMenu(menuRecord);
+        menuRecoad_as_movie->setObjectName(QString::fromUtf8("menuRecoad_as_movie"));
+        menuEmulator = new QMenu(menubar);
+        menuEmulator->setObjectName(QString::fromUtf8("menuEmulator"));
+        menuHELP = new QMenu(menubar);
+        menuHELP->setObjectName(QString::fromUtf8("menuHELP"));
+        MainWindow->setMenuBar(menubar);
+
+       
+        menubar->addAction(menuControl->menuAction());
+       connectActions_ControlMenu();
+
+        menubar->addAction(menuFD[0]->menuAction());
+        menubar->addAction(menuFD[1]->menuAction());
+       //        menubar->addAction(menuQD0->menuAction());
+        menubar->addAction(menuCMT->menuAction());
+        menubar->addAction(menuFrequency->menuAction());
+        menubar->addAction(menuSound->menuAction());
+        menubar->addAction(menuScreen->menuAction());
+        menubar->addAction(menuRecord->menuAction());
+        menubar->addAction(menuEmulator->menuAction());
+        menubar->addAction(menuHELP->menuAction());
+       
+       CreateFloppyPulldownMenu(0);
+       CreateFloppyPulldownMenu(1);
+        CreateCMTPulldownMenu();
+       //menuQD0->addAction(actionInsert_QD0);
+        //menuQD0->addAction(actionEject_QD0);
+        //menuQD0->addSeparator();
+        //menuQD0->addAction(actionResent_Images_QD0);
+        //menuQD0->addSeparator();
+        //menuQD0->addAction(menuWrite_Protection_QD0->menuAction());
+       //menuWrite_Protection_QD0->addAction(actionProtection_ON_QD0);
+        //menuWrite_Protection_QD0->addAction(actionProtection_OFF_QD0);
+
+       menuCMT->addAction(actionInsert_CMT);
+        menuCMT->addAction(actionEject_CMT);
+        menuCMT->addSeparator();
+        menuCMT->addAction(actionPlay_Start);
+        menuCMT->addAction(actionPlay_Stop);
+        menuCMT->addSeparator();
+        menuCMT->addAction(actionRecording);
+        menuCMT->addSeparator();
+        menuCMT->addAction(menuWrite_Protection_CMT->menuAction());
+        menuWrite_Protection_CMT->addAction(actionProtection_ON_CMT);
+        menuWrite_Protection_CMT->addAction(actionProtection_OFF_CMT);
+       
+        menuScreen->addAction(actionZoom);
+        menuScreen->addAction(actionDisplay_Mode);
+        menuScreen->addSeparator();
+        menuScreen->addAction(menuStretch_Mode->menuAction());
+        menuScreen->addSeparator();
+        menuScreen->addAction(actionScanLine);
+        menuScreen->addAction(actionCRT_Filter);
+        menuStretch_Mode->addAction(actionDot_by_Dot);
+        menuStretch_Mode->addAction(actionKeep_Aspect);
+        menuStretch_Mode->addAction(actionFill_Display);
+       
+        menuSound->addAction(menuOutput_Frequency->menuAction());
+        menuSound->addAction(menuSound_Latency->menuAction());
+       
+        menuOutput_Frequency->addAction(action2000Hz);
+        menuOutput_Frequency->addAction(action4000Hz);
+        menuOutput_Frequency->addAction(action8000Hz);
+        menuOutput_Frequency->addAction(action11025Hz);
+        menuOutput_Frequency->addAction(action22050Hz);
+        menuOutput_Frequency->addAction(action44100Hz);
+        menuOutput_Frequency->addAction(action48000Hz);
+        menuOutput_Frequency->addAction(action96000Hz);
+       
+        menuSound_Latency->addAction(action50ms);
+        menuSound_Latency->addAction(action100ms);
+        menuSound_Latency->addAction(action200ms);
+        menuSound_Latency->addAction(action300ms);
+        menuSound_Latency->addAction(action400ms);
+       
+        menuRecord->addAction(actionCapture_Screen);
+        menuRecord->addSeparator();
+        menuRecord->addAction(menuRecoad_as_movie->menuAction());
+        menuRecord->addSeparator();
+        menuRecord->addAction(menuRecord_sound->menuAction());
+        menuRecord_sound->addAction(actionStart_Record);
+        menuRecord_sound->addAction(actionStop_Record);
+        menuRecoad_as_movie->addAction(actionStart_Record_Movie);
+        menuRecoad_as_movie->addAction(actionStop_Record_Movie);
+
+       menuHELP->addAction(actionAbout);
+        menuHELP->addSeparator();
+
+        retranslateUi();
+        QObject::connect(actionCRT_Filter, SIGNAL(toggled(bool)), actionCRT_Filter, SLOT(setChecked(bool)));
+        QObject::connect(actionExit_Emulator, SIGNAL(destroyed()), MainWindow, SLOT(close()));
+
+
+       QObject::connect(action100ms, SIGNAL(triggered()), action100ms, SLOT(trigger()));
+        QObject::connect(action200ms, SIGNAL(triggered()), action200ms, SLOT(trigger()));
+        QObject::connect(action300ms, SIGNAL(triggered()), action300ms, SLOT(trigger()));
+        QObject::connect(action400ms, SIGNAL(triggered()), action400ms, SLOT(trigger()));
+        QObject::connect(action50ms, SIGNAL(triggered()), action50ms, SLOT(trigger()));
+       
+        QObject::connect(action2000Hz, SIGNAL(triggered()), action2000Hz, SLOT(trigger()));
+        QObject::connect(action4000Hz, SIGNAL(triggered()), action4000Hz, SLOT(trigger()));
+        QObject::connect(action8000Hz, SIGNAL(triggered()), action8000Hz, SLOT(trigger()));
+        QObject::connect(action11025Hz, SIGNAL(triggered()), action11025Hz, SLOT(trigger()));
+        QObject::connect(action22050Hz, SIGNAL(triggered()), action22050Hz, SLOT(trigger()));
+        QObject::connect(action44100Hz, SIGNAL(triggered()), action44100Hz, SLOT(trigger()));
+        QObject::connect(action48000Hz, SIGNAL(triggered()), action48000Hz, SLOT(trigger()));
+        QObject::connect(action96000Hz, SIGNAL(triggered()), action96000Hz, SLOT(trigger()));
+
+       QObject::connect(this, SIGNAL(destroyed()), this, SLOT(on_actionExit_triggered()));
+       QObject::connect(MainWindow, SIGNAL(destroyed()), this, SLOT(on_actionExit_triggered()));
+
+        QMetaObject::connectSlotsByName(MainWindow);
+} // setupUi
+
+void Ui_MainWindow::retranslateUi(void)
+{
+  retranslateControlMenu("NMI Reset",  true);
+  retranslateFloppyMenu(0, 0);
+  retranslateFloppyMenu(1, 1);
+  retranslateCMTMenu();
+   
+  this->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0, QApplication::UnicodeUTF8));
+
+  //actionInsert_QD0->setText(QApplication::translate("MainWindow", "Insert", 0, QApplication::UnicodeUTF8));
+  //actionEject_QD0->setText(QApplication::translate("MainWindow", "Eject", 0, QApplication::UnicodeUTF8));
+  //actionResent_Images_QD0->setText(QApplication::translate("MainWindow", "Resent Images", 0, QApplication::UnicodeUTF8));
+  //actionProtection_ON_QD0->setText(QApplication::translate("MainWindow", "Protection ON", 0, QApplication::UnicodeUTF8));
+  //actionProtection_OFF_QD0->setText(QApplication::translate("MainWindow", "Protection OFF", 0, QApplication::UnicodeUTF8));
+#if defined(USE_TAPE)
+  actionInsert_CMT->setText(QApplication::translate("MainWindow", "Insert CMT", 0, QApplication::UnicodeUTF8));
+  actionEject_CMT->setText(QApplication::translate("MainWindow", "Eject CMT", 0, QApplication::UnicodeUTF8));
+  actionPlay_Start->setText(QApplication::translate("MainWindow", "Play Start", 0, QApplication::UnicodeUTF8));
+  actionPlay_Stop->setText(QApplication::translate("MainWindow", "Play Stop", 0, QApplication::UnicodeUTF8));
+  actionRecording->setText(QApplication::translate("MainWindow", "Recording", 0, QApplication::UnicodeUTF8));
+  actionProtection_ON_CMT->setText(QApplication::translate("MainWindow", "Protection ON", 0, QApplication::UnicodeUTF8));
+  actionProtection_OFF_CMT->setText(QApplication::translate("MainWindow", "Protection OFF", 0, QApplication::UnicodeUTF8));
+#endif
+  
+  actionZoom->setText(QApplication::translate("MainWindow", "Zoom Screen", 0, QApplication::UnicodeUTF8));
+  actionDisplay_Mode->setText(QApplication::translate("MainWindow", "Display Mode", 0, QApplication::UnicodeUTF8));
+  actionScanLine->setText(QApplication::translate("MainWindow", "Set ScanLine", 0, QApplication::UnicodeUTF8));
+  actionCRT_Filter->setText(QApplication::translate("MainWindow", "CRT Filter", 0, QApplication::UnicodeUTF8));
+  actionDot_by_Dot->setText(QApplication::translate("MainWindow", "Dot by Dot", 0, QApplication::UnicodeUTF8));
+  actionKeep_Aspect->setText(QApplication::translate("MainWindow", "Keep Aspect", 0, QApplication::UnicodeUTF8));
+  actionFill_Display->setText(QApplication::translate("MainWindow", "Fill Display", 0, QApplication::UnicodeUTF8));
+  
+  actionCapture_Screen->setText(QApplication::translate("MainWindow", "Capture Screen", 0, QApplication::UnicodeUTF8));
+  
+  actionAbout->setText(QApplication::translate("MainWindow", "About...", 0, QApplication::UnicodeUTF8));
+  
+  action2000Hz->setText(QApplication::translate("MainWindow", "2000Hz", 0, QApplication::UnicodeUTF8));
+  action4000Hz->setText(QApplication::translate("MainWindow", "4000Hz", 0, QApplication::UnicodeUTF8));
+  action8000Hz->setText(QApplication::translate("MainWindow", "8000Hz", 0, QApplication::UnicodeUTF8));
+  action11025Hz->setText(QApplication::translate("MainWindow", "11025Hz", 0, QApplication::UnicodeUTF8));
+  action22050Hz->setText(QApplication::translate("MainWindow", "22050Hz", 0, QApplication::UnicodeUTF8));
+  action44100Hz->setText(QApplication::translate("MainWindow", "44100Hz", 0, QApplication::UnicodeUTF8));
+  action48000Hz->setText(QApplication::translate("MainWindow", "48000Hz", 0, QApplication::UnicodeUTF8));
+  action96000Hz->setText(QApplication::translate("MainWindow", "96000Hz", 0, QApplication::UnicodeUTF8));
+  
+       action50ms->setText(QApplication::translate("MainWindow", "50ms", 0, QApplication::UnicodeUTF8));
+        action100ms->setText(QApplication::translate("MainWindow", "100ms", 0, QApplication::UnicodeUTF8));
+        action200ms->setText(QApplication::translate("MainWindow", "200ms", 0, QApplication::UnicodeUTF8));
+        action300ms->setText(QApplication::translate("MainWindow", "300ms", 0, QApplication::UnicodeUTF8));
+        action400ms->setText(QApplication::translate("MainWindow", "400ms", 0, QApplication::UnicodeUTF8));
+
+       actionStart_Record->setText(QApplication::translate("MainWindow", "Start Record", 0, QApplication::UnicodeUTF8));
+        actionStop_Record->setText(QApplication::translate("MainWindow", "Stop Record", 0, QApplication::UnicodeUTF8));
+
+       actionStart_Record_Movie->setText(QApplication::translate("MainWindow", "Start Record Movie", 0, QApplication::UnicodeUTF8));
+        actionStop_Record_Movie->setText(QApplication::translate("MainWindow", "Stop Record Movie", 0, QApplication::UnicodeUTF8));
+
+   
+       //        menuQD0->setTitle(QApplication::translate("MainWindow", "QD", 0, QApplication::UnicodeUTF8));
+        //menuWrite_Protection_QD0->setTitle(QApplication::translate("MainWindow", "Write Protection", 0, QApplication::UnicodeUTF8));
+   
+   
+        menuScreen->setTitle(QApplication::translate("MainWindow", "Screen", 0, QApplication::UnicodeUTF8));
+        menuStretch_Mode->setTitle(QApplication::translate("MainWindow", "Stretch Mode", 0, QApplication::UnicodeUTF8));
+       
+        menuSound->setTitle(QApplication::translate("MainWindow", "Sound", 0, QApplication::UnicodeUTF8));
+        menuOutput_Frequency->setTitle(QApplication::translate("MainWindow", "Output Frequency", 0, QApplication::UnicodeUTF8));
+        menuSound_Latency->setTitle(QApplication::translate("MainWindow", "Sound Latency", 0, QApplication::UnicodeUTF8));
+        menuFrequency->setTitle(QApplication::translate("MainWindow", "Machine", 0, QApplication::UnicodeUTF8));
+       
+        menuRecord->setTitle(QApplication::translate("MainWindow", "Record", 0, QApplication::UnicodeUTF8));
+        menuRecord_sound->setTitle(QApplication::translate("MainWindow", "Record sound", 0, QApplication::UnicodeUTF8));
+        menuRecoad_as_movie->setTitle(QApplication::translate("MainWindow", "Recoad as movie", 0, QApplication::UnicodeUTF8));
+       
+        menuEmulator->setTitle(QApplication::translate("MainWindow", "Emulator", 0, QApplication::UnicodeUTF8));
+       
+        menuHELP->setTitle(QApplication::translate("MainWindow", "HELP", 0, QApplication::UnicodeUTF8));
+} // retranslateUi
+
+QT_END_NAMESPACE
index fc0860b..c221450 100644 (file)
@@ -1,23 +1,13 @@
-/********************************************************************************
-** Form generated from reading UI file 'mainwindowjLG445.ui'
-**
-** Created by: Qt User Interface Compiler version 4.8.6
-**
-** WARNING! All changes made in this file will be lost when recompiling UI file!
-********************************************************************************/
-
+/*
+ * Common Source code Project:
+ * Ui->Qt->MainWindow for X1TurboZ .
+ * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
+ *   License : GPLv2
+ *   History :
+ * Jan 14, 2015 : Initial, many of constructors were moved to qt/gui/menu_main.cpp.
+ */
 
 #include <QtCore/QVariant>
-//#include <QtGui/QAction>
-//#include <QtGui/QApplication>
-//#include <QtGui/QButtonGroup>
-//#include <QtGui/QGraphicsView>
-//#include <QtGui/QHeaderView>
-//#include <QtGui/QMainWindow>
-//#include <QtGui/QMenu>
-//#include <QtGui/QMenuBar>
-//#include <QtGui/QStatusBar>
-//#include <QtGui/QWidget>
 #include <QtGui>
 #include "menuclasses.h"
 #include "emu.h"
 
 //QT_BEGIN_NAMESPACE
 
-Ui_MainWindow::Ui_MainWindow(QWidget *parent) : QMainWindow(parent)
+META_MainWindow::META_MainWindow(QWidget *parent) : Ui_MainWindow(parent)
 {
 //   ui->setupUi(this);
-   setupUi();
-   createContextMenu();
+//   setupUi();
+//   createContextMenu();
 }
 
-Ui_MainWindow::~Ui_MainWindow()
+META_MainWindow::~META_MainWindow()
 {
 }
 
-void Ui_MainWindow::setupUi(void)
-{
-  
-        MainWindow = new QMainWindow();
-        if (MainWindow->objectName().isEmpty())
-            MainWindow->setObjectName(QString::fromUtf8("MainWindow"));
-        MainWindow->resize(1288, 862);
-   
-       ConfigControlMenu(this);
-        ConfigFloppyMenu(this);
-        ConfigCMTMenu(this);
-       
-       
-       //actionInsert_QD0 = new QAction(MainWindow);
-        //actionInsert_QD0->setObjectName(QString::fromUtf8("actionInsert_QD0"));
-        //actionEject_QD0 = new QAction(MainWindow);
-        //actionEject_QD0->setObjectName(QString::fromUtf8("actionEject_QD0"));
-        //actionResent_Images_QD0 = new QAction(MainWindow);
-        //actionResent_Images_QD0->setObjectName(QString::fromUtf8("actionResent_Images_QD0"));
-        //actionProtection_ON_QD0 = new QAction(MainWindow);
-        //actionProtection_ON_QD0->setObjectName(QString::fromUtf8("actionProtection_ON_QD0"));
-        //actionProtection_OFF_QD0 = new QAction(MainWindow);
-        //actionProtection_OFF_QD0->setObjectName(QString::fromUtf8("actionProtection_OFF_QD0"));
-       
-        actionZoom = new Action_Control(this);
-        actionZoom->setObjectName(QString::fromUtf8("actionZoom"));
-        actionDisplay_Mode = new Action_Control(this);
-        actionDisplay_Mode->setObjectName(QString::fromUtf8("actionDisplay_Mode"));
-        actionScanLine = new Action_Control(this);
-        actionScanLine->setObjectName(QString::fromUtf8("actionScanLine"));
-        actionScanLine->setCheckable(true);
-        actionScanLine->setChecked(true);
-       
-        actionCRT_Filter = new Action_Control(this);
-        actionCRT_Filter->setObjectName(QString::fromUtf8("actionCRT_Filter"));
-        actionCRT_Filter->setEnabled(false);
-        actionDot_by_Dot = new Action_Control(this);
-        actionDot_by_Dot->setObjectName(QString::fromUtf8("actionDot_by_Dot"));
-        actionDot_by_Dot->setCheckable(true);
-        actionDot_by_Dot->setChecked(true);
-        actionKeep_Aspect = new Action_Control(this);
-        actionKeep_Aspect->setObjectName(QString::fromUtf8("actionKeep_Aspect"));
-        actionKeep_Aspect->setCheckable(true);
-        actionFill_Display = new Action_Control(this);
-        actionFill_Display->setObjectName(QString::fromUtf8("actionFill_Display"));
-        actionFill_Display->setCheckable(true);
-       
-        actionCapture_Screen = new Action_Control(this);
-        actionCapture_Screen->setObjectName(QString::fromUtf8("actionCapture_Screen"));
-       
-        actionAbout = new Action_Control(this);
-        actionAbout->setObjectName(QString::fromUtf8("actionAbout"));
-       
-        action2000Hz = new Action_Control(this);
-        action2000Hz->setObjectName(QString::fromUtf8("action2000Hz"));
-        action2000Hz->setCheckable(true);
-        action4000Hz = new Action_Control(this);
-        action4000Hz->setObjectName(QString::fromUtf8("action4000Hz"));
-        action4000Hz->setCheckable(true);
-        action8000Hz = new Action_Control(this);
-        action8000Hz->setObjectName(QString::fromUtf8("action8000Hz"));
-        action8000Hz->setCheckable(true);
-        action11025Hz = new Action_Control(this);
-        action11025Hz->setObjectName(QString::fromUtf8("action11025Hz"));
-        action11025Hz->setCheckable(true);
-        action22050Hz = new Action_Control(this);
-        action22050Hz->setObjectName(QString::fromUtf8("action22050Hz"));
-        action22050Hz->setCheckable(true);
-        action44100Hz = new Action_Control(this);
-        action44100Hz->setObjectName(QString::fromUtf8("action44100Hz"));
-        action44100Hz->setCheckable(true);
-        action48000Hz = new Action_Control(this);
-        action48000Hz->setObjectName(QString::fromUtf8("action48000Hz"));
-        action48000Hz->setCheckable(true);
-        action96000Hz = new Action_Control(this);
-        action96000Hz->setObjectName(QString::fromUtf8("action96000Hz"));
-        action96000Hz->setCheckable(true);
-       
-        action50ms = new Action_Control(this);
-        action50ms->setObjectName(QString::fromUtf8("action50ms"));
-        action50ms->setCheckable(true);
-        action100ms = new Action_Control(this);
-        action100ms->setObjectName(QString::fromUtf8("action100ms"));
-        action100ms->setCheckable(true);
-        action100ms->setChecked(false);
-        action200ms = new Action_Control(this);
-        action200ms->setObjectName(QString::fromUtf8("action200ms"));
-        action300ms = new Action_Control(this);
-        action300ms->setObjectName(QString::fromUtf8("action300ms"));
-        action300ms->setCheckable(true);
-        action400ms = new Action_Control(this);
-        action400ms->setObjectName(QString::fromUtf8("action400ms"));
-        action400ms->setCheckable(true);
-       
-        actionStart_Record = new Action_Control(this);
-        actionStart_Record->setObjectName(QString::fromUtf8("actionStart_Record"));
-        actionStart_Record->setCheckable(true);
-        actionStop_Record = new Action_Control(this);
-        actionStop_Record->setObjectName(QString::fromUtf8("actionStop_Record"));
-        actionStop_Record->setCheckable(true);
-        actionStart_Record_Movie = new Action_Control(this);
-        actionStart_Record_Movie->setObjectName(QString::fromUtf8("actionStart_Record_Movie"));
-        actionStart_Record_Movie->setCheckable(true);
-        actionStop_Record_Movie = new Action_Control(this);
-        actionStop_Record_Movie->setObjectName(QString::fromUtf8("actionStop_Record_Movie"));
-        actionStop_Record_Movie->setCheckable(false);
-       
-   
-        graphicsView = new GLDrawClass(MainWindow);
-        graphicsView->setObjectName(QString::fromUtf8("graphicsView"));
-        graphicsView->setGeometry(QRect(0, 0, 1280, 800));
-        MainWindow->setCentralWidget(graphicsView);
-       
-
-        statusbar = new QStatusBar(MainWindow);
-        statusbar->setObjectName(QString::fromUtf8("statusbar"));
-        MainWindow->setStatusBar(statusbar);
-        initStatusBar();
-       
-        menubar = new QMenuBar(MainWindow);
-        menubar->setObjectName(QString::fromUtf8("menubar"));
-        menubar->setGeometry(QRect(0, 0, 1288, 27));
-        menuControl = new QMenu(menubar);
-        menuControl->setObjectName(QString::fromUtf8("menuControl"));
-        menuState = new QMenu(menuControl);
-        menuState->setObjectName(QString::fromUtf8("menuState"));
-        menuCopy_Paste = new QMenu(menuControl);
-        menuCopy_Paste->setObjectName(QString::fromUtf8("menuCopy_Paste"));
-        menuCpu_Speed = new QMenu(menuControl);
-        menuCpu_Speed->setObjectName(QString::fromUtf8("menuCpu_Speed"));
-        menuDebugger = new QMenu(menuControl);
-        menuDebugger->setObjectName(QString::fromUtf8("menuDebugger"));
-       
-       CreateFloppyMenu(this, 0, 1);
-       CreateFloppyMenu(this, 1, 2);
-
-       //        menuQD0 = new QMenu(menubar);
-        //menuQD0->setObjectName(QString::fromUtf8("menuQD0"));
-        //menuWrite_Protection_QD0 = new QMenu(menuQD0);
-        //menuWrite_Protection_QD0->setObjectName(QString::fromUtf8("menuWrite_Protection_QD0"));
-       CreateCMTMenu(this);
-       
-        menuScreen = new QMenu(menubar);
-        menuScreen->setObjectName(QString::fromUtf8("menuScreen"));
-        menuStretch_Mode = new QMenu(menuScreen);
-        menuStretch_Mode->setObjectName(QString::fromUtf8("menuStretch_Mode"));
-        menuSound = new QMenu(menubar);
-        menuSound->setObjectName(QString::fromUtf8("menuSound"));
-        menuOutput_Frequency = new QMenu(menuSound);
-        menuOutput_Frequency->setObjectName(QString::fromUtf8("menuOutput_Frequency"));
-        menuSound_Latency = new QMenu(menuSound);
-        menuSound_Latency->setObjectName(QString::fromUtf8("menuSound_Latency"));
-        menuFrequency = new QMenu(menubar);
-        menuFrequency->setObjectName(QString::fromUtf8("menuFrequency"));
-        menuRecord = new QMenu(menubar);
-        menuRecord->setObjectName(QString::fromUtf8("menuRecord"));
-        menuRecord_sound = new QMenu(menuRecord);
-        menuRecord_sound->setObjectName(QString::fromUtf8("menuRecord_sound"));
-        menuRecoad_as_movie = new QMenu(menuRecord);
-        menuRecoad_as_movie->setObjectName(QString::fromUtf8("menuRecoad_as_movie"));
-        menuEmulator = new QMenu(menubar);
-        menuEmulator->setObjectName(QString::fromUtf8("menuEmulator"));
-        menuHELP = new QMenu(menubar);
-        menuHELP->setObjectName(QString::fromUtf8("menuHELP"));
-        MainWindow->setMenuBar(menubar);
-
-       
-        menubar->addAction(menuControl->menuAction());
-       connectActions_ControlMenu(menubar);
-
-        menubar->addAction(menuFD[0]->menuAction());
-        menubar->addAction(menuFD[1]->menuAction());
-       //        menubar->addAction(menuQD0->menuAction());
-        menubar->addAction(menuCMT->menuAction());
-        menubar->addAction(menuFrequency->menuAction());
-        menubar->addAction(menuSound->menuAction());
-        menubar->addAction(menuScreen->menuAction());
-        menubar->addAction(menuRecord->menuAction());
-        menubar->addAction(menuEmulator->menuAction());
-        menubar->addAction(menuHELP->menuAction());
-       
-       CreateFloppyPulldownMenu(this, 0);
-       CreateFloppyPulldownMenu(this, 1);
-        CreateCMTPulldownMenu(this);
-       //menuQD0->addAction(actionInsert_QD0);
-        //menuQD0->addAction(actionEject_QD0);
-        //menuQD0->addSeparator();
-        //menuQD0->addAction(actionResent_Images_QD0);
-        //menuQD0->addSeparator();
-        //menuQD0->addAction(menuWrite_Protection_QD0->menuAction());
-       //menuWrite_Protection_QD0->addAction(actionProtection_ON_QD0);
-        //menuWrite_Protection_QD0->addAction(actionProtection_OFF_QD0);
-
-       menuCMT->addAction(actionInsert_CMT);
-        menuCMT->addAction(actionEject_CMT);
-        menuCMT->addSeparator();
-        menuCMT->addAction(actionPlay_Start);
-        menuCMT->addAction(actionPlay_Stop);
-        menuCMT->addSeparator();
-        menuCMT->addAction(actionRecording);
-        menuCMT->addSeparator();
-        menuCMT->addAction(menuWrite_Protection_CMT->menuAction());
-        menuWrite_Protection_CMT->addAction(actionProtection_ON_CMT);
-        menuWrite_Protection_CMT->addAction(actionProtection_OFF_CMT);
-       
-        menuScreen->addAction(actionZoom);
-        menuScreen->addAction(actionDisplay_Mode);
-        menuScreen->addSeparator();
-        menuScreen->addAction(menuStretch_Mode->menuAction());
-        menuScreen->addSeparator();
-        menuScreen->addAction(actionScanLine);
-        menuScreen->addAction(actionCRT_Filter);
-        menuStretch_Mode->addAction(actionDot_by_Dot);
-        menuStretch_Mode->addAction(actionKeep_Aspect);
-        menuStretch_Mode->addAction(actionFill_Display);
-       
-        menuSound->addAction(menuOutput_Frequency->menuAction());
-        menuSound->addAction(menuSound_Latency->menuAction());
-       
-        menuOutput_Frequency->addAction(action2000Hz);
-        menuOutput_Frequency->addAction(action4000Hz);
-        menuOutput_Frequency->addAction(action8000Hz);
-        menuOutput_Frequency->addAction(action11025Hz);
-        menuOutput_Frequency->addAction(action22050Hz);
-        menuOutput_Frequency->addAction(action44100Hz);
-        menuOutput_Frequency->addAction(action48000Hz);
-        menuOutput_Frequency->addAction(action96000Hz);
-       
-        menuSound_Latency->addAction(action50ms);
-        menuSound_Latency->addAction(action100ms);
-        menuSound_Latency->addAction(action200ms);
-        menuSound_Latency->addAction(action300ms);
-        menuSound_Latency->addAction(action400ms);
-       
-        menuRecord->addAction(actionCapture_Screen);
-        menuRecord->addSeparator();
-        menuRecord->addAction(menuRecoad_as_movie->menuAction());
-        menuRecord->addSeparator();
-        menuRecord->addAction(menuRecord_sound->menuAction());
-        menuRecord_sound->addAction(actionStart_Record);
-        menuRecord_sound->addAction(actionStop_Record);
-        menuRecoad_as_movie->addAction(actionStart_Record_Movie);
-        menuRecoad_as_movie->addAction(actionStop_Record_Movie);
-
-       menuHELP->addAction(actionAbout);
-        menuHELP->addSeparator();
-
-        retranslateUi(this);
-        QObject::connect(actionCRT_Filter, SIGNAL(toggled(bool)), actionCRT_Filter, SLOT(setChecked(bool)));
-        QObject::connect(actionExit_Emulator, SIGNAL(destroyed()), MainWindow, SLOT(close()));
-
-
-       QObject::connect(action100ms, SIGNAL(triggered()), action100ms, SLOT(trigger()));
-        QObject::connect(action200ms, SIGNAL(triggered()), action200ms, SLOT(trigger()));
-        QObject::connect(action300ms, SIGNAL(triggered()), action300ms, SLOT(trigger()));
-        QObject::connect(action400ms, SIGNAL(triggered()), action400ms, SLOT(trigger()));
-        QObject::connect(action50ms, SIGNAL(triggered()), action50ms, SLOT(trigger()));
-       
-        QObject::connect(action2000Hz, SIGNAL(triggered()), action2000Hz, SLOT(trigger()));
-        QObject::connect(action4000Hz, SIGNAL(triggered()), action4000Hz, SLOT(trigger()));
-        QObject::connect(action8000Hz, SIGNAL(triggered()), action8000Hz, SLOT(trigger()));
-        QObject::connect(action11025Hz, SIGNAL(triggered()), action11025Hz, SLOT(trigger()));
-        QObject::connect(action22050Hz, SIGNAL(triggered()), action22050Hz, SLOT(trigger()));
-        QObject::connect(action44100Hz, SIGNAL(triggered()), action44100Hz, SLOT(trigger()));
-        QObject::connect(action48000Hz, SIGNAL(triggered()), action48000Hz, SLOT(trigger()));
-        QObject::connect(action96000Hz, SIGNAL(triggered()), action96000Hz, SLOT(trigger()));
-
-       QObject::connect(this, SIGNAL(destroyed()), this, SLOT(on_actionExit_triggered()));
-       QObject::connect(MainWindow, SIGNAL(destroyed()), this, SLOT(on_actionExit_triggered()));
-
-        QMetaObject::connectSlotsByName(MainWindow);
-} // setupUi
-
-
-
-
-
-void Ui_MainWindow::retranslateUi(Ui_MainWindow *p)
-{
-
-  retranslateControlMenu(p, "NMI Reset",  true);
-  retranslateFloppyMenu(p, 0, 0);
-  retranslateFloppyMenu(p, 1, 1);
-  retranslateCMTMenu(p);
-   
-  p->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0, QApplication::UnicodeUTF8));
-
-
-
-  //actionInsert_QD0->setText(QApplication::translate("MainWindow", "Insert", 0, QApplication::UnicodeUTF8));
-  //actionEject_QD0->setText(QApplication::translate("MainWindow", "Eject", 0, QApplication::UnicodeUTF8));
-  //actionResent_Images_QD0->setText(QApplication::translate("MainWindow", "Resent Images", 0, QApplication::UnicodeUTF8));
-  //actionProtection_ON_QD0->setText(QApplication::translate("MainWindow", "Protection ON", 0, QApplication::UnicodeUTF8));
-  //actionProtection_OFF_QD0->setText(QApplication::translate("MainWindow", "Protection OFF", 0, QApplication::UnicodeUTF8));
-#if defined(USE_TAPE)
-  actionInsert_CMT->setText(QApplication::translate("MainWindow", "Insert CMT", 0, QApplication::UnicodeUTF8));
-  actionEject_CMT->setText(QApplication::translate("MainWindow", "Eject CMT", 0, QApplication::UnicodeUTF8));
-  actionPlay_Start->setText(QApplication::translate("MainWindow", "Play Start", 0, QApplication::UnicodeUTF8));
-  actionPlay_Stop->setText(QApplication::translate("MainWindow", "Play Stop", 0, QApplication::UnicodeUTF8));
-  actionRecording->setText(QApplication::translate("MainWindow", "Recording", 0, QApplication::UnicodeUTF8));
-  actionProtection_ON_CMT->setText(QApplication::translate("MainWindow", "Protection ON", 0, QApplication::UnicodeUTF8));
-  actionProtection_OFF_CMT->setText(QApplication::translate("MainWindow", "Protection OFF", 0, QApplication::UnicodeUTF8));
-#endif
-  
-  actionZoom->setText(QApplication::translate("MainWindow", "Zoom Screen", 0, QApplication::UnicodeUTF8));
-  actionDisplay_Mode->setText(QApplication::translate("MainWindow", "Display Mode", 0, QApplication::UnicodeUTF8));
-  actionScanLine->setText(QApplication::translate("MainWindow", "Set ScanLine", 0, QApplication::UnicodeUTF8));
-  actionCRT_Filter->setText(QApplication::translate("MainWindow", "CRT Filter", 0, QApplication::UnicodeUTF8));
-  actionDot_by_Dot->setText(QApplication::translate("MainWindow", "Dot by Dot", 0, QApplication::UnicodeUTF8));
-  actionKeep_Aspect->setText(QApplication::translate("MainWindow", "Keep Aspect", 0, QApplication::UnicodeUTF8));
-  actionFill_Display->setText(QApplication::translate("MainWindow", "Fill Display", 0, QApplication::UnicodeUTF8));
-  
-  actionCapture_Screen->setText(QApplication::translate("MainWindow", "Capture Screen", 0, QApplication::UnicodeUTF8));
-  
-  actionAbout->setText(QApplication::translate("MainWindow", "About...", 0, QApplication::UnicodeUTF8));
-  
-  action2000Hz->setText(QApplication::translate("MainWindow", "2000Hz", 0, QApplication::UnicodeUTF8));
-  action4000Hz->setText(QApplication::translate("MainWindow", "4000Hz", 0, QApplication::UnicodeUTF8));
-  action8000Hz->setText(QApplication::translate("MainWindow", "8000Hz", 0, QApplication::UnicodeUTF8));
-  action11025Hz->setText(QApplication::translate("MainWindow", "11025Hz", 0, QApplication::UnicodeUTF8));
-  action22050Hz->setText(QApplication::translate("MainWindow", "22050Hz", 0, QApplication::UnicodeUTF8));
-  action44100Hz->setText(QApplication::translate("MainWindow", "44100Hz", 0, QApplication::UnicodeUTF8));
-  action48000Hz->setText(QApplication::translate("MainWindow", "48000Hz", 0, QApplication::UnicodeUTF8));
-  action96000Hz->setText(QApplication::translate("MainWindow", "96000Hz", 0, QApplication::UnicodeUTF8));
-  
-       action50ms->setText(QApplication::translate("MainWindow", "50ms", 0, QApplication::UnicodeUTF8));
-        action100ms->setText(QApplication::translate("MainWindow", "100ms", 0, QApplication::UnicodeUTF8));
-        action200ms->setText(QApplication::translate("MainWindow", "200ms", 0, QApplication::UnicodeUTF8));
-        action300ms->setText(QApplication::translate("MainWindow", "300ms", 0, QApplication::UnicodeUTF8));
-        action400ms->setText(QApplication::translate("MainWindow", "400ms", 0, QApplication::UnicodeUTF8));
-
-       actionStart_Record->setText(QApplication::translate("MainWindow", "Start Record", 0, QApplication::UnicodeUTF8));
-        actionStop_Record->setText(QApplication::translate("MainWindow", "Stop Record", 0, QApplication::UnicodeUTF8));
-
-       actionStart_Record_Movie->setText(QApplication::translate("MainWindow", "Start Record Movie", 0, QApplication::UnicodeUTF8));
-        actionStop_Record_Movie->setText(QApplication::translate("MainWindow", "Stop Record Movie", 0, QApplication::UnicodeUTF8));
-
-   
-       //        menuQD0->setTitle(QApplication::translate("MainWindow", "QD", 0, QApplication::UnicodeUTF8));
-        //menuWrite_Protection_QD0->setTitle(QApplication::translate("MainWindow", "Write Protection", 0, QApplication::UnicodeUTF8));
-   
-   
-        menuScreen->setTitle(QApplication::translate("MainWindow", "Screen", 0, QApplication::UnicodeUTF8));
-        menuStretch_Mode->setTitle(QApplication::translate("MainWindow", "Stretch Mode", 0, QApplication::UnicodeUTF8));
-       
-        menuSound->setTitle(QApplication::translate("MainWindow", "Sound", 0, QApplication::UnicodeUTF8));
-        menuOutput_Frequency->setTitle(QApplication::translate("MainWindow", "Output Frequency", 0, QApplication::UnicodeUTF8));
-        menuSound_Latency->setTitle(QApplication::translate("MainWindow", "Sound Latency", 0, QApplication::UnicodeUTF8));
-        menuFrequency->setTitle(QApplication::translate("MainWindow", "Machine", 0, QApplication::UnicodeUTF8));
-       
-        menuRecord->setTitle(QApplication::translate("MainWindow", "Record", 0, QApplication::UnicodeUTF8));
-        menuRecord_sound->setTitle(QApplication::translate("MainWindow", "Record sound", 0, QApplication::UnicodeUTF8));
-        menuRecoad_as_movie->setTitle(QApplication::translate("MainWindow", "Recoad as movie", 0, QApplication::UnicodeUTF8));
-       
-        menuEmulator->setTitle(QApplication::translate("MainWindow", "Emulator", 0, QApplication::UnicodeUTF8));
-       
-        menuHELP->setTitle(QApplication::translate("MainWindow", "HELP", 0, QApplication::UnicodeUTF8));
-} // retranslateUi
-
-
 //QT_END_NAMESPACE
 
 
index 6d59923..4c7ea65 100644 (file)
-/********************************************************************************
-** Form generated from reading UI file 'mainwindowjLG445.ui'
-**
-** Created by: Qt User Interface Compiler version 4.8.6
-**
-** WARNING! All changes made in this file will be lost when recompiling UI file!
-********************************************************************************/
 
-/*
- * MainMenu / X1 Turbo Z
- * Modified by K.Ohta <whatisthis.sowhat _at_ gmail.com>
- * Please use this file as templete.
- */
-
-#ifndef MAINWINDOWJLG445_H
-#define MAINWINDOWJLG445_H
-
-#include <QtCore/QVariant>
-#include <QtGui/QAction>
-#include <QtGui/QApplication>
-#include <QtGui/QButtonGroup>
-#include <QtGui/QGraphicsView>
-#include <QtGui/QHeaderView>
-#include <QtGui/QMainWindow>
-#include <QtGui/QMenu>
-#include <QtGui/QMenuBar>
-#include <QtGui/QStatusBar>
-#include <QtGui/QWidget>
-#include <QtGui/QIconSet>
-#include <QLabel>
-
-#include "simd_types.h"
-#include "common.h"
-#include "config.h"
-#include "emu.h"
-
-
-#include "qt_main.h"
-#include "qt_gldraw.h"
-#include "commonclasses.h"
+#ifndef _CSP_QT_MENUCLASSES_H
+#define _CSP_QT_MENUCLASSES_H
 
+#include "mainwidget.h"
+// This extends class CSP_MainWindow as Ui_MainWindow.
+// You may use this as 
 QT_BEGIN_NAMESPACE
 
-extern class EMU* emu;
+class Ui_MainWindow;
 
-class Ui_MainWindow : public QMainWindow
-{
-    Q_OBJECT
- protected:
-    QStatusBar *statusbar;
-    GLDrawClass *glWidget;
-    
+class META_MainWindow : public Ui_MainWindow {
+  Q_OBJECT
  protected:
-    // Some Functions
-  void ConfigCpuSpeed(Ui_MainWindow* );
-  void ConfigControlMenu(Ui_MainWindow* );
-  void connectActions_ControlMenu(QMenuBar *p);
-  void retranslateControlMenu(Ui_MainWindow *p, const char *SpecialResetTitle,  bool WithSpecialReset);
-  void ConfigFloppyMenu(Ui_MainWindow *p);
-
-  void OnWindowResize(QMainWindow *p);
-  void OnWindowMove(Ui_MainWindow *p);
-  void OnWindowRedraw(Ui_MainWindow *p);
-  void CreateFloppyMenu(Ui_MainWindow *p, int drv, int drv_base);
-  void CreateFloppyPulldownMenu(Ui_MainWindow *p, int drv);
-  void ConfigFloppyMenuSub(Ui_MainWindow *p, int drv);
-  void retranslateFloppyMenu(Ui_MainWindow *p, int drv, int basedrv);
-  void CreateCMTMenu(Ui_MainWindow *p);
-  void CreateCMTPulldownMenu(Ui_MainWindow *p);
-  void ConfigCMTMenuSub(Ui_MainWindow *p);
-  void retranslateCMTMenu(Ui_MainWindow *p);
-  void ConfigCMTMenu(Ui_MainWindow *p);
-
-  // MainWindow
-  QMainWindow *MainWindow;
-   
-  class Action_Control *actionReset;
-  class Action_Control *actionSpecial_Reset;
-  class Action_Control *actionExit_Emulator;
-//#ifdef USE_CPU_TYPE
-  QActionGroup *actionGroup_CpuSpeed;
-  class Action_Control *actionSpeed_x1;
-  class Action_Control *actionSpeed_x2;
-  class Action_Control *actionSpeed_x4;
-  class Action_Control *actionSpeed_x8;
-  class Action_Control *actionSpeed_x16;
-//#endif
-#ifdef USE_BOOT_MODE
-#endif    
-    class Action_Control *actionPaste_from_Clipboard;
-    class Action_Control *actionStop_Pasting;
-#ifdef USE_STATE
-    class Action_Control *actionSave_State;
-    class Action_Control *actionLoad_State;
-#endif
-#ifdef USE_DEBUGGER
-    class Action_Control *actionDebugger_1;
-    class Action_Control *actionDebugger_2;
-    class Action_Control *actionDebugger_3;
-    class Action_Control *actionClose_Debuggers;
-#endif
-
-#if defined(USE_CART1) || defined(USE_CART2)
-    QActionGroup   *actionGroup_Opened_CART[2];
-    QActionGroup   *actionGroup_Protect_CART[2]; // Is needed?
-    class Action_Control *actionRecent_Opened_CART[2];
-    class Action_Control *action_Recent_List_CART[2][MAX_HISTORY];
-    class Action_Control *actionInsert_CART[2];
-    class Action_Control *actionEject_CART[2];
-    class Action_Control *actionProtection_ON_CART[2];
-    class Action_Control *actionProtection_OFF_CART[2];
-#endif
-
-#if defined(USE_FD1) || defined(USE_FD2) || defined(USE_FD3) || defined(USE_FD4) || \
-  defined(USE_FD5) || defined(USE_FD6) || defined(USE_FD7) || defined(USE_FD8)
-    QActionGroup   *actionGroup_Opened_FD[8];
-    QActionGroup   *actionGroup_Protect_FD[8];
-    class Action_Control *actionRecent_Opened_FD[8];
-    class Action_Control *action_Recent_List_FD[8][MAX_HISTORY];
-   
-    QActionGroup   *actionGroup_D88_Image_FD[8];
-    class Action_Control *actionSelect_D88_Image_FD[8];
-    class Action_Control *action_D88_ListImage_FD[8][64];
-    class Action_Control *actionInsert_FD[8];
-    class Action_Control *actionEject_FD[8];
-   
-    class Action_Control *actionProtection_ON_FD[8];
-    class Action_Control *actionProtection_OFF_FD[8];
-#endif
-
-#if defined(USE_QD1) || defined(USE_QD2)
-    QActionGroup   *actionGroup_Opened_QD[2];
-    QActionGroup   *actionGroup_Protect_QD[2];
-    class Action_Control *actionRecent_Opened_QD[2];
-    class Action_Control *action_Recent_List_QD[2][MAX_HISTORY];
-    class Action_Control *actionInsert_QD[2];
-    class Action_Control *actionEject_QD[2];
-    class Action_Control *actionProtection_ON_QD[2];
-    class Action_Control *actionProtection_OFF_QD[2];
-#endif
-#ifdef USE_TAPE    
-    QActionGroup   *actionGroup_Opened_CMT;
-    QActionGroup   *actionGroup_Protect_CMT;
-    class Action_Control *actionRecent_Opened_CMT;
-    class Action_Control *action_Recent_List_CMT[MAX_HISTORY];
-    class Action_Control *actionInsert_CMT;
-    class Action_Control *actionEject_CMT;
-    class Action_Control *actionPlay_Start;
-    class Action_Control *actionPlay_Stop;
-    class Action_Control *actionRecording;
-    class Action_Control *actionProtection_ON_CMT;
-    class Action_Control *actionProtection_OFF_CMT;
-    bool write_protect;
-#endif    
-#if defined(USE_LASER_DISC)
-    class Action_Control *actionInsert_LD;
-    class Action_Control *actionEject_LD;
-    QActionGroup   *actionGroup_Opened_LD;
-    class Action_Control *actionRecent_Opened_LD;
-    class Action_Control *action_Recent_List_LD[MAX_HISTORY];
-#endif
-#if defined(USE_BINARY)
-    QActionGroup   *actionGroup_Opened_BINARY;
-    QActionGroup   *actionGroup_Protect_BINARY; // Is needed?
-    class Action_Control *actionRecent_Opened_BINARY;
-    class Action_Control *action_Recent_List_BINARY[MAX_HISTORY];
-    class Action_Control *actionInsert_BINARY;
-    class Action_Control *actionEject_BINARY;
-    class Action_Control *actionProtection_ON_BINARY;
-    class Action_Control *actionProtection_OFF_BINARY;
-#endif
-    // Screen
-    class Action_Control *actionZoom;
-    class Action_Control *actionDisplay_Mode;
-    class Action_Control *actionScanLine;
-    class Action_Control *actionCRT_Filter;
-    class Action_Control *actionDot_by_Dot;
-    class Action_Control *actionKeep_Aspect;
-    class Action_Control *actionFill_Display;
-    class Action_Control *actionCapture_Screen;
-    
-    class Action_Control *actionAbout;
-    
-    class Action_Control *action2000Hz;
-    class Action_Control *action4000Hz;
-    class Action_Control *action8000Hz;
-    class Action_Control *action11025Hz;
-    class Action_Control *action22050Hz;
-    class Action_Control *action44100Hz;
-    class Action_Control *action48000Hz;
-    class Action_Control *action96000Hz;
-    
-    class Action_Control *action50ms;
-    class Action_Control *action100ms;
-    class Action_Control *action200ms;
-    class Action_Control *action300ms;
-    class Action_Control *action400ms;
-    
-    class Action_Control *actionStart_Record;
-    class Action_Control *actionStop_Record;
-    class Action_Control *actionStart_Record_Movie;
-    class Action_Control *actionStop_Record_Movie;
-    
-    QWidget *centralwidget;
-    GLDrawClass *graphicsView;
-    // Manus    
-    QMenuBar *menubar;
-    QMenu *menuControl;
-    QMenu *menuState;
-    QMenu *menuCopy_Paste;
-    QMenu *menuCpu_Speed;
-    QMenu *menuDebugger;
-    
-#if defined(USE_CART1) || defined(USE_CART2)
-    QMenu *menuCART[8];
-    QMenu *menuCART_Recent[8];
-    QMenu *menuCART_D88[8];
-    QMenu *menuWrite_Protection_CART[8];
-#endif
-#if defined(USE_FD1) || defined(USE_FD2) || defined(USE_FD3) || defined(USE_FD4) || \
-    defined(USE_FD5) || defined(USE_FD6) || defined(USE_FD7) || defined(USE_FD8)
-    QMenu *menuFD[8];
-    QMenu *menuFD_Recent[8];
-    QMenu *menuFD_D88[8];
-    QMenu *menuWrite_Protection_FD[8];
-#endif
-#if defined(USE_QD1) || defined(USE_QD2)
-    QMenu *menuQD[2];
-    QMenu *menuQD_Recent[2];
-    QMenu *menuQD_D88[2];
-    QMenu *menuWrite_Protection_QD[2];
-#endif
-#ifdef USE_TAPE    
-    QMenu *menuCMT;
-    QMenu *menuCMT_Recent;
-    QMenu *menuWrite_Protection_CMT;
-#endif
-#ifdef USE_LASER_DISC    
-    QMenu *menuLD;
-    QMenu *menuLD_Recent;
-#endif
-#if defined(USE_BINARY)
-    QMenu *menuBINARY[1];
-    QMenu *menuBINARY_Recent[1];
-    QMenu *menuWrite_Protection_BINARY[1];
-#endif
-    
-    QMenu *menuScreen;
-    QMenu *menuStretch_Mode;
-    QMenu *menuSound;
-    QMenu *menuOutput_Frequency;
-    QMenu *menuSound_Latency;
-    QMenu *menuFrequency;
-    QMenu *menuRecord;
-    QMenu *menuRecord_sound;
-    QMenu *menuRecoad_as_movie;
-    QMenu *menuEmulator;
-    QMenu *menuHELP;
-   // Status Bar
-    QWidget *dummyStatusArea1;
-    QLabel *messagesStatusBar;
-    QWidget *dummyStatusArea2;
-#ifdef USE_FD1
-    QLabel *fd_StatusBar[8];
-#endif
-    // About Status bar
-    QTimer *statusUpdateTimer;
-    void initStatusBar(void);
-     // Constructor
-    SDL_Thread *hRunEmuThread;
-    bool bRunEmuThread;
-public:
-   Ui_MainWindow(QWidget *parent = 0);
-  ~Ui_MainWindow();
-  // Initializer : using from InitContext.
-  void createContextMenu(void);
-  void setupUi(void);
-  void retranslateUi(Ui_MainWindow *p);
-  // EmuThread
-  void StopEmuThread(void) {
-    bRunEmuThread = false;
-    if(hRunEmuThread != NULL) {
-      SDL_WaitThread(hRunEmuThread, NULL);
-      hRunEmuThread = NULL;
-    }
-  }
-  void LaunchEmuThread(int (*fn)(void *))
-  {
-    bRunEmuThread = true;
-    hRunEmuThread = SDL_CreateThread(fn, (void *)this);
-  }
-  bool GetEmuThreadEnabled(void) {
-       return bRunEmuThread;
-  }
-  // Getting important widgets.
-  QMainWindow *getWindow(void) { return MainWindow; }
-  QMenuBar    *getMenuBar(void) { return menubar;}
-  GLDrawClass *getGraphicsView(void) { return graphicsView; }
-  QStatusBar *getStatusBar(void) { return statusbar;}
-  void OnMainWindowClosed(void);
-  // Basic Action Definition
-    void OnCpuPower(int mode);
-#ifdef USE_BOOT_MODE
-     void OnBootMode(int mode);
-#endif
-#ifdef USE_CPU_TYPE
-     void OnCpuType(int mode);
-#endif
-#ifdef USE_DEBUGGER
-     void OnOpenDebugger(int no);
-#endif   
-#ifdef USE_TAPE    
-     bool Ui_MainWindow::get_wave_shaper(void);
-     bool Ui_MainWindow::get_direct_load_mzt(void);
-#endif
-    // Basic slots
- public slots:
-     void open_disk_dialog(int drv);
-     void _open_disk(int drv, const QString fname);
-     void _open_cart(int drv, const QString fname);
-     void _open_cmt(bool mode,const QString path);
-     void eject_cmt(void);
-     void redraw_status_bar(void);
-#ifdef USE_TAPE
-     void open_cmt_dialog(bool play);
-     void do_write_protect_cmt(bool flag);
-     int  set_recent_cmt(int num);
-     void set_wave_shaper(bool f);
-     void set_direct_load_from_mzt(bool f);
-#ifdef USE_TAPE_BUTTON
-     void OnPushPlayButton(void);
-     void OnPushStopButton(void);
-#endif
-#endif
-     int write_protect_fd(int drv, bool flag);
-     void eject_fd(int drv);
-     void on_actionExit_triggered() {
-       save_config();
-       OnMainWindowClosed();
-       QApplication::quit();
-     }
-     void OnReset(void);
-     void OnSpecialReset(void);
-#ifdef USE_STATE
-     void OnLoadState(void);
-     void OnSaveState(void);
-#endif
-#ifdef USE_BOOT_MODE
-     void set_boot_mode(int mode) {
-       OnBootMode(mode);
-     }
-#endif
-#ifdef USE_CPU_TYPE
-     void set_cpu_type(int mode) {
-       OnCpuType(mode);
-     }
-#endif
-     void set_cpu_power(int pw) {
-       OnCpuPower(pw);
-     }
-   
-#ifdef USE_AUTO_KEY
-     void OnStartAutoKey(void);
-     void OnStopAutoKey(void);
-#endif
-#ifdef USE_DEBUGGER
-     void OnCloseDebugger(void);
-     void open_debugger(int no){
-       OnOpenDebugger(no);
-     }
-#endif
-     int set_d88_slot(int drive, int num);
-     int set_recent_disk(int, int);
+ public:
+  META_MainWindow(QWidget *parent = 0);
+  ~META_MainWindow();
 
-signals:
-   int on_boot_mode(int);
-   int on_cpu_type(int);
-   int on_cpu_power(int);
-   int on_open_debugger(int);
-   int on_insert_fd(int);
-   int on_eject_fd(int);
-   int do_open_disk(int, QString);
-   int do_recent_cmt(bool);
 };
-namespace Ui {
-    class Ui_MainWindow;
-} // namespace Ui
 
 QT_END_NAMESPACE
 
-#endif
+#endif // END