From e275c3ba5281dcee3e8d21fb64390e33669bfdf1 Mon Sep 17 00:00:00 2001 From: Chocobo1 Date: Fri, 3 Jul 2015 00:31:42 +0800 Subject: [PATCH] Add helper function: Get DPI scaled icon size (device-dependent) --- src/core/utils/misc.cpp | 10 ++++++++++ src/core/utils/misc.h | 1 + src/gui/transferlistfilterswidget.cpp | 2 +- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/core/utils/misc.cpp b/src/core/utils/misc.cpp index 3eba4280f..6a4027fd1 100644 --- a/src/core/utils/misc.cpp +++ b/src/core/utils/misc.cpp @@ -43,6 +43,7 @@ #else #include #include +#include #endif #ifdef Q_OS_WIN @@ -543,3 +544,12 @@ void Utils::Misc::msleep(unsigned long msecs) { SleeperThread::msleep(msecs); } + +#ifndef DISABLE_GUI +QSize Utils::Misc::smallIconSize() +{ + // Get DPI scaled icon size (device-dependent), see QT source + int s = QApplication::style()->pixelMetric(QStyle::PM_SmallIconSize); + return QSize(s, s); +} +#endif diff --git a/src/core/utils/misc.h b/src/core/utils/misc.h index dd390fb06..13d215ced 100644 --- a/src/core/utils/misc.h +++ b/src/core/utils/misc.h @@ -54,6 +54,7 @@ namespace Utils void shutdownComputer(ShutdownAction action); // Get screen center QPoint screenCenter(QWidget *win); + QSize smallIconSize(); #endif int pythonVersion(); QString pythonExecutable(); diff --git a/src/gui/transferlistfilterswidget.cpp b/src/gui/transferlistfilterswidget.cpp index a0dd199b3..7fea947ef 100644 --- a/src/gui/transferlistfilterswidget.cpp +++ b/src/gui/transferlistfilterswidget.cpp @@ -67,7 +67,7 @@ FiltersBase::FiltersBase(QWidget *parent, TransferListWidget *transferList) setUniformItemSizes(true); setSpacing(0); - setIconSize(QSize(16, 16)); + setIconSize(Utils::Misc::smallIconSize()); #if defined(Q_OS_MAC) setAttribute(Qt::WA_MacShowFocusRect, false);