diff --git a/src/layui/layui/layLayerTreeModel.cc b/src/layui/layui/layLayerTreeModel.cc index b2a284a11..61aadcfec 100644 --- a/src/layui/layui/layLayerTreeModel.cc +++ b/src/layui/layui/layLayerTreeModel.cc @@ -623,8 +623,8 @@ LayerTreeModel::empty_within_view_predicate (const QModelIndex &index) const QIcon LayerTreeModel::icon_for_layer (const lay::LayerPropertiesConstIterator &iter, lay::LayoutViewBase *view, unsigned int w, unsigned int h, double dpr, unsigned int di_off, bool no_state) { - tl::PixelBuffer px = view->icon_for_layer (iter, w, h, dpr, di_off, no_state); - QPixmap pixmap = QPixmap::fromImage (px.to_image ()); + QImage img = view->icon_for_layer (iter, w, h, dpr, di_off, no_state).to_image_copy (); + QPixmap pixmap = QPixmap::fromImage (std::move (img)); #if QT_VERSION >= 0x050000 pixmap.setDevicePixelRatio (dpr); #endif diff --git a/src/layui/layui/layLayoutViewConfigPages.cc b/src/layui/layui/layLayoutViewConfigPages.cc index 84ff043fa..609c3df59 100644 --- a/src/layui/layui/layLayoutViewConfigPages.cc +++ b/src/layui/layui/layLayoutViewConfigPages.cc @@ -888,10 +888,10 @@ LayoutViewConfigPage4::update () #endif QPainter painter (&img); - painter.setPen (QPen (palette ().color (QPalette::Active, QPalette::Text), 1.0 / dpr)); - painter.setBrush (QBrush (color)); - QRectF r (0, 0, w - painter.pen ().widthF (), h - painter.pen ().widthF ()); - painter.drawRect (r); + QRectF r (0.0, 0.0, w, h); + painter.fillRect (r, QBrush (palette ().color (QPalette::Active, QPalette::ButtonText))); + r = QRectF (1.0, 1.0, w - 2.0, h - 2.0); + painter.fillRect (r, QBrush (color)); painter.setFont (font ()); painter.setPen (QPen (text_color)); painter.drawText (r, Qt::AlignHCenter | Qt::AlignVCenter | Qt::TextSingleLine, text);