forked from qt-creator/qt-creator
Fix QIcon::pixmap() related deprecation warnings
QPixmap pixmap(const QSize &size, qreal devicePixelRatio, Mode mode = Normal, State state = Off) const; QT_DEPRECATED_VERSION_X_6_0("Use pixmap(size, devicePixelRatio) instead") QPixmap pixmap(QWindow *window, const QSize &size, Mode mode = Normal, State state = Off) const; Change-Id: I8b08bec86014809887c1915b72c2776bae4a87fb Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
@@ -54,11 +54,11 @@ public:
|
|||||||
optCopy.state |= QStyle::State_HasFocus;
|
optCopy.state |= QStyle::State_HasFocus;
|
||||||
QItemDelegate::paint(painter,option,index);
|
QItemDelegate::paint(painter,option,index);
|
||||||
// add remove button
|
// add remove button
|
||||||
QWindow *window = view->window()->windowHandle();
|
const qreal devicePixelRatio = painter->device()->devicePixelRatio();
|
||||||
const QPixmap iconPixmap = icon.pixmap(window, option.rect.size());
|
const QPixmap iconPixmap = icon.pixmap(option.rect.size(), devicePixelRatio);
|
||||||
QRect pixmapRect = QStyle::alignedRect(option.direction,
|
QRect pixmapRect = QStyle::alignedRect(option.direction,
|
||||||
Qt::AlignRight | Qt::AlignVCenter,
|
Qt::AlignRight | Qt::AlignVCenter,
|
||||||
iconPixmap.size() / window->devicePixelRatio(),
|
iconPixmap.size() / devicePixelRatio,
|
||||||
option.rect);
|
option.rect);
|
||||||
if (!clearIconSize.isValid())
|
if (!clearIconSize.isValid())
|
||||||
clearIconSize = pixmapRect.size();
|
clearIconSize = pixmapRect.size();
|
||||||
|
@@ -221,11 +221,11 @@ QIcon Icon::modeIcon(const Icon &classic, const Icon &flat, const Icon &flatActi
|
|||||||
QIcon Icon::combinedIcon(const QList<QIcon> &icons)
|
QIcon Icon::combinedIcon(const QList<QIcon> &icons)
|
||||||
{
|
{
|
||||||
QIcon result;
|
QIcon result;
|
||||||
QWindow *window = QApplication::allWidgets().constFirst()->windowHandle();
|
const qreal devicePixelRatio = QApplication::allWidgets().constFirst()->devicePixelRatio();
|
||||||
for (const QIcon &icon: icons)
|
for (const QIcon &icon: icons)
|
||||||
for (const QIcon::Mode mode: {QIcon::Disabled, QIcon::Normal})
|
for (const QIcon::Mode mode: {QIcon::Disabled, QIcon::Normal})
|
||||||
for (const QSize &size: icon.availableSizes(mode))
|
for (const QSize &size: icon.availableSizes(mode))
|
||||||
result.addPixmap(icon.pixmap(window, size, mode), mode);
|
result.addPixmap(icon.pixmap(size, devicePixelRatio, mode), mode);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -118,10 +118,9 @@ void InfoLabel::paintEvent(QPaintEvent *event)
|
|||||||
p.restore();
|
p.restore();
|
||||||
}
|
}
|
||||||
const QIcon &icon = iconForType(m_type);
|
const QIcon &icon = iconForType(m_type);
|
||||||
QWindow *window = this->window()->windowHandle();
|
|
||||||
const QIcon::Mode mode = !this->isEnabled() ? QIcon::Disabled : QIcon::Normal;
|
const QIcon::Mode mode = !this->isEnabled() ? QIcon::Disabled : QIcon::Normal;
|
||||||
const QPixmap iconPx =
|
const QPixmap iconPx =
|
||||||
icon.pixmap(window, QSize(iconSize, iconSize) * devicePixelRatio(), mode);
|
icon.pixmap(QSize(iconSize, iconSize) * devicePixelRatio(), devicePixelRatio(), mode);
|
||||||
p.drawPixmap(iconRect, iconPx);
|
p.drawPixmap(iconRect, iconPx);
|
||||||
ElidingLabel::paintEvent(event);
|
ElidingLabel::paintEvent(event);
|
||||||
}
|
}
|
||||||
|
@@ -551,8 +551,7 @@ void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect,
|
|||||||
// return a high-dpi pixmap, which will in that case have a devicePixelRatio
|
// return a high-dpi pixmap, which will in that case have a devicePixelRatio
|
||||||
// different than 1. The shadow drawing caluculations are done in device
|
// different than 1. The shadow drawing caluculations are done in device
|
||||||
// pixels.
|
// pixels.
|
||||||
QWindow *window = dynamic_cast<QWidget*>(p->device())->window()->windowHandle();
|
QPixmap px = icon.pixmap(rect.size(), devicePixelRatio, iconMode);
|
||||||
QPixmap px = icon.pixmap(window, rect.size(), iconMode);
|
|
||||||
int radius = int(dipRadius * devicePixelRatio);
|
int radius = int(dipRadius * devicePixelRatio);
|
||||||
QPoint offset = dipOffset * devicePixelRatio;
|
QPoint offset = dipOffset * devicePixelRatio;
|
||||||
cache = QPixmap(px.size() + QSize(radius * 2, radius * 2));
|
cache = QPixmap(px.size() + QSize(radius * 2, radius * 2));
|
||||||
@@ -563,7 +562,7 @@ void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect,
|
|||||||
const bool hasDisabledState =
|
const bool hasDisabledState =
|
||||||
icon.availableSizes().count() == icon.availableSizes(QIcon::Disabled).count();
|
icon.availableSizes().count() == icon.availableSizes(QIcon::Disabled).count();
|
||||||
if (!hasDisabledState)
|
if (!hasDisabledState)
|
||||||
px = disabledSideBarIcon(icon.pixmap(window, rect.size()));
|
px = disabledSideBarIcon(icon.pixmap(rect.size(), devicePixelRatio));
|
||||||
} else if (creatorTheme()->flag(Theme::ToolBarIconShadow)) {
|
} else if (creatorTheme()->flag(Theme::ToolBarIconShadow)) {
|
||||||
// Draw shadow
|
// Draw shadow
|
||||||
QImage tmp(px.size() + QSize(radius * 2, radius * 2 + 1), QImage::Format_ARGB32_Premultiplied);
|
QImage tmp(px.size() + QSize(radius * 2, radius * 2 + 1), QImage::Format_ARGB32_Premultiplied);
|
||||||
|
@@ -53,13 +53,12 @@ void TestResultDelegate::paint(QPainter *painter, const QStyleOptionViewItem &op
|
|||||||
const TestResult testResult = resultFilterModel->testResult(index);
|
const TestResult testResult = resultFilterModel->testResult(index);
|
||||||
QTC_ASSERT(testResult.isValid(), painter->restore(); return);
|
QTC_ASSERT(testResult.isValid(), painter->restore(); return);
|
||||||
|
|
||||||
const QWidget *widget = dynamic_cast<const QWidget*>(painter->device());
|
|
||||||
QWindow *window = widget ? widget->window()->windowHandle() : nullptr;
|
|
||||||
|
|
||||||
QIcon icon = index.data(Qt::DecorationRole).value<QIcon>();
|
QIcon icon = index.data(Qt::DecorationRole).value<QIcon>();
|
||||||
if (!icon.isNull())
|
if (!icon.isNull()) {
|
||||||
painter->drawPixmap(positions.left(), positions.top(),
|
painter->drawPixmap(positions.left(), positions.top(),
|
||||||
icon.pixmap(window, QSize(positions.iconSize(), positions.iconSize())));
|
icon.pixmap(QSize(positions.iconSize(), positions.iconSize()),
|
||||||
|
painter->device()->devicePixelRatio()));
|
||||||
|
}
|
||||||
|
|
||||||
TestResultItem *item = resultFilterModel->itemForIndex(index);
|
TestResultItem *item = resultFilterModel->itemForIndex(index);
|
||||||
QTC_ASSERT(item, painter->restore(); return);
|
QTC_ASSERT(item, painter->restore(); return);
|
||||||
|
@@ -563,16 +563,15 @@ static void drawPrimitiveTweakedForDarkTheme(QStyle::PrimitiveElement element,
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case QStyle::PE_IndicatorTabClose: {
|
case QStyle::PE_IndicatorTabClose: {
|
||||||
QWindow *window = widget ? widget->window()->windowHandle() : nullptr;
|
const qreal devicePixelRatio = painter->device()->devicePixelRatio();
|
||||||
QRect iconRect = QRect(0, 0, 16, 16);
|
QRect iconRect = QRect(0, 0, 16, 16);
|
||||||
iconRect.moveCenter(option->rect.center());
|
iconRect.moveCenter(option->rect.center());
|
||||||
const QIcon::Mode mode = !isEnabled ? QIcon::Disabled : QIcon::Normal;
|
const QIcon::Mode mode = !isEnabled ? QIcon::Disabled : QIcon::Normal;
|
||||||
const static QIcon closeIcon = Utils::Icons::CLOSE_FOREGROUND.icon();
|
const static QIcon closeIcon = Utils::Icons::CLOSE_FOREGROUND.icon();
|
||||||
if (option->state & QStyle::State_MouseOver && widget)
|
if (option->state & QStyle::State_MouseOver && widget)
|
||||||
widget->style()->drawPrimitive(QStyle::PE_PanelButtonCommand, option, painter, widget);
|
widget->style()->drawPrimitive(QStyle::PE_PanelButtonCommand, option, painter, widget);
|
||||||
const int devicePixelRatio = widget ? widget->devicePixelRatio() : 1;
|
|
||||||
const QPixmap iconPx =
|
const QPixmap iconPx =
|
||||||
closeIcon.pixmap(window, iconRect.size() * devicePixelRatio, mode);
|
closeIcon.pixmap(iconRect.size() * devicePixelRatio, devicePixelRatio, mode);
|
||||||
painter->drawPixmap(iconRect, iconPx);
|
painter->drawPixmap(iconRect, iconPx);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@@ -79,15 +79,12 @@ void IconCheckboxItemDelegate::paint(QPainter *painter,
|
|||||||
if (rowIsPropertyRole(modelIndex.model(), modelIndex) || getModelNode(modelIndex).isRootNode())
|
if (rowIsPropertyRole(modelIndex.model(), modelIndex) || getModelNode(modelIndex).isRootNode())
|
||||||
return; // Do not paint icons for property rows or root node
|
return; // Do not paint icons for property rows or root node
|
||||||
|
|
||||||
QWindow *window = dynamic_cast<QWidget*>(painter->device())->window()->windowHandle();
|
|
||||||
QTC_ASSERT(window, return);
|
|
||||||
|
|
||||||
const QSize iconSize(16, 16);
|
const QSize iconSize(16, 16);
|
||||||
QPoint iconPosition(styleOption.rect.left() + (styleOption.rect.width() - iconSize.width()) / 2,
|
QPoint iconPosition(styleOption.rect.left() + (styleOption.rect.width() - iconSize.width()) / 2,
|
||||||
styleOption.rect.top() + 2 + delegateMargin);
|
styleOption.rect.top() + 2 + delegateMargin);
|
||||||
|
|
||||||
const QIcon::State state = isChecked(modelIndex) ? QIcon::State::On : QIcon::State::Off;
|
const QIcon::State state = isChecked(modelIndex) ? QIcon::State::On : QIcon::State::Off;
|
||||||
const QPixmap iconPixmap = m_icon.pixmap(window, iconSize, mode, state);
|
const QPixmap iconPixmap = m_icon.pixmap(iconSize, painter->device()->devicePixelRatio(), mode, state);
|
||||||
|
|
||||||
// Shift the lock icon (last column) slightly to the left due to vertical scrollbar width
|
// Shift the lock icon (last column) slightly to the left due to vertical scrollbar width
|
||||||
if (modelIndex.column() == NavigatorTreeModel::ColumnType::Lock)
|
if (modelIndex.column() == NavigatorTreeModel::ColumnType::Lock)
|
||||||
|
Reference in New Issue
Block a user