2 * Common Source code Project:
3 * Ui->Qt->MainWindow for JR100 .
4 * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
7 * Jan 14, 2015 : Initial, many of constructors were moved to qt/gui/menu_main.cpp.
13 #include "commonclasses.h"
14 #include "menuclasses.h"
18 void Action_Control_EX80::do_set_sw1()
20 emit sig_set_dipsw(0, bind_bool);
23 void Action_Control_EX80::do_set_sw2()
25 emit sig_set_dipsw(1, bind_bool);
28 void Action_Control_EX80::do_set_vram_addr()
31 emit sig_set_dipsw(2, ((addr & 1) != 0));
32 emit sig_set_dipsw(3, ((addr & 2) != 0));
35 void Action_Control_EX80::setBoolValue(bool flag)
40 void Action_Control_EX80::setIntValue(int val)
46 Action_Control_EX80::Action_Control_EX80(QObject *parent, USING_FLAGS *pp) : Action_Control(parent, pp)
52 Action_Control_EX80::~Action_Control_EX80()
57 void META_MainWindow::setupUI_Emu(void)
60 actionGroup_DipSW1 = new QActionGroup(this);
61 actionGroup_DipSW1->setExclusive(true);
63 actionDipSW1_ON = new Action_Control_EX80(this, using_flags);
64 actionDipSW1_ON->setCheckable(true);
65 actionDipSW1_ON->setVisible(true);
66 actionDipSW1_ON->setBoolValue(true);
67 actionGroup_DipSW1->addAction(actionDipSW1_ON);
69 actionDipSW1_OFF = new Action_Control_EX80(this, using_flags);
70 actionDipSW1_OFF->setCheckable(true);
71 actionDipSW1_OFF->setVisible(true);
72 actionDipSW1_OFF->setBoolValue(false);
73 actionGroup_DipSW1->addAction(actionDipSW1_OFF);
75 if((config.dipswitch & 0x01) != 0) {
76 actionDipSW1_ON->setChecked(true);
78 actionDipSW1_OFF->setChecked(true);
81 actionGroup_DipSW2 = new QActionGroup(this);
82 actionGroup_DipSW2->setExclusive(true);
84 actionDipSW2_ON = new Action_Control_EX80(this, using_flags);
85 actionDipSW2_ON->setCheckable(true);
86 actionDipSW2_ON->setVisible(true);
87 actionDipSW2_ON->setBoolValue(true);
88 actionGroup_DipSW2->addAction(actionDipSW2_ON);
90 actionDipSW2_OFF = new Action_Control_EX80(this, using_flags);
91 actionDipSW2_OFF->setCheckable(true);
92 actionDipSW2_OFF->setVisible(true);
93 actionDipSW2_OFF->setBoolValue(false);
94 actionGroup_DipSW2->addAction(actionDipSW2_OFF);
96 if((config.dipswitch & 0x02) != 0) {
97 actionDipSW2_ON->setChecked(true);
99 actionDipSW2_OFF->setChecked(true);
102 menuDipSW1 = new QMenu(menuMachine);
103 menuDipSW1->setObjectName(QString::fromUtf8("menuControl_DipSW1"));
104 menuDipSW1->addAction(actionDipSW1_ON);
105 menuDipSW1->addAction(actionDipSW1_OFF);
106 menuMachine->addAction(menuDipSW1->menuAction());
107 connect(actionDipSW1_ON, SIGNAL(triggered()), actionDipSW2_ON, SLOT(do_set_sw1()));
108 connect(actionDipSW1_OFF, SIGNAL(triggered()), actionDipSW2_OFF, SLOT(do_set_sw1()));
109 connect(actionDipSW1_ON, SIGNAL(sig_set_dipsw(int, bool)), this, SLOT(set_dipsw(int, bool)));
110 connect(actionDipSW1_OFF, SIGNAL(sig_set_dipsw(int, bool)), this, SLOT(set_dipsw(int, bool)));
112 menuDipSW2 = new QMenu(menuMachine);
113 menuDipSW2->setObjectName(QString::fromUtf8("menuControl_DipSW2"));
114 menuDipSW2->addAction(actionDipSW2_ON);
115 menuDipSW2->addAction(actionDipSW2_OFF);
116 menuMachine->addAction(menuDipSW2->menuAction());
117 connect(actionDipSW2_ON, SIGNAL(triggered()), actionDipSW2_ON, SLOT(do_set_sw2()));
118 connect(actionDipSW2_OFF, SIGNAL(triggered()), actionDipSW2_OFF, SLOT(do_set_sw2()));
119 connect(actionDipSW2_ON, SIGNAL(sig_set_dipsw(int, bool)), this, SLOT(set_dipsw(int, bool)));
120 connect(actionDipSW2_OFF, SIGNAL(sig_set_dipsw(int, bool)), this, SLOT(set_dipsw(int, bool)));
122 menuVramAddr = new QMenu(menuMachine);
123 menuVramAddr->setObjectName(QString::fromUtf8("menuControl_VramAddr"));
125 actionGroup_VramAddr = new QActionGroup(this);
126 actionGroup_VramAddr->setExclusive(true);
127 int dipbit = (config.dipswitch & 0x0c) >> 2;
128 for(i = 0; i < 4; i++) {
129 actionVramAddr[i] = new Action_Control_EX80(this, using_flags);
130 actionVramAddr[i]->setCheckable(true);
131 actionVramAddr[i]->setVisible(true);
132 actionVramAddr[i]->setIntValue(i);
133 actionGroup_VramAddr->addAction(actionVramAddr[i]);
134 menuVramAddr->addAction(actionVramAddr[i]);
136 if(i == dipbit) actionVramAddr[i]->setChecked(true);
137 connect(actionVramAddr[i], SIGNAL(triggered()), actionVramAddr[i], SLOT(do_set_vram_addr()));
138 connect(actionVramAddr[i], SIGNAL(sig_set_dipsw(int, bool)), this, SLOT(set_dipsw(int, bool)));
140 menuMachine->addAction(menuVramAddr->menuAction());
143 void META_MainWindow::retranslateUi(void)
146 retranslateControlMenu("System Reset", false);
147 retranslateCMTMenu();
148 retranslateBinaryMenu(0, 1);
149 retranslateSoundMenu();
150 retranslateScreenMenu();
151 retranslateMachineMenu();
152 retranslateEmulatorMenu();
153 retranslateUI_Help();
155 this->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0));
158 actionMouseEnable->setVisible(false);
160 menuDipSW1->setTitle(QApplication::translate("MainWindow", "SW1", 0));
161 actionDipSW1_ON->setText(QApplication::translate("MainWindow", "STEP", 0));
162 actionDipSW1_OFF->setText(QApplication::translate("MainWindow", "AUTO", 0));
164 menuDipSW2->setTitle(QApplication::translate("MainWindow", "SW2", 0));
165 actionDipSW2_ON->setText(QApplication::translate("MainWindow", "CHAR", 0));
166 actionDipSW2_OFF->setText(QApplication::translate("MainWindow", "BIT", 0));
168 menuVramAddr->setTitle(QApplication::translate("MainWindow", "VRAM Address", 0));
169 actionVramAddr[0]->setText(QApplication::translate("MainWindow", "$8000-$81FF", 0));
170 actionVramAddr[1]->setText(QApplication::translate("MainWindow", "$8200-$83FF", 0));
171 actionVramAddr[2]->setText(QApplication::translate("MainWindow", "$8400-$85FF", 0));
172 actionVramAddr[3]->setText(QApplication::translate("MainWindow", "$8600-$87FF", 0));
174 actionDebugger[0]->setVisible(true);
175 actionDebugger[1]->setVisible(false);
176 actionDebugger[2]->setVisible(false);
177 actionDebugger[3]->setVisible(false);
186 META_MainWindow::META_MainWindow(USING_FLAGS *p, QWidget *parent) : Ui_MainWindow(p, parent)
193 META_MainWindow::~META_MainWindow()