void QgsComposerItem::drawSelectionBoxes( QPainter* p ) { Q_UNUSED( p ); if ( !mComposition || mComposition->plotStyle() != QgsComposition::Preview ) { return; } if ( !isSelected() ) { return; } //logic for drawing additional graphics on selected items here (if required) //draw dotted border around locked, selected items if ( positionLock() ) { p->save(); p->setCompositionMode( QPainter::CompositionMode_Difference ); // use a grey dashed pen - in difference mode this should always be visible QPen selectedItemPen = QPen( QColor( 144, 144, 144, 255 ) ); selectedItemPen.setStyle( Qt::DotLine ); selectedItemPen.setWidth( 0 ); p->setPen( selectedItemPen ); p->setBrush( Qt::NoBrush ); p->drawPolygon( rect() ); p->restore(); } }
void QgsComposerItem::drawSelectionBoxes( QPainter *p ) { Q_UNUSED( p ); if ( !mComposition || mComposition->plotStyle() != QgsComposition::Preview ) { return; } if ( !isSelected() ) { return; } //logic for drawing additional graphics on selected items here (if required) //draw dotted border around locked, selected items if ( positionLock() ) { p->save(); p->setCompositionMode( QPainter::CompositionMode_Difference ); // use a grey dashed pen - in difference mode this should always be visible QPen selectedItemPen = QPen( QColor( 144, 144, 144, 255 ) ); selectedItemPen.setStyle( Qt::DotLine ); selectedItemPen.setWidth( 0 ); p->setPen( selectedItemPen ); p->setBrush( Qt::NoBrush ); // drawPolygon causes issues on windows - corners of path may be missing resulting in triangles being drawn // instead of rectangles! (Same cause as #13343) QPainterPath path; path.addPolygon( rect() ); p->drawPath( path ); p->restore(); } }