OSDN Git Service

[UI][Qt] Not liking config, using_flags directly.
[csp-qt/common_source_project-fm7.git] / source / src / qt / machines / hc20 / 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 "emu.h"
13 #include "commonclasses.h"
14 #include "menuclasses.h"
15 #include "qt_main.h"
16
17 extern config_t config;
18
19 //QT_BEGIN_NAMESPACE
20 Action_Control_HC20::Action_Control_HC20(QObject *parent, USING_FLAGS *p) : Action_Control(parent, p)
21 {
22         hc20_binds = new Object_Menu_Control_HC20(parent, p);
23 }
24
25 Action_Control_HC20::~Action_Control_HC20(){
26         delete hc20_binds;
27 }
28
29 Object_Menu_Control_HC20::Object_Menu_Control_HC20(QObject *parent, USING_FLAGS *p) : Object_Menu_Control(parent, p)
30 {
31 }
32
33 Object_Menu_Control_HC20::~Object_Menu_Control_HC20(){
34 }
35
36 void Object_Menu_Control_HC20::set_dipsw(bool flag)
37 {
38         emit sig_dipsw(getValue1(), flag);
39 }
40
41
42 void META_MainWindow::setupUI_Emu(void)
43 {
44         int i;
45         QString tmps;
46         menu_Emu_DipSw = new QMenu(menuMachine);
47         menu_Emu_DipSw->setObjectName(QString::fromUtf8("menu_DipSw"));
48
49         actionGroup_DipSw = new QActionGroup(this);
50         actionGroup_DipSw->setExclusive(false);
51         menuMachine->addAction(menu_Emu_DipSw->menuAction());
52         for(i = 0; i < 4; i++) {
53         action_Emu_DipSw[i] = new Action_Control_HC20(this, using_flags);
54         action_Emu_DipSw[i]->setCheckable(true);
55         action_Emu_DipSw[i]->hc20_binds->setValue1(i);
56         tmps.number(i + 1);
57         tmps = QString::fromUtf8("actionEmu_DipSw") + tmps;
58         action_Emu_DipSw[i]->setObjectName(tmps);
59                 
60         if(((1 << i) & config.dipswitch) != 0) action_Emu_DipSw[i]->setChecked(true);
61                 
62                 menu_Emu_DipSw->addAction(action_Emu_DipSw[i]);
63                 actionGroup_DipSw->addAction(action_Emu_DipSw[i]);
64                 connect(action_Emu_DipSw[i], SIGNAL(toggled(bool)),
65                                 action_Emu_DipSw[i]->hc20_binds, SLOT(set_dipsw(bool)));
66                 connect(action_Emu_DipSw[i]->hc20_binds, SIGNAL(sig_dipsw(int, bool)),
67                                 this, SLOT(set_dipsw(int, bool)));
68                 
69         }
70 }
71
72 void META_MainWindow::retranslateUi(void)
73 {
74         int i;
75         
76         retranslateControlMenu(" ",  false);
77         retranslateFloppyMenu(0, 1);
78         retranslateFloppyMenu(1, 2);
79         retranslateCMTMenu();
80         retranslateSoundMenu();
81         retranslateScreenMenu();
82         retranslateMachineMenu();
83         retranslateEmulatorMenu();
84         retranslateUI_Help();
85    
86         this->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0));
87
88         actionAbout->setText(QApplication::translate("MainWindow", "About...", 0));
89
90         menuEmulator->setTitle(QApplication::translate("MainWindow", "Emulator", 0));
91         menuMachine->setTitle(QApplication::translate("MainWindow", "Machine", 0));
92   
93         menuHELP->setTitle(QApplication::translate("MainWindow", "HELP", 0));
94    // Set Labels
95         menu_Emu_DipSw->setTitle(QApplication::translate("MainWindow", "DIP Switches", 0));
96         action_Emu_DipSw[0]->setText(QApplication::translate("MainWindow", "Dip Switch 1", 0));
97         action_Emu_DipSw[1]->setText(QApplication::translate("MainWindow", "Dip Switch 2", 0));
98         action_Emu_DipSw[2]->setText(QApplication::translate("MainWindow", "Dip Switch 3", 0));
99         action_Emu_DipSw[3]->setText(QApplication::translate("MainWindow", "Dip Switch 4", 0));
100         actionHelp_AboutQt->setText(QApplication::translate("MainWindow", "About Qt", 0));
101 #ifdef USE_DEBUGGER
102         actionDebugger[1]->setText(QApplication::translate("MainWindow", "TF-20 CPU", 0));
103         actionDebugger[0]->setVisible(true);
104         actionDebugger[1]->setVisible(true);
105         actionDebugger[2]->setVisible(false);
106         actionDebugger[3]->setVisible(false);
107 #endif
108 } // retranslateUi
109
110
111 META_MainWindow::META_MainWindow(USING_FLAGS *p, QWidget *parent) : Ui_MainWindow(p, parent)
112 {
113         setupUI_Emu();
114         retranslateUi();
115 }
116
117
118 META_MainWindow::~META_MainWindow()
119 {
120 }
121
122 //QT_END_NAMESPACE
123
124
125