aboutsummaryrefslogtreecommitdiff
path: root/libs/uibase/src/linklabel.cpp
blob: c4d09f10fa06a8ed5e73609b81914f59bd32b2cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <uibase/linklabel.h>
#include <QApplication>

QColor LinkLabel::m_linkColor;

LinkLabel::LinkLabel(QWidget* parent) : QLabel(parent) {}

QColor LinkLabel::linkColor() const
{
  return m_linkColor;
}

void LinkLabel::setLinkColor(const QColor& c)
{
  if (m_linkColor != c) {
    m_linkColor = c;

    // setting link color on the global palette; qt doesn't seem to support
    // per-widget colors for links
    if (qApp) {
      auto p = qApp->palette();
      p.setColor(QPalette::Link, c);
      p.setColor(QPalette::LinkVisited, c);
      qApp->setPalette(p);
    }
  }
}