Skip to content

Commit dc4c6d1

Browse files
vcloarecnyalldawson
authored andcommittedJun 4, 2020
collapse static dataset group box
1 parent 7cc27af commit dc4c6d1

File tree

3 files changed

+35
-18
lines changed

3 files changed

+35
-18
lines changed
 

‎src/app/mesh/qgsmeshlayerproperties.cpp

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@ QgsMeshLayerProperties::QgsMeshLayerProperties( QgsMapLayer *lyr, QgsMapCanvas *
5454
mRendererMeshPropertiesWidget = new QgsRendererMeshPropertiesWidget( mMeshLayer, canvas, this );
5555
mOptsPage_StyleContent->layout()->addWidget( mRendererMeshPropertiesWidget );
5656

57-
mStaticScalarWidget->setLayer( mMeshLayer );
57+
mStaticDatasetWidget->setLayer( mMeshLayer );
58+
mIsMapSettingsTemporal = mMeshLayer && canvas && canvas->mapSettings().isTemporal();
5859

5960
mTemporalProviderTimeUnitComboBox->addItem( tr( "Seconds" ), QgsUnitTypes::TemporalSeconds );
6061
mTemporalProviderTimeUnitComboBox->addItem( tr( "Minutes" ), QgsUnitTypes::TemporalMinutes );
@@ -79,9 +80,10 @@ QgsMeshLayerProperties::QgsMeshLayerProperties( QgsMapLayer *lyr, QgsMapCanvas *
7980
connect( buttonBox, &QDialogButtonBox::helpRequested, this, &QgsMeshLayerProperties::showHelp );
8081

8182
connect( mTemporalReloadButton, &QPushButton::clicked, this, &QgsMeshLayerProperties::reloadTemporalProperties );
83+
connect( mTemporalStaticDatasetCheckBox, &QCheckBox::toggled, this, &QgsMeshLayerProperties::onStaticDatasetCheckBoxChanged );
8284
connect( mTemporalDateTimeReference, &QDateTimeEdit::dateTimeChanged, this, &QgsMeshLayerProperties::onTimeReferenceChange );
83-
connect( mMeshLayer, &QgsMeshLayer::activeScalarDatasetGroupChanged, mStaticScalarWidget, &QgsMeshStaticDatasetWidget::setScalarDatasetGroup );
84-
connect( mMeshLayer, &QgsMeshLayer::activeVectorDatasetGroupChanged, mStaticScalarWidget, &QgsMeshStaticDatasetWidget::setVectorDatasetGroup );
85+
connect( mMeshLayer, &QgsMeshLayer::activeScalarDatasetGroupChanged, mStaticDatasetWidget, &QgsMeshStaticDatasetWidget::setScalarDatasetGroup );
86+
connect( mMeshLayer, &QgsMeshLayer::activeVectorDatasetGroupChanged, mStaticDatasetWidget, &QgsMeshStaticDatasetWidget::setVectorDatasetGroup );
8587

8688
#ifdef HAVE_3D
8789
mMesh3DWidget = new QgsMeshLayer3DRendererWidget( mMeshLayer, canvas, mOptsPage_3DView );
@@ -216,8 +218,9 @@ void QgsMeshLayerProperties::syncToLayer()
216218
mComboBoxTemporalDatasetMatchingMethod->setCurrentIndex(
217219
mComboBoxTemporalDatasetMatchingMethod->findData( temporalProperties->matchingMethod() ) );
218220

219-
mStaticScalarWidget->syncToLayer();
221+
mStaticDatasetWidget->syncToLayer();
220222
mTemporalStaticDatasetCheckBox->setChecked( !mMeshLayer->temporalProperties()->isActive() );
223+
mStaticDatasetGroupBox->setCollapsed( mIsMapSettingsTemporal && mMeshLayer->temporalProperties()->isActive() );
221224
}
222225

223226
void QgsMeshLayerProperties::loadDefaultStyle()
@@ -373,7 +376,7 @@ void QgsMeshLayerProperties::apply()
373376
mMeshLayer->dataProvider()->setTemporalUnit(
374377
static_cast<QgsUnitTypes::TemporalUnit>( mTemporalProviderTimeUnitComboBox->currentData().toInt() ) );
375378

376-
mStaticScalarWidget->apply();
379+
mStaticDatasetWidget->apply();
377380
bool needEmitRendererChanged = mMeshLayer->temporalProperties()->isActive() == mTemporalStaticDatasetCheckBox->isChecked();
378381
mMeshLayer->temporalProperties()->setIsActive( !mTemporalStaticDatasetCheckBox->isChecked() );
379382
mMeshLayer->setTemporalMatchingMethod( static_cast<QgsMeshDataProviderTemporalCapabilities::MatchingTemporalDatasetMethod>(
@@ -461,3 +464,8 @@ void QgsMeshLayerProperties::onTimeReferenceChange()
461464
mTemporalDateTimeStart->setDateTime( timeExtent.begin() );
462465
mTemporalDateTimeEnd->setDateTime( timeExtent.end() );
463466
}
467+
468+
void QgsMeshLayerProperties::onStaticDatasetCheckBoxChanged()
469+
{
470+
mStaticDatasetGroupBox->setCollapsed( !mTemporalStaticDatasetCheckBox->isChecked() && mIsMapSettingsTemporal );
471+
}

‎src/app/mesh/qgsmeshlayerproperties.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ class APP_EXPORT QgsMeshLayerProperties : public QgsOptionsDialogBase, private U
7474

7575
void onTimeReferenceChange();
7676

77+
void onStaticDatasetCheckBoxChanged();
7778
private:
7879
//! Pointer to the mesh styling widget
7980
QgsRendererMeshPropertiesWidget *mRendererMeshPropertiesWidget = nullptr;
@@ -89,6 +90,8 @@ class APP_EXPORT QgsMeshLayerProperties : public QgsOptionsDialogBase, private U
8990
* was loaded but dialog is canceled */
9091
QgsMapLayerStyle mOldStyle;
9192

93+
bool mIsMapSettingsTemporal = false;
94+
9295
friend class TestQgsMeshLayerPropertiesDialog;
9396

9497
void showHelp();

‎src/ui/mesh/qgsmeshlayerpropertiesbase.ui

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -342,13 +342,23 @@ border-radius: 2px;</string>
342342
<widget class="QgsMeshDatasetGroupTreeWidget" name="mDatasetGroupTreeWidget" native="true"/>
343343
</item>
344344
<item>
345-
<widget class="QGroupBox" name="groupBox">
345+
<widget class="QCheckBox" name="mTemporalStaticDatasetCheckBox">
346+
<property name="toolTip">
347+
<string>Static dataset even if the temporal navigation is on</string>
348+
</property>
349+
<property name="text">
350+
<string>Force Static Dataset with Temporal Navigation</string>
351+
</property>
352+
</widget>
353+
</item>
354+
<item>
355+
<widget class="QgsCollapsibleGroupBoxBasic" name="mStaticDatasetGroupBox">
346356
<property name="title">
347357
<string>Static Dataset</string>
348358
</property>
349359
<layout class="QVBoxLayout" name="verticalLayout_7">
350360
<item>
351-
<widget class="QgsMeshStaticDatasetWidget" name="mStaticScalarWidget" native="true">
361+
<widget class="QgsMeshStaticDatasetWidget" name="mStaticDatasetWidget" native="true">
352362
<property name="minimumSize">
353363
<size>
354364
<width>0</width>
@@ -357,16 +367,6 @@ border-radius: 2px;</string>
357367
</property>
358368
</widget>
359369
</item>
360-
<item>
361-
<widget class="QCheckBox" name="mTemporalStaticDatasetCheckBox">
362-
<property name="toolTip">
363-
<string>Static dataset even if the temporal navigation is on</string>
364-
</property>
365-
<property name="text">
366-
<string>Force Static Dataset with Temporal Navigation</string>
367-
</property>
368-
</widget>
369-
</item>
370370
</layout>
371371
</widget>
372372
</item>
@@ -378,7 +378,7 @@ border-radius: 2px;</string>
378378
<property name="sizeHint" stdset="0">
379379
<size>
380380
<width>20</width>
381-
<height>0</height>
381+
<height>40</height>
382382
</size>
383383
</property>
384384
</spacer>
@@ -810,6 +810,12 @@ border-radius: 2px;</string>
810810
<header>qgsmeshdatasetgrouptreewidget.h</header>
811811
<container>1</container>
812812
</customwidget>
813+
<customwidget>
814+
<class>QgsCollapsibleGroupBoxBasic</class>
815+
<extends>QGroupBox</extends>
816+
<header>qgscollapsiblegroupbox.h</header>
817+
<container>1</container>
818+
</customwidget>
813819
</customwidgets>
814820
<tabstops>
815821
<tabstop>mSearchLineEdit</tabstop>

0 commit comments

Comments
 (0)
Please sign in to comment.