mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-27 07:30:20 -05:00
#refactor Use RimNamedObject and RimCheckableNamedObject in annotation and cell filter classes
This commit is contained in:
1 parent
cbbcbb650c
commit
062fe388f7
21 files changed
+81
-176
No files matched your search
@@ -38,8 +38,8 @@ RimAnnotationCollectionBase::RimAnnotationCollectionBase()
|
||||
{
|
||||
CAF_PDM_InitObject( "Annotations", ":/WellCollection.png" );
|
||||
|
||||
CAF_PDM_InitField( &m_isActive, "IsActive", true, "Is Active" );
|
||||
m_isActive.uiCapability()->setUiHidden( true );
|
||||
m_isChecked.registerKeywordAlias( "IsActive" );
|
||||
m_isChecked.uiCapability()->setUiHidden( true );
|
||||
|
||||
CAF_PDM_InitFieldNoDefault( &m_textAnnotations, "TextAnnotations", "Text Annotations" );
|
||||
|
||||
@@ -60,7 +60,7 @@ RimAnnotationCollectionBase::~RimAnnotationCollectionBase()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimAnnotationCollectionBase::isActive() const
|
||||
{
|
||||
return m_isActive();
|
||||
return isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -140,17 +140,9 @@ std::vector<Rim3dView*> RimAnnotationCollectionBase::viewsContainingAnnotations(
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimAnnotationCollectionBase::fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue )
|
||||
{
|
||||
if ( changedField == &m_isActive )
|
||||
if ( changedField == objectToggleField() )
|
||||
{
|
||||
updateUiIconFromToggleField();
|
||||
scheduleRedrawOfRelevantViews();
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
caf::PdmFieldHandle* RimAnnotationCollectionBase::objectToggleField()
|
||||
{
|
||||
return &m_isActive;
|
||||
}
|
||||
@@ -18,11 +18,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "RimCheckableObject.h"
|
||||
|
||||
#include "cafPdmChildArrayField.h"
|
||||
#include "cafPdmChildField.h"
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmPointer.h"
|
||||
|
||||
class QString;
|
||||
class RimTextAnnotation;
|
||||
@@ -33,7 +33,7 @@ class Rim3dView;
|
||||
///
|
||||
///
|
||||
//==================================================================================================
|
||||
class RimAnnotationCollectionBase : public caf::PdmObject
|
||||
class RimAnnotationCollectionBase : public RimCheckableObject
|
||||
{
|
||||
CAF_PDM_HEADER_INIT;
|
||||
|
||||
@@ -56,9 +56,7 @@ public:
|
||||
|
||||
protected:
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
caf::PdmFieldHandle* objectToggleField() override;
|
||||
|
||||
protected:
|
||||
caf::PdmField<bool> m_isActive;
|
||||
caf::PdmChildField<RimAnnotationGroupCollection*> m_textAnnotations;
|
||||
};
|
||||
@@ -45,10 +45,10 @@ RimAnnotationGroupCollection::RimAnnotationGroupCollection()
|
||||
{
|
||||
CAF_PDM_InitObject( "Annotations", ":/WellCollection.png" );
|
||||
|
||||
CAF_PDM_InitField( &m_isActive, "IsActive", true, "Is Active" );
|
||||
CAF_PDM_InitFieldNoDefault( &m_annotations, "Annotations", "Annotations" );
|
||||
m_isChecked.registerKeywordAlias( "IsActive" );
|
||||
m_isChecked.uiCapability()->setUiHidden( true );
|
||||
|
||||
m_isActive.uiCapability()->setUiHidden( true );
|
||||
CAF_PDM_InitFieldNoDefault( &m_annotations, "Annotations", "Annotations" );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -63,7 +63,7 @@ RimAnnotationGroupCollection::~RimAnnotationGroupCollection()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimAnnotationGroupCollection::isActive() const
|
||||
{
|
||||
return m_isActive();
|
||||
return isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -75,7 +75,7 @@ bool RimAnnotationGroupCollection::isVisible() const
|
||||
|
||||
bool visible = true;
|
||||
if ( coll ) visible = coll->isActive();
|
||||
if ( visible ) visible = m_isActive;
|
||||
if ( visible ) visible = isChecked();
|
||||
return visible;
|
||||
}
|
||||
|
||||
@@ -108,21 +108,13 @@ std::vector<caf::PdmObject*> RimAnnotationGroupCollection::annotations() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimAnnotationGroupCollection::fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue )
|
||||
{
|
||||
if ( changedField == &m_isActive )
|
||||
if ( changedField == objectToggleField() )
|
||||
{
|
||||
updateUiIconFromToggleField();
|
||||
updateViews();
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
caf::PdmFieldHandle* RimAnnotationGroupCollection::objectToggleField()
|
||||
{
|
||||
return &m_isActive;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -18,10 +18,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "RimCheckableObject.h"
|
||||
|
||||
#include "cafPdmChildArrayField.h"
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmPointer.h"
|
||||
|
||||
class QString;
|
||||
class RimTextAnnotation;
|
||||
@@ -31,7 +31,7 @@ class RimGridView;
|
||||
///
|
||||
///
|
||||
//==================================================================================================
|
||||
class RimAnnotationGroupCollection : public caf::PdmObject
|
||||
class RimAnnotationGroupCollection : public RimCheckableObject
|
||||
{
|
||||
friend class RimAnnotationCollection;
|
||||
friend class RimAnnotationInViewCollection;
|
||||
@@ -57,13 +57,11 @@ public:
|
||||
|
||||
protected:
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
caf::PdmFieldHandle* objectToggleField() override;
|
||||
void onChildDeleted( caf::PdmChildArrayFieldHandle* childArray, std::vector<caf::PdmObjectHandle*>& referringObjects ) override;
|
||||
|
||||
private:
|
||||
void updateViews();
|
||||
|
||||
protected:
|
||||
caf::PdmField<bool> m_isActive;
|
||||
caf::PdmChildArrayField<caf::PdmObject*> m_annotations;
|
||||
};
|
||||
@@ -206,7 +206,7 @@ void RimAnnotationInViewCollection::defineUiOrdering( QString uiConfigName, caf:
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimAnnotationInViewCollection::fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue )
|
||||
{
|
||||
if ( changedField == &m_isActive )
|
||||
if ( changedField == objectToggleField() )
|
||||
{
|
||||
updateUiIconFromToggleField();
|
||||
}
|
||||
|
||||
@@ -40,8 +40,11 @@ RimReachCircleAnnotation::RimReachCircleAnnotation()
|
||||
{
|
||||
CAF_PDM_InitObject( "CircleAnnotation", ":/ReachCircle16x16.png" );
|
||||
|
||||
CAF_PDM_InitField( &m_isActive, "IsActive", true, "Is Active" );
|
||||
m_isActive.uiCapability()->setUiHidden( true );
|
||||
m_isChecked.registerKeywordAlias( "IsActive" );
|
||||
m_isChecked.uiCapability()->setUiHidden( true );
|
||||
|
||||
nameField()->registerKeywordAlias( "Name" );
|
||||
setName( "Circle Annotation" );
|
||||
|
||||
CAF_PDM_InitField( &m_centerPointXyd, "CenterPointXyd", Vec3d::ZERO, "Center Point" );
|
||||
m_centerPointXyd.uiCapability()->setUiEditorTypeName( caf::PdmUiPickableLineEditor::uiEditorTypeName() );
|
||||
@@ -49,7 +52,6 @@ RimReachCircleAnnotation::RimReachCircleAnnotation()
|
||||
caf::PdmUiPushButtonEditor::configureEditorLabelHidden( &m_centerPointPickEnabled );
|
||||
|
||||
CAF_PDM_InitField( &m_radius, "Radius", 100.0, "Radius" );
|
||||
CAF_PDM_InitField( &m_name, "Name", QString( "Circle Annotation" ), "Name" );
|
||||
|
||||
CAF_PDM_InitFieldNoDefault( &m_appearance, "Appearance", "Appearance" );
|
||||
|
||||
@@ -66,7 +68,7 @@ RimReachCircleAnnotation::RimReachCircleAnnotation()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimReachCircleAnnotation::isActive()
|
||||
{
|
||||
return m_isActive();
|
||||
return isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -76,7 +78,7 @@ bool RimReachCircleAnnotation::isVisible()
|
||||
{
|
||||
auto coll = firstAncestorOrThisOfType<RimAnnotationCollectionBase>();
|
||||
|
||||
return coll && coll->isActive() && m_isActive;
|
||||
return coll && coll->isActive() && isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -105,14 +107,6 @@ double RimReachCircleAnnotation::radius() const
|
||||
return m_radius;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QString RimReachCircleAnnotation::name() const
|
||||
{
|
||||
return m_name;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -126,7 +120,7 @@ RimReachCircleLineAppearance* RimReachCircleAnnotation::appearance() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimReachCircleAnnotation::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering )
|
||||
{
|
||||
uiOrdering.add( &m_name );
|
||||
uiOrdering.add( nameField() );
|
||||
uiOrdering.add( &m_centerPointXyd );
|
||||
uiOrdering.appendToRow( &m_centerPointPickEnabled );
|
||||
uiOrdering.add( &m_radius );
|
||||
@@ -156,22 +150,6 @@ void RimReachCircleAnnotation::fieldChangedByUi( const caf::PdmFieldHandle* chan
|
||||
annColl->scheduleRedrawOfRelevantViews();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
caf::PdmFieldHandle* RimReachCircleAnnotation::userDescriptionField()
|
||||
{
|
||||
return &m_name;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
caf::PdmFieldHandle* RimReachCircleAnnotation::objectToggleField()
|
||||
{
|
||||
return &m_isActive;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -18,14 +18,14 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmPointer.h"
|
||||
#include "RimCheckableNamedObject.h"
|
||||
|
||||
// Include to make Pdm work for cvf::Color
|
||||
#include "cafPdmChildField.h"
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmFieldCvfColor.h"
|
||||
#include "cafPdmFieldCvfVec3d.h"
|
||||
#include "cafPdmPointer.h"
|
||||
|
||||
#include "cvfObject.h"
|
||||
#include "cvfVector3.h"
|
||||
@@ -41,7 +41,7 @@ class RimReachCircleLineAppearance;
|
||||
///
|
||||
///
|
||||
//==================================================================================================
|
||||
class RimReachCircleAnnotation : public caf::PdmObject
|
||||
class RimReachCircleAnnotation : public RimCheckableNamedObject
|
||||
{
|
||||
friend class RimReachCircleAnnotationInView;
|
||||
|
||||
@@ -59,23 +59,17 @@ public:
|
||||
|
||||
Vec3d centerPoint() const;
|
||||
double radius() const;
|
||||
QString name() const;
|
||||
RimReachCircleLineAppearance* appearance() const;
|
||||
|
||||
protected:
|
||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
caf::PdmFieldHandle* userDescriptionField() override;
|
||||
caf::PdmFieldHandle* objectToggleField() override;
|
||||
void defineEditorAttribute( const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute* attribute ) override;
|
||||
|
||||
private:
|
||||
caf::PdmField<bool> m_isActive;
|
||||
|
||||
caf::PdmField<Vec3d> m_centerPointXyd;
|
||||
caf::PdmField<bool> m_centerPointPickEnabled;
|
||||
caf::PdmField<double> m_radius;
|
||||
caf::PdmField<QString> m_name;
|
||||
caf::PdmChildField<RimReachCircleLineAppearance*> m_appearance;
|
||||
|
||||
std::shared_ptr<RicVec3dPickEventHandler> m_centerPointEventHandler;
|
||||
|
||||
@@ -30,10 +30,11 @@ RimReachCircleAnnotationInView::RimReachCircleAnnotationInView()
|
||||
{
|
||||
CAF_PDM_InitObject( "ReachCircleAnnotationInView", ":/ReachCircle16x16.png" );
|
||||
|
||||
CAF_PDM_InitField( &m_isActive, "IsActive", true, "Is Active" );
|
||||
m_isChecked.registerKeywordAlias( "IsActive" );
|
||||
m_isChecked.uiCapability()->setUiHidden( true );
|
||||
|
||||
CAF_PDM_InitFieldNoDefault( &m_sourceAnnotation, "SourceAnnotation", "Source Annotation" );
|
||||
|
||||
m_isActive.uiCapability()->setUiHidden( true );
|
||||
m_sourceAnnotation.uiCapability()->setUiHidden( true );
|
||||
m_sourceAnnotation = nullptr;
|
||||
}
|
||||
@@ -46,7 +47,7 @@ RimReachCircleAnnotationInView::RimReachCircleAnnotationInView( RimReachCircleAn
|
||||
{
|
||||
CVF_ASSERT( sourceAnnotation );
|
||||
|
||||
m_isActive = sourceAnnotation->isActive();
|
||||
setCheckState( sourceAnnotation->isActive() );
|
||||
m_sourceAnnotation = sourceAnnotation;
|
||||
}
|
||||
|
||||
@@ -55,7 +56,7 @@ RimReachCircleAnnotationInView::RimReachCircleAnnotationInView( RimReachCircleAn
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimReachCircleAnnotationInView::isActive() const
|
||||
{
|
||||
return m_isActive();
|
||||
return isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -93,7 +94,7 @@ bool RimReachCircleAnnotationInView::isVisible() const
|
||||
if ( globalColl ) visible = globalColl->isVisible();
|
||||
}
|
||||
}
|
||||
if ( visible ) visible = m_isActive;
|
||||
if ( visible ) visible = isChecked();
|
||||
return visible;
|
||||
}
|
||||
|
||||
@@ -102,7 +103,7 @@ bool RimReachCircleAnnotationInView::isVisible() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimReachCircleAnnotationInView::fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue )
|
||||
{
|
||||
if ( changedField == &m_isActive )
|
||||
if ( changedField == objectToggleField() )
|
||||
{
|
||||
auto coll = firstAncestorOrThisOfType<RimAnnotationCollectionBase>();
|
||||
|
||||
@@ -110,14 +111,6 @@ void RimReachCircleAnnotationInView::fieldChangedByUi( const caf::PdmFieldHandle
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
caf::PdmFieldHandle* RimReachCircleAnnotationInView::objectToggleField()
|
||||
{
|
||||
return &m_isActive;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -18,10 +18,9 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "RimAnnotationLineAppearance.h"
|
||||
#include "RimCheckableObject.h"
|
||||
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmPtrField.h"
|
||||
|
||||
// Include to make Pdm work for cvf::Color
|
||||
@@ -42,7 +41,7 @@ class RimReachCircleAnnotation;
|
||||
///
|
||||
///
|
||||
//==================================================================================================
|
||||
class RimReachCircleAnnotationInView : public caf::PdmObject
|
||||
class RimReachCircleAnnotationInView : public RimCheckableObject
|
||||
{
|
||||
CAF_PDM_HEADER_INIT;
|
||||
|
||||
@@ -59,10 +58,8 @@ public:
|
||||
|
||||
protected:
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
caf::PdmFieldHandle* objectToggleField() override;
|
||||
caf::PdmFieldHandle* userDescriptionField() override;
|
||||
|
||||
private:
|
||||
caf::PdmField<bool> m_isActive;
|
||||
caf::PdmPtrField<RimReachCircleAnnotation*> m_sourceAnnotation;
|
||||
};
|
||||
@@ -62,8 +62,8 @@ RimTextAnnotation::RimTextAnnotation()
|
||||
CAF_PDM_InitField( &m_text, "Text", QString( "(New text)" ), "Text" );
|
||||
m_text.uiCapability()->setUiEditorTypeName( caf::PdmUiTextEditor::uiEditorTypeName() );
|
||||
|
||||
CAF_PDM_InitField( &m_isActive, "IsActive", true, "Is Active" );
|
||||
m_isActive.uiCapability()->setUiHidden( true );
|
||||
m_isChecked.registerKeywordAlias( "IsActive" );
|
||||
m_isChecked.uiCapability()->setUiHidden( true );
|
||||
|
||||
CAF_PDM_InitFieldNoDefault( &m_textAppearance, "TextAppearance", "Text Appearance" );
|
||||
m_textAppearance = new RimAnnotationTextAppearance();
|
||||
@@ -199,7 +199,7 @@ caf::PdmFieldHandle* RimTextAnnotation::userDescriptionField()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimTextAnnotation::isActive()
|
||||
{
|
||||
return m_isActive();
|
||||
return isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -211,7 +211,7 @@ bool RimTextAnnotation::isVisible() const
|
||||
|
||||
bool visible = true;
|
||||
if ( coll ) visible = coll->isVisible();
|
||||
if ( visible ) visible = m_isActive;
|
||||
if ( visible ) visible = isChecked();
|
||||
|
||||
return visible;
|
||||
}
|
||||
@@ -232,14 +232,6 @@ RimAnnotationTextAppearance* RimTextAnnotation::appearance() const
|
||||
return m_textAppearance();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
caf::PdmFieldHandle* RimTextAnnotation::objectToggleField()
|
||||
{
|
||||
return &m_isActive;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -18,11 +18,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmObject.h"
|
||||
#include "RimCheckableObject.h"
|
||||
|
||||
// Include to make Pdm work for cvf::Color
|
||||
#include "cafPdmChildField.h"
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmFieldCvfColor.h"
|
||||
#include "cafPdmFieldCvfVec3d.h"
|
||||
#include "cafPdmProxyValueField.h"
|
||||
@@ -42,7 +42,7 @@ class RimAnnotationTextAppearance;
|
||||
///
|
||||
///
|
||||
//==================================================================================================
|
||||
class RimTextAnnotation : public caf::PdmObject
|
||||
class RimTextAnnotation : public RimCheckableObject
|
||||
{
|
||||
friend class RimTextAnnotationInView;
|
||||
|
||||
@@ -70,7 +70,6 @@ protected:
|
||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||
void fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue ) override;
|
||||
caf::PdmFieldHandle* userDescriptionField() override;
|
||||
caf::PdmFieldHandle* objectToggleField() override;
|
||||
void defineEditorAttribute( const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute* attribute ) override;
|
||||
|
||||
private:
|
||||
@@ -83,7 +82,6 @@ private:
|
||||
caf::PdmField<Vec3d> m_labelPointXyd;
|
||||
caf::PdmField<bool> m_labelPointPickEnabledButtonField;
|
||||
caf::PdmField<QString> m_text;
|
||||
caf::PdmField<bool> m_isActive;
|
||||
|
||||
caf::PdmChildField<RimAnnotationTextAppearance*> m_textAppearance;
|
||||
|
||||
|
||||
@@ -53,9 +53,10 @@ RimCellFilter::RimCellFilter( FilterDefinitionType defType )
|
||||
{
|
||||
CAF_PDM_InitObject( "Cell Filter" );
|
||||
|
||||
CAF_PDM_InitField( &m_name, "UserDescription", QString( "New filter" ), "Name" );
|
||||
CAF_PDM_InitField( &m_isActive, "Active", true, "Active" );
|
||||
m_isActive.uiCapability()->setUiHidden( true );
|
||||
// The base class uses "UserDescription" as field keyword - no alias needed for m_name
|
||||
setName( "New filter" );
|
||||
|
||||
m_isChecked.registerKeywordAlias( "Active" );
|
||||
|
||||
CAF_PDM_InitFieldNoDefault( &m_srcCase, "Case", "Case" );
|
||||
m_srcCase.uiCapability()->setUiHidden( true );
|
||||
@@ -93,23 +94,7 @@ caf::PdmFieldHandle* RimCellFilter::userDescriptionField()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QString RimCellFilter::fullName() const
|
||||
{
|
||||
return QString( "%1" ).arg( m_name );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QString RimCellFilter::name() const
|
||||
{
|
||||
return m_name();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimCellFilter::setName( QString filtername )
|
||||
{
|
||||
m_name = filtername;
|
||||
return name();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -117,7 +102,7 @@ void RimCellFilter::setName( QString filtername )
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimCellFilter::setActive( bool active )
|
||||
{
|
||||
m_isActive = active;
|
||||
m_isChecked = active;
|
||||
updateIconState();
|
||||
}
|
||||
|
||||
@@ -126,7 +111,7 @@ void RimCellFilter::setActive( bool active )
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimCellFilter::isActive() const
|
||||
{
|
||||
return m_isActive();
|
||||
return m_isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -145,7 +130,7 @@ void RimCellFilter::triggerFilterChanged() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimCellFilter::isFilterEnabled() const
|
||||
{
|
||||
return m_isActive();
|
||||
return m_isChecked();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -193,7 +178,7 @@ RimGeoMechCase* RimCellFilter::geoMechCase() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimCellFilter::updateActiveState( bool isControlled )
|
||||
{
|
||||
m_isActive.uiCapability()->setUiReadOnly( isControlled );
|
||||
m_isChecked.uiCapability()->setUiReadOnly( isControlled );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -246,25 +231,17 @@ void RimCellFilter::updateIconState()
|
||||
iconProvider.setOverlayResourceString( ":/Minus.png" );
|
||||
}
|
||||
|
||||
iconProvider.setActive( m_isActive && !m_isActive.uiCapability()->isUiReadOnly() );
|
||||
iconProvider.setActive( m_isChecked && !m_isChecked.uiCapability()->isUiReadOnly() );
|
||||
|
||||
setUiIcon( iconProvider );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
caf::PdmFieldHandle* RimCellFilter::objectToggleField()
|
||||
{
|
||||
return &m_isActive;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimCellFilter::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering )
|
||||
{
|
||||
uiOrdering.add( &m_name );
|
||||
uiOrdering.add( nameField() );
|
||||
auto group = uiOrdering.addNewGroup( "General" );
|
||||
group->add( &m_filterMode );
|
||||
|
||||
|
||||
@@ -18,9 +18,10 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "RimCheckableNamedObject.h"
|
||||
|
||||
#include "cafAppEnum.h"
|
||||
#include "cafPdmField.h"
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmProxyValueField.h"
|
||||
#include "cafPdmPtrField.h"
|
||||
#include "cafSignal.h"
|
||||
@@ -41,7 +42,7 @@ class RimCase;
|
||||
///
|
||||
///
|
||||
//==================================================================================================
|
||||
class RimCellFilter : public caf::PdmObject
|
||||
class RimCellFilter : public RimCheckableNamedObject
|
||||
{
|
||||
CAF_PDM_HEADER_INIT;
|
||||
|
||||
@@ -64,9 +65,6 @@ public:
|
||||
RimCellFilter( FilterDefinitionType defType );
|
||||
~RimCellFilter() override;
|
||||
|
||||
QString name() const;
|
||||
void setName( QString filtername );
|
||||
|
||||
bool isActive() const;
|
||||
void setActive( bool active );
|
||||
|
||||
@@ -97,7 +95,6 @@ public:
|
||||
|
||||
protected:
|
||||
caf::PdmFieldHandle* userDescriptionField() override;
|
||||
caf::PdmFieldHandle* objectToggleField() override;
|
||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||
bool isFilterControlled() const;
|
||||
|
||||
@@ -108,9 +105,7 @@ protected:
|
||||
|
||||
QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions ) override;
|
||||
|
||||
caf::PdmField<QString> m_name;
|
||||
caf::PdmProxyValueField<QString> m_nameProxy;
|
||||
caf::PdmField<bool> m_isActive;
|
||||
caf::PdmField<caf::AppEnum<FilterModeType>> m_filterMode;
|
||||
caf::PdmField<int> m_gridIndex;
|
||||
caf::PdmField<bool> m_propagateToSubGrids;
|
||||
|
||||
@@ -99,7 +99,7 @@ void RimCellIndexFilter::fieldChangedByUi( const caf::PdmFieldHandle* changedFie
|
||||
m_setId = 0;
|
||||
}
|
||||
|
||||
if ( changedField != &m_name )
|
||||
if ( changedField != nameField() )
|
||||
{
|
||||
updateCells();
|
||||
filterChanged.send();
|
||||
@@ -161,11 +161,11 @@ void RimCellIndexFilter::updateCells()
|
||||
auto part = parts->part( m_gridIndex() );
|
||||
|
||||
auto setNames = part->elementSetNames();
|
||||
m_name = QString::fromStdString( part->name() );
|
||||
setName( QString::fromStdString( part->name() ) );
|
||||
|
||||
if ( m_setId() < (int)setNames.size() )
|
||||
{
|
||||
m_name = m_name + " : " + QString::fromStdString( part->elementSetNames()[m_setId] );
|
||||
setName( name() + " : " + QString::fromStdString( part->elementSetNames()[m_setId] ) );
|
||||
}
|
||||
|
||||
auto cells = part->elementSet( m_setId() );
|
||||
|
||||
@@ -149,7 +149,7 @@ void RimCellRangeFilter::fieldChangedByUi( const caf::PdmFieldHandle* changedFie
|
||||
return;
|
||||
}
|
||||
|
||||
if ( changedField != &m_name )
|
||||
if ( changedField != nameField() )
|
||||
{
|
||||
computeAndSetValidValues();
|
||||
filterChanged.send();
|
||||
|
||||
@@ -182,9 +182,9 @@ void RimEclipsePropertyFilter::fieldChangedByUi( const caf::PdmFieldHandle* chan
|
||||
if ( m_upperBound < m_lowerBound ) m_lowerBound = m_upperBound;
|
||||
}
|
||||
|
||||
if ( &m_lowerBound == changedField || &m_upperBound == changedField || &m_isActive == changedField || &m_filterMode == changedField ||
|
||||
&m_selectedCategoryValues == changedField || &m_useCategorySelection == changedField || &m_integerUpperBound == changedField ||
|
||||
&m_integerLowerBound == changedField || &m_linkedWithCellResult == changedField )
|
||||
if ( &m_lowerBound == changedField || &m_upperBound == changedField || objectToggleField() == changedField ||
|
||||
&m_filterMode == changedField || &m_selectedCategoryValues == changedField || &m_useCategorySelection == changedField ||
|
||||
&m_integerUpperBound == changedField || &m_integerLowerBound == changedField || &m_linkedWithCellResult == changedField )
|
||||
{
|
||||
m_isDuplicatedFromLinkedView = false;
|
||||
|
||||
@@ -228,7 +228,7 @@ void RimEclipsePropertyFilter::setToDefaultValues()
|
||||
void RimEclipsePropertyFilter::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering )
|
||||
{
|
||||
// Fields declared in RimCellFilter
|
||||
uiOrdering.add( &m_name );
|
||||
uiOrdering.add( nameField() );
|
||||
|
||||
uiOrdering.add( &m_linkedWithCellResult );
|
||||
|
||||
@@ -391,7 +391,7 @@ void RimEclipsePropertyFilter::setCategoriesFromTracerNames( const std::vector<Q
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimEclipsePropertyFilter::updateActiveState()
|
||||
{
|
||||
m_isActive.uiCapability()->setUiReadOnly( isPropertyFilterControlled() );
|
||||
m_isChecked.uiCapability()->setUiReadOnly( isPropertyFilterControlled() );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -640,7 +640,7 @@ void RimEclipsePropertyFilter::updateFromCurrentTimeStep()
|
||||
m_upperBound.uiCapability()->updateConnectedEditors();
|
||||
|
||||
updateFilterName();
|
||||
m_name.uiCapability()->updateConnectedEditors();
|
||||
nameField()->uiCapability()->updateConnectedEditors();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -684,7 +684,7 @@ void RimEclipsePropertyFilter::updateFilterName()
|
||||
newFiltername += " (" + QString::number( m_lowerBound ) + " .. " + QString::number( m_upperBound ) + ")";
|
||||
}
|
||||
|
||||
m_name = newFiltername;
|
||||
setName( newFiltername );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
@@ -124,8 +124,8 @@ double RimGeoMechPropertyFilter::upperBound() const
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGeoMechPropertyFilter::fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue )
|
||||
{
|
||||
if ( &m_lowerBound == changedField || &m_upperBound == changedField || &m_isActive == changedField || &m_filterMode == changedField ||
|
||||
&m_selectedCategoryValues == changedField || &m_linkedWithCellResult == changedField )
|
||||
if ( &m_lowerBound == changedField || &m_upperBound == changedField || objectToggleField() == changedField ||
|
||||
&m_filterMode == changedField || &m_selectedCategoryValues == changedField || &m_linkedWithCellResult == changedField )
|
||||
{
|
||||
updateIconState();
|
||||
updateFilterName();
|
||||
@@ -173,7 +173,7 @@ void RimGeoMechPropertyFilter::setToDefaultValues()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGeoMechPropertyFilter::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering )
|
||||
{
|
||||
uiOrdering.add( &m_name );
|
||||
uiOrdering.add( nameField() );
|
||||
uiOrdering.add( &m_linkedWithCellResult );
|
||||
if ( m_linkedWithCellResult() )
|
||||
{
|
||||
@@ -258,7 +258,7 @@ bool RimGeoMechPropertyFilter::isPropertyFilterControlled()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimGeoMechPropertyFilter::updateActiveState()
|
||||
{
|
||||
m_isActive.uiCapability()->setUiReadOnly( isPropertyFilterControlled() );
|
||||
m_isChecked.uiCapability()->setUiReadOnly( isPropertyFilterControlled() );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -364,7 +364,7 @@ void RimGeoMechPropertyFilter::updateFilterName()
|
||||
QString::number( m_upperBound ) + ")";
|
||||
}
|
||||
|
||||
m_name = newFiltername;
|
||||
setName( newFiltername );
|
||||
|
||||
uiCapability()->updateConnectedEditors();
|
||||
}
|
||||
@@ -170,7 +170,7 @@ void RimPolygonFilter::setPolygon( RimPolygon* polygon )
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimPolygonFilter::isFilterEnabled() const
|
||||
{
|
||||
return m_isActive() && m_enableFiltering;
|
||||
return isActive() && m_enableFiltering;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@@ -248,7 +248,7 @@ void RimPolygonFilter::childFieldChangedByUi( const caf::PdmFieldHandle* changed
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimPolygonFilter::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering )
|
||||
{
|
||||
uiOrdering.add( &m_name );
|
||||
uiOrdering.add( nameField() );
|
||||
|
||||
auto group = uiOrdering.addNewGroup( "General" );
|
||||
group->add( &m_filterMode );
|
||||
@@ -352,7 +352,7 @@ void RimPolygonFilter::fieldChangedByUi( const caf::PdmFieldHandle* changedField
|
||||
updateAllRequiredEditors();
|
||||
}
|
||||
|
||||
if ( changedField != &m_name )
|
||||
if ( changedField != nameField() )
|
||||
{
|
||||
updateCells();
|
||||
filterChanged.send();
|
||||
|
||||
@@ -70,7 +70,7 @@ void RimUserDefinedFilter::defineUiOrdering( QString uiConfigName, caf::PdmUiOrd
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimUserDefinedFilter::fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue )
|
||||
{
|
||||
if ( changedField != &m_name )
|
||||
if ( changedField != nameField() )
|
||||
{
|
||||
filterChanged.send();
|
||||
updateIconState();
|
||||
|
||||
@@ -87,7 +87,7 @@ void RimUserDefinedIndexFilter::defineUiOrdering( QString uiConfigName, caf::Pdm
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimUserDefinedIndexFilter::fieldChangedByUi( const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue )
|
||||
{
|
||||
if ( changedField != &m_name )
|
||||
if ( changedField != nameField() )
|
||||
{
|
||||
filterChanged.send();
|
||||
updateIconState();
|
||||
|
||||
Reference in new issue
Block a user