SHAPER  9.12.0
FiltersPlugin_Selection Class Reference

An interface for working with filters in the feature. More...

Inheritance diagram for FiltersPlugin_Selection:
Inheritance graph

Public Member Functions

virtual const std::string & getKind ()
 Returns the kind of a feature. More...
 
virtual bool isInHistory ()
 This feature does not displayed in the data tree. More...
 
virtual void execute ()
 Computes a selection? More...
 
 FiltersPlugin_Selection ()
 Feature is created in the plugin manager. More...
 
virtual void initAttributes () override
 This method initializes all filters on open of document. More...
 
virtual std::string addFilter (const std::string theFilterID) override
 Adds a filter to the feature. More...
 
virtual void removeFilter (const std::string theFilterID) override
 Removes an existing filter from the feature. More...
 
virtual std::list< std::string > filters () const override
 Returns the list of existing filters in the feature. More...
 
virtual void setReversed (const std::string theFilterID, const bool theReversed) override
 Stores the reversed flag for the filter. More...
 
virtual bool isReversed (const std::string theFilterID) override
 Returns the reversed flag value for the filter. More...
 
virtual std::list< AttributePtr > filterArgs (const std::string theFilterID) const override
 Returns the ordered list of attributes related to the filter. More...
 
virtual void setAttribute (const AttributePtr &theAttr) override
 Sets the attribute (not-persistent field) that contains this filters feature. More...
 
virtual const AttributePtr & baseAttribute () const override
 Returns the attribute (not-persistent field) that contains this filters feature. More...
 
virtual std::shared_ptr< ModelAPI_Documentdocument () const
 Returns document this feature belongs to. More...
 
std::shared_ptr< ModelAPI_AttributeDocRefdocument (const std::string &theID)
 Returns the document reference attribute. More...
 
virtual std::string groupName ()
 Returns the group identifier of this result. More...
 
virtual bool compute (const std::string &)
 Computes the attribute value on the base of other attributes if the value can be computed. More...
 
virtual MODELAPI_EXPORT void setError (const std::string &theError, bool isSend=true, bool isTranslate=true)
 Registers error during the execution, causes the ExecutionFailed state. More...
 
virtual std::string error () const
 Returns error, arose during the execution. More...
 
MODELAPI_EXPORT const std::list< std::shared_ptr< ModelAPI_Result > > & results ()
 returns the current results of the feature More...
 
MODELAPI_EXPORT std::shared_ptr< ModelAPI_ResultfirstResult () const
 returns the first result in the list or NULL reference More...
 
MODELAPI_EXPORT std::shared_ptr< ModelAPI_ResultlastResult ()
 returns the last result in the list or NULL reference More...
 
MODELAPI_EXPORT void setResult (const std::shared_ptr< ModelAPI_Result > &theResult)
 sets the alone result More...
 
MODELAPI_EXPORT void setResult (const std::shared_ptr< ModelAPI_Result > &theResult, const int theIndex)
 sets the result by index (zero based), results before this must be set before More...
 
MODELAPI_EXPORT void removeResults (const int theSinceIndex, const bool theForever=true, const bool theFlush=true)
 removes all results starting from the given index (zero-based) More...
 
MODELAPI_EXPORT void eraseResults (const bool theForever=true)
 removes all results from the feature More...
 
virtual MODELAPI_EXPORT void erase ()
 removes all fields from this feature: results, data, etc More...
 
MODELAPI_EXPORT void eraseResultFromList (const std::shared_ptr< ModelAPI_Result > &theResult)
 removes the result from the list of feature (not doing in disabled): normally this method is not used from features. More...
 
virtual bool isPersistentResult ()
 Returns true if result is persistent (stored in document) and on undo-redo, save-open it is not needed to recompute it. More...
 
virtual bool isAction ()
 Returns true if this feature must not be created: this is just an action that is not stored in the features history and data model (like "delete part"). More...
 
virtual MODELAPI_EXPORT bool isMacro () const
 Returns true if this feature is used as macro: creates other features and then removed. More...
 
virtual MODELAPI_EXPORT bool isPreviewNeeded () const
 Returns true if preview update during the edition needed. More...
 
virtual MODELAPI_EXPORT const std::string & documentToAdd ()
 Must return document where the new feature must be added to By default it is empty: it is added to the document this method is called to. More...
 
virtual MODELAPI_EXPORT bool setDisabled (const bool theFlag)
 Enables/disables the feature. More...
 
virtual MODELAPI_EXPORT bool isDisabled ()
 Returns the feature is disabled or not. More...
 
