OSDN Git Service

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