9#ifndef UI_GUI_CONTROLS_H
10#define UI_GUI_CONTROLS_H
12#include <QtCore/QVariant>
14#include <QtWidgets/QApplication>
15#include <QtWidgets/QGridLayout>
16#include <QtWidgets/QHBoxLayout>
17#include <QtWidgets/QLabel>
18#include <QtWidgets/QPushButton>
19#include <QtWidgets/QSpacerItem>
20#include <QtWidgets/QWidget>
21#include "Gui/Covers/CoverButton.h"
22#include "Gui/Player/SearchSlider.h"
23#include "Gui/Utils/Widgets/FloatingLabel.h"
30 QGridLayout *gridLayout;
31 QHBoxLayout *layoutButtons;
36 QGridLayout *layoutLabels;
42 QWidget *widgetDetails;
43 QGridLayout *gridLayout_7;
46 QSpacerItem *horizontalSpacer_4;
47 QSpacerItem *horizontalSpacer_2;
50 QHBoxLayout *layout_volume;
53 QGridLayout *layoutCover;
55 QSpacerItem *verticalSpacer;
57 QGridLayout *gridLayout_2;
58 QLabel *labCurrentTime;
60 QSpacerItem *horizontalSpacer;
66 GUI_Controls->setObjectName(QString::fromUtf8(
"GUI_Controls"));
69 gridLayout->setSpacing(3);
70 gridLayout->setObjectName(QString::fromUtf8(
"gridLayout"));
71 gridLayout->setContentsMargins(0, 0, 0, 0);
72 layoutButtons =
new QHBoxLayout();
73 layoutButtons->setSpacing(0);
74 layoutButtons->setObjectName(QString::fromUtf8(
"layoutButtons"));
75 layoutButtons->setSizeConstraint(QLayout::SetFixedSize);
76 layoutButtons->setContentsMargins(-1, -1, -1, 0);
78 btnPrev->setObjectName(QString::fromUtf8(
"btnPrev"));
79 btnPrev->setEnabled(
true);
80 QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
81 sizePolicy.setHorizontalStretch(0);
82 sizePolicy.setVerticalStretch(0);
83 sizePolicy.setHeightForWidth(btnPrev->sizePolicy().hasHeightForWidth());
84 btnPrev->setSizePolicy(sizePolicy);
85 btnPrev->setFocusPolicy(Qt::ClickFocus);
87 icon.addFile(QString::fromUtf8(
":/Icons/bwd.svg.png"), QSize(), QIcon::Normal, QIcon::Off);
88 icon.addFile(QString::fromUtf8(
":/Icons/bwd_disabled.svg"), QSize(), QIcon::Disabled, QIcon::Off);
89 btnPrev->setIcon(icon);
90 btnPrev->setIconSize(QSize(21, 21));
91 btnPrev->setFlat(
true);
93 layoutButtons->addWidget(btnPrev);
96 btnPlay->setObjectName(QString::fromUtf8(
"btnPlay"));
97 sizePolicy.setHeightForWidth(btnPlay->sizePolicy().hasHeightForWidth());
98 btnPlay->setSizePolicy(sizePolicy);
99 btnPlay->setFocusPolicy(Qt::ClickFocus);
101 icon1.addFile(QString::fromUtf8(
":/Icons/play.svg.png"), QSize(), QIcon::Normal, QIcon::Off);
102 btnPlay->setIcon(icon1);
103 btnPlay->setIconSize(QSize(27, 27));
104 btnPlay->setAutoDefault(
false);
105 btnPlay->setFlat(
true);
107 layoutButtons->addWidget(btnPlay);
110 btnRec->setObjectName(QString::fromUtf8(
"btnRec"));
111 sizePolicy.setHeightForWidth(btnRec->sizePolicy().hasHeightForWidth());
112 btnRec->setSizePolicy(sizePolicy);
113 btnRec->setFocusPolicy(Qt::ClickFocus);
115 icon2.addFile(QString::fromUtf8(
":/Icons/rec.svg.png"), QSize(), QIcon::Normal, QIcon::Off);
116 btnRec->setIcon(icon2);
117 btnRec->setIconSize(QSize(27, 27));
118 btnRec->setCheckable(
true);
119 btnRec->setFlat(
true);
121 layoutButtons->addWidget(btnRec);
124 btnNext->setObjectName(QString::fromUtf8(
"btnNext"));
125 btnNext->setEnabled(
true);
126 sizePolicy.setHeightForWidth(btnNext->sizePolicy().hasHeightForWidth());
127 btnNext->setSizePolicy(sizePolicy);
128 btnNext->setFocusPolicy(Qt::ClickFocus);
130 icon3.addFile(QString::fromUtf8(
":/Icons/fwd.svg.png"), QSize(), QIcon::Normal, QIcon::Off);
131 icon3.addFile(QString::fromUtf8(
":/Icons/fwd_disabled.svg.png"), QSize(), QIcon::Disabled, QIcon::Off);
132 btnNext->setIcon(icon3);
133 btnNext->setIconSize(QSize(21, 21));
134 btnNext->setFlat(
true);
136 layoutButtons->addWidget(btnNext);
139 gridLayout->addLayout(layoutButtons, 4, 1, 1, 1);
141 layoutLabels =
new QGridLayout();
142 layoutLabels->setSpacing(3);
143 layoutLabels->setObjectName(QString::fromUtf8(
"layoutLabels"));
145 labTitle->setObjectName(QString::fromUtf8(
"labTitle"));
146 QSizePolicy sizePolicy1(QSizePolicy::Preferred, QSizePolicy::Maximum);
147 sizePolicy1.setHorizontalStretch(0);
148 sizePolicy1.setVerticalStretch(0);
149 sizePolicy1.setHeightForWidth(labTitle->sizePolicy().hasHeightForWidth());
150 labTitle->setSizePolicy(sizePolicy1);
152 font.setPointSize(11);
155 labTitle->setFont(font);
156 labTitle->setFocusPolicy(Qt::ClickFocus);
157 labTitle->setText(QString::fromUtf8(
""));
158 labTitle->setAlignment(Qt::AlignCenter);
159 labTitle->setWordWrap(
true);
161 layoutLabels->addWidget(labTitle, 0, 1, 1, 1);
164 labCopyright->setObjectName(QString::fromUtf8(
"labCopyright"));
165 QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Preferred);
166 sizePolicy2.setHorizontalStretch(0);
167 sizePolicy2.setVerticalStretch(0);
168 sizePolicy2.setHeightForWidth(labCopyright->sizePolicy().hasHeightForWidth());
169 labCopyright->setSizePolicy(sizePolicy2);
170 labCopyright->setMinimumSize(QSize(0, 20));
171 labCopyright->setMaximumSize(QSize(16777215, 20));
172 labCopyright->setText(QString::fromUtf8(
"Copyright 2011-2020"));
173 labCopyright->setAlignment(Qt::AlignCenter);
175 layoutLabels->addWidget(labCopyright, 3, 0, 1, 1);
178 labSayonara->setObjectName(QString::fromUtf8(
"labSayonara"));
179 sizePolicy1.setHeightForWidth(labSayonara->sizePolicy().hasHeightForWidth());
180 labSayonara->setSizePolicy(sizePolicy1);
181 labSayonara->setMinimumSize(QSize(0, 40));
182 labSayonara->setMaximumSize(QSize(16777215, 40));
183 labSayonara->setFont(font);
184 labSayonara->setFocusPolicy(Qt::ClickFocus);
185 labSayonara->setText(QString::fromUtf8(
"Sayonara Player"));
186 labSayonara->setAlignment(Qt::AlignCenter);
188 layoutLabels->addWidget(labSayonara, 0, 0, 1, 1);
191 labVersion->setObjectName(QString::fromUtf8(
"labVersion"));
192 labVersion->setMinimumSize(QSize(0, 20));
193 labVersion->setMaximumSize(QSize(16777215, 20));
194 labVersion->setAlignment(Qt::AlignCenter);
196 layoutLabels->addWidget(labVersion, 1, 0, 1, 1);
199 labWrittenBy->setObjectName(QString::fromUtf8(
"labWrittenBy"));
200 sizePolicy2.setHeightForWidth(labWrittenBy->sizePolicy().hasHeightForWidth());
201 labWrittenBy->setSizePolicy(sizePolicy2);
202 labWrittenBy->setMinimumSize(QSize(0, 20));
203 labWrittenBy->setMaximumSize(QSize(16777215, 20));
204 labWrittenBy->setText(QString::fromUtf8(
"Written by Michael Lugmair (Lucio Carreras)"));
205 labWrittenBy->setAlignment(Qt::AlignCenter);
207 layoutLabels->addWidget(labWrittenBy, 2, 0, 1, 1);
210 widgetDetails->setObjectName(QString::fromUtf8(
"widgetDetails"));
211 sizePolicy1.setHeightForWidth(widgetDetails->sizePolicy().hasHeightForWidth());
212 widgetDetails->setSizePolicy(sizePolicy1);
213 gridLayout_7 =
new QGridLayout(widgetDetails);
214 gridLayout_7->setObjectName(QString::fromUtf8(
"gridLayout_7"));
215 gridLayout_7->setHorizontalSpacing(30);
216 gridLayout_7->setVerticalSpacing(2);
217 gridLayout_7->setContentsMargins(10, 2, 10, 2);
218 labBitrate =
new QLabel(widgetDetails);
219 labBitrate->setObjectName(QString::fromUtf8(
"labBitrate"));
221 gridLayout_7->addWidget(labBitrate, 0, 4, 1, 2);
223 labFilesize =
new QLabel(widgetDetails);
224 labFilesize->setObjectName(QString::fromUtf8(
"labFilesize"));
226 gridLayout_7->addWidget(labFilesize, 0, 1, 1, 2);
228 horizontalSpacer_4 =
new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
230 gridLayout_7->addItem(horizontalSpacer_4, 0, 0, 1, 1);
232 horizontalSpacer_2 =
new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
234 gridLayout_7->addItem(horizontalSpacer_2, 0, 6, 1, 1);
237 layoutLabels->addWidget(widgetDetails, 3, 1, 1, 1);
240 labAlbum->setObjectName(QString::fromUtf8(
"labAlbum"));
241 sizePolicy1.setHeightForWidth(labAlbum->sizePolicy().hasHeightForWidth());
242 labAlbum->setSizePolicy(sizePolicy1);
243 labAlbum->setText(QString::fromUtf8(
""));
244 labAlbum->setAlignment(Qt::AlignCenter);
245 labAlbum->setWordWrap(
true);
247 layoutLabels->addWidget(labAlbum, 2, 1, 1, 1);
250 labArtist->setObjectName(QString::fromUtf8(
"labArtist"));
251 sizePolicy1.setHeightForWidth(labArtist->sizePolicy().hasHeightForWidth());
252 labArtist->setSizePolicy(sizePolicy1);
253 labArtist->setFrameShape(QFrame::NoFrame);
254 labArtist->setFrameShadow(QFrame::Plain);
255 labArtist->setText(QString::fromUtf8(
""));
256 labArtist->setTextFormat(Qt::AutoText);
257 labArtist->setAlignment(Qt::AlignCenter);
258 labArtist->setWordWrap(
true);
260 layoutLabels->addWidget(labArtist, 1, 1, 1, 1);
263 gridLayout->addLayout(layoutLabels, 0, 2, 4, 2);
265 layout_volume =
new QHBoxLayout();
266 layout_volume->setSpacing(2);
267 layout_volume->setObjectName(QString::fromUtf8(
"layout_volume"));
268 layout_volume->setSizeConstraint(QLayout::SetFixedSize);
270 btnMute->setObjectName(QString::fromUtf8(
"btnMute"));
271 QSizePolicy sizePolicy3(QSizePolicy::Fixed, QSizePolicy::Maximum);
272 sizePolicy3.setHorizontalStretch(0);
273 sizePolicy3.setVerticalStretch(0);
274 sizePolicy3.setHeightForWidth(btnMute->sizePolicy().hasHeightForWidth());
275 btnMute->setSizePolicy(sizePolicy3);
276 btnMute->setMinimumSize(QSize(22, 22));
277 btnMute->setMaximumSize(QSize(22, 22));
278 btnMute->setSizeIncrement(QSize(0, 0));
279 btnMute->setFocusPolicy(Qt::ClickFocus);
281 icon4.addFile(QString::fromUtf8(
":/Icons/vol_mute.svg.png"), QSize(), QIcon::Normal, QIcon::Off);
282 btnMute->setIcon(icon4);
283 btnMute->setIconSize(QSize(20, 20));
284 btnMute->setFlat(
true);
286 layout_volume->addWidget(btnMute);
289 sliVolume->setObjectName(QString::fromUtf8(
"sliVolume"));
290 sliVolume->setEnabled(
true);
291 sizePolicy3.setHeightForWidth(sliVolume->sizePolicy().hasHeightForWidth());
292 sliVolume->setSizePolicy(sizePolicy3);
293 sliVolume->setMinimumSize(QSize(20, 10));
294 sliVolume->setMaximumSize(QSize(73, 1000));
295 sliVolume->setFocusPolicy(Qt::ClickFocus);
296 sliVolume->setValue(50);
297 sliVolume->setTracking(
true);
298 sliVolume->setOrientation(Qt::Horizontal);
299 sliVolume->setInvertedAppearance(
false);
300 sliVolume->setInvertedControls(
false);
301 sliVolume->setTickPosition(QSlider::NoTicks);
302 sliVolume->setTickInterval(25);
304 layout_volume->addWidget(sliVolume);
307 gridLayout->addLayout(layout_volume, 3, 1, 1, 1);
309 layoutCover =
new QGridLayout();
310 layoutCover->setObjectName(QString::fromUtf8(
"layoutCover"));
312 btnCover->setObjectName(QString::fromUtf8(
"btnCover"));
313 QSizePolicy sizePolicy4(QSizePolicy::Minimum, QSizePolicy::Minimum);
314 sizePolicy4.setHorizontalStretch(0);
315 sizePolicy4.setVerticalStretch(0);
316 sizePolicy4.setHeightForWidth(btnCover->sizePolicy().hasHeightForWidth());
317 btnCover->setSizePolicy(sizePolicy4);
318 btnCover->setMinimumSize(QSize(95, 95));
319 btnCover->setMaximumSize(QSize(100, 100));
320 btnCover->setFocusPolicy(Qt::ClickFocus);
321 btnCover->setIconSize(QSize(95, 95));
322 btnCover->setFlat(
true);
324 layoutCover->addWidget(btnCover, 0, 0, 1, 1);
326 verticalSpacer =
new QSpacerItem(1, 95, QSizePolicy::Minimum, QSizePolicy::Minimum);
328 layoutCover->addItem(verticalSpacer, 0, 1, 1, 1);
331 gridLayout->addLayout(layoutCover, 0, 1, 3, 1);
334 btnStop->setObjectName(QString::fromUtf8(
"btnStop"));
335 QSizePolicy sizePolicy5(QSizePolicy::Preferred, QSizePolicy::Fixed);
336 sizePolicy5.setHorizontalStretch(0);
337 sizePolicy5.setVerticalStretch(0);
338 sizePolicy5.setHeightForWidth(btnStop->sizePolicy().hasHeightForWidth());
339 btnStop->setSizePolicy(sizePolicy5);
340 btnStop->setFocusPolicy(Qt::ClickFocus);
342 icon5.addFile(QString::fromUtf8(
":/Icons/stop.svg.png"), QSize(), QIcon::Normal, QIcon::Off);
343 btnStop->setIcon(icon5);
344 btnStop->setIconSize(QSize(21, 21));
345 btnStop->setFlat(
true);
347 gridLayout->addWidget(btnStop, 4, 3, 1, 1);
349 gridLayout_2 =
new QGridLayout();
350 gridLayout_2->setObjectName(QString::fromUtf8(
"gridLayout_2"));
351 gridLayout_2->setHorizontalSpacing(5);
352 gridLayout_2->setVerticalSpacing(2);
354 labCurrentTime->setObjectName(QString::fromUtf8(
"labCurrentTime"));
355 labCurrentTime->setMinimumSize(QSize(50, 0));
356 labCurrentTime->setMaximumSize(QSize(50, 16));
357 labCurrentTime->setLineWidth(0);
358 labCurrentTime->setText(QString::fromUtf8(
""));
360 gridLayout_2->addWidget(labCurrentTime, 1, 0, 1, 1);
363 labDuration->setObjectName(QString::fromUtf8(
"labDuration"));
364 labDuration->setMinimumSize(QSize(50, 0));
365 labDuration->setMaximumSize(QSize(100, 16));
366 labDuration->setLayoutDirection(Qt::RightToLeft);
367 labDuration->setLineWidth(0);
368 labDuration->setText(QString::fromUtf8(
""));
369 labDuration->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
371 gridLayout_2->addWidget(labDuration, 1, 2, 1, 1);
373 horizontalSpacer =
new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
375 gridLayout_2->addItem(horizontalSpacer, 1, 1, 1, 1);
378 sliProgress->setObjectName(QString::fromUtf8(
"sliProgress"));
379 sliProgress->setFocusPolicy(Qt::NoFocus);
380 sliProgress->setMaximum(1000);
381 sliProgress->setOrientation(Qt::Horizontal);
383 gridLayout_2->addWidget(sliProgress, 0, 0, 1, 3);
386 gridLayout->addLayout(gridLayout_2, 4, 2, 1, 1);
391 btnPlay->setDefault(
false);
399 btnPrev->setText(QString());
400 btnPlay->setText(QString());
401 btnRec->setText(QString());
402 btnNext->setText(QString());
403 labVersion->setText(QString());
404 labBitrate->setText(QString());
405 labFilesize->setText(QString());
406 btnMute->setText(QString());
407 btnCover->setText(QString());
408 btnStop->setText(QString());
Definition: GUI_Controls.h:34
The FloatingLabel class. A QLabel where the text floats from left to right and vice versa so there's ...
Definition: FloatingLabel.h:39
Definition: SearchSlider.h:35
Definition: ui_GUI_Controls.h:415
Definition: ui_GUI_Controls.h:28