• R/O
  • HTTP
  • SSH
  • HTTPS

common_source_project-fm7: Commit

Common Source Code Project for Qt (a.k.a for FM-7).


Commit MetaInfo

Revision8515ed64b59c2be25e11fbae8668b7fe54f511ad (tree)
Zeit2017-07-18 16:42:13
AutorK.Ohta <whatisthis.sowhat@gmai...>
CommiterK.Ohta

Log Message

[UI][Qt][WIP] Modifing virtual medias displaying area.

Ändern Zusammenfassung

Diff

--- a/source/src/qt/gui/dock_disks.cpp
+++ b/source/src/qt/gui/dock_disks.cpp
@@ -1,15 +1,14 @@
11
22 #include <QApplication>
33 #include <QVBoxLayout>
4+#include <QHBoxLayout>
45 #include <QLabel>
56 #include <QPixmap>
6-#include <QDockWidget>
7-
87 #include "dock_disks.h"
98
10-#define NEW_LABELS(lim,_l,name,_p,mes,zero) { \
11- QString tmps, tmpss; \
12- for(int i = 0; i < lim; i++) { \
9+#define NEW_LABELS(lim,_l,name,_p,mes,zero) { \
10+ QString tmps, tmpss; \
11+ for(int i = 0; i < lim; i++) { \
1312 if(zero) { \
1413 tmpss.setNum(i); \
1514 } else { \
@@ -17,30 +16,29 @@
1716 } \
1817 tmps = name; \
1918 tmps = tmps + tmpss; \
19+ _p[i] = tmps; \
2020 _l[i] = new QLabel(tmps, this); \
21- _p[i] = new QLabel(mes, this); \
2221 _l[i]->setVisible(false); \
23- _p[i]->setVisible(false); \
2422 VBox->addWidget(_l[i]); \
25- VBox->addWidget(_p[i]); \
2623 } \
2724 }
2825
29-#define RELEASE_LABELS(lim,_l,_p) { \
26+#define RELEASE_LABELS(lim,_l) { \
3027 for(int i = 0; i < lim; i++) { \
3128 if(_l[i] != NULL) delete _l[i]; \
32- if(_p[i] != NULL) delete _p[i]; \
3329 _l[i] = NULL; \
34- _p[i] = NULL; \
3530 } \
3631 }
3732
38-CSP_DockDisks::CSP_DockDisks(QWidget *parent, Qt::WindowFlags flags) : QDockWidget(parent, flags)
33+CSP_DockDisks::CSP_DockDisks(QWidget *parent, Qt::WindowFlags flags, bool vertical) : QDockWidget(parent, flags)
3934 {
4035 QString ns, ms;
41- QWidget *Widget = new QWidget(this);
42- VBox = new QVBoxLayout(Widget);
36+ WidgetV = new QWidget(this);
37+ WidgetH = new QWidget(this);
38+ VBox = new QVBoxLayout(WidgetV);
39+ HBox = new QHBoxLayout(WidgetH);
4340 VBox->setAlignment(Qt::AlignTop);
41+ HBox->setAlignment(Qt::AlignRight);
4442
4543 ns = QApplication::translate("DockDisks", "Binary", 0);
4644 ms = QApplication::translate("DockDisks", "*EMPTY*", 0);
@@ -77,24 +75,30 @@ CSP_DockDisks::CSP_DockDisks(QWidget *parent, Qt::WindowFlags flags) : QDockWid
7775 ns = QApplication::translate("DockDisks", "Laser Disc", 0);
7876 ms = QApplication::translate("DockDisks", "*EMPTY*", 0);
7977 NEW_LABELS(2,lLaserDisc,ns,pLaserDisc,ms,false);
80-
81- Widget->setLayout(VBox);
82- this->setWidget(Widget);
78+
79+ this->setFloating(true);
80+ WidgetV->setLayout(VBox);
81+ //WidgetH->setLayout(HBox);
82+ //if(vertical) {
83+ this->setWidget(WidgetV);
84+ //} else {
85+ // this->setWidget(WidgetH);
86+ //}
8387 }
8488
8589
8690
8791 CSP_DockDisks::~CSP_DockDisks()
8892 {
89- RELEASE_LABELS(8,lBinary,pBinary);
90- RELEASE_LABELS(8,lFloppyDisk,pFloppyDisk);
91- RELEASE_LABELS(2,lCMT,pCMT);
92- RELEASE_LABELS(8,lBubble,pBubble);
93- RELEASE_LABELS(8,lCart,pCart);
94- RELEASE_LABELS(8,lQuickDisk,pQuickDisk);
95- RELEASE_LABELS(2,lCompactDisc,pCompactDisc);
96- RELEASE_LABELS(8,lHardDisk,pHardDisk);
97- RELEASE_LABELS(2,lLaserDisc,pLaserDisc);
93+ RELEASE_LABELS(8,lBinary);
94+ RELEASE_LABELS(8,lFloppyDisk);
95+ RELEASE_LABELS(2,lCMT);
96+ RELEASE_LABELS(8,lBubble);
97+ RELEASE_LABELS(8,lCart);
98+ RELEASE_LABELS(8,lQuickDisk);
99+ RELEASE_LABELS(2,lCompactDisc);
100+ RELEASE_LABELS(8,lHardDisk);
101+ RELEASE_LABELS(2,lLaserDisc);
98102 }
99103
100104 void CSP_DockDisks::updateLabel(int dom, int localnum, QString str)
@@ -102,46 +106,55 @@ void CSP_DockDisks::updateLabel(int dom, int localnum, QString str)
102106 switch(dom) {
103107 case CSP_DockDisks_Domain_Binary:
104108 if((localnum < 8) && (localnum >= 0)) {
109+ pBinary[localnum] = str;
105110 lBinary[localnum]->setText(str);
106111 }
107112 break;
108113 case CSP_DockDisks_Domain_Bubble:
109114 if((localnum < 8) && (localnum >= 0)) {
115+ pBubble[localnum] = str;
110116 lBubble[localnum]->setText(str);
111117 }
112118 break;
113119 case CSP_DockDisks_Domain_Cart:
114120 if((localnum < 8) && (localnum >= 0)) {
121+ pCart[localnum] = str;
115122 lCart[localnum]->setText(str);
116123 }
117124 break;
118125 case CSP_DockDisks_Domain_CMT:
119126 if((localnum < 2) && (localnum >= 0)) {
127+ pCMT[localnum] = str;
120128 lCMT[localnum]->setText(str);
121129 }
122130 break;
123131 case CSP_DockDisks_Domain_CD:
124132 if((localnum < 2) && (localnum >= 0)) {
133+ pCompactDisc[localnum] = str;
125134 lCompactDisc[localnum]->setText(str);
126135 }
127136 break;
128137 case CSP_DockDisks_Domain_FD:
129138 if((localnum < 8) && (localnum >= 0)) {
139+ pFloppyDisk[localnum] = str;
130140 lFloppyDisk[localnum]->setText(str);
131141 }
132142 break;
133143 case CSP_DockDisks_Domain_HD:
134144 if((localnum < 8) && (localnum >= 0)) {
145+ pHardDisk[localnum] = str;
135146 lHardDisk[localnum]->setText(str);
136147 }
137148 break;
138149 case CSP_DockDisks_Domain_LD:
139150 if((localnum < 2) && (localnum >= 0)) {
151+ pLaserDisc[localnum] = str;
140152 lLaserDisc[localnum]->setText(str);
141153 }
142154 break;
143155 case CSP_DockDisks_Domain_QD:
144156 if((localnum < 8) && (localnum >= 0)) {
157+ pQuickDisk[localnum] = str;
145158 lQuickDisk[localnum]->setText(str);
146159 }
147160 break;
@@ -155,47 +168,56 @@ void CSP_DockDisks::updateMessage(int dom, int localnum, QString str)
155168 switch(dom) {
156169 case CSP_DockDisks_Domain_Binary:
157170 if((localnum < 8) && (localnum >= 0)) {
158- pBinary[localnum]->setText(str);
171+ str = pBinary[localnum] + str;
172+ lBinary[localnum]->setText(str);
159173 }
160174 break;
161175 case CSP_DockDisks_Domain_Bubble:
162176 if((localnum < 8) && (localnum >= 0)) {
163- pBubble[localnum]->setText(str);
177+ str = pBubble[localnum] + str;
178+ lBubble[localnum]->setText(str);
164179 }
165180 break;
166181 case CSP_DockDisks_Domain_Cart:
167182 if((localnum < 8) && (localnum >= 0)) {
168- pCart[localnum]->setText(str);
183+ str = pCart[localnum] + str;
184+ lCart[localnum]->setText(str);
169185 }
170186 break;
171187 case CSP_DockDisks_Domain_CMT:
172188 if((localnum < 2) && (localnum >= 0)) {
173- pCMT[localnum]->setText(str);
189+ str = pCMT[localnum] + str;
190+ lCMT[localnum]->setText(str);
174191 }
175192 break;
176193 case CSP_DockDisks_Domain_CD:
177194 if((localnum < 2) && (localnum >= 0)) {
178- pCompactDisc[localnum]->setText(str);
195+ str = pCompactDisc[localnum] + str;
196+ lCompactDisc[localnum]->setText(str);
179197 }
180198 break;
181199 case CSP_DockDisks_Domain_FD:
182200 if((localnum < 8) && (localnum >= 0)) {
183- pFloppyDisk[localnum]->setText(str);
201+ str = pFloppyDisk[localnum] + str;
202+ lFloppyDisk[localnum]->setText(str);
184203 }
185204 break;
186205 case CSP_DockDisks_Domain_HD:
187206 if((localnum < 8) && (localnum >= 0)) {
188- pHardDisk[localnum]->setText(str);
207+ str = pHardDisk[localnum] + str;
208+ lHardDisk[localnum]->setText(str);
189209 }
190210 break;
191211 case CSP_DockDisks_Domain_LD:
192212 if((localnum < 2) && (localnum >= 0)) {
193- pLaserDisc[localnum]->setText(str);
213+ str = pLaserDisc[localnum] + str;
214+ lLaserDisc[localnum]->setText(str);
194215 }
195216 break;
196217 case CSP_DockDisks_Domain_QD:
197218 if((localnum < 8) && (localnum >= 0)) {
198- pQuickDisk[localnum]->setText(str);
219+ str = pQuickDisk[localnum] + str;
220+ lQuickDisk[localnum]->setText(str);
199221 }
200222 break;
201223 default:
@@ -209,55 +231,46 @@ void CSP_DockDisks::setVisible(int dom, int localnum, bool enabled)
209231 case CSP_DockDisks_Domain_Binary:
210232 if((localnum < 8) && (localnum >= 0)) {
211233 lBinary[localnum]->setVisible(enabled);
212- pBinary[localnum]->setVisible(enabled);
213234 }
214235 break;
215236 case CSP_DockDisks_Domain_Bubble:
216237 if((localnum < 8) && (localnum >= 0)) {
217238 lBubble[localnum]->setVisible(enabled);
218- pBubble[localnum]->setVisible(enabled);
219239 }
220240 break;
221241 case CSP_DockDisks_Domain_Cart:
222242 if((localnum < 8) && (localnum >= 0)) {
223243 lCart[localnum]->setVisible(enabled);
224- pCart[localnum]->setVisible(enabled);
225244 }
226245 break;
227246 case CSP_DockDisks_Domain_CMT:
228247 if((localnum < 2) && (localnum >= 0)) {
229248 lCMT[localnum]->setVisible(enabled);
230- pCMT[localnum]->setVisible(enabled);
231249 }
232250 break;
233251 case CSP_DockDisks_Domain_CD:
234252 if((localnum < 2) && (localnum >= 0)) {
235253 lCompactDisc[localnum]->setVisible(enabled);
236- pCompactDisc[localnum]->setVisible(enabled);
237254 }
238255 break;
239256 case CSP_DockDisks_Domain_FD:
240257 if((localnum < 8) && (localnum >= 0)) {
241258 lFloppyDisk[localnum]->setVisible(enabled);
242- pFloppyDisk[localnum]->setVisible(enabled);
243259 }
244260 break;
245261 case CSP_DockDisks_Domain_HD:
246262 if((localnum < 8) && (localnum >= 0)) {
247263 lHardDisk[localnum]->setVisible(enabled);
248- pHardDisk[localnum]->setVisible(enabled);
249264 }
250265 break;
251266 case CSP_DockDisks_Domain_LD:
252267 if((localnum < 2) && (localnum >= 0)) {
253268 lLaserDisc[localnum]->setVisible(enabled);
254- pLaserDisc[localnum]->setVisible(enabled);
255269 }
256270 break;
257271 case CSP_DockDisks_Domain_QD:
258272 if((localnum < 8) && (localnum >= 0)) {
259273 lQuickDisk[localnum]->setVisible(enabled);
260- pQuickDisk[localnum]->setVisible(enabled);
261274 }
262275 break;
263276 default:
@@ -270,47 +283,47 @@ void CSP_DockDisks::setPixmap(int dom, int localnum, const QPixmap &pix)
270283 switch(dom) {
271284 case CSP_DockDisks_Domain_Binary:
272285 if((localnum < 8) && (localnum >= 0)) {
273- pBinary[localnum]->setPixmap(pix);
286+ lBinary[localnum]->setPixmap(pix);
274287 }
275288 break;
276289 case CSP_DockDisks_Domain_Bubble:
277290 if((localnum < 8) && (localnum >= 0)) {
278- pBubble[localnum]->setPixmap(pix);
291+ lBubble[localnum]->setPixmap(pix);
279292 }
280293 break;
281294 case CSP_DockDisks_Domain_Cart:
282295 if((localnum < 8) && (localnum >= 0)) {
283- pCart[localnum]->setPixmap(pix);
296+ lCart[localnum]->setPixmap(pix);
284297 }
285298 break;
286299 case CSP_DockDisks_Domain_CMT:
287300 if((localnum < 2) && (localnum >= 0)) {
288- pCMT[localnum]->setPixmap(pix);
301+ lCMT[localnum]->setPixmap(pix);
289302 }
290303 break;
291304 case CSP_DockDisks_Domain_CD:
292305 if((localnum < 2) && (localnum >= 0)) {
293- pCompactDisc[localnum]->setPixmap(pix);
306+ lCompactDisc[localnum]->setPixmap(pix);
294307 }
295308 break;
296309 case CSP_DockDisks_Domain_FD:
297310 if((localnum < 8) && (localnum >= 0)) {
298- pFloppyDisk[localnum]->setPixmap(pix);
311+ lFloppyDisk[localnum]->setPixmap(pix);
299312 }
300313 break;
301314 case CSP_DockDisks_Domain_HD:
302315 if((localnum < 8) && (localnum >= 0)) {
303- pHardDisk[localnum]->setPixmap(pix);
316+ lHardDisk[localnum]->setPixmap(pix);
304317 }
305318 break;
306319 case CSP_DockDisks_Domain_LD:
307320 if((localnum < 2) && (localnum >= 0)) {
308- pLaserDisc[localnum]->setPixmap(pix);
321+ lLaserDisc[localnum]->setPixmap(pix);
309322 }
310323 break;
311324 case CSP_DockDisks_Domain_QD:
312325 if((localnum < 8) && (localnum >= 0)) {
313- pQuickDisk[localnum]->setPixmap(pix);
326+ lQuickDisk[localnum]->setPixmap(pix);
314327 }
315328 break;
316329 default:
--- a/source/src/qt/gui/dock_disks.h
+++ b/source/src/qt/gui/dock_disks.h
@@ -2,6 +2,7 @@
22 #define _CSP_QT_DOCKWIDGET_BASE_H
33
44 #include <QObject>
5+#include <QToolBar>
56 #include <QDockWidget>
67 #include <QIcon>
78 #include <QString>
@@ -24,11 +25,16 @@ enum {
2425
2526 QT_BEGIN_NAMESPACE
2627 class QVBoxLayout;
28+class QHBoxLayout;
2729
2830 class CSP_DockDisks : public QDockWidget {
2931 Q_OBJECT
3032 protected:
3133 QVBoxLayout *VBox;
34+ QHBoxLayout *HBox;
35+ QWidget *WidgetV;
36+ QWidget *WidgetH;
37+
3238 QLabel *lBinary[8];
3339 QLabel *lBubble[8];
3440 QLabel *lCart[8];
@@ -39,17 +45,18 @@ protected:
3945 QLabel *lLaserDisc[2];
4046 QLabel *lQuickDisk[8];
4147
48+ QString pBinary[8];
49+ QString pBubble[8];
50+ QString pCart[8];
51+ QString pCMT[2];
52+ QString pCompactDisc[2];
53+ QString pFloppyDisk[8];
54+ QString pHardDisk[8];
55+ QString pLaserDisc[2];
56+ QString pQuickDisk[8];
57+
4258 public:
43- QLabel *pBinary[8];
44- QLabel *pBubble[8];
45- QLabel *pCart[8];
46- QLabel *pCMT[2];
47- QLabel *pCompactDisc[2];
48- QLabel *pFloppyDisk[8];
49- QLabel *pHardDisk[8];
50- QLabel *pLaserDisc[2];
51- QLabel *pQuickDisk[8];
52- CSP_DockDisks(QWidget *parent, Qt::WindowFlags flags = 0);
59+ CSP_DockDisks(QWidget *parent, Qt::WindowFlags flags = 0, bool vertical = false);
5360 ~CSP_DockDisks();
5461
5562 public slots:
--- a/source/src/qt/gui/menu_main.cpp
+++ b/source/src/qt/gui/menu_main.cpp
@@ -20,6 +20,7 @@
2020 #include <QHBoxLayout>
2121 #include <QVBoxLayout>
2222 #include <QDockWidget>
23+#include <QToolBar>
2324
2425 #include "commonclasses.h"
2526 #include "display_about.h"
@@ -332,8 +333,9 @@ void Ui_MainWindowBase::setupUi(void)
332333
333334
334335 bitmapImage = NULL;
335- driveData = new CSP_DockDisks(this, 0);
336- MainWindow->setDockOptions(QMainWindow::AnimatedDocks | QMainWindow::AllowTabbedDocks | QMainWindow::VerticalTabs);
336+ driveData = new CSP_DockDisks(this, 0, true);
337+ //driveData = new CSP_DockDisks(this, 0);
338+ MainWindow->setDockOptions(QMainWindow::AnimatedDocks);
337339 if(using_flags->is_use_fd()) {
338340 int i;
339341 for(i = 0; i < using_flags->get_max_drive(); i++) driveData->setVisible(CSP_DockDisks_Domain_FD, i, true);
@@ -371,7 +373,10 @@ void Ui_MainWindowBase::setupUi(void)
371373
372374 MainWindow->setCentralWidget(graphicsView);
373375 MainWindow->setFocusProxy(graphicsView);
374- MainWindow->addDockWidget(Qt::RightDockWidgetArea, driveData);
376+ //driveData->setAllowedAreas(Qt::RightToolBarArea | Qt::BottomToolBarArea);
377+ //MainWindow->addToolBar(Qt::BottomToolBarArea, driveData);
378+ MainWindow->addDockWidget(Qt::LeftDockWidgetArea, driveData);
379+ //MainWindow->setCorner(Qt::BottomRightCorner, Qt::BottomDockWidgetArea);
375380 MainWindow->centralWidget()->adjustSize();
376381 MainWindow->adjustSize();
377382
Show on old repository browser