virtual MODELAPI_EXPORT bool setStable (const bool theFlag)
 Set the stable feature flag. More...
 
virtual MODELAPI_EXPORT bool isStable ()
 Returns the feature is stable or not. More...
 
virtual MODELAPI_EXPORT bool isEditable ()
 Returns the feature is editable or not. Most of features are editable. More...
 
virtual MODELAPI_EXPORT bool customAction (const std::string &theActionId)
 Performs some custom feature specific functionality (normally called by some GUI button) More...
 
std::wstring name ()
 Returns the name stored in the attribute. More...
 
std::shared_ptr< ModelAPI_AttributeBooleanboolean (const std::string &theID)
 Returns the Boolean attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeDoublereal (const std::string &theID)
 Returns the real attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeIntegerinteger (const std::string &theID)
 Returns the integer attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeIntArrayintArray (const std::string &theID)
 Returns the integer array attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeRefAttrrefattr (const std::string &theID)
 Returns the reference attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeRefAttrListrefattrlist (const std::string &theID)
 Returns the refattrlist attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeReferencereference (const std::string &theID)
 Returns the reference attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeRefListreflist (const std::string &theID)
 Returns the list of references attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeSelectionselection (const std::string &theID)
 Returns the shape selection attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeSelectionListselectionList (const std::string &theID)
 Returns the list of shape selections attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeStringstring (const std::string &theID)
 Returns the string attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeStringArraystringArray (const std::string &theID)
 Returns the string array attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_AttributeTablestables (const std::string &theID)
 Returns the tables attribute by the identifier. More...
 
std::shared_ptr< ModelAPI_Attributeattribute (const std::string &theID)
 Returns the attribute by the identifier. More...
 
virtual void setInHistory (const std::shared_ptr< ModelAPI_Object > theObject, const bool theFlag)
 Makes object presented or not in the history of the created objects. More...
 
virtual std::shared_ptr< ModelAPI_Datadata () const
 Returns the data manager of this object: attributes. More...
 
virtual bool isSame (const std::shared_ptr< ModelAPI_Object > &theObject)
 Returns true if object refers to the same data model instance. More...
 
virtual void colorConfigInfo (std::string &, std::string &, std::string &)
 Returns the parameters of color definition in the resources config manager. More...
 
virtual void attributeChanged (const std::string &theID)
 Called on change of any argument-attribute of this object. More...
 
virtual bool isDisplayed ()
 Returns true if object must be displayed in the viewer: flag is stored in the data model, so on undo/redo, open/save or recreation of object by history-playing it keeps the original state in the current transaction. More...
 
virtual void setDisplayed (const bool theDisplay)
 Sets the displayed/hidden state of the object. More...
 
virtual bool hasTexture ()
 
virtual void emptyFunction () const
 Empty function which is added for virtualiation of the interface. More...
 

Static Public Member Functions

static const std::string & ID ()
 Extrusion kind. More...
 
static std::string group ()
 Returns the group identifier of all features. More...
 
static MODELAPI_EXPORT std::shared_ptr< ModelAPI_Featurefeature (ObjectPtr theObject)
 Returns the feature by the object (result). More...
 

Protected Member Functions

virtual MODELAPI_EXPORT void init ()
 This method is called just after creation of the object: it must initialize all fields, normally initialized in the constructor. More...
 
virtual void setData (std::shared_ptr< ModelAPI_Data > theData)
 Sets the data manager of an object (document does) More...
 
virtual void setDoc (std::shared_ptr< ModelAPI_Document > theDoc)
 Sets the data manager of an object (document does) More...
 

Protected Attributes

AttributePtr myBase
 the attribute related to this filter More...
 

Detailed Description

An interface for working with filters in the feature.

A filters feature must inherit it in order to allow management of filters in the feature data structure.

Constructor & Destructor Documentation

◆ FiltersPlugin_Selection()

FiltersPlugin_Selection::FiltersPlugin_Selection ( )
inline

Feature is created in the plugin manager.

Member Function Documentation

◆ ID()

static const std::string& FiltersPlugin_Selection::ID ( )
inlinestatic

Extrusion kind.

◆ getKind()

virtual const std::string& FiltersPlugin_Selection::getKind ( )
inlinevirtual

Returns the kind of a feature.

Implements ModelAPI_Feature.

◆ isInHistory()

virtual bool FiltersPlugin_Selection::isInHistory ( )
inlinevirtual

This feature does not displayed in the data tree.

Reimplemented from ModelAPI_Object.

◆ execute()

virtual void FiltersPlugin_Selection::execute ( )
inlinevirtual

Computes a selection?

