borrow implementation of sizeHint from QPushButton

This commit is contained in:
Johannes Hilden 2016-03-18 23:44:40 +03:00
parent 9f640ff6ca
commit 1f27c89bec
1 changed files with 3 additions and 2 deletions

View File

@ -40,15 +40,16 @@ QSize FlatButton::sizeHint() const
h = qMax(h, ih);
}
#endif
QString s(text());
bool empty = s.isEmpty();
if (empty)
s = QString::fromLatin1("XXXX");
QFontMetrics fm = fontMetrics();
QSize sz = fm.size(Qt::TextShowMnemonic, s);
if(!empty || !w)
if (!empty || !w)
w += sz.width();
if(!empty || !h)
if (!empty || !h)
h = qMax(h, sz.height());
return (style()->sizeFromContents(QStyle::CT_PushButton, &opt, QSize(w, h), this).
expandedTo(QApplication::globalStrut()));