//! \param theAllowFolder take into account grouping feature by folders
MODEL_EXPORT virtual int size(const std::string& theGroupID, const bool theAllowFolder = false);
+ //! Returns the parent object of this child. This may be result or feature, parent of a
+ //! top result. Fast method, that uses internal data structure specifics.
+ MODEL_EXPORT virtual std::shared_ptr<ModelAPI_Object> parent(
+ const std::shared_ptr<ModelAPI_Object> theChild);
+
//! Returns the feature that is currently edited in this document, normally
//! this is the latest created feature
//! \param theVisible use visible features only: flag is true for Object Browser functionality
/// Appends the values to theStates list.
virtual void restoreNodesState(std::list<bool>& theStates) const;
- /// Label that constains structures for selection of constructions of another document
+ /// Label that contains structures for selection of constructions of another document
TDF_Label extConstructionsLabel() const;
/// searches in this document feature that contains this label
FeaturePtr featureByLab(const TDF_Label& theLab);
+ /// searches in this document result that contains this label
+ ResultPtr resultByLab(const TDF_Label& theLab);
/// returns true if theThis is later in the features trre and dependencies than theOther
bool isLaterByDep(FeaturePtr theThis, FeaturePtr theOther);
+ /// appends the latest transaction to the previous one (used for AutoUpdate enabling transaction)
+ void appendTransactionToPrevious();
+
+ /// Sets the automatic recomutation flag: true means enabled
+ void setAutoRecomutationState(const bool theState);
+ /// Returns the current automatic recomutation flag: true means enabled
+ bool autoRecomutationState() const;
+
friend class Model_Application;
friend class Model_Session;
friend class Model_Update;
friend class Model_AttributeRefAttrList;
friend class Model_AttributeSelection;
friend class Model_ResultPart;
- friend class Model_ResultCompSolid;
+ friend class Model_ResultBody;
friend class Model_ResultConstruction;
friend class Model_SelectionNaming;
friend class DFBrowser;
//! The selection feature, if needed
FeaturePtr mySelectionFeature;
+
+ bool myIsSetCurrentFeature; ///< flag that my current feature is changed right now (recursion)
};
#endif