void QgsComposerItem::drawSelectionBoxes( QPainter* p ) { if ( !mComposition ) { return; } if ( mComposition->plotStyle() == QgsComposition::Preview ) { double sizeLockSymbol = lockSymbolSize(); if ( mItemPositionLocked ) { //draw lock symbol at upper left edge. Use QImage to be independent of the graphic system QString lockIconPath = QgsApplication::activeThemePath() + "/mIconLock.png"; if ( !QFile::exists( lockIconPath ) ) { lockIconPath = QgsApplication::defaultThemePath() + "/mIconLock.png"; } QImage lockImage( lockIconPath ); if ( !lockImage.isNull() ) { p->drawImage( QRectF( 0, 0, sizeLockSymbol, sizeLockSymbol ), lockImage, QRectF( 0, 0, lockImage.width(), lockImage.height() ) ); } } } }
void QgsComposerItem::drawSelectionBoxes( QPainter* p ) { if ( !mComposition ) { return; } if ( mComposition->plotStyle() == QgsComposition::Preview ) { //size of symbol boxes depends on zoom level in composer view double rectHandlerSize = rectHandlerBorderTolerance(); double sizeLockSymbol = lockSymbolSize(); if ( mItemPositionLocked ) { //draw lock symbol at upper left edge. Use QImage to be independent of the graphic system QString lockIconPath = QgsApplication::activeThemePath() + "/mIconLock.png"; if ( !QFile::exists( lockIconPath ) ) { lockIconPath = QgsApplication::defaultThemePath() + "/mIconLock.png"; } QImage lockImage( lockIconPath ); if ( !lockImage.isNull() ) { p->drawImage( QRectF( 0, 0, sizeLockSymbol, sizeLockSymbol ), lockImage, QRectF( 0, 0, lockImage.width(), lockImage.height() ) ); } } else //draw blue squares { p->setPen( QColor( 50, 100, 120, 200 ) ); p->setBrush( QColor( 200, 200, 210, 120 ) ); p->drawRect( QRectF( 0, 0, rectHandlerSize, rectHandlerSize ) ); p->drawRect( QRectF( rect().width() - rectHandlerSize, 0, rectHandlerSize, rectHandlerSize ) ); p->drawRect( QRectF( rect().width() - rectHandlerSize, rect().height() - rectHandlerSize, rectHandlerSize, rectHandlerSize ) ); p->drawRect( QRectF( 0, rect().height() - rectHandlerSize, rectHandlerSize, rectHandlerSize ) ); } } }