33
33
#include "fullscreentheme.h"
38
38
struct HudWidgetPrivate {
40
QToolButton* mCloseButton;
40
QToolButton* mCloseButton;
44
43
HudWidget::HudWidget(QWidget* parent)
46
, d(new HudWidgetPrivate) {
52
HudWidget::~HudWidget() {
57
void HudWidget::init(QWidget* mainWidget, Options options) {
58
d->mMainWidget = mainWidget;
60
d->mMainWidget->setParent(this);
61
if (d->mMainWidget->layout()) {
62
d->mMainWidget->layout()->setMargin(0);
66
if (options & OptionOpaque) {
67
setProperty("opaque", QVariant(true));
70
FullScreenTheme theme(FullScreenTheme::currentThemeName());
71
setStyleSheet(theme.styleSheet());
73
QHBoxLayout* layout = new QHBoxLayout(this);
76
layout->addWidget(d->mMainWidget);
78
if (options & OptionDoNotFollowChildSize) {
81
layout->setSizeConstraint(QLayout::SetFixedSize);
84
if (options & OptionCloseButton) {
85
d->mCloseButton = new QToolButton(this);
86
d->mCloseButton->setAutoRaise(true);
87
d->mCloseButton->setIcon(SmallIcon("window-close"));
88
layout->addWidget(d->mCloseButton, 0, Qt::AlignTop | Qt::AlignHCenter);
90
connect(d->mCloseButton, SIGNAL(clicked()), SLOT(slotCloseButtonClicked()));
95
QWidget* HudWidget::mainWidget() const {
96
return d->mMainWidget;
100
void HudWidget::slotCloseButtonClicked() {
45
, d(new HudWidgetPrivate)
51
HudWidget::~HudWidget()
56
void HudWidget::init(QWidget* mainWidget, Options options)
58
d->mMainWidget = mainWidget;
60
d->mMainWidget->setParent(this);
61
if (d->mMainWidget->layout()) {
62
d->mMainWidget->layout()->setMargin(0);
66
if (options & OptionOpaque) {
67
setProperty("opaque", QVariant(true));
70
FullScreenTheme theme(FullScreenTheme::currentThemeName());
71
setStyleSheet(theme.styleSheet());
73
QHBoxLayout* layout = new QHBoxLayout(this);
76
layout->addWidget(d->mMainWidget);
78
if (options & OptionDoNotFollowChildSize) {
81
layout->setSizeConstraint(QLayout::SetFixedSize);
84
if (options & OptionCloseButton) {
85
d->mCloseButton = new QToolButton(this);
86
d->mCloseButton->setAutoRaise(true);
87
d->mCloseButton->setIcon(SmallIcon("window-close"));
88
layout->addWidget(d->mCloseButton, 0, Qt::AlignTop | Qt::AlignHCenter);
90
connect(d->mCloseButton, SIGNAL(clicked()), SLOT(slotCloseButtonClicked()));
94
QWidget* HudWidget::mainWidget() const
96
return d->mMainWidget;
99
void HudWidget::slotCloseButtonClicked()