Skip to content

Commit fcadf30

Browse files
committed
refactor button definition
1 parent a13b89d commit fcadf30

File tree

9 files changed

+92
-115
lines changed

9 files changed

+92
-115
lines changed

src/SetupWidgets.cpp

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ void setupWidgets(){
3636
penSettingsLayout = new QVBoxLayout(penSettings);
3737
penSettingsLayout->setSpacing(padding);
3838
penSettingsLayout->setContentsMargins(padding, padding, padding, padding);
39-
penMenu = create_button(":images/pen-menu.svg", [=](){
39+
toolButtons[PENMENU] = create_button(":images/pen-menu.svg", [=](){
4040
floatingSettings->setPage(0);
4141
floatingWidget->moveAction();
4242
});
@@ -47,7 +47,7 @@ void setupWidgets(){
4747
toolSettingsLayout = new QVBoxLayout(toolSettings);
4848
toolSettingsLayout->setSpacing(0);
4949
toolSettingsLayout->setContentsMargins(0, 0, 0, 0);
50-
toolMenu = create_button(":images/pen-settings.svg", [=](){
50+
toolButtons[TOOLMENU] = create_button(":images/pen-settings.svg", [=](){
5151
floatingSettings->setPage(1);
5252
floatingWidget->moveAction();
5353
});
@@ -59,13 +59,13 @@ void setupWidgets(){
5959
/********** Main toolbar **********/
6060

6161
floatingWidget->addWidget("move", move);
62-
floatingWidget->addWidget("pen-menu", penMenu);
63-
floatingWidget->addWidget("pen-switch", penSwitch);
64-
floatingWidget->addWidget("next", nextButton);
65-
floatingWidget->addWidget("back", backButton);
66-
floatingWidget->addWidget("tool-menu", toolMenu);
62+
floatingWidget->addWidget("pen-menu", toolButtons[PENMENU]);
63+
floatingWidget->addWidget("pen-switch", toolButtons[SWITCH]);
64+
floatingWidget->addWidget("next", toolButtons[NEXT]);
65+
floatingWidget->addWidget("back", toolButtons[BACK]);
66+
floatingWidget->addWidget("tool-menu", toolButtons[TOOLMENU]);
6767
if(!get_bool("fuar")){
68-
floatingWidget->addWidget("minify", minify);
68+
floatingWidget->addWidget("minify", toolButtons[MINIFY]);
6969
}
7070

7171
/*********** main menu done *********/
@@ -108,7 +108,7 @@ void setupWidgets(){
108108

109109
// Create buttons for each color
110110

111-
gridLayout->addWidget(colorpicker, 0, 0, Qt::AlignCenter);
111+
gridLayout->addWidget(toolButtons[COLORPICKER], 0, 0, Qt::AlignCenter);
112112
for (int i = 0; i < num_of_color; i++) {
113113
QPushButton *button = new QPushButton(colorDialog);
114114
button->setFixedSize(butsize, butsize);
@@ -274,8 +274,8 @@ void setupWidgets(){
274274

275275
pageNumLayout->addWidget(new QLabel(_("Page:")));
276276
pageNumLayout->addWidget(pageLabel);
277-
pageNumLayout->addWidget(previousPage);
278-
pageNumLayout->addWidget(nextPage);
277+
pageNumLayout->addWidget(toolButtons[PREVPAGE]);
278+
pageNumLayout->addWidget(toolButtons[NEXTPAGE]);
279279

280280
QLabel *vsep1 = new QLabel();
281281
vsep1->setStyleSheet("background: black;");
@@ -297,19 +297,19 @@ void setupWidgets(){
297297

298298
QWidget *miscDialog = new QWidget();
299299
QGridLayout *miscLayout = new QGridLayout(miscDialog);
300-
miscLayout->addWidget(clear, 0, 0);
301-
miscLayout->addWidget(ssButton, 0, 1);
300+
miscLayout->addWidget(toolButtons[CLEAR], 0, 0);
301+
miscLayout->addWidget(toolButtons[SCREENSHOT], 0, 1);
302302
if(!get_bool("fuar")){
303-
miscLayout->addWidget(close, 0, 2);
304-
miscLayout->addWidget(save, 0, 3);
305-
miscLayout->addWidget(open, 0, 4);
306-
miscLayout->addWidget(fullscreen, 0, 5);
307-
miscLayout->addWidget(rotate, 0, 6);
303+
miscLayout->addWidget(toolButtons[CLOSE], 0, 2);
304+
miscLayout->addWidget(toolButtons[SAVE], 0, 3);
305+
miscLayout->addWidget(toolButtons[OPEN], 0, 4);
306+
miscLayout->addWidget(toolButtons[FULLSCREEN], 0, 5);
307+
miscLayout->addWidget(toolButtons[ROTATE], 0, 6);
308308
}
309-
miscLayout->addWidget(overlayScaleUp, 1, 0);
310-
miscLayout->addWidget(overlayScaleDown, 1, 1);
311-
miscLayout->addWidget(overlayRotateUp, 1, 2);
312-
miscLayout->addWidget(overlayRotateDown, 1, 3);
309+
miscLayout->addWidget(toolButtons[OVERLAYSCALEUP], 1, 0);
310+
miscLayout->addWidget(toolButtons[OVERLAYSCALEDOWN], 1, 1);
311+
miscLayout->addWidget(toolButtons[OVERLAYROTATEUP], 1, 2);
312+
miscLayout->addWidget(toolButtons[OVERLAYROTATEDOWN], 1, 3);
313313

314314
toolSettingsLayout->addWidget(miscDialog);
315315

src/constants.h

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,26 @@
2525
#define ISOMETRIC 43
2626
#define MUSIC 44
2727
#define CUSTOM 45
28+
29+
#define SWITCH 0
30+
#define COLORPICKER 1
31+
#define BACK 2
32+
#define NEXT 3
33+
#define MINIFY 4
34+
#define FULLSCREEN 5
35+
#define ROTATE 6
36+
#define HIDEUI 7
37+
#define OVERLAYSCALEUP 8
38+
#define OVERLAYSCALEDOWN 9
39+
#define OVERLAYROTATEUP 10
40+
#define OVERLAYROTATEDOWN 11
41+
#define CLEAR 12
42+
#define PREVPAGE 13
43+
#define NEXTPAGE 14
44+
#define CLOSE 15
45+
#define PENMENU 16
46+
#define TOOLMENU 17
47+
#define SAVE 18
48+
#define OPEN 19
49+
#define SCREENSHOT 20
50+

src/tools.h

Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ extern "C" {
3131
#include "utils/Settings.h"
3232
}
3333
extern QMap<qint64, QPushButton*> penButtons;
34+
extern QMap<qint64, QPushButton*> toolButtons;
3435

3536
extern DrawingWidget *drawing;
3637
extern FloatingWidget *floatingWidget;
@@ -60,33 +61,10 @@ extern int getPen();
6061
extern void setPenStyle(int style);
6162
extern void setLineStyle(int style);
6263

63-
extern QPushButton *typeButton;
64-
6564
extern OverView *ov;
6665

67-
extern QPushButton *backgroundButton;
68-
extern QPushButton* minify;
69-
extern QPushButton* rotate;
70-
extern QPushButton* fullscreen;
71-
72-
extern QPushButton* colorpicker;
73-
74-
extern QPushButton* overlayScaleUp;
75-
extern QPushButton* overlayScaleDown;
76-
77-
extern QPushButton* overlayRotateUp;
78-
extern QPushButton* overlayRotateDown;
79-
80-
extern QPushButton *backButton;
81-
extern QPushButton *nextButton;
82-
83-
extern QPushButton *previousPage;
84-
extern QPushButton *nextPage;
8566
extern QLabel *pageLabel;
8667

87-
extern QPushButton *clear;
88-
extern QPushButton *close;
89-
9068
extern QWidget *penSettings;
9169
extern QWidget *colorDialog;
9270
extern QWidget *typeDialog;
@@ -97,13 +75,8 @@ extern QLabel *colorLabel;
9775
extern QWidget *penTypeDialog;
9876
extern QWidget *modeDialog;
9977

100-
10178
extern QLabel *move;
10279

103-
extern QPushButton *save;
104-
extern QPushButton *open;
105-
extern QPushButton *ssButton;
106-
10780
extern "C" {
10881
extern void *load_archive(void* arg);
10982
extern QString archive_target;
@@ -122,7 +95,4 @@ extern void backgroundStyleEvent();
12295

12396
extern void setupWidgets();
12497

125-
extern QPushButton *penMenu;
126-
extern QPushButton *penSwitch;
127-
12898
void setHideMainWindow(bool status);

src/tools/background.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,22 +31,22 @@ void setupBackground(){
3131
set_shortcut(penButtons[WHITE], Qt::Key_E, Qt::AltModifier);
3232

3333
// page buttons
34-
previousPage = create_button(":images/go-page-previous.svg", [=](){
34+
toolButtons[PREVPAGE] = create_button(":images/go-page-previous.svg", [=](){
3535
if(drawing->getPageNum() == 0){
3636
return;
3737
}
3838
drawing->goPreviousPage();
3939
backgroundStyleEvent();
4040
updateGoBackButtons();
4141
});
42-
set_shortcut(previousPage, Qt::Key_PageDown, Qt::ControlModifier);
42+
set_shortcut(toolButtons[PREVPAGE], Qt::Key_PageDown, Qt::ControlModifier);
4343

44-
nextPage = create_button(":images/go-page-next.svg", [=](){
44+
toolButtons[NEXTPAGE] = create_button(":images/go-page-next.svg", [=](){
4545
drawing->goNextPage();
4646
backgroundStyleEvent();
4747
updateGoBackButtons();
4848
});
49-
set_shortcut(nextPage, Qt::Key_PageUp, Qt::ControlModifier);
49+
set_shortcut(toolButtons[NEXTPAGE], Qt::Key_PageUp, Qt::ControlModifier);
5050

5151
// overlay buttons
5252
penButtons[BLANK] = create_button(":images/overlay-none.svg", [=](){
@@ -95,35 +95,35 @@ void setupBackground(){
9595

9696
pageLabel = new QLabel("0");
9797

98-
overlayScaleUp = create_button(":images/zoom-in.svg", [=](){
98+
toolButtons[OVERLAYSCALEUP] = create_button(":images/zoom-in.svg", [=](){
9999
board->ratios[drawing->getPageNum()] += 10;
100100
updateRatioButtons();
101101
board->update();
102102
});
103103

104-
overlayScaleDown = create_button(":images/zoom-out.svg", [=](){
104+
toolButtons[OVERLAYSCALEDOWN] = create_button(":images/zoom-out.svg", [=](){
105105
board->ratios[drawing->getPageNum()] -= 10;
106106
updateRatioButtons();
107107
board->update();
108108
});
109109

110-
overlayRotateUp = create_button(":images/bg-rotate-plus.svg", [=](){
110+
toolButtons[OVERLAYROTATEUP] = create_button(":images/bg-rotate-plus.svg", [=](){
111111
board->rotates[drawing->getPageNum()] += 15;
112112
board->update();
113113
});
114114

115-
overlayRotateDown = create_button(":images/bg-rotate-minus.svg", [=](){
115+
toolButtons[OVERLAYROTATEDOWN] = create_button(":images/bg-rotate-minus.svg", [=](){
116116
board->rotates[drawing->getPageNum()] -= 15;
117117
board->update();
118118
});
119119

120-
clear = create_button(":images/clear.svg", [=](){
120+
toolButtons[CLEAR] = create_button(":images/clear.svg", [=](){
121121
if(getPen() == SELECTION && hasSelection) {
122122
drawing->clearSelection();
123123
} else {
124124
drawing->clear();
125125
}
126126
});
127-
set_shortcut(clear, Qt::Key_Delete, Qt::ControlModifier);
127+
set_shortcut(toolButtons[CLEAR], Qt::Key_Delete, Qt::ControlModifier);
128128

129129
}

src/tools/mainWindow.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -193,13 +193,13 @@ void setupTools(){
193193
floatingWidget->setSettings(floatingSettings);
194194
floatingSettings->setHide();
195195

196-
minify = create_button(":images/screen.svg", [=](){
196+
toolButtons[MINIFY] = create_button(":images/screen.svg", [=](){
197197
mainWindow->showMinimized();
198198
});
199-
set_shortcut(minify, Qt::Key_D, Qt::MetaModifier);
199+
set_shortcut(toolButtons[MINIFY], Qt::Key_D, Qt::MetaModifier);
200200

201201
QScreen *screen = QGuiApplication::primaryScreen();
202-
fullscreen = create_button(":images/fullscreen-exit.svg", [=](){
202+
toolButtons[FULLSCREEN] = create_button(":images/fullscreen-exit.svg", [=](){
203203
mainWidget->move(0,0);
204204
if ((tool != nullptr) && (tool2 != nullptr)){
205205
tool->hide();
@@ -210,28 +210,28 @@ void setupTools(){
210210
mainWindow->hide();
211211
mainWindow->showNormal();
212212
if(isFullScreen){
213-
set_icon(":images/fullscreen.svg", fullscreen);
213+
set_icon(":images/fullscreen.svg", toolButtons[FULLSCREEN]);
214214
mainWindow->resize(screen->size().width() * 0.8, screen->size().height() * 0.8);
215215
} else {
216-
set_icon(":images/fullscreen-exit.svg", fullscreen);
216+
set_icon(":images/fullscreen-exit.svg", toolButtons[FULLSCREEN]);
217217
mainWindow->resize(screen->size().width(), screen->size().height());
218218
mainWindow->showFullScreen();
219219
}
220220
scrollVSlider->setVisible(isFullScreen);
221221
scrollHSlider->setVisible(isFullScreen);
222222
isFullScreen = !isFullScreen;
223-
minify->setEnabled(isFullScreen);
223+
toolButtons[MINIFY]->setEnabled(isFullScreen);
224224
});
225225

226-
set_shortcut(fullscreen, Qt::Key_F11, 0);
226+
set_shortcut(toolButtons[FULLSCREEN], Qt::Key_F11, 0);
227227

228-
rotate = create_button(":images/rotate.svg", [=](){
228+
toolButtons[ROTATE] = create_button(":images/rotate.svg", [=](){
229229
floatingWidget->setVertical(!floatingWidget->is_vertical);
230230
floatingSettings->setHide();
231231
});
232232

233233
// non-gui button for hide / show floatingWidget
234-
QPushButton* hideUi = create_button("", [=](){
234+
toolButtons[HIDEUI] = create_button("", [=](){
235235
if(hideState){
236236
floatingWidget->hide();
237237
floatingSettings->setHide();
@@ -240,7 +240,7 @@ void setupTools(){
240240
}
241241
hideState = ! hideState;
242242
});
243-
set_shortcut(hideUi, Qt::Key_F1, Qt::AltModifier);
243+
set_shortcut(toolButtons[HIDEUI], Qt::Key_F1, Qt::AltModifier);
244244
}
245245

246246
void setHideMainWindow(bool status){

src/tools/pen.cpp

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,11 @@
11
#include "../tools.h"
22

33
QMap<qint64, QPushButton*> penButtons;
4-
5-
QPushButton *penSwitch;
4+
QMap<qint64, QPushButton*> toolButtons;
65

76
QSlider *thicknessSlider;
8-
QPushButton *backgroundButton;
9-
QPushButton* minify;
10-
QPushButton* rotate;
11-
QPushButton* fullscreen;
12-
13-
QPushButton *backButton;
14-
QPushButton *nextButton;
15-
16-
QPushButton *previousPage;
17-
QPushButton *nextPage;
187

198
QLabel *move;
20-
QPushButton *close;
21-
QPushButton* colorpicker;
229

2310
OverView *ov;
2411

@@ -69,7 +56,7 @@ void setupPenType(){
6956
setPen(PEN);
7057
});
7158

72-
penSwitch = create_button(":images/pen.svg", [=](){
59+
toolButtons[SWITCH] = create_button(":images/pen.svg", [=](){
7360
if(floatingSettings->current_page >= 0){
7461
floatingSettings->setHide();
7562
return;
@@ -82,7 +69,7 @@ void setupPenType(){
8269
setPen(ERASER);
8370
}
8471
});
85-
set_shortcut(penSwitch, Qt::Key_M, 0);
72+
set_shortcut(toolButtons[SWITCH], Qt::Key_M, 0);
8673

8774
penButtons[SELECTION] = create_button(":images/crop.svg", [=](){
8875
setPen(SELECTION);
@@ -174,7 +161,7 @@ void setupPenType(){
174161
}
175162
});
176163

177-
colorpicker = create_button(":images/color-picker.svg", [=](){
164+
toolButtons[COLORPICKER] = create_button(":images/color-picker.svg", [=](){
178165
floatingWidget->hide();
179166
floatingSettings->setHide();
180167
setHideMainWindow(true);
@@ -190,22 +177,22 @@ void setupPenType(){
190177
penSizeEvent();
191178
backgroundStyleEvent();
192179
});
193-
set_shortcut(colorpicker, Qt::Key_0, 0);
180+
set_shortcut(toolButtons[COLORPICKER], Qt::Key_0, 0);
194181

195-
backButton = create_button(":images/go-back.svg", [=](){
182+
toolButtons[BACK] = create_button(":images/go-back.svg", [=](){
196183
drawing->goPrevious();
197184
updateGoBackButtons();
198185
});
199-
set_shortcut(backButton, Qt::Key_Z, Qt::ControlModifier);
186+
set_shortcut(toolButtons[BACK], Qt::Key_Z, Qt::ControlModifier);
200187

201188

202-
nextButton = create_button(":images/go-next.svg", [=](){
189+
toolButtons[NEXT] = create_button(":images/go-next.svg", [=](){
203190
drawing->goNext();
204191
updateGoBackButtons();
205192
});
206-
set_shortcut(nextButton, Qt::Key_Y, Qt::ControlModifier);
193+
set_shortcut(toolButtons[NEXT], Qt::Key_Y, Qt::ControlModifier);
207194

208-
close = create_button(":images/close.svg", [=](){
195+
toolButtons[CLOSE] = create_button(":images/close.svg", [=](){
209196
#ifdef ETAP19
210197
QStringList args3;
211198
QProcess p3;

0 commit comments

Comments
 (0)