Implements ModelAPI_Feature.

◆ initAttributes()

void FiltersPlugin_Selection::initAttributes ( )
overridevirtual

This method initializes all filters on open of document.

Implements ModelAPI_Object.

◆ addFilter()

std::string FiltersPlugin_Selection::addFilter ( const std::string  theFilterID)
overridevirtual

Adds a filter to the feature.

Also initializes arguments of this filter. Returns the real identifier of the filter.

Implements ModelAPI_FiltersFeature.

◆ removeFilter()

void FiltersPlugin_Selection::removeFilter ( const std::string  theFilterID)
overridevirtual

Removes an existing filter from the feature.

Implements ModelAPI_FiltersFeature.

◆ filters()

std::list< std::string > FiltersPlugin_Selection::filters ( ) const
overridevirtual

Returns the list of existing filters in the feature.

Implements ModelAPI_FiltersFeature.

◆ setReversed()

void FiltersPlugin_Selection::setReversed ( const std::string  theFilterID,
const bool  theReversed 
)
overridevirtual

Stores the reversed flag for the filter.

Implements ModelAPI_FiltersFeature.

◆ isReversed()

bool FiltersPlugin_Selection::isReversed ( const std::string  theFilterID)
overridevirtual

Returns the reversed flag value for the filter.

Implements ModelAPI_FiltersFeature.

◆ filterArgs()

std::list< AttributePtr > FiltersPlugin_Selection::filterArgs ( const std::string  theFilterID) const
overridevirtual

Returns the ordered list of attributes related to the filter.

Implements ModelAPI_FiltersFeature.

◆ setAttribute()

void FiltersPlugin_Selection::setAttribute ( const AttributePtr &  theAttr)
overridevirtual

Sets the attribute (not-persistent field) that contains this filters feature.

The filter feature may make synchronization by this method call.

Implements ModelAPI_FiltersFeature.

◆ baseAttribute()

const AttributePtr & FiltersPlugin_Selection::baseAttribute ( ) const
overridevirtual

Returns the attribute (not-persistent field) that contains this filters feature.

Implements ModelAPI_FiltersFeature.

◆ group()

static std::string ModelAPI_Feature::group ( )
inlinestaticinherited

Returns the group identifier of all features.

◆ document() [1/2]

virtual std::shared_ptr<ModelAPI_Document> ModelAPI_Feature::document ( ) const
inlinevirtualinherited

Returns document this feature belongs to.

Reimplemented from ModelAPI_Object.

◆ document() [2/2]

std::shared_ptr<ModelAPI_AttributeDocRef> ModelAPI_Feature::document ( const std::string &  theID)
inlineinherited

Returns the document reference attribute.

◆ groupName()

virtual std::string ModelAPI_Feature::groupName ( )
inlinevirtualinherited

Returns the group identifier of this result.

Implements ModelAPI_Object.

◆ compute()

virtual bool ModelAPI_Feature::compute ( const std::string &  )
inlinevirtualinherited

Computes the attribute value on the base of other attributes if the value can be computed.

Parameters
theAttributeIdan attribute index to be computed
Returns
a boolean value about it is computed

Reimplemented in SketchPlugin_ConstraintRadius, SketchPlugin_ConstraintLength, and SketchPlugin_ConstraintAngle.

◆ setError()

void ModelAPI_Feature::setError ( const std::string &  theError,
bool  isSend = true,
bool  isTranslate = true 
)
virtualinherited

Registers error during the execution, causes the ExecutionFailed state.

◆ error()

virtual std::string ModelAPI_Feature::error ( ) const
inlinevirtualinherited

Returns error, arose during the execution.

◆ results()

const std::list< std::shared_ptr< ModelAPI_Result > > & ModelAPI_Feature::results ( )
inherited

returns the current results of the feature

◆ firstResult()

std::shared_ptr< ModelAPI_Result > ModelAPI_Feature::firstResult ( ) const
inherited

returns the first result in the list or NULL reference

◆ lastResult()

std::shared_ptr< ModelAPI_Result > ModelAPI_Feature::lastResult ( )
inherited

returns the last result in the list or NULL reference

◆ setResult() [1/2]

void ModelAPI_Feature::setResult ( const std::shared_ptr< ModelAPI_Result > &  theResult)
inherited

sets the alone result

◆ setResult() [2/2]

void ModelAPI_Feature::setResult ( const std::shared_ptr< ModelAPI_Result > &  theResult,
const int  theIndex 
)
inherited

sets the result by index (zero based), results before this must be set before

◆ removeResults()

void ModelAPI_Feature::removeResults ( const int  theSinceIndex,
const bool  theForever = true,
const bool  theFlush = true 
)
inherited

removes all results starting from the given index (zero-based)

Parameters
theSinceIndex- index of the deleted result and all after also will be deleted
theForever- removes results for long period (not just because of feature disabling)
theFlush- if it is false, REDISPLAY message is not flushed

◆ eraseResults()

void ModelAPI_Feature::eraseResults ( const bool  theForever = true)
inherited

removes all results from the feature

◆ erase()

void ModelAPI_Feature::erase ( )
virtualinherited

removes all fields from this feature: results, data, etc

Reimplemented from ModelAPI_Object.

Reimplemented in SketchPlugin_MultiTranslation, SketchPlugin_MultiRotation, SketchPlugin_ConstraintMirror, PartSetPlugin_Part, and ModelAPI_CompositeFeature.

◆ eraseResultFromList()

void ModelAPI_Feature::eraseResultFromList ( const std::shared_ptr< ModelAPI_Result > &  theResult)
inherited

removes the result from the list of feature (not doing in disabled): normally this method is not used from features.

only internally

◆ isPersistentResult()

virtual bool ModelAPI_Feature::isPersistentResult ( )
inlinevirtualinherited

Returns true if result is persistent (stored in document) and on undo-redo, save-open it is not needed to recompute it.

Reimplemented in ParametersPlugin_ParametersMgr, CollectionPlugin_GroupOperation, CollectionPlugin_Group, and CollectionPlugin_Field.

◆ isAction()

virtual bool ModelAPI_Feature::isAction ( )
inlinevirtualinherited

Returns true if this feature must not be created: this is just an action that is not stored in the features history and data model (like "delete part").

Reimplemented in PartSetPlugin_Remove, and PartSetPlugin_Duplicate.

◆ isMacro()

◆ isPreviewNeeded()

◆ documentToAdd()

const std::string & ModelAPI_Feature::documentToAdd ( )
virtualinherited

Must return document where the new feature must be added to By default it is empty: it is added to the document this method is called to.

Reimplemented in PartSetPlugin_Part.

◆ setDisabled()

bool ModelAPI_Feature::setDisabled ( const bool  theFlag)
virtualinherited

Enables/disables the feature.

The disabled feature has no results and does not participate in any calculation.

Returns
true if state is really changed

◆ isDisabled()

bool ModelAPI_Feature::isDisabled ( )
virtualinherited

Returns the feature is disabled or not.

Implements ModelAPI_Object.

◆ feature()

FeaturePtr ModelAPI_Feature::feature ( ObjectPtr  theObject)
staticinherited

Returns the feature by the object (result).

◆ setStable()

bool ModelAPI_Feature::setStable ( const bool  theFlag)
virtualinherited

Set the stable feature flag.

If feature is currently editing then it is not stable.

Returns
true if state is really changed

◆ isStable()

bool ModelAPI_Feature::isStable ( )
virtualinherited

Returns the feature is stable or not.

◆ isEditable()

bool ModelAPI_Feature::isEditable ( )
virtualinherited

Returns the feature is editable or not. Most of features are editable.

Reimplemented in ExchangePlugin_ImportFeature.

◆ customAction()

bool ModelAPI_Feature::customAction ( const std::string &  theActionId)
virtualinherited

Performs some custom feature specific functionality (normally called by some GUI button)

Parameters
theActionIdan action key
Returns
a boolean value about it is performed

Reimplemented in SketchPlugin_Sketch, SketchPlugin_Offset, SketchPlugin_CurveFitting, SketchPlugin_BSplineBase, CollectionPlugin_Group, and BuildPlugin_Wire.

◆ name()

std::wstring ModelAPI_Feature::name ( )
inlineinherited

Returns the name stored in the attribute.

◆ boolean()

std::shared_ptr<ModelAPI_AttributeBoolean> ModelAPI_Feature::boolean ( const std::string &  theID)
inlineinherited

Returns the Boolean attribute by the identifier.

◆ real()

std::shared_ptr<ModelAPI_AttributeDouble> ModelAPI_Feature::real ( const std::string &  theID)
inlineinherited

Returns the real attribute by the identifier.

◆ integer()

std::shared_ptr<ModelAPI_AttributeInteger> ModelAPI_Feature::integer ( const std::string &  theID)
inlineinherited

Returns the integer attribute by the identifier.

◆ intArray()

std::shared_ptr<ModelAPI_AttributeIntArray> ModelAPI_Feature::intArray ( const std::string &  theID)
inlineinherited

Returns the integer array attribute by the identifier.

◆ refattr()

std::shared_ptr<ModelAPI_AttributeRefAttr> ModelAPI_Feature::refattr ( const std::string &  theID)
inlineinherited

Returns the reference attribute by the identifier.

◆ refattrlist()

std::shared_ptr<ModelAPI_AttributeRefAttrList> ModelAPI_Feature::refattrlist ( const std::string &  theID)
inlineinherited

Returns the refattrlist attribute by the identifier.

◆ reference()

std::shared_ptr<ModelAPI_AttributeReference> ModelAPI_Feature::reference ( const std::string &  theID)
inlineinherited

Returns the reference attribute by the identifier.

◆ reflist()

std::shared_ptr<ModelAPI_AttributeRefList> ModelAPI_Feature::reflist ( const std::string &  theID)
inlineinherited

Returns the list of references attribute by the identifier.

◆ selection()

std::shared_ptr<ModelAPI_AttributeSelection> ModelAPI_Feature::selection ( const std::string &  theID)
inlineinherited

Returns the shape selection attribute by the identifier.

◆ selectionList()

std::shared_ptr<ModelAPI_AttributeSelectionList> ModelAPI_Feature::selectionList ( const std::string &  theID)
inlineinherited

Returns the list of shape selections attribute by the identifier.

◆ string()

std::shared_ptr<ModelAPI_AttributeString> ModelAPI_Feature::string ( const std::string &  theID)
inlineinherited

Returns the string attribute by the identifier.

◆ stringArray()

std::shared_ptr<ModelAPI_AttributeStringArray> ModelAPI_Feature::stringArray ( const std::string &  theID)
inlineinherited

Returns the string array attribute by the identifier.

◆ tables()

std::shared_ptr<ModelAPI_AttributeTables> ModelAPI_Feature::tables ( const std::string &  theID)
inlineinherited

Returns the tables attribute by the identifier.

◆ attribute()

std::shared_ptr<ModelAPI_Attribute> ModelAPI_Feature::attribute ( const std::string &  theID)
inlineinherited

Returns the attribute by the identifier.

◆ init()

void ModelAPI_Feature::init ( )
protectedvirtualinherited

This method is called just after creation of the object: it must initialize all fields, normally initialized in the constructor.

Implements ModelAPI_Object.

◆ setInHistory()

void ModelAPI_Object::setInHistory ( const std::shared_ptr< ModelAPI_Object theObject,
const bool  theFlag 
)
virtualinherited

Makes object presented or not in the history of the created objects.

Parameters
theObjectis shared pointer to "this"
theFlagis boolean value: to add or remove from the history

◆ data()

std::shared_ptr< ModelAPI_Data > ModelAPI_Object::data ( ) const
virtualinherited

Returns the data manager of this object: attributes.

◆ isSame()

bool ModelAPI_Object::isSame ( const std::shared_ptr< ModelAPI_Object > &  theObject)
virtualinherited

Returns true if object refers to the same data model instance.

◆ colorConfigInfo()

virtual void ModelAPI_Object::colorConfigInfo ( std::string &  ,
std::string &  ,
std::string &   
)
inlinevirtualinherited

◆ attributeChanged()

void ModelAPI_Object::attributeChanged ( const std::string &  theID)
virtualinherited

◆ isDisplayed()

bool ModelAPI_Object::isDisplayed ( )
virtualinherited

Returns true if object must be displayed in the viewer: flag is stored in the data model, so on undo/redo, open/save or recreation of object by history-playing it keeps the original state in the current transaction.

Reimplemented in ModelAPI_ResultField::ModelAPI_FieldStep.

◆ setDisplayed()

void ModelAPI_Object::setDisplayed ( const bool  theDisplay)
virtualinherited

Sets the displayed/hidden state of the object.

If it is changed, sends the "redisplay" signal.

Reimplemented in ModelAPI_ResultField, ModelAPI_ResultField::ModelAPI_FieldStep, and ModelAPI_ResultBody.

◆ setData()

void ModelAPI_Object::setData ( std::shared_ptr< ModelAPI_Data theData)
protectedvirtualinherited

Sets the data manager of an object (document does)

◆ setDoc()

void ModelAPI_Object::setDoc ( std::shared_ptr< ModelAPI_Document theDoc)
protectedvirtualinherited

Sets the data manager of an object (document does)

◆ emptyFunction()

virtual void ModelAPI_Entity::emptyFunction ( ) const
inlinevirtualinherited

Empty function which is added for virtualiation of the interface.

Field Documentation

◆ myBase

AttributePtr FiltersPlugin_Selection::myBase
protected

the attribute related to this filter