diff --git a/cockatrice/CMakeLists.txt b/cockatrice/CMakeLists.txt index d6c10b3be..eacbc8825 100644 --- a/cockatrice/CMakeLists.txt +++ b/cockatrice/CMakeLists.txt @@ -160,7 +160,6 @@ set(cockatrice_SOURCES src/interface/widgets/general/display/dynamic_font_size_label.cpp src/interface/widgets/general/display/dynamic_font_size_push_button.cpp src/interface/widgets/general/display/labeled_input.cpp - src/interface/widgets/general/display/overlay_label.cpp src/interface/widgets/general/display/percent_bar_widget.cpp src/interface/widgets/general/display/shadow_background_label.cpp src/interface/widgets/general/home_styled_button.cpp diff --git a/cockatrice/src/interface/widgets/general/display/overlay_label.cpp b/cockatrice/src/interface/widgets/general/display/overlay_label.cpp deleted file mode 100644 index 479615c61..000000000 --- a/cockatrice/src/interface/widgets/general/display/overlay_label.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include "overlay_label.h" - -#include - -OverlayLabel::OverlayLabel(QWidget *parent) : QLabel(parent) -{ - setAttribute(Qt::WA_TranslucentBackground); -} - -void OverlayLabel::paintEvent(QPaintEvent *event) -{ - QPainter p(this); - p.setRenderHint(QPainter::Antialiasing, true); - - QRect r = rect().adjusted(0, 0, -1, -1); - - p.setBrush(QColor(0, 0, 0, 140)); - p.setPen(Qt::NoPen); - p.drawRoundedRect(r, 6, 6); - - QLabel::paintEvent(event); -} diff --git a/cockatrice/src/interface/widgets/general/display/overlay_label.h b/cockatrice/src/interface/widgets/general/display/overlay_label.h deleted file mode 100644 index 88e435f07..000000000 --- a/cockatrice/src/interface/widgets/general/display/overlay_label.h +++ /dev/null @@ -1,16 +0,0 @@ -#ifndef COCKATRICE_OVERLAY_LABEL_H -#define COCKATRICE_OVERLAY_LABEL_H - -#include - -class OverlayLabel : public QLabel -{ - Q_OBJECT -public: - explicit OverlayLabel(QWidget *parent = nullptr); - -protected: - void paintEvent(QPaintEvent *event) override; -}; - -#endif // COCKATRICE_OVERLAY_LABEL_H diff --git a/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp b/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp index fbca8df8d..77aa42e7a 100644 --- a/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp +++ b/cockatrice/src/interface/widgets/general/display/shadow_background_label.cpp @@ -13,11 +13,17 @@ ShadowBackgroundLabel::ShadowBackgroundLabel(QWidget *parent, const QString &text) : QLabel(parent) { setAttribute(Qt::WA_TranslucentBackground); // Allows transparency. - setText("" + text + ""); ///< Ensures the text is rendered in white. + setLabelText(text); setAlignment(Qt::AlignCenter); ///< Centers the text within the label. setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum); ///< Ensures minimum size constraints. } +void ShadowBackgroundLabel::setLabelText(const QString &text) +{ + setText("" + text + ""); ///< Ensures the text is rendered in white. + update(); +} + /** * @brief Handles resizing of the label. * diff --git a/cockatrice/src/interface/widgets/general/display/shadow_background_label.h b/cockatrice/src/interface/widgets/general/display/shadow_background_label.h index 3483452f5..b2344b7d0 100644 --- a/cockatrice/src/interface/widgets/general/display/shadow_background_label.h +++ b/cockatrice/src/interface/widgets/general/display/shadow_background_label.h @@ -15,6 +15,7 @@ class ShadowBackgroundLabel : public QLabel public: explicit ShadowBackgroundLabel(QWidget *parent, const QString &text); + void setLabelText(const QString &text); protected: void resizeEvent(QResizeEvent *event) override; diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp index 2f8491ccb..2382d8960 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_api_response_deck_entry_display_widget.cpp @@ -60,21 +60,21 @@ ArchidektApiResponseDeckEntryDisplayWidget::ArchidektApiResponseDeckEntryDisplay // Set deck name (ellided) QFontMetrics fm(previewWidget->topLeftLabel->font()); QString elided = fm.elidedText(response.getName(), Qt::ElideRight, 280); - previewWidget->topLeftLabel->setText(elided); + previewWidget->topLeftLabel->setLabelText(elided); previewWidget->topLeftLabel->setToolTip(response.getName()); // Set count - previewWidget->topRightLabel->setText(QString::number(response.getSize())); + previewWidget->topRightLabel->setLabelText(QString::number(response.getSize())); // EDH bracket (skip if 0) if (response.getEDHBracket() != 0) { - previewWidget->bottomLeftLabel->setText(QString("EDH: %1").arg(response.getEDHBracket())); + previewWidget->bottomLeftLabel->setLabelText(QString("EDH: %1").arg(response.getEDHBracket())); } else { previewWidget->bottomLeftLabel->hide(); } // Views - previewWidget->bottomRightLabel->setText(QString("Views: %1").arg(response.getViewCount())); + previewWidget->bottomRightLabel->setLabelText(QString("Views: %1").arg(response.getViewCount())); // Use preview->imageLabel for image loading picture = previewWidget->imageLabel; diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp index f74ecac20..ced08491e 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.cpp @@ -8,10 +8,10 @@ ArchidektDeckPreviewImageDisplayWidget::ArchidektDeckPreviewImageDisplayWidget(Q imageLabel = new QLabel(this); imageLabel->setAlignment(Qt::AlignCenter); - topLeftLabel = new OverlayLabel(this); - topRightLabel = new OverlayLabel(this); - bottomLeftLabel = new OverlayLabel(this); - bottomRightLabel = new OverlayLabel(this); + topLeftLabel = new ShadowBackgroundLabel(this, ""); + topRightLabel = new ShadowBackgroundLabel(this, ""); + bottomLeftLabel = new ShadowBackgroundLabel(this, ""); + bottomRightLabel = new ShadowBackgroundLabel(this, ""); QFont f; f.setBold(true); diff --git a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h index ae9acb3f7..86289fe11 100644 --- a/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h +++ b/cockatrice/src/interface/widgets/tabs/api/archidekt/display/archidekt_deck_preview_image_display_widget.h @@ -5,7 +5,7 @@ #ifndef COCKATRICE_ARCHIDEKT_DECK_PREVIEW_IMAGE_DISPLAY_WIDGET_H #define COCKATRICE_ARCHIDEKT_DECK_PREVIEW_IMAGE_DISPLAY_WIDGET_H -#include "../../../../general/display/overlay_label.h" +#include "../../../../general/display/shadow_background_label.h" #include #include @@ -20,10 +20,10 @@ public: void setPreviewWidth(int width); QLabel *imageLabel; - OverlayLabel *topLeftLabel; - OverlayLabel *topRightLabel; - OverlayLabel *bottomLeftLabel; - OverlayLabel *bottomRightLabel; + ShadowBackgroundLabel *topLeftLabel; + ShadowBackgroundLabel *topRightLabel; + ShadowBackgroundLabel *bottomLeftLabel; + ShadowBackgroundLabel *bottomRightLabel; protected: void resizeEvent(QResizeEvent *event) override;