Skip to content

Commit eb8f91a

Browse files
committedJul 7, 2017
Fix some button sizes on hidpi displays
1 parent e091510 commit eb8f91a

File tree

4 files changed

+11
-10
lines changed

4 files changed

+11
-10
lines changed
 

‎python/gui/qgscolorbutton.sip

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class QgsColorButton : QToolButton
4444
the button will use the global color scheme registry instead
4545
%End
4646

47-
virtual QSize sizeHint() const;
47+
virtual QSize minimumSizeHint() const;
4848

4949
QColor color() const;
5050
%Docstring

‎src/gui/qgscolorbutton.cpp

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,17 @@ QgsColorButton::QgsColorButton( QWidget *parent, const QString &cdt, QgsColorSch
6868
setPopupMode( QToolButton::MenuButtonPopup );
6969
}
7070

71-
QSize QgsColorButton::sizeHint() const
71+
QSize QgsColorButton::minimumSizeHint() const
7272
{
7373
//make sure height of button looks good under different platforms
74+
QSize size;
7475
#ifdef Q_OS_WIN
75-
return QSize( 120, 22 );
76+
size = QSize( 120, 22 );
7677
#else
77-
return QSize( 120, 28 );
78+
size = QSize( 120, 28 );
7879
#endif
80+
int textHeight = fontMetrics().height() * 1.1;
81+
return QSize( size.width(), qMax( size.height(), textHeight ) );
7982
}
8083

8184
const QPixmap &QgsColorButton::transparentBackground()

‎src/gui/qgscolorbutton.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ class GUI_EXPORT QgsColorButton : public QToolButton
7676
*/
7777
QgsColorButton( QWidget *parent SIP_TRANSFERTHIS = nullptr, const QString &cdt = "", QgsColorSchemeRegistry *registry = nullptr );
7878

79-
virtual QSize sizeHint() const override;
79+
virtual QSize minimumSizeHint() const override;
8080

8181
/** Return the currently selected color.
8282
* \returns currently selected color

‎src/gui/qgsfontbutton.cpp

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,9 @@ QgsFontButton::QgsFontButton( QWidget *parent, const QString &dialogTitle )
5151
QSize QgsFontButton::minimumSizeHint() const
5252
{
5353
//make sure height of button looks good under different platforms
54-
#ifdef Q_OS_WIN
55-
return QToolButton::minimumSizeHint();
56-
#else
57-
return QSize( 120, 28 );
58-
#endif
54+
QSize size = QToolButton::minimumSizeHint();
55+
int fontHeight = fontMetrics().height() * 1.4;
56+
return QSize( size.width(), qMax( size.height(), fontHeight ) );
5957
}
6058

6159
void QgsFontButton::showSettingsDialog()

0 commit comments

Comments
 (0)
Please sign in to comment.