diff options
Diffstat (limited to 'application/widgets/LabeledToolButton.cpp')
-rw-r--r-- | application/widgets/LabeledToolButton.cpp | 32 |
1 files changed, 13 insertions, 19 deletions
diff --git a/application/widgets/LabeledToolButton.cpp b/application/widgets/LabeledToolButton.cpp index b5b2f78e..11c2a8ff 100644 --- a/application/widgets/LabeledToolButton.cpp +++ b/application/widgets/LabeledToolButton.cpp @@ -99,23 +99,17 @@ void LabeledToolButton::resizeEvent(QResizeEvent * event) void LabeledToolButton::resetIcon() { - // prevent the label from changing our height - auto sizes = m_icon.availableSizes(); - if(sizes.count() > 0) - { - //auto maxSz = size(); - auto iconSz = sizes[0]; - float w = iconSz.width(); - float h = iconSz.height(); - float ar = w/h; - // FIXME: hardcoded max size of 160x80 - int newW = 80 * ar; - if(newW > 160) - newW = 160; - QSize newSz (newW, 80); - auto pixmap = m_icon.pixmap(newSz); - m_label->setPixmap(pixmap); - m_label->setMinimumHeight(80); - m_label->setSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::Preferred ); - } + auto iconSz = m_icon.actualSize(QSize(160, 80)); + float w = iconSz.width(); + float h = iconSz.height(); + float ar = w/h; + // FIXME: hardcoded max size of 160x80 + int newW = 80 * ar; + if(newW > 160) + newW = 160; + QSize newSz (newW, 80); + auto pixmap = m_icon.pixmap(newSz); + m_label->setPixmap(pixmap); + m_label->setMinimumHeight(80); + m_label->setSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::Preferred ); } |