Better retina support.

This commit is contained in:
craig.p.drummond
2014-09-18 16:29:58 +00:00
committed by craig.p.drummond
parent 12a0615331
commit 0cf5dc87cc
17 changed files with 180 additions and 61 deletions

View File

@@ -87,7 +87,12 @@ int FancyTabWidget::iconSize(bool large)
static void drawIcon(const QIcon &icon, const QRect &r, QPainter *p, const QSize &iconSize, bool selected)
{
QPixmap px = icon.pixmap(iconSize, selected ? QIcon::Selected : QIcon::Normal);
p->drawPixmap(r.x()+(r.width()-px.width())/2.0, r.y()+(r.height()-px.height())/2.0, px.width(), px.height(), px);
#if QT_VERSION >= 0x050100
QSize layoutSize = px.size() / px.devicePixelRatio();
#else
QSize layoutSize = px.size();
#endif
p->drawPixmap(r.x()+(r.width()-layoutSize.width())/2.0, r.y()+(r.height()-layoutSize.height())/2.0, layoutSize.width(), layoutSize.height(), px);
}
void FancyTabProxyStyle::drawPrimitive(PrimitiveElement element, const QStyleOption *option, QPainter *p, const QWidget *widget) const