Skip to content

Commit

Permalink
[styledock] Swap rendererv2 widget back to qwidget
Browse files Browse the repository at this point in the history
  • Loading branch information
NathanW2 committed Jun 6, 2016
1 parent 91cd68e commit ad5f970
Show file tree
Hide file tree
Showing 12 changed files with 34 additions and 50 deletions.
8 changes: 3 additions & 5 deletions src/gui/symbology-ng/qgscategorizedsymbolrendererv2widget.cpp
Expand Up @@ -430,8 +430,7 @@ QgsCategorizedSymbolRendererV2Widget::QgsCategorizedSymbolRendererV2Widget( QgsV
mOldClassificationAttribute = attrName; mOldClassificationAttribute = attrName;


// setup user interface // setup user interface
setupUi( mWidgetPage ); setupUi( this );
QMetaObject::connectSlotsByName( this );


mExpressionWidget->setLayer( mLayer ); mExpressionWidget->setLayer( mLayer );


Expand Down Expand Up @@ -575,7 +574,7 @@ void QgsCategorizedSymbolRendererV2Widget::changeCategorizedSymbol()
connect( dlg, SIGNAL( symbolModified() ), container, SLOT( emitWidgetChanged() ) ); connect( dlg, SIGNAL( symbolModified() ), container, SLOT( emitWidgetChanged() ) );
connect( container, SIGNAL( widgetChanged( QgsRendererWidgetContainer* ) ), this, SLOT( updateSymbolsFromWidget( QgsRendererWidgetContainer* ) ) ); connect( container, SIGNAL( widgetChanged( QgsRendererWidgetContainer* ) ), this, SLOT( updateSymbolsFromWidget( QgsRendererWidgetContainer* ) ) );
connect( container, SIGNAL( accepted( QgsRendererWidgetContainer* ) ), this, SLOT( cleanUpSymbolSelector( QgsRendererWidgetContainer* ) ) ); connect( container, SIGNAL( accepted( QgsRendererWidgetContainer* ) ), this, SLOT( cleanUpSymbolSelector( QgsRendererWidgetContainer* ) ) );
emit panelOpened( container ); emit showPanel( container );
} }


void QgsCategorizedSymbolRendererV2Widget::updateCategorizedSymbolIcon() void QgsCategorizedSymbolRendererV2Widget::updateCategorizedSymbolIcon()
Expand Down Expand Up @@ -621,7 +620,7 @@ void QgsCategorizedSymbolRendererV2Widget::changeCategorySymbol()
connect( dlg, SIGNAL( symbolModified() ), container, SLOT( emitWidgetChanged() ) ); connect( dlg, SIGNAL( symbolModified() ), container, SLOT( emitWidgetChanged() ) );
connect( container, SIGNAL( widgetChanged( QgsRendererWidgetContainer* ) ), this, SLOT( updateSymbolsFromWidget( QgsRendererWidgetContainer* ) ) ); connect( container, SIGNAL( widgetChanged( QgsRendererWidgetContainer* ) ), this, SLOT( updateSymbolsFromWidget( QgsRendererWidgetContainer* ) ) );
connect( container, SIGNAL( accepted( QgsRendererWidgetContainer* ) ), this, SLOT( cleanUpSymbolSelector( QgsRendererWidgetContainer* ) ) ); connect( container, SIGNAL( accepted( QgsRendererWidgetContainer* ) ), this, SLOT( cleanUpSymbolSelector( QgsRendererWidgetContainer* ) ) );
emit panelOpened( container ); emit showPanel( container );
} }


static void _createCategories( QgsCategoryList& cats, QList<QVariant>& values, QgsSymbolV2* symbol ) static void _createCategories( QgsCategoryList& cats, QList<QVariant>& values, QgsSymbolV2* symbol )
Expand Down Expand Up @@ -1005,7 +1004,6 @@ void QgsCategorizedSymbolRendererV2Widget::cleanUpSymbolSelector( QgsRendererWid


void QgsCategorizedSymbolRendererV2Widget::updateSymbolsFromWidget( QgsRendererWidgetContainer* container ) void QgsCategorizedSymbolRendererV2Widget::updateSymbolsFromWidget( QgsRendererWidgetContainer* container )
{ {
QgsDebugMsg( "UPDATE SYMBOL!!!" );
QgsSymbolV2SelectorDialog* dlg = qobject_cast<QgsSymbolV2SelectorDialog*>( container->widget() ); QgsSymbolV2SelectorDialog* dlg = qobject_cast<QgsSymbolV2SelectorDialog*>( container->widget() );
delete mCategorizedSymbol; delete mCategorizedSymbol;
mCategorizedSymbol = dlg->symbol()->clone(); mCategorizedSymbol = dlg->symbol()->clone();
Expand Down
26 changes: 11 additions & 15 deletions src/gui/symbology-ng/qgsgraduatedsymbolrendererv2widget.cpp
Expand Up @@ -433,8 +433,7 @@ QgsGraduatedSymbolRendererV2Widget::QgsGraduatedSymbolRendererV2Widget( QgsVecto
} }


// setup user interface // setup user interface
setupUi( mWidgetPage ); setupUi( this );
QMetaObject::connectSlotsByName( this );


mModel = new QgsGraduatedSymbolRendererV2Model( this ); mModel = new QgsGraduatedSymbolRendererV2Model( this );


Expand Down Expand Up @@ -689,22 +688,17 @@ void QgsGraduatedSymbolRendererV2Widget::refreshRanges( bool reset )
emit widgetChanged(); emit widgetChanged();
} }


void QgsGraduatedSymbolRendererV2Widget::cleanUpSymbolSelector() void QgsGraduatedSymbolRendererV2Widget::cleanUpSymbolSelector( QgsRendererWidgetContainer *container )
{ {
QgsRendererWidgetContainer* container = qobject_cast<QgsRendererWidgetContainer*>( this->currentWidget() );
if ( container ) if ( container )
{ {
this->removeWidget( container );
QgsSymbolV2SelectorDialog* dlg = qobject_cast<QgsSymbolV2SelectorDialog*>( container->widget() ); QgsSymbolV2SelectorDialog* dlg = qobject_cast<QgsSymbolV2SelectorDialog*>( container->widget() );
delete dlg->symbol(); delete dlg->symbol();
container->deleteLater();
this->setCurrentIndex( 0 );
} }
} }


void QgsGraduatedSymbolRendererV2Widget::updateSymbolsFromWidget() void QgsGraduatedSymbolRendererV2Widget::updateSymbolsFromWidget( QgsRendererWidgetContainer *container )
{ {
QgsRendererWidgetContainer* container = qobject_cast<QgsRendererWidgetContainer*>( this->currentWidget() );
QgsSymbolV2SelectorDialog* dlg = qobject_cast<QgsSymbolV2SelectorDialog*>( container->widget() ); QgsSymbolV2SelectorDialog* dlg = qobject_cast<QgsSymbolV2SelectorDialog*>( container->widget() );
delete mGraduatedSymbol; delete mGraduatedSymbol;
mGraduatedSymbol = dlg->symbol()->clone(); mGraduatedSymbol = dlg->symbol()->clone();
Expand Down Expand Up @@ -838,9 +832,10 @@ void QgsGraduatedSymbolRendererV2Widget::changeGraduatedSymbol()
dlg->setMapCanvas( mMapCanvas ); dlg->setMapCanvas( mMapCanvas );


QgsRendererWidgetContainer* container = new QgsRendererWidgetContainer( dlg, "Select Symbol", nullptr ); QgsRendererWidgetContainer* container = new QgsRendererWidgetContainer( dlg, "Select Symbol", nullptr );
connect( dlg, SIGNAL( symbolModified() ), this, SLOT( updateSymbolsFromWidget() ) ); connect( dlg, SIGNAL( symbolModified() ), container, SLOT( emitWidgetChanged() ) );
connect( container, SIGNAL( accepted() ), this, SLOT( cleanUpSymbolSelector() ) ); connect( container, SIGNAL( widgetChanged( QgsRendererWidgetContainer* ) ), this, SLOT( updateSymbolsFromWidget( QgsRendererWidgetContainer* ) ) );
emit panelOpened( container ); connect( container, SIGNAL( accepted( QgsRendererWidgetContainer* ) ), this, SLOT( cleanUpSymbolSelector( QgsRendererWidgetContainer* ) ) );
emit showPanel( container );
} }


void QgsGraduatedSymbolRendererV2Widget::updateGraduatedSymbolIcon() void QgsGraduatedSymbolRendererV2Widget::updateGraduatedSymbolIcon()
Expand Down Expand Up @@ -917,9 +912,10 @@ void QgsGraduatedSymbolRendererV2Widget::changeRangeSymbol( int rangeIdx )
dlg->setMapCanvas( mMapCanvas ); dlg->setMapCanvas( mMapCanvas );


QgsRendererWidgetContainer* container = new QgsRendererWidgetContainer( dlg, "Select Symbol", nullptr ); QgsRendererWidgetContainer* container = new QgsRendererWidgetContainer( dlg, "Select Symbol", nullptr );
connect( dlg, SIGNAL( symbolModified() ), this, SLOT( updateSymbolsFromWidget() ) ); connect( dlg, SIGNAL( symbolModified() ), container, SLOT( emitWidgetChanged() ) );
connect( container, SIGNAL( accepted() ), this, SLOT( cleanUpSymbolSelector() ) ); connect( container, SIGNAL( widgetChanged( QgsRendererWidgetContainer* ) ), this, SLOT( updateSymbolsFromWidget( QgsRendererWidgetContainer* ) ) );
emit panelOpened( container ); connect( container, SIGNAL( accepted( QgsRendererWidgetContainer* ) ), this, SLOT( cleanUpSymbolSelector( QgsRendererWidgetContainer* ) ) );
emit showPanel( container );
} }


void QgsGraduatedSymbolRendererV2Widget::changeRange( int rangeIdx ) void QgsGraduatedSymbolRendererV2Widget::changeRange( int rangeIdx )
Expand Down
5 changes: 2 additions & 3 deletions src/gui/symbology-ng/qgsgraduatedsymbolrendererv2widget.h
Expand Up @@ -119,9 +119,8 @@ class GUI_EXPORT QgsGraduatedSymbolRendererV2Widget : public QgsRendererV2Widget
void refreshRanges( bool reset = false ); void refreshRanges( bool reset = false );


private slots: private slots:

void cleanUpSymbolSelector( QgsRendererWidgetContainer* container );
void cleanUpSymbolSelector(); void updateSymbolsFromWidget( QgsRendererWidgetContainer *container );
void updateSymbolsFromWidget();


protected: protected:
void updateUiFromRenderer( bool updateCount = true ); void updateUiFromRenderer( bool updateCount = true );
Expand Down
5 changes: 2 additions & 3 deletions src/gui/symbology-ng/qgsheatmaprendererwidget.cpp
Expand Up @@ -73,12 +73,11 @@ QgsHeatmapRendererWidget::QgsHeatmapRendererWidget( QgsVectorLayer* layer, QgsSt
QLabel* label = new QLabel( tr( "The heatmap renderer only applies to point and multipoint layers. \n" QLabel* label = new QLabel( tr( "The heatmap renderer only applies to point and multipoint layers. \n"
"'%1' is not a point layer and cannot be rendered as a heatmap." ) "'%1' is not a point layer and cannot be rendered as a heatmap." )
.arg( layer->name() ), this ); .arg( layer->name() ), this );
mWidgetPage->layout()->addWidget( label ); layout()->addWidget( label );
return; return;
} }


setupUi( mWidgetPage ); setupUi( this );
QMetaObject::connectSlotsByName( this );


mRadiusUnitWidget->setUnits( QgsSymbolV2::OutputUnitList() << QgsSymbolV2::MM << QgsSymbolV2::Pixel << QgsSymbolV2::MapUnit ); mRadiusUnitWidget->setUnits( QgsSymbolV2::OutputUnitList() << QgsSymbolV2::MM << QgsSymbolV2::Pixel << QgsSymbolV2::MapUnit );
mWeightExpressionWidget->registerGetExpressionContextCallback( &_getExpressionContext, this ); mWeightExpressionWidget->registerGetExpressionContextCallback( &_getExpressionContext, this );
Expand Down
11 changes: 5 additions & 6 deletions src/gui/symbology-ng/qgsinvertedpolygonrendererwidget.cpp
Expand Up @@ -46,12 +46,11 @@ QgsInvertedPolygonRendererWidget::QgsInvertedPolygonRendererWidget( QgsVectorLay
QLabel* label = new QLabel( tr( "The inverted polygon renderer only applies to polygon and multipolygon layers. \n" QLabel* label = new QLabel( tr( "The inverted polygon renderer only applies to polygon and multipolygon layers. \n"
"'%1' is not a polygon layer and then cannot be displayed" ) "'%1' is not a polygon layer and then cannot be displayed" )
.arg( layer->name() ), this ); .arg( layer->name() ), this );
mWidgetPage->setLayout( layout ); this->setLayout( layout );
layout->addWidget( label ); layout->addWidget( label );
return; return;
} }
setupUi( mWidgetPage ); setupUi( this );
QMetaObject::connectSlotsByName( this );


// try to recognize the previous renderer // try to recognize the previous renderer
// (null renderer means "no previous renderer") // (null renderer means "no previous renderer")
Expand Down Expand Up @@ -130,12 +129,12 @@ void QgsInvertedPolygonRendererWidget::on_mRendererComboBox_currentIndexChanged(
connect( mEmbeddedRendererWidget.data(), SIGNAL( widgetChanged() ), this, SIGNAL( widgetChanged() ) ); connect( mEmbeddedRendererWidget.data(), SIGNAL( widgetChanged() ), this, SIGNAL( widgetChanged() ) );
mEmbeddedRendererWidget->setMapCanvas( mMapCanvas ); mEmbeddedRendererWidget->setMapCanvas( mMapCanvas );


if ( mWidgetPage->layout()->count() > 2 ) if ( layout()->count() > 2 )
{ {
// remove the current renderer widget // remove the current renderer widget
mWidgetPage->layout()->takeAt( 2 ); layout()->takeAt( 2 );
} }
mWidgetPage->layout()->addWidget( mEmbeddedRendererWidget.data() ); layout()->addWidget( mEmbeddedRendererWidget.data() );
} }
} }


Expand Down
2 changes: 1 addition & 1 deletion src/gui/symbology-ng/qgsnullsymbolrendererwidget.cpp
Expand Up @@ -37,7 +37,7 @@ QgsNullSymbolRendererWidget::QgsNullSymbolRendererWidget( QgsVectorLayer* layer,
mRenderer = new QgsNullSymbolRenderer(); mRenderer = new QgsNullSymbolRenderer();
} }


QGridLayout* layout = new QGridLayout( mWidgetPage ); QGridLayout* layout = new QGridLayout( this );
QLabel* label = new QLabel( tr( "No symbols will be rendered for features in this layer." ) ); QLabel* label = new QLabel( tr( "No symbols will be rendered for features in this layer." ) );
layout->addWidget( label ); layout->addWidget( label );
} }
Expand Down
8 changes: 3 additions & 5 deletions src/gui/symbology-ng/qgspointdisplacementrendererwidget.cpp
Expand Up @@ -48,8 +48,7 @@ QgsPointDisplacementRendererWidget::QgsPointDisplacementRendererWidget( QgsVecto
setupBlankUi( layer->name() ); setupBlankUi( layer->name() );
return; return;
} }
setupUi( mWidgetPage ); setupUi( this );
QMetaObject::connectSlotsByName( this );


mDistanceUnitWidget->setUnits( QgsSymbolV2::OutputUnitList() << QgsSymbolV2::MM << QgsSymbolV2::MapUnit << QgsSymbolV2::Pixel ); mDistanceUnitWidget->setUnits( QgsSymbolV2::OutputUnitList() << QgsSymbolV2::MM << QgsSymbolV2::MapUnit << QgsSymbolV2::Pixel );


Expand Down Expand Up @@ -384,8 +383,7 @@ void QgsPointDisplacementRendererWidget::updateCenterIcon()
void QgsPointDisplacementRendererWidget::setupBlankUi( const QString& layerName ) void QgsPointDisplacementRendererWidget::setupBlankUi( const QString& layerName )
{ {
QLabel* label = new QLabel( tr( "The point displacement renderer only applies to (single) point layers. \n'%1' is not a point layer and cannot be displayed by the point displacement renderer" ).arg( layerName ), this ); QLabel* label = new QLabel( tr( "The point displacement renderer only applies to (single) point layers. \n'%1' is not a point layer and cannot be displayed by the point displacement renderer" ).arg( layerName ), this );
QVBoxLayout* layout = new QVBoxLayout; QVBoxLayout* layout = new QVBoxLayout( this );
layout->setContentsMargins( 0, 0, 0, 0 ); layout->setContentsMargins( 0, 0, 0, 0 );
mWidgetPage->setLayout( layout ); layout->addWidget( label );
mWidgetPage->layout()->addWidget( label );
} }
2 changes: 1 addition & 1 deletion src/gui/symbology-ng/qgsrendererv2propertiesdialog.cpp
Expand Up @@ -245,7 +245,7 @@ void QgsRendererV2PropertiesDialog::rendererChanged()
connect( mActiveWidget, SIGNAL( layerVariablesChanged() ), this, SIGNAL( layerVariablesChanged() ) ); connect( mActiveWidget, SIGNAL( layerVariablesChanged() ), this, SIGNAL( layerVariablesChanged() ) );
} }
connect( mActiveWidget, SIGNAL( widgetChanged() ), this, SIGNAL( widgetChanged() ) ); connect( mActiveWidget, SIGNAL( widgetChanged() ), this, SIGNAL( widgetChanged() ) );
connect( mActiveWidget, SIGNAL( panelOpened( QgsRendererWidgetContainer* ) ), this, SLOT( showPanel( QgsRendererWidgetContainer* ) ) ); connect( mActiveWidget, SIGNAL( showPanel( QgsRendererWidgetContainer* ) ), this, SLOT( showPanel( QgsRendererWidgetContainer* ) ) );
} }
else else
{ {
Expand Down
5 changes: 1 addition & 4 deletions src/gui/symbology-ng/qgsrendererv2widget.cpp
Expand Up @@ -25,14 +25,11 @@
#include <QMenu> #include <QMenu>


QgsRendererV2Widget::QgsRendererV2Widget( QgsVectorLayer* layer, QgsStyleV2* style ) QgsRendererV2Widget::QgsRendererV2Widget( QgsVectorLayer* layer, QgsStyleV2* style )
: QStackedWidget() : QWidget()
, mLayer( layer ) , mLayer( layer )
, mStyle( style ) , mStyle( style )
, mMapCanvas( nullptr ) , mMapCanvas( nullptr )
{ {
mWidgetPage = new QWidget();
this->addWidget( mWidgetPage );

contextMenu = new QMenu( tr( "Renderer Options" ), this ); contextMenu = new QMenu( tr( "Renderer Options" ), this );


mCopyAction = contextMenu->addAction( tr( "Copy" ), this, SLOT( copy() ) ); mCopyAction = contextMenu->addAction( tr( "Copy" ), this, SLOT( copy() ) );
Expand Down
5 changes: 2 additions & 3 deletions src/gui/symbology-ng/qgsrendererv2widget.h
Expand Up @@ -39,7 +39,7 @@ class QgsRendererWidgetContainer;
- on any change of renderer type, create some default (dummy?) version and change the stacked widget - on any change of renderer type, create some default (dummy?) version and change the stacked widget
- when clicked ok/apply, get the renderer from active widget and clone it for the layer - when clicked ok/apply, get the renderer from active widget and clone it for the layer
*/ */
class GUI_EXPORT QgsRendererV2Widget : public QStackedWidget class GUI_EXPORT QgsRendererV2Widget : public QWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
Expand Down Expand Up @@ -97,10 +97,9 @@ class GUI_EXPORT QgsRendererV2Widget : public QStackedWidget
* The renderer can open inline sub panels instead of dialogs. * The renderer can open inline sub panels instead of dialogs.
* @param opened True of the a sub panel is opened. * @param opened True of the a sub panel is opened.
*/ */
void panelOpened( QgsRendererWidgetContainer* widget ); void showPanel( QgsRendererWidgetContainer* widget );


protected: protected:
QWidget* mWidgetPage;
QgsVectorLayer* mLayer; QgsVectorLayer* mLayer;
QgsStyleV2* mStyle; QgsStyleV2* mStyle;
QMenu* contextMenu; QMenu* contextMenu;
Expand Down
3 changes: 1 addition & 2 deletions src/gui/symbology-ng/qgsrulebasedrendererv2widget.cpp
Expand Up @@ -63,8 +63,7 @@ QgsRuleBasedRendererV2Widget::QgsRuleBasedRendererV2Widget( QgsVectorLayer* laye
mRenderer = new QgsRuleBasedRendererV2( symbol ); mRenderer = new QgsRuleBasedRendererV2( symbol );
} }


setupUi( mWidgetPage ); setupUi( this );
QMetaObject::connectSlotsByName( this );


mModel = new QgsRuleBasedRendererV2Model( mRenderer ); mModel = new QgsRuleBasedRendererV2Model( mRenderer );
#ifdef ENABLE_MODELTEST #ifdef ENABLE_MODELTEST
Expand Down
4 changes: 2 additions & 2 deletions src/gui/symbology-ng/qgssinglesymbolrendererv2widget.cpp
Expand Up @@ -54,9 +54,9 @@ QgsSingleSymbolRendererV2Widget::QgsSingleSymbolRendererV2Widget( QgsVectorLayer
mSelector = new QgsSymbolV2SelectorDialog( mSingleSymbol, mStyle, mLayer, nullptr, true ); mSelector = new QgsSymbolV2SelectorDialog( mSingleSymbol, mStyle, mLayer, nullptr, true );
connect( mSelector, SIGNAL( symbolModified() ), this, SLOT( changeSingleSymbol() ) ); connect( mSelector, SIGNAL( symbolModified() ), this, SLOT( changeSingleSymbol() ) );


QVBoxLayout* layout = new QVBoxLayout( mWidgetPage ); QVBoxLayout* layout = new QVBoxLayout( this );
layout->setContentsMargins( 0, 0, 0, 0 ); layout->setContentsMargins( 0, 0, 0, 0 );
mWidgetPage->layout()->addWidget( mSelector ); layout->addWidget( mSelector );


// advanced actions - data defined rendering // advanced actions - data defined rendering
QMenu* advMenu = mSelector->advancedMenu(); QMenu* advMenu = mSelector->advancedMenu();
Expand Down

0 comments on commit ad5f970

Please sign in to comment.