(#667) Make Grids toggle follow toggle button in toolbar

Renamed toolbar text to "Hide Grid Cells"
This commit is contained in:
Magne Sjaastad 2015-11-27 13:45:02 +01:00
parent a42b0d2c8e
commit f33a3174ee
8 changed files with 25 additions and 18 deletions

View File

@ -40,6 +40,7 @@
#include "RimEclipseWell.h"
#include "RimEclipseWellCollection.h"
#include "RimFaultCollection.h"
#include "RimGridCollection.h"
#include "RimOilField.h"
#include "RimProject.h"
#include "RimTernaryLegendConfig.h"

View File

@ -34,6 +34,7 @@
#include "RimGeoMechCase.h"
#include "RimGeoMechCellColors.h"
#include "RimGeoMechPropertyFilterCollection.h"
#include "RimGridCollection.h"
#include "RimLegendConfig.h"
#include "RimViewLinker.h"

View File

@ -30,8 +30,8 @@ RimGridCollection::RimGridCollection()
{
CAF_PDM_InitObject("Grids", ":/draw_style_faults_24x24.png", "", "");
CAF_PDM_InitField(&m_isActive, "IsActive", true, "Show grid cells", "", "", "");
m_isActive.uiCapability()->setUiHidden(true);
CAF_PDM_InitField(&isActive, "IsActive", true, "Show grid cells", "", "", "");
isActive.uiCapability()->setUiHidden(true);
}
//--------------------------------------------------------------------------------------------------
@ -47,7 +47,7 @@ RimGridCollection::~RimGridCollection()
//--------------------------------------------------------------------------------------------------
caf::PdmFieldHandle* RimGridCollection::objectToggleField()
{
return &m_isActive;
return &isActive;
}
//--------------------------------------------------------------------------------------------------
@ -55,15 +55,15 @@ caf::PdmFieldHandle* RimGridCollection::objectToggleField()
//--------------------------------------------------------------------------------------------------
void RimGridCollection::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
{
if (changedField == &m_isActive)
if (changedField == &isActive)
{
RimView* rimView = NULL;
this->firstAnchestorOrThisOfType(rimView);
CVF_ASSERT(rimView);
rimView->setShowFaultsOnly(!m_isActive);
rimView->showGridCells(isActive);
updateUiIconFromState(m_isActive);
updateUiIconFromState(isActive);
}
}
@ -72,5 +72,5 @@ void RimGridCollection::fieldChangedByUi(const caf::PdmFieldHandle* changedField
//--------------------------------------------------------------------------------------------------
void RimGridCollection::initAfterRead()
{
updateUiIconFromState(m_isActive);
updateUiIconFromState(isActive);
}

View File

@ -36,10 +36,10 @@ public:
virtual caf::PdmFieldHandle* objectToggleField();
caf::PdmField<bool> isActive;
protected:
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
virtual void initAfterRead();
private:
caf::PdmField<bool> m_isActive;
};

View File

@ -432,9 +432,9 @@ void RimView::setSurfOnlyDrawstyle()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimView::setShowFaultsOnly(bool showFaults)
void RimView::showGridCells(bool enableGridCells)
{
if (showFaults)
if (!enableGridCells)
{
m_previousGridModeMeshLinesWasFaults = meshMode() == FAULTS_MESH;
if (surfaceMode() != NO_SURFACE) surfaceMode.uiCapability()->setValueFromUi(FAULTS);
@ -445,6 +445,10 @@ void RimView::setShowFaultsOnly(bool showFaults)
if (surfaceMode() != NO_SURFACE) surfaceMode.uiCapability()->setValueFromUi(SURFACE);
if (meshMode() != NO_MESH) meshMode.uiCapability()->setValueFromUi(m_previousGridModeMeshLinesWasFaults ? FAULTS_MESH : FULL_MESH);
}
m_gridCollection->isActive = enableGridCells;
m_gridCollection->updateConnectedEditors();
m_gridCollection->updateUiIconFromState(enableGridCells);
}
//--------------------------------------------------------------------------------------------------

View File

@ -39,6 +39,7 @@
class Rim3dOverlayInfoConfig;
class RimCase;
class RimCellRangeFilter;
class RimGridCollection;
class RimCellRangeFilterCollection;
class RimCrossSectionCollection;
class RimPropertyFilterCollection;
@ -121,7 +122,7 @@ public:
void disableLighting(bool disable);
bool isLightingDisabled() const;
void setShowFaultsOnly(bool showFaults);
void showGridCells(bool enableHideGridCells);
bool isGridVisualizationMode() const;
void setScaleZAndUpdate(double scaleZ);
@ -194,7 +195,7 @@ protected:
caf::PdmChildField<RimCellRangeFilterCollection*> m_rangeFilterCollection;
caf::PdmChildField<RimCellRangeFilterCollection*> m_overrideRangeFilterCollection;
caf::PdmChildField<caf::PdmObjectHandle*> m_gridCollection;
caf::PdmChildField<RimGridCollection*> m_gridCollection;
// Overridden PDM methods:
virtual void setupBeforeSave();

View File

@ -350,9 +350,9 @@ void RiuMainWindow::createActions()
connect(m_disableLightingAction, SIGNAL(toggled(bool)), SLOT(slotDisableLightingAction(bool)));
m_drawStyleToggleFaultsAction = new QAction( QIcon(":/draw_style_faults_24x24.png"), "&Show Faults Only", this);
m_drawStyleToggleFaultsAction = new QAction( QIcon(":/draw_style_faults_24x24.png"), "&Hide Grid Cells", this);
m_drawStyleToggleFaultsAction->setCheckable(true);
connect(m_drawStyleToggleFaultsAction, SIGNAL(toggled(bool)), SLOT(slotToggleFaultsAction(bool)));
connect(m_drawStyleToggleFaultsAction, SIGNAL(toggled(bool)), SLOT(slotToggleHideGridCellsAction(bool)));
m_toggleFaultsLabelAction = new QAction( QIcon(":/draw_style_faults_label_24x24.png"), "&Show Fault Labels", this);
m_toggleFaultsLabelAction->setCheckable(true);
@ -1861,11 +1861,11 @@ void RiuMainWindow::slotDrawStyleChanged(QAction* activatedAction)
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiuMainWindow::slotToggleFaultsAction(bool showFaults)
void RiuMainWindow::slotToggleHideGridCellsAction(bool hideGridCells)
{
if (!RiaApplication::instance()->activeReservoirView()) return;
RiaApplication::instance()->activeReservoirView()->setShowFaultsOnly(showFaults);
RiaApplication::instance()->activeReservoirView()->showGridCells(!hideGridCells);
}

View File

@ -240,7 +240,7 @@ private slots:
void slotScaleChanged(int scaleValue);
void slotDrawStyleChanged(QAction* activatedAction);
void slotToggleFaultsAction(bool);
void slotToggleHideGridCellsAction(bool);
void slotToggleFaultLabelsAction(bool);
void slotDisableLightingAction(bool);