OSDN Git Service

[UI][Qt] Not liking config, using_flags directly.
[csp-qt/common_source_project-fm7.git] / source / src / qt / machines / x1 / MainWindow.cpp
1 /*
2  * Common Source code Project:
3  * Ui->Qt->MainWindow for X1TurboZ .
4  * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
5  *   License : GPLv2
6  *   History :
7  * Jan 14, 2015 : Initial, many of constructors were moved to qt/gui/menu_main.cpp.
8  */
9
10 #include <QVariant>
11 #include <QtGui>
12 #include "commonclasses.h"
13 #include "menuclasses.h"
14 #include "menu_cart.h"
15 #include "emu.h"
16 #include "qt_main.h"
17
18 Action_Control_X1::Action_Control_X1(QObject *parent, USING_FLAGS *p) : Action_Control(parent, p)
19 {
20         x1_binds = new Object_Menu_Control_X1(parent, p);
21 }
22
23 Action_Control_X1::~Action_Control_X1(){
24         delete x1_binds;
25 }
26
27 Object_Menu_Control_X1::Object_Menu_Control_X1(QObject *parent, USING_FLAGS *p) : Object_Menu_Control(parent, p)
28 {
29 }
30
31 Object_Menu_Control_X1::~Object_Menu_Control_X1(){
32 }
33
34 #ifdef _X1TURBOZ
35 void Object_Menu_Control_X1::do_set_display_mode(void)
36 {
37         emit sig_display_mode(getValue1());
38 }
39 #endif
40
41 extern config_t config;
42
43 void META_MainWindow::setupUI_Emu(void)
44 {
45    int i;
46 # if defined(_X1TURBOZ)
47    menu_Emu_DisplayMode = new QMenu(menuMachine);
48    menu_Emu_DisplayMode->setObjectName(QString::fromUtf8("menu_DisplayMode"));
49    
50    actionGroup_DisplayMode = new QActionGroup(this);
51    actionGroup_DisplayMode->setObjectName(QString::fromUtf8("actionGroup_DisplayMode"));
52    actionGroup_DisplayMode->setExclusive(true);
53    menuMachine->addAction(menu_Emu_DisplayMode->menuAction());   
54    for(i = 0; i < 2; i++) {
55            action_Emu_DisplayMode[i] = new Action_Control_X1(this, using_flags);
56            action_Emu_DisplayMode[i]->setCheckable(true);
57            action_Emu_DisplayMode[i]->x1_binds->setValue1(i);
58            if(i == config.monitor_type) action_Emu_DisplayMode[i]->setChecked(true); // Need to write configure
59    }
60    
61    action_Emu_DisplayMode[0]->setObjectName(QString::fromUtf8("action_Emu_DisplayMode_High"));
62    action_Emu_DisplayMode[1]->setObjectName(QString::fromUtf8("action_Emu_DisplayMode_Standard"));
63    for(i = 0; i < 2; i++) {
64            menu_Emu_DisplayMode->addAction(action_Emu_DisplayMode[i]);
65            actionGroup_DisplayMode->addAction(action_Emu_DisplayMode[i]);
66            connect(action_Emu_DisplayMode[i], SIGNAL(triggered()),
67                            action_Emu_DisplayMode[i]->x1_binds, SLOT(do_set_display_mode()));
68            connect(action_Emu_DisplayMode[i]->x1_binds, SIGNAL(sig_display_mode(int)),
69                            this, SLOT(set_monitor_type(int)));
70    }
71 #endif
72    
73 }
74
75 void META_MainWindow::retranslateUi(void)
76 {
77         retranslateControlMenu("NMI Reset",  true);
78         retranslateFloppyMenu(0, 0);
79         retranslateFloppyMenu(1, 1);
80         retranslateCMTMenu();
81         retranslateSoundMenu();
82         retranslateScreenMenu();
83         retranslateUI_Help();
84 #if defined(_X1TWIN)
85         retranslateCartMenu(0, 1);
86 #endif
87         retranslateEmulatorMenu();
88         retranslateMachineMenu();
89         this->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0));
90  
91         actionAbout->setText(QApplication::translate("MainWindow", "About...", 0));
92         
93
94         menuEmulator->setTitle(QApplication::translate("MainWindow", "Emulator", 0));
95         menuMachine->setTitle(QApplication::translate("MainWindow", "Machine", 0));
96   
97         menuHELP->setTitle(QApplication::translate("MainWindow", "HELP", 0));
98         // Set Labels
99         menuSoundDevice->setTitle(QApplication::translate("MainWindow", "Sound Device", 0));
100         actionSoundDevice[0]->setText(QApplication::translate("MainWindow", "PSG", 0));
101         actionSoundDevice[1]->setText(QApplication::translate("MainWindow", "CZ-8BS1 Single", 0));
102         actionSoundDevice[2]->setText(QApplication::translate("MainWindow", "CZ-8BS1 Double", 0));
103         
104 #if defined(_X1TURBOZ)
105         menu_Emu_DisplayMode->setTitle(QApplication::translate("MainWindow", "Display Mode", 0));
106         action_Emu_DisplayMode[0]->setText(QApplication::translate("MainWindow", "High Resolution (400line)", 0));
107         action_Emu_DisplayMode[1]->setText(QApplication::translate("MainWindow", "Standarsd Resolution (200line)", 0));
108 #endif
109 #if defined(USE_DEVICE_TYPE)
110         menuDeviceType->setTitle(QApplication::translate("MainWindow", "Keyboard Mode", 0));
111         actionDeviceType[0]->setText(QApplication::translate("MainWindow", "Mode A", 0));
112         actionDeviceType[1]->setText(QApplication::translate("MainWindow", "Mode B", 0));
113 #endif
114 #if defined(USE_DRIVE_TYPE)
115         menuDriveType->setTitle(QApplication::translate("MainWindow", "Floppy Type", 0));
116         actionDriveType[0]->setText(QApplication::translate("MainWindow", "2D", 0));
117         actionDriveType[1]->setText(QApplication::translate("MainWindow", "2HD", 0));
118 #endif
119 #ifdef USE_DEBUGGER
120         actionDebugger[3]->setVisible(false);
121
122         actionDebugger[0]->setText(QApplication::translate("MainWindow", "Main CPU", 0));
123         actionDebugger[1]->setText(QApplication::translate("MainWindow", "Sub CPU", 0));
124         actionDebugger[2]->setText(QApplication::translate("MainWindow", "Keyboard CPU", 0));
125         actionDebugger[0]->setVisible(true);
126         actionDebugger[1]->setVisible(true);
127         actionDebugger[2]->setVisible(true);
128 #ifdef _X1TWIN  
129         actionDebugger[3]->setText(QApplication::translate("MainWindow", "PC-ENGINE CPU", 0));
130         actionDebugger[3]->setVisible(true);
131 #endif
132 #endif  
133 #if defined(USE_PRINTER)
134         actionPrintDevice[1]->setText(QString::fromUtf8("Sharp MZ-1P17"));
135         actionPrintDevice[2]->setText(QString::fromUtf8("PC-PR201"));
136 #endif
137 #if defined(_X1TWIN)
138         menu_Cart[0]->setTitle(QApplication::translate("MainWindow", "HuCARD", 0));
139 #endif  
140         actionHelp_AboutQt->setText(QApplication::translate("MainWindow", "About Qt", 0));
141         
142 } // retranslateUi
143
144
145
146 META_MainWindow::META_MainWindow(USING_FLAGS *p, QWidget *parent) : Ui_MainWindow(p, parent)
147 {
148         setupUI_Emu();
149         retranslateUi();
150 }
151
152
153 META_MainWindow::~META_MainWindow()
154 {
155 }
156
157 //QT_END_NAMESPACE
158
159
160