Base class of all Classes handled in the Document. More...
#include <DocumentObject.h>
Public Types | |
enum | GSReason { GS_DEFAULT, GS_SELECT } |
reason of calling getSubObjects() More... | |
enum | OutListOption { OutListNoExpression = 1, OutListNoHidden = 2, OutListNoXLinked = 4 } |
DAG handling This part of the interface deals with viewing the document as a DAG (directed acyclic graph). More... | |
Public Types inherited from App::ExtensionContainer | |
typedef std::map< Base::Type, App::Extension * >::iterator | ExtensionIterator |
Public Member Functions | |
virtual App::Property * | addDynamicProperty (const char *type, const char *name=0, const char *group=0, const char *doc=0, short attr=0, bool ro=false, bool hidden=false) override |
virtual bool | adjustRelativeLinks (const std::set< App::DocumentObject * > &inList, std::set< App::DocumentObject * > *visited=0) |
Called to adjust link properties to avoid cyclic links. More... | |
virtual bool | allowDuplicateLabel () const |
virtual bool | canLinkProperties () const |
virtual int | canLoadPartial () const |
allow partial loading of dependent objects More... | |
void | clearOutListCache () const |
clear internal out list cache More... | |
virtual const char * | detachFromDocument () override |
DocumentObject (void) | |
Constructor. More... | |
void | enforceRecompute () |
Enforce this document object to be recomputed. More... | |
App::Document * | getDocument (void) const |
gets the document in which this Object is handled More... | |
std::string | getExportName (bool forced=false) const |
returns the name that is safe to be exported to other document More... | |
virtual const PropertyExpressionEngine::ExpressionInfo | getExpression (const ObjectIdentifier &path) const |
virtual std::string | getFullName () const override |
Return the object full name of the form DocName::ObjName. More... | |
DocumentObjectGroup * | getGroup () const |
get group if object is part of a group, otherwise 0 is returned More... | |
long | getID () const |
Return the object ID that is unique within its owner document. More... | |
const std::vector< App::DocumentObject * > & | getInList (void) const |
std::set< App::DocumentObject * > | getInListEx (bool recursive) const |
Return a set of all objects linking to this object, including possible external parent objects. More... | |
void | getInListEx (std::set< App::DocumentObject * > &inSet, bool recursive, std::vector< App::DocumentObject * > *inList=0) const |
Get a set of all objects linking to this object, including possible external parent objects. More... | |
std::vector< App::DocumentObject * > | getInListRecursive (void) const |
get all objects link directly or indirectly to this object More... | |
virtual DocumentObject * | getLinkedObject (bool recurse=true, Base::Matrix4D *mat=0, bool transform=false, int depth=0) const |
Return the linked object with optional transformation. More... | |
const char * | getNameInDocument (void) const |
returns the name which is set in the document for this object (not the name property!) More... | |
const std::string & | getOldLabel () const |
const std::vector< App::DocumentObject * > & | getOutList () const |
returns a list of objects this object is pointing to by Links More... | |
std::vector< App::DocumentObject * > | getOutList (int option) const |
void | getOutList (int option, std::vector< App::DocumentObject * > &res) const |
std::vector< App::DocumentObject * > | getOutListOfProperty (App::Property *) const |
returns a list of objects linked by the property More... | |
std::vector< App::DocumentObject * > | getOutListRecursive (void) const |
returns a list of objects this object is pointing to by Links and all further descended More... | |
std::vector< std::pair< App::DocumentObject *, std::string > > | getParents (int depth=0) const |
Obtain top parents and subnames of this object using its InList. More... | |
std::vector< std::list< App::DocumentObject * > > | getPathsByOutList (App::DocumentObject *to) const |
get all possible paths from this to another object following the OutList More... | |
virtual PyObject * | getPyObject (void) override |
This method returns the Python wrapper for a C++ object. More... | |
unsigned long | getStatus () const |
return the status bits More... | |
const char * | getStatusString (void) const |
get the status Message More... | |
virtual DocumentObject * | getSubObject (const char *subname, PyObject **pyObj=0, Base::Matrix4D *mat=0, bool transform=true, int depth=0) const |
Get the sub element/object by name. More... | |
std::vector< DocumentObject * > | getSubObjectList (const char *subname) const |
Return a list of objects referenced by a given subname including this object. More... | |
virtual std::vector< std::string > | getSubObjects (int reason=0) const |
Return name reference of all sub-objects. More... | |
virtual const char * | getViewProviderName (void) const |
returns the type name of the ViewProvider More... | |
virtual const char * | getViewProviderNameOverride () const |
This function is introduced to allow Python feature override its view provider. More... | |
const char * | getViewProviderNameStored () const |
virtual bool | hasChildElement () const |
return true to activate tree view group object handling and element visibility More... | |
virtual bool | isAttachedToDocument () const override |
virtual int | isElementVisible (const char *element) const |
Get sub-element visibility. More... | |
bool | isError (void) const |
set this feature to error More... | |
int | isExporting () const |
bool | isInInList (DocumentObject *objToTest) const |
test if this object is directly (non recursive) in the InList More... | |
bool | isInInListRecursive (DocumentObject *objToTest) const |
test if this object is in the InList and recursive further down More... | |
bool | isInOutList (DocumentObject *objToTest) const |
test if this object is directly (non recursive) in the OutList More... | |
bool | isInOutListRecursive (DocumentObject *objToTest) const |
test if the given object is in the OutList and recursive further down More... | |
bool | isRecomputing () const |
returns true if this objects is currently recomputing More... | |
bool | isRemoving () const |
returns true if this objects is currently removed from the document More... | |
bool | isRestoring () const |
returns true if this objects is currently restoring from file More... | |
bool | isTouched (void) const |
test if this document object is touched More... | |
bool | isValid (void) const |
virtual short | mustExecute (void) const |
mustExecute We call this method to check if the object was modified to be invoked. More... | |
bool | mustRecompute (void) const |
Test if this document object must be recomputed. More... | |
virtual void | onBeforeChangeLabel (std::string &newLabel) |
virtual void | onLostLinkToObject (DocumentObject *) |
Called in case of losing a link Get called by the document when a object got deleted a link property of this object ist pointing to. More... | |
virtual void | onUpdateElementReference (const Property *) |
void | purgeError (void) |
remove the error from the object More... | |
void | purgeTouched (void) |
reset this document object touched More... | |
bool | recomputeFeature (bool recursive=false) |
Recompute only this feature. More... | |
virtual bool | redirectSubName (std::ostringstream &ss, DocumentObject *topParent, DocumentObject *child) const |
Allow object to redirect a subname path. More... | |
virtual bool | removeDynamicProperty (const char *prop) override |
virtual void | renameObjectIdentifiers (const std::map< App::ObjectIdentifier, App::ObjectIdentifier > &paths) |
App::DocumentObject * | resolve (const char *subname, App::DocumentObject **parent=0, std::string *childName=0, const char **subElement=0, PyObject **pyObj=0, Base::Matrix4D *mat=0, bool transform=true, int depth=0) const |
Resolve the last document object referenced in the subname. More... | |
App::DocumentObject * | resolveRelativeLink (std::string &subname, App::DocumentObject *&link, std::string &linkSub) const |
Resolve a link reference that is relative to this object reference. More... | |
virtual void | Save (Base::Writer &writer) const override |
This method is used to save properties to an XML document. More... | |
virtual int | setElementVisible (const char *element, bool visible) |
Child element handling. More... | |
virtual void | setExpression (const ObjectIdentifier &path, boost::shared_ptr< App::Expression > expr) |
void | setStatus (ObjectStatus pos, bool on) |
bool | testIfLinkDAGCompatible (App::PropertyLinkSub &linkTo) const |
bool | testIfLinkDAGCompatible (App::PropertyLinkSubList &linksTo) const |
bool | testIfLinkDAGCompatible (const std::vector< DocumentObject * > &linksTo) const |
bool | testIfLinkDAGCompatible (DocumentObject *linkTo) const |
testIfLinkIsDAG tests a link that is about to be created for circular references. More... | |
bool | testStatus (ObjectStatus pos) const |
void | touch (bool noRecompute=false) |
Set the property touched -> changed, cause recomputation in Update() More... | |
virtual | ~DocumentObject () |
Public Member Functions inherited from App::TransactionalObject | |
TransactionalObject (void) | |
Constructor. More... | |
virtual | ~TransactionalObject () |
Public Member Functions inherited from App::ExtensionContainer | |
ExtensionIterator | extensionBegin () |
ExtensionContainer () | |
ExtensionIterator | extensionEnd () |
App::Extension * | getExtension (Base::Type, bool derived=true, bool no_except=false) const |
App::Extension * | getExtension (const std::string &name) const |
template<typename ExtensionT > | |
ExtensionT * | getExtensionByType (bool no_except=false, bool derived=true) const |
std::vector< Extension * > | getExtensionsDerivedFrom (Base::Type type) const |
template<typename ExtensionT > | |
std::vector< ExtensionT * > | getExtensionsDerivedFromType () const |
bool | hasExtension (Base::Type, bool derived=true) const |
bool | hasExtension (const std::string &name) const |
bool | hasExtensions () const |
void | registerExtension (Base::Type extension, App::Extension *ext) |
virtual | ~ExtensionContainer () |
virtual Property * | getPropertyByName (const char *name) const override |
find a property by its name More... | |
virtual const char * | getPropertyName (const Property *prop) const override |
get the name of a property More... | |
virtual void | getPropertyMap (std::map< std::string, Property * > &Map) const override |
get all properties of the class (including properties of the parent) More... | |
virtual void | getPropertyList (std::vector< Property * > &List) const override |
get all properties of the class (including properties of the parent) More... | |
virtual short | getPropertyType (const Property *prop) const override |
get the Type of a Property More... | |
virtual short | getPropertyType (const char *name) const override |
get the Type of a named Property More... | |
virtual const char * | getPropertyGroup (const Property *prop) const override |
get the Group of a Property More... | |
virtual const char * | getPropertyGroup (const char *name) const override |
get the Group of a named Property More... | |
virtual const char * | getPropertyDocumentation (const Property *prop) const override |
get the Group of a Property More... | |
virtual const char * | getPropertyDocumentation (const char *name) const override |
get the Group of a named Property More... | |
virtual void | Restore (Base::XMLReader &reader) override |
This method is used to restore properties from an XML document. More... | |
void | saveExtensions (Base::Writer &writer) const |
void | restoreExtensions (Base::XMLReader &reader) |
Public Member Functions inherited from App::PropertyContainer | |
virtual App::Property * | getDynamicPropertyByName (const char *name) const |
DynamicProperty::PropData | getDynamicPropertyData (const Property *prop) const |
virtual std::vector< std::string > | getDynamicPropertyNames () const |
virtual unsigned int | getMemSize (void) const |
This method is used to get the size of objects It is not meant to have the exact size, it is more or less an estimation which runs fast! Is it two bytes or a GB? More... | |
const char * | getPropertyPrefix () const |
bool | isHidden (const char *name) const |
check if the named property is hidden More... | |
bool | isHidden (const Property *prop) const |
check if the property is hidden More... | |
bool | isReadOnly (const char *name) const |
check if the named property is read-only More... | |
bool | isReadOnly (const Property *prop) const |
check if the property is read-only More... | |
PropertyContainer () | |
A constructor. More... | |
void | setPropertyPrefix (const char *prefix) |
void | setPropertyStatus (unsigned char bit, bool value) |
set the Status bit of all properties at once More... | |
virtual | ~PropertyContainer () |
A destructor. More... | |
Public Member Functions inherited from Base::Persistence | |
void | dumpToStream (std::ostream &stream, int compression) |
virtual Base::Type | getTypeId (void) const |
virtual void | RestoreDocFile (Reader &) |
This method is used to restore large amounts of data from a file In this method you simply stream in your SaveDocFile() saved data. More... | |
void | restoreFromStream (std::istream &stream) |
virtual void | SaveDocFile (Writer &) const |
This method is used to save large amounts of data to a binary file. More... | |
Public Member Functions inherited from Base::BaseClass | |
BaseClass () | |
Construction. More... | |
bool | isDerivedFrom (const Type type) const |
virtual void | setPyObject (PyObject *) |
virtual | ~BaseClass () |
Destruction. More... | |
Static Public Member Functions | |
static const char * | hasHiddenMarker (const char *subname) |
Check if the subname reference ends with hidden marker. More... | |
static const std::string & | hiddenMarker () |
Special marker to mark the object as hidden. More... | |
Static Public Member Functions inherited from Base::Persistence | |
static void * | create (void) |
static std::string | encodeAttribute (const std::string &) |
Encodes an attribute upon saving. More... | |
static Base::Type | getClassTypeId (void) |
static void | init (void) |
Static Public Member Functions inherited from Base::BaseClass | |
static void * | create (void) |
static Type | getClassTypeId (void) |
static void | init (void) |
Public Attributes | |
PropertyExpressionEngine | ExpressionEngine |
PropertyString | Label |
PropertyString | Label2 |
boost::signals2::signal< void(const App::DocumentObject &, const App::Property &)> | signalBeforeChange |
signal before changing a property of this object More... | |
boost::signals2::signal< void(const App::DocumentObject &, const App::Property &)> | signalChanged |
signal on changed property of this object More... | |
PropertyBool | Visibility |
Allow control visibility status in App name space. More... | |
Static Public Attributes | |
static DocumentObjectExecReturn * | StdReturn |
Protected Member Functions | |
virtual App::DocumentObjectExecReturn * | execute (void) |
get called by the document to recompute this feature Normally this method get called in the processing of Document::recompute(). More... | |
virtual void | onBeforeChange (const Property *prop) override |
get called before the value is changed More... | |
virtual void | onChanged (const Property *prop) override |
get called by the container when a property was changed More... | |
virtual void | onDocumentRestored () |
get called after a document has been fully restored More... | |
virtual void | onPropertyStatusChanged (const Property &prop, unsigned long oldStatus) override |
get called when a property status has changed More... | |
virtual void | onSettingDocument () |
get called after setting the document More... | |
virtual App::DocumentObjectExecReturn * | recompute (void) |
recompute only this object More... | |
void | resetError (void) |
void | setDocument (App::Document *doc) |
void | setError (void) |
virtual void | setupObject () |
get called after a brand new object was created More... | |
virtual void | unsetupObject () |
get called when object is going to be removed from the document More... | |
Protected Member Functions inherited from App::TransactionalObject | |
void | onBeforeChangeProperty (Document *doc, const Property *prop) |
Protected Member Functions inherited from App::PropertyContainer | |
virtual const PropertyData & | getPropertyData (void) const |
virtual void | handleChangedPropertyName (Base::XMLReader &reader, const char *TypeName, const char *PropName) |
PropertyContainer::handleChangedPropertyName is called during restore to possibly fix reading of older versions of this property container. More... | |
virtual void | handleChangedPropertyType (Base::XMLReader &reader, const char *TypeName, Property *prop) |
PropertyContainer::handleChangedPropertyType is called during restore to possibly fix reading of older versions of the property container. More... | |
Protected Attributes | |
std::string | oldLabel |
Old label; used for renaming expressions. More... | |
const std::string * | pcNameInDocument |
Py::Object | PythonObject |
python object of this class and all descendent More... | |
std::bitset< 32 > | StatusBits |
Status bits of the document object The first 8 bits are used for the base system the rest can be used in descendent classes to mark special statuses on the objects. More... | |
Protected Attributes inherited from App::PropertyContainer | |
DynamicProperty | dynamicProps |
Friends | |
class | Document |
class | ObjectExecution |
class | Transaction |
Additional Inherited Members | |
Static Protected Member Functions inherited from App::PropertyContainer | |
static const PropertyData * | getPropertyDataPtr (void) |
Static Protected Member Functions inherited from Base::BaseClass | |
static void | initSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Type::instantiationMethod method=nullptr) |
Detailed Description
Member Enumeration Documentation
◆ GSReason
reason of calling getSubObjects()
Enumerator | |
---|---|
GS_DEFAULT | default, mostly for exporting shape objects |
GS_SELECT | for element selection |
◆ OutListOption
DAG handling This part of the interface deals with viewing the document as a DAG (directed acyclic graph).
OutList options
Enumerator | |
---|---|
OutListNoExpression | Do not include link from expression engine. |
OutListNoHidden | Do not hide any link (i.e. include links with LinkScopeHidden) |
OutListNoXLinked | Do not include link from PropertyXLink. |
Constructor & Destructor Documentation
◆ DocumentObject()
App::DocumentObject::DocumentObject | ( | void | ) |
Constructor.
◆ ~DocumentObject()
|
virtual |
Member Function Documentation
◆ addDynamicProperty()
|
overridevirtual |
Reimplemented from App::PropertyContainer.
Referenced by App::DocumentObjectPy::addProperty(), Spreadsheet::Sheet::setFloatProperty(), Spreadsheet::Sheet::setIntegerProperty(), Spreadsheet::Sheet::setObjectProperty(), Spreadsheet::Sheet::setQuantityProperty(), Spreadsheet::Sheet::setStringProperty(), PartDesign::SubShapeBinder::update(), and Spreadsheet::Sheet::updateAlias().
◆ adjustRelativeLinks()
|
virtual |
Called to adjust link properties to avoid cyclic links.
- Parameters
-
inList the recursive in-list of the future parent object, including the parent itself. visited optional set holding the visited objects. If null then only this object is adjusted, or else all object inside the out-list of this object will be checked.
- Returns
- Return whether the object has been modified
This function tries to adjust any relative link properties (i.e. link properties that can hold subnames) to avoid cyclic when added to the future parent.
◆ allowDuplicateLabel()
|
virtual |
◆ canLinkProperties()
|
virtual |
Reimplemented in App::Link, and PartDesign::SubShapeBinder.
Referenced by Gui::ViewProviderLink::getPropertyByName().
◆ canLoadPartial()
|
virtual |
allow partial loading of dependent objects
- Returns
- Returns 0 means do not support partial loading. 1 means allow dependent objects to be partially loaded, i.e. only create, but not restored. 2 means this object itself can be partially loaded.
Reimplemented in PartDesign::SubShapeBinder.
◆ clearOutListCache()
void App::DocumentObject::clearOutListCache | ( | ) | const |
clear internal out list cache
◆ detachFromDocument()
|
overridevirtual |
Reimplemented from App::TransactionalObject.
◆ enforceRecompute()
void App::DocumentObject::enforceRecompute | ( | ) |
Enforce this document object to be recomputed.
Referenced by App::DocumentObjectPy::enforceRecompute(), Gui::TreeWidget::onMarkRecompute(), and TechDraw::DrawViewDimExtent::unsetupObject().
◆ execute()
|
protectedvirtual |
get called by the document to recompute this feature Normally this method get called in the processing of Document::recompute().
In execute() the output properties get recomputed with the data from linked objects and objects own properties.
Reimplemented in PartDesign::SubShapeBinder, TechDraw::DrawViewDimension, TechDraw::DrawViewPart, Part::Extrusion, PartDesign::ShapeBinder, TechDraw::DrawProjGroup, TechDraw::DrawViewArch, TechDraw::DrawPage, TechDraw::DrawViewDraft, TechDraw::DrawLeaderLine, Part::Offset2D, PartDesign::Boolean, Part::Revolution, Part::Offset, TechDraw::DrawProjGroupItem, PartDesign::Chamfer, TechDraw::DrawView, Part::Part2DObject, Part::Face, Part::Primitive, TechDraw::DrawViewSection, TechDraw::DrawViewSymbol, TechDraw::DrawHatch, TechDraw::DrawViewBalloon, TechDraw::DrawViewDetail, TechDraw::DrawViewMulti, TechDraw::DrawGeomHatch, PartDesign::Body, TechDraw::LandmarkDimension, Part::Ellipse, Part::Wedge, PartDesign::Wedge, Part::Spiral, PartDesign::Prism, Part::Helix, Part::Torus, PartDesign::Torus, Mesh::RemoveComponents, Part::Cone, Mesh::FillHoles, PartDesign::Ellipsoid, Part::RegularPolygon, Fem::FemPostCutFilter, Mesh::FixIndices, Inspection::Feature, Part::Prism, Fem::FemPostWarpVectorFilter, Mesh::FixDeformations, PartDesign::Cone, Part::Cylinder, Part::Reverse, Fem::FemPostScalarClipFilter, Mesh::FixDegenerations, Part::Ellipsoid, Part::Refine, PartDesign::Sphere, Spreadsheet::Sheet, Mesh::Cube, Mesh::FixDuplicatedPoints, Fem::FemPostDataAtPointFilter, App::Origin, Part::Sphere, Part::Thickness, Mesh::FixDuplicatedFaces, Mesh::Torus, App::FeatureTestException, App::FeatureTest, Fem::FemPostDataAlongLineFilter, PartDesign::Cylinder, Part::Plane, Mesh::FixNonManifolds, Mesh::Cone, Part::Sweep, PartDesign::Transformed, Mesh::FlipNormals, Part::Line, Fem::ConstraintDisplacement, Mesh::Cylinder, Fem::FemPostClipFilter, Fem::ConstraintFluidBoundary, Path::FeatureAreaView, Drawing::FeatureProjection, Drawing::FeatureView, PartDesign::Box, TechDraw::DrawViewAnnotation, Drawing::FeatureViewPart, PartDesign::Pad, TechDraw::DrawViewClip, Fem::ConstraintContact, Robot::TrajectoryDressUpObject, Fem::ConstraintPulley, Part::Loft, Path::FeatureShape, Fem::ConstraintBearing, Fem::ConstraintTemperature, Fem::FemResultObject, Mesh::HarmonizeNormals, Robot::Edge2TracObject, TechDraw::DrawViewCollection, Mesh::SegmentByMesh, Drawing::FeatureViewAnnotation, Fem::ConstraintInitialTemperature, PartDesign::Groove, PartDesign::Revolution, TechDraw::DrawViewSpreadsheet, Drawing::FeatureViewSymbol, Fem::ConstraintHeatflux, Fem::ConstraintTransform, Fem::FemPostFilter, Mesh::SetOperations, PartDesign::Pocket, Drawing::FeatureClip, Drawing::FeatureViewSpreadsheet, Fem::ConstraintGear, Fem::FemMeshShapeNetgenObject, Mesh::FixDefects, Raytracing::RaySegment, Sandbox::SandboxObject, Drawing::FeaturePage, Fem::ConstraintForce, Mesh::Export, Mesh::Transform, Path::FeatureCompound, Mesh::Curvature, Mesh::TransformDemolding, PartDesign::Draft, PartDesign::Pipe, Path::FeatureArea, Robot::TrajectoryCompound, Surface::GeomFillSurface, TechDraw::DrawTileWeld, TechDraw::DrawViewImage, Fem::ConstraintFixed, Fem::FemPostFunction, Fem::FemPostPipeline, Mesh::Import, Mesh::Ellipsoid, Path::Feature, Points::Structured, Sketcher::SketchObject, Fem::FemMeshObject, Mesh::Sphere, Part::ImportStep, PartDesign::FeatureBase, PartDesign::Thickness, Fem::FemSolverObject, Part::Vertex, Robot::RobotObject, Robot::TrajectoryObject, Sketcher::SketchObjectSF, Surface::Extend, Surface::Sewing, TechDraw::DrawViewDimExtent, App::MeasureDistance, Fem::ConstraintPlaneRotation, Fem::FemSetNodesObject, Fem::FemSetObject, PartDesign::Loft, TechDraw::DrawRichAnno, TechDraw::DrawSVGTemplate, Part::FeatureGeometrySet, Part::Mirroring, Part::Box, Part::Polygon, Part::RuledSurface, TechDraw::DrawTile, App::InventorObject, App::VRMLObject, Fem::ConstraintPressure, Fem::FemSetElementsObject, Fem::FemSetFacesObject, Fem::FemSetGeometryObject, Part::CustomFeature, Part::Compound, Part::Circle, Part::CurveNet, Part::ImportBrep, Part::ImportIges, PartDesign::Fillet, Fem::FemMeshShapeObject, TechDraw::DrawTemplate, Surface::Cut, Part::Chamfer, Part::Fillet, Part::MultiFuse, Part::MultiCommon, Raytracing::LuxFeature, Raytracing::RayFeature, Raytracing::LuxProject, Raytracing::RayProject, Part::FeatureReference, Mesh::Feature, PartDesign::Hole, TechDraw::DrawWeldSymbol, Surface::Filling, Points::Feature, TechDraw::DrawParametricTemplate, Part::Boolean, Part::Feature, PartDesign::FeaturePrimitive, and Fem::Constraint.
Referenced by draftobjects.facebinder.Facebinder::addSubobjects(), PathScripts.PathDressupDogbone.ObjectDressup::boneStateList(), ArchSite.Compass::buildCoordinates(), TechDraw::DrawViewBalloon::execute(), TechDraw::DrawTemplate::execute(), TechDraw::DrawView::execute(), Fem::FemPostPipeline::execute(), App::Origin::execute(), PathScripts.PathDressupHoldingTags.ObjectTagDressup::generateTags(), ArchPanel.PanelCut::getWires(), ArchSchedule.CommandArchSchedule::IsActive(), Mod.PartDesign.Scripts.Spring.MySpring::onChanged(), Mod.PartDesign.Scripts.Epitrochoid.Epitrochoid::onChanged(), Mod.PartDesign.Scripts.Parallelepiped.Parallelepiped::onChanged(), Mod.PartDesign.Scripts.DistanceBolt.DistanceBolt::onChanged(), Mod.PartDesign.Scripts.Parallelepiped.BoxCylinder::onChanged(), PathScripts.PathStock.StockFromBase::onChanged(), PathScripts.PathStock.StockCreateBox::onChanged(), PathScripts.PathStock.StockCreateCylinder::onChanged(), FeaturePython.DistanceBolt::onChanged(), draftobjects.draftlink.DraftLink::onDocumentRestored(), and draftobjects.patharray.PathArray::onDocumentRestored().
◆ getDocument()
App::Document* App::DocumentObject::getDocument | ( | void | ) | const |
gets the document in which this Object is handled
Referenced by Gui::TaskCSysDragger::accept(), PartGui::FaceColors::accept(), TechDrawGui::TaskHatch::accept(), TechDrawGui::TaskLineDecor::accept(), TechDrawGui::TaskGeomHatch::accept(), TechDrawGui::TaskProjGroup::accept(), PathGui::TaskDlgPathCompound::accept(), TechDrawGui::TaskRichAnno::accept(), TechDrawGui::TaskCosVertex::accept(), TechDrawGui::TaskDetail::accept(), TechDrawGui::TaskLeaderLine::accept(), TechDrawGui::TaskCenterLine::accept(), Gui::ViewProviderDocumentObject::addDynamicProperty(), Sketcher::SketchObjectPy::addExternal(), Sketcher::SketchObject::addExternal(), PartDesignGui::ComboLinks::addLink(), App::GroupExtensionPy::addObject(), App::GroupExtension::addObject(), App::Document::addObject(), TechDraw::DrawProjGroup::addProjection(), App::PropertyLinkSubList::adjustLink(), Gui::ExpressionBinding::apply(), Gui::ViewProviderVRMLObject::attach(), RobotGui::ViewProviderTrajectory::attach(), RobotGui::ViewProviderRobotObject::attach(), Gui::ViewProviderOriginFeature::attach(), PartDesignGui::ViewProviderBody::attach(), Gui::ViewProviderAnnotation::attach(), MeshGui::ViewProviderMeshCurvature::attach(), MeshGui::ViewProviderMesh::attach(), PointsGui::ViewProviderScattered::attach(), PointsGui::ViewProviderStructured::attach(), Sketcher::SketchAnalysis::autoconstraint(), Gui::ViewProviderLink::canDragAndDropObject(), Sketcher::SketchObjectPy::carbonCopy(), Sketcher::SketchObject::carbonCopy(), App::LinkBaseExtension::checkGeoElementMap(), App::ObjectIdentifier::String::checkImport(), FemGui::TaskDlgPost::clicked(), Gui::DAG::Model::contextMenuEvent(), Gui::TreeWidget::contextMenuEvent(), App::PropertyXLink::copyTo(), TechDrawGui::TaskActiveView::createActiveView(), TechDrawGui::TaskRichAnno::createAnnoFeature(), TechDrawGui::TaskLeaderLine::createLeaderFeature(), TechDrawGui::TaskSectionView::createSectionView(), TechDrawGui::TaskWeldingSymbol::createWeldingSymbol(), Gui::ViewProviderIndex::data(), Gui::TreeWidget::dropEvent(), PartDesignGui::ViewProviderBody::dropObject(), TechDraw::DrawViewPart::execute(), TechDraw::DrawViewDimension::execute(), Gui::ViewProviderOriginGroupExtension::extensionAttach(), Gui::ViewProviderGroupExtension::extensionDropObject(), App::LinkBaseExtension::extensionExecute(), Gui::ViewProviderDocumentObject::findFrontRootOfType(), PartDesignGui::fixSketchSupport(), Gui::ViewProviderDocumentObject::getActiveView(), PartDesignGui::getBody(), TechDraw::DrawViewDimension::getDimValue(), Gui::ViewProviderDocumentObject::getDocument(), Gui::ViewProviderDocumentObject::getEditingView(), TechDrawGui::QGIView::getFrameState(), InspectionGui::ViewProviderInspection::getIcon(), Gui::ViewProviderDocumentObject::getInventorView(), PartDesignGui::TaskDraftParameters::getLine(), App::GroupExtension::getObject(), Gui::View3DInventorPy::getObjectInfo(), Gui::View3DInventorPy::getObjectsInfo(), App::OriginFeature::getOrigin(), PartDesignGui::getPartFor(), PartDesignGui::TaskDraftParameters::getPlane(), App::PropertyLinkSubList::getPyReprString(), App::PropertyXLinkSubList::getPyReprString(), PartDesignGui::TaskRevolutionParameters::getReferenceAxis(), PartDesignGui::getReferencedSelection(), PartDesignGui::ViewProviderDatum::getRelevantBoundBox(), TechDraw::DrawViewPart::getSourceShape(), TechDraw::DrawViewPart::getSourceShapeFused(), Gui::ViewProviderDocumentObject::getViewOfNode(), App::GroupExtensionPy::hasObject(), App::Expression::importSubNames(), App::ObjectIdentifier::importSubNames(), Spreadsheet::PropertySheet::insertColumns(), Spreadsheet::PropertySheet::insertRows(), PartDesignGui::isAnyNonPartDesignLinksTo(), Gui::SelectionSingleton::isSelected(), TechDrawGui::TaskLinkDim::loadAvailDims(), MeshGui::RemeshGmsh::loadOutput(), TechDraw::DrawDimHelper::makeDistDim(), TechDraw::DrawDimHelper::makeExtentDim(), Gui::DAG::Model::mouseDoubleClickEvent(), Gui::DAG::Model::mousePressEvent(), TechDrawGui::QGVPage::mouseReleaseEvent(), PartDesignGui::TaskSketchBasedParameters::objectNameByLabel(), SketcherGui::TaskSketcherConstrains::on_listWidgetConstraints_itemSelectionChanged(), SketcherGui::TaskSketcherElements::on_listWidgetElements_itemEntered(), SketcherGui::TaskSketcherElements::on_listWidgetElements_itemSelectionChanged(), MeshGui::DlgEvaluateMeshImp::on_repairAllTogether_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairDegeneratedButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairDuplicatedFacesButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairDuplicatedPointsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairFoldsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairIndicesButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairNonmanifoldsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairOrientationButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairSelfIntersectionButton_clicked(), PartDesignGui::TaskSketchBasedParameters::onAddSelection(), PartDesignGui::TaskBoxPrimitives::onBoxHeightChanged(), PartDesignGui::TaskBoxPrimitives::onBoxLengthChanged(), PartDesignGui::TaskBoxPrimitives::onBoxWidthChanged(), FemGui::TaskFemConstraint::onButtonWizCancel(), Gui::ViewProviderOrigin::onChanged(), PartDesign::DressUp::onChanged(), TechDraw::DrawTileWeld::onChanged(), PartDesign::Body::onChanged(), PartDesignGui::TaskBoxPrimitives::onConeAngleChanged(), PartDesignGui::TaskBoxPrimitives::onConeHeightChanged(), PartDesignGui::TaskBoxPrimitives::onConeRadius1Changed(), PartDesignGui::TaskBoxPrimitives::onConeRadius2Changed(), PartDesignGui::TaskBoxPrimitives::onCylinderAngleChanged(), PartDesignGui::TaskBoxPrimitives::onCylinderHeightChanged(), PartDesignGui::TaskBoxPrimitives::onCylinderRadiusChanged(), PartDesignGui::TaskBoxPrimitives::onEllipsoidAngle1Changed(), PartDesignGui::TaskBoxPrimitives::onEllipsoidAngle2Changed(), PartDesignGui::TaskBoxPrimitives::onEllipsoidAngle3Changed(), PartDesignGui::TaskBoxPrimitives::onEllipsoidRadius1Changed(), PartDesignGui::TaskBoxPrimitives::onEllipsoidRadius2Changed(), PartDesignGui::TaskBoxPrimitives::onEllipsoidRadius3Changed(), App::OriginGroupExtension::onExtendedSetupObject(), App::OriginGroupExtension::onExtendedUnsetupObject(), TechDrawGui::TaskHatch::onFileChanged(), Gui::TreeWidget::onPreSelectTimer(), PartDesignGui::TaskBoxPrimitives::onPrismCircumradiusChanged(), PartDesignGui::TaskBoxPrimitives::onPrismHeightChanged(), PartDesignGui::TaskBoxPrimitives::onPrismPolygonChanged(), Gui::ViewProviderDocumentObject::onPropertyStatusChanged(), PartGui::FaceColors::onSelectionChanged(), PartDesignGui::TaskDraftParameters::onSelectionChanged(), PartDesignGui::TaskBooleanParameters::onSelectionChanged(), FemGui::TaskFemConstraintBearing::onSelectionChanged(), SketcherGui::TaskSketcherConstrains::onSelectionChanged(), FemGui::TaskFemConstraintGear::onSelectionChanged(), SketcherGui::TaskSketcherElements::onSelectionChanged(), DrawSketchHandlerExternal::onSelectionChanged(), DrawSketchHandlerCarbonCopy::onSelectionChanged(), TechDraw::DrawWeldSymbol::onSettingDocument(), PartDesignGui::TaskBoxPrimitives::onSphereAngle1Changed(), PartDesignGui::TaskBoxPrimitives::onSphereAngle2Changed(), PartDesignGui::TaskBoxPrimitives::onSphereAngle3Changed(), PartDesignGui::TaskBoxPrimitives::onSphereRadiusChanged(), PartDesignGui::TaskBoxPrimitives::onTorusAngle1Changed(), PartDesignGui::TaskBoxPrimitives::onTorusAngle2Changed(), PartDesignGui::TaskBoxPrimitives::onTorusAngle3Changed(), PartDesignGui::TaskBoxPrimitives::onTorusRadius1Changed(), PartDesignGui::TaskBoxPrimitives::onTorusRadius2Changed(), PartDesignGui::TaskBoxPrimitives::onWedgeX2maxChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeX2minChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeXmaxChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeXminChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeYmaxChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeYminChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeZ2maxChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeZ2minChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeZmaxChanged(), PartDesignGui::TaskBoxPrimitives::onWedgeZminChanged(), PartGui::FaceColors::open(), PartDesignGui::TaskTransformedParameters::originalSelected(), TechDrawGui::MDIViewPage::preSelectionChanged(), Gui::ElementColors::Private::Private(), TechDrawGui::TaskBalloon::recomputeFeature(), PartDesignGui::ViewProviderTransformed::recomputeFeature(), TechDrawGui::TaskLeaderLine::recomputeFeature(), PartDesignGui::TaskShapeBinder::referenceSelected(), PartDesignGui::TaskPipeParameters::referenceSelected(), PartDesignGui::TaskDressUpParameters::referenceSelected(), PartDesignGui::TaskPipeOrientation::referenceSelected(), PartDesignGui::TaskPipeScaling::referenceSelected(), PartGui::FaceColors::reject(), TechDrawGui::TaskLineDecor::reject(), TechDrawGui::TaskHatch::reject(), TechDrawGui::TaskGeomHatch::reject(), TechDrawGui::TaskProjGroup::reject(), TechDrawGui::TaskRichAnno::reject(), TechDrawGui::TaskCosVertex::reject(), TechDrawGui::TaskLeaderLine::reject(), TechDrawGui::TaskDetail::reject(), TechDrawGui::TaskCenterLine::reject(), DrawSketchHandlerCoincident::releaseButton(), DrawSketchHandlerFillet::releaseButton(), PartDesignGui::relinkToBody(), Spreadsheet::PropertySheet::removeColumns(), Gui::ViewProviderDocumentObject::removeDynamicProperty(), App::GroupExtensionPy::removeObject(), TechDraw::DrawProjGroup::removeProjection(), Spreadsheet::PropertySheet::removeRows(), TechDraw::DrawPage::removeView(), App::ObjectIdentifier::replaceObject(), App::ObjectIdentifier::resolve(), App::ObjectIdentifier::resolveAmbiguity(), PartDesign::ProfileBased::Restore(), App::PropertyLink::Restore(), App::PropertyLinkList::Restore(), App::PropertyLinkSubList::Restore(), App::VRMLObject::RestoreDocFile(), Gui::SelectionSingleton::sAddSelection(), App::VRMLObject::SaveDocFile(), TechDrawGui::QGVPage::saveSvg(), Gui::SelectionObserver::SelectionObserver(), FemGui::ActiveAnalysisObserver::setActiveObject(), Spreadsheet::PropertySheet::setAlias(), App::ObjectIdentifier::setDocumentObjectName(), RaytracingGui::ViewProviderPovray::setEdit(), RaytracingGui::ViewProviderLux::setEdit(), TechDrawGui::ViewProviderViewPart::setEdit(), SurfaceGui::FillingVertexPanel::setEditedObject(), SurfaceGui::FillingUnboundPanel::setEditedObject(), SurfaceGui::GeomFillSurface::setEditedObject(), SurfaceGui::FillingPanel::setEditedObject(), App::LinkBaseExtension::setLink(), FemGui::TaskFemConstraint::setSelection(), PartDesignGui::TaskDressUpParameters::setSelection(), TechDrawGui::ViewProviderPage::setTemplateMarkers(), TechDrawGui::MDIViewPage::setTreeToSceneSelect(), PartDesignGui::Workbench::setupContextMenu(), App::Origin::setupObject(), TechDraw::DrawTileWeld::setupSymbolIncluded(), PartDesignGui::TaskSketchBasedParameters::setUpToFace(), App::PropertyLink::setValue(), App::PropertyLinkSub::setValue(), App::PropertyLinkSubList::setValue(), App::PropertyXLink::setValue(), FemGui::FunctionWidget::setViewProvider(), PartDesignGui::ViewProviderBody::setVisualBodyMode(), DrawingGui::ViewProviderDrawingPage::showDrawingView(), Gui::SelectionSingleton::slotDeletedObject(), Gui::DocumentItem::slotExpandObject(), Gui::DocumentItem::slotHighlightObject(), Gui::SelectionSingleton::sRemoveSelection(), Gui::SelectionSingleton::sSetPreselection(), Gui::SelectionSingleton::sUpdateSelection(), TechDrawGui::TaskCosVertex::TaskCosVertex(), TechDrawGui::TaskDetail::TaskDetail(), SketcherGui::TaskDlgEditSketch::TaskDlgEditSketch(), FemGui::TaskFemConstraintFluidBoundary::TaskFemConstraintFluidBoundary(), TechDrawGui::TaskLeaderLine::TaskLeaderLine(), TechDrawGui::TaskProjGroup::TaskProjGroup(), TechDrawGui::TaskRichAnno::TaskRichAnno(), TechDrawGui::TaskSectionView::TaskSectionView(), PartDesignGui::ViewProviderBody::unifyVisualProperty(), PartDesignGui::ViewProvider::unsetEdit(), TechDraw::DrawViewCollection::unsetupObject(), TechDraw::DrawViewPart::unsetupObject(), PartDesign::SubShapeBinder::update(), App::LinkBaseExtension::update(), DrawingGui::ViewProviderDrawingPage::updateData(), Gui::ViewProviderInventorObject::updateData(), TechDrawGui::TaskLinkDim::updateDims(), TechDrawGui::ViewProviderGeomHatch::updateGraphic(), PartDesignGui::ViewProviderBody::updateOriginDatumSize(), and PartGui::DlgExtrusion::writeParametersToFeature().
◆ getExportName()
std::string App::DocumentObject::getExportName | ( | bool | forced = false | ) | const |
returns the name that is safe to be exported to other document
◆ getExpression()
|
virtual |
◆ getFullName()
|
overridevirtual |
Return the object full name of the form DocName::ObjName.
Reimplemented from App::PropertyContainer.
Referenced by Spreadsheet::PropertySheet::adjustLink(), Gui::ViewProviderLink::attach(), Spreadsheet::Sheet::execute(), App::Origin::getAxis(), Gui::ViewProviderDocumentObject::getFullName(), App::OriginGroupExtension::getOrigin(), App::Origin::getOriginFeature(), App::Origin::getPlane(), Part::Feature::getSubObject(), Gui::DocumentItem::getTopParent(), Spreadsheet::PropertySheet::invalidateDependants(), Gui::LinkInfo::LinkInfo(), Spreadsheet::Sheet::onDocumentRestored(), Gui::DocumentItem::populateItem(), Spreadsheet::Sheet::providesTo(), App::Document::readObjects(), Spreadsheet::PropertySheet::setAlias(), Gui::Document::setEdit(), Spreadsheet::Cell::setException(), Spreadsheet::Cell::setResolveException(), Gui::Document::slotChangedObject(), Gui::Document::slotNewObject(), Gui::Document::slotTouchedObject(), App::PropertyLinkBase::tryReplaceLink(), PartDesign::SubShapeBinder::update(), App::LinkBaseExtension::updateGroup(), and PartGui::ViewProviderPartExt::updateVisual().
◆ getGroup()
DocumentObjectGroup* App::DocumentObject::getGroup | ( | ) | const |
get group if object is part of a group, otherwise 0 is returned
Referenced by PartGui::DlgBooleanOperation::accept().
◆ getID()
long App::DocumentObject::getID | ( | ) | const |
Return the object ID that is unique within its owner document.
Referenced by Gui::DocumentItem::findRootIndex().
◆ getInList()
const std::vector<App::DocumentObject*>& App::DocumentObject::getInList | ( | void | ) | const |
Referenced by TechDraw::DrawView::findParentPage(), TechDraw::DrawViewPart::getBalloons(), TechDraw::DrawView::getClipGroup(), TechDraw::DrawViewPart::getDetailRefs(), TechDraw::DrawViewPart::getDimensions(), TechDraw::DrawViewPart::getGeomHatches(), TechDraw::DrawViewPart::getHatches(), App::DocumentObjectPy::getInList(), TechDraw::DrawView::getLeaders(), TechDraw::DrawProjGroupItem::getPGroup(), TechDraw::DrawViewPart::getSectionRefs(), TechDraw::DrawWeldSymbol::getTiles(), DrawingGui::ViewProviderDrawingView::hide(), DrawingGui::ViewProviderDrawingClip::hide(), TechDraw::DrawView::isInClip(), Gui::ViewProviderOrigin::onDelete(), PartDesign::ProfileBased::remapSupportShape(), DrawingGui::ViewProviderDrawingView::show(), DrawingGui::ViewProviderDrawingClip::show(), and PartDesignGui::ViewProviderTransformed::startEditing().
◆ getInListEx() [1/2]
std::set<App::DocumentObject*> App::DocumentObject::getInListEx | ( | bool | recursive | ) | const |
Return a set of all objects linking to this object, including possible external parent objects.
- Parameters
-
recursive [in]: whether to obtain recursive in list
◆ getInListEx() [2/2]
void App::DocumentObject::getInListEx | ( | std::set< App::DocumentObject * > & | inSet, |
bool | recursive, | ||
std::vector< App::DocumentObject * > * | inList = 0 |
||
) | const |
Get a set of all objects linking to this object, including possible external parent objects.
- Parameters
-
inSet [out]: a set containing all objects linking to this object. recursive [in]: whether to obtain recursive in list inList [in, out]: optional pointer to a vector holding the output objects, with the furthest linking object ordered last.
Referenced by PartDesign::SubShapeBinder::setLinks(), and App::PropertyExpressionEngine::validateExpression().
◆ getInListRecursive()
std::vector<App::DocumentObject*> App::DocumentObject::getInListRecursive | ( | void | ) | const |
get all objects link directly or indirectly to this object
Referenced by App::DocumentObjectPy::getInListRecursive().
◆ getLinkedObject()
|
virtual |
Return the linked object with optional transformation.
- Parameters
-
recurse If false, return the immediate linked object, or else recursively call this function to return the final linked object. mat If non zero, it is used as the current transformation matrix on input. And output as the accumulated transformation till the final linked object. transform if false, then it will not accumulate the object's own placement into mat
, which lets you override the object's placement.
- Returns
- Return the linked object. This function must return itself if the it is not a link or the link is invalid.
Referenced by Gui::ViewProviderLink::getElementColors(), Gui::ViewProviderLink::getLinkedView(), Gui::ViewProviderDocumentObject::getLinkedViewProvider(), Part::Feature::getShapeOwner(), Gui::DocumentObjectItem::isGroup(), Gui::DocumentObjectItem::isLink(), Gui::DocumentObjectItem::isLinkFinal(), Gui::DocumentItem::populateItem(), Gui::ViewProviderLink::startEditing(), and Gui::DocumentObjectItem::testStatus().
◆ getNameInDocument()
const char* App::DocumentObject::getNameInDocument | ( | void | ) | const |
returns the name which is set in the document for this object (not the name property!)
Referenced by MeshGui::Segmentation::accept(), ReverseEngineeringGui::Segmentation::accept(), PartGui::DlgBooleanOperation::accept(), PartGui::DlgRevolution::accept(), FemGui::TaskDlgFemConstraintInitialTemperature::accept(), FemGui::TaskDlgFemConstraintFixed::accept(), FemGui::TaskDlgFemConstraintPlaneRotation::accept(), FemGui::TaskDlgFemConstraintPressure::accept(), FemGui::TaskDlgFemConstraintContact::accept(), FemGui::TaskDlgFemConstraintTemperature::accept(), FemGui::TaskDlgFemConstraintHeatflux::accept(), FemGui::TaskDlgFemConstraintTransform::accept(), MeshGui::SegmentationBestFit::accept(), FemGui::TaskDlgFemConstraintBearing::accept(), FemGui::TaskDlgFemConstraintPulley::accept(), FemGui::TaskDlgFemConstraintForce::accept(), FemGui::TaskDlgFemConstraintGear::accept(), PartDesignGui::TaskDlgShapeBinder::accept(), FemGui::TaskDlgFemConstraint::accept(), FemGui::TaskDlgFemConstraintDisplacement::accept(), FemGui::TaskDlgFemConstraintFluidBoundary::accept(), App::GroupExtensionPy::addObject(), TechDraw::DrawProjGroup::addProjection(), App::PropertyLinkSubList::adjustLink(), App::ObjectIdentifier::adjustLinks(), PartDesignGui::TaskFilletParameters::apply(), PartDesignGui::TaskChamferParameters::apply(), Gui::ExpressionBinding::apply(), PartDesignGui::TaskScaledParameters::apply(), TechDraw::DrawProjGroup::arrangeViewPointers(), Gui::ViewProviderVRMLObject::attach(), RobotGui::ViewProviderTrajectory::attach(), RobotGui::ViewProviderRobotObject::attach(), Gui::ViewProviderOriginFeature::attach(), Gui::ViewProviderAnnotation::attach(), Gui::ViewProviderDocumentObject::attach(), MeshGui::ViewProviderMesh::attach(), PointsGui::ViewProviderScattered::attach(), PointsGui::ViewProviderStructured::attach(), TechDraw::DrawViewPart::buildGeometryObject(), TechDraw::DrawProjGroup::calculateAutomaticScale(), TechDraw::DrawViewDimension::checkReferences2D(), TechDraw::DrawViewPart::checkXDirection(), Gui::DAG::Model::contextMenuEvent(), App::PropertyXLink::copyTo(), TechDrawGui::TaskActiveView::createActiveView(), TechDrawGui::TaskRichAnno::createAnnoFeature(), TechDrawGui::TaskLeaderLine::createLeaderFeature(), TechDrawGui::TaskSectionView::createSectionView(), TechDrawGui::TaskWeldingSymbol::createWeldingSymbol(), SpreadsheetGui::SheetTableView::deleteSelection(), Gui::DocumentObjectItem::displayStatusInfo(), Gui::TreeWidget::dropEvent(), Sketcher::SketchObjectSF::execute(), TechDraw::DrawViewDraft::execute(), TechDraw::DrawViewArch::execute(), TechDraw::DrawViewPart::execute(), TechDraw::DrawViewDimension::execute(), PartDesignGui::TaskBooleanParameters::exitSelectionMode(), App::Document::exportGraphviz(), Gui::ViewProviderGroupExtension::extensionDropObject(), App::OriginGroupExtension::extensionGetSubObject(), TechDraw::DrawViewPart::extractFaces(), MeshGui::ViewProviderMesh::faceInfo(), TechDrawGui::QGVPage::findParent(), Gui::DocumentItem::findRootIndex(), TechDrawGui::MDIViewPage::fixOrphans(), TechDraw::DrawLeaderLine::getBaseScale(), TechDraw::DrawProjGroup::getBoundingBox(), TechDraw::DrawViewDimension::getDimValue(), TechDraw::DrawProjGroup::getDirsFromFront(), TechDraw::DrawViewDimension::getFormatedValue(), Gui::LinkInfo::getLinkedName(), Gui::ViewProviderDocumentObject::getLinkedViewProvider(), Gui::ViewProviderLink::getLinkExtension(), Gui::DocumentObjectItem::getName(), Gui::View3DInventorPy::getObjectInfo(), Gui::View3DInventorPy::getObjectsInfo(), TechDraw::DrawViewDimension::getPointsEdgeVert(), TechDraw::DrawViewDimension::getPointsOneEdge(), TechDraw::DrawViewDimension::getPointsTwoEdges(), TechDraw::DrawViewDimension::getPointsTwoVerts(), TechDraw::DrawViewPart::getProjectionCS(), TechDraw::DrawProjGroup::getProjItem(), TechDraw::DrawProjGroup::getProjObj(), App::VRMLObject::getRelativePath(), TechDraw::DrawProjGroupItem::getScale(), TechDraw::DrawLeaderLine::getScale(), TechDraw::DrawView::getScale(), Gui::TreeWidget::getSelection(), Gui::LinkInfo::getSnapshot(), TechDraw::DrawViewPart::getSourceShape(), TechDraw::DrawViewPart::getSourceShapeFused(), TechDraw::DrawProjGroupItem::getViewAxis(), TechDraw::DrawProjGroup::getViewIndex(), App::DocumentObjectPy::getViewObject(), App::GroupExtensionPy::hasObject(), TechDraw::DrawProjGroup::hasProjection(), App::PropertyExpressionEngine::hasSetValue(), Spreadsheet::PropertySheet::hasSetValue(), TechDrawGui::TaskLineDecor::initUi(), Gui::LinkInfo::isLinked(), Gui::SelectionSingleton::isSelected(), TechDrawGui::TaskLinkDim::loadToTree(), TechDraw::DrawViewPartPy::makeCosmeticVertex(), TechDraw::DrawDimHelper::makeDistDim(), TechDraw::DrawDimHelper::makeExtentDim(), Gui::DAG::Model::mousePressEvent(), TechDrawGui::QGVPage::mouseReleaseEvent(), SketcherGui::TaskSketcherConstrains::on_listWidgetConstraints_itemSelectionChanged(), SketcherGui::TaskSketcherElements::on_listWidgetElements_itemEntered(), SketcherGui::TaskSketcherElements::on_listWidgetElements_itemSelectionChanged(), MeshGui::DlgEvaluateMeshImp::on_repairAllTogether_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairDegeneratedButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairDuplicatedFacesButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairDuplicatedPointsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairFoldsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairIndicesButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairNonmanifoldsButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairOrientationButton_clicked(), MeshGui::DlgEvaluateMeshImp::on_repairSelfIntersectionButton_clicked(), PartDesignGui::TaskSketchBasedParameters::onAddSelection(), FemGui::TaskFemConstraint::onButtonWizCancel(), TechDraw::DrawViewDimension::onChanged(), App::OriginGroupExtension::onExtendedUnsetupObject(), Gui::TreeWidget::onPreSelectTimer(), PartGui::FaceColors::onSelectionChanged(), PartDesignGui::TaskBooleanParameters::onSelectionChanged(), SketcherGui::TaskSketcherConstrains::onSelectionChanged(), SketcherGui::TaskSketcherElements::onSelectionChanged(), PartDesignGui::TaskSketchBasedParameters::onSelectReference(), TechDrawGui::QGILeaderLine::onSourceChange(), App::DocumentObjectT::operator=(), TechDraw::DrawViewPart::partExec(), TechDrawGui::MDIViewPage::preSelectionChanged(), Gui::ElementColors::Private::Private(), TechDraw::DrawProjGroup::purgeProjections(), TechDrawGui::QGVPage::QGVPage(), Attacher::AttachEngine::readLinks(), PartDesignGui::ViewProviderTransformed::recomputeFeature(), App::Document::recomputeFeature(), TechDrawGui::MDIViewPage::redraw1View(), PartDesignGui::TaskShapeBinder::referenceSelected(), PartDesignGui::TaskPipeParameters::referenceSelected(), PartDesignGui::TaskPipeOrientation::referenceSelected(), PartDesignGui::TaskPipeScaling::referenceSelected(), PartGui::ThicknessWidget::reject(), TechDrawGui::TaskSectionView::reject(), TechDrawGui::TaskHatch::reject(), TechDrawGui::TaskGeomHatch::reject(), TechDrawGui::TaskProjGroup::reject(), DrawSketchHandlerCoincident::releaseButton(), DrawSketchHandlerFillet::releaseButton(), TechDrawGui::TaskRichAnno::removeFeature(), TechDrawGui::TaskLeaderLine::removeFeature(), App::GroupExtensionPy::removeObject(), App::Document::removeObject(), TechDraw::DrawProjGroup::removeProjection(), TechDraw::DrawPage::removeView(), Gui::ViewProviderDocumentObject::replaceObject(), Gui::ViewProviderPythonFeatureImp::replaceObject(), App::ObjectIdentifier::resolve(), App::ObjectIdentifier::resolveAmbiguity(), App::VRMLObject::RestoreDocFile(), Gui::SelectionSingleton::sAddSelection(), App::Document::save(), TechDrawGui::MDIViewPage::saveDXF(), TechDrawGui::QGVPage::saveSvg(), TechDrawGui::TaskProjGroup::scaleManuallyChanged(), Gui::SelectionObserver::SelectionObserver(), PartGui::DlgExtrusion::setAxisLink(), PartGui::DlgRevolution::setAxisLink(), SpreadsheetGui::WorkbenchHelper::setBackgroundColor(), App::ObjectIdentifier::setDocumentObjectName(), PartDesignGui::setEdit(), PartDesignGui::ViewProviderDressUp::setEdit(), TechDrawGui::ViewProviderViewPart::setEdit(), TechDrawGui::QGIWeldSymbol::setFeature(), SpreadsheetGui::WorkbenchHelper::setForegroundColor(), PartDesignGui::TaskDressUpParameters::setSelection(), TechDrawGui::MDIViewPage::setTreeToSceneSelect(), TechDrawGui::TaskSectionView::setUiEdit(), TechDrawGui::TaskRichAnno::setUiEdit(), TechDrawGui::TaskCenterLine::setUiEdit(), TechDrawGui::TaskLeaderLine::setUiEdit(), TechDrawGui::TaskDetail::setUiFromFeat(), TechDrawGui::TaskSectionView::setUiPrimary(), TechDrawGui::TaskCosVertex::setUiPrimary(), TechDrawGui::TaskRichAnno::setUiPrimary(), TechDrawGui::TaskCenterLine::setUiPrimary(), TechDrawGui::TaskLeaderLine::setUiPrimary(), TechDraw::DrawTileWeld::setupSymbolIncluded(), App::PropertyLinkSub::setValue(), App::PropertyLinkSubList::setValue(), App::PropertyXLink::setValue(), Gui::SelectionSingleton::setVisible(), DrawingGui::ViewProviderDrawingPage::showDrawingView(), Gui::SelectionSingleton::slotDeletedObject(), MeshGui::ViewProviderMesh::splitMesh(), Gui::SelectionSingleton::sRemoveSelection(), Gui::SelectionSingleton::sSetPreselection(), Gui::SelectionSingleton::sUpdateSelection(), TechDrawGui::TaskDetail::TaskDetail(), FemGui::TaskObjectName::TaskObjectName(), TechDrawGui::TaskSectionView::TaskSectionView(), Gui::DocumentObjectItem::testStatus(), App::PropertyLinkBase::tryReplaceLink(), PartDesignGui::ViewProvider::unsetEdit(), TechDraw::DrawProjGroupItem::unsetupObject(), App::LinkBaseExtension::update(), PartDesignGui::ViewProviderAddSub::updateAddSubShapeIndicator(), TechDraw::DrawProjGroup::updateChildrenEnforce(), TechDraw::DrawProjGroup::updateChildrenLock(), TechDraw::DrawProjGroup::updateChildrenScale(), TechDraw::DrawProjGroup::updateChildrenSource(), Gui::ViewProviderVRMLObject::updateData(), Gui::ViewProviderInventorObject::updateData(), TechDrawGui::TaskLinkDim::updateDims(), Gui::DocumentItem::updateItemSelection(), App::PropertyLinkBase::updateLabelReference(), TechDrawGui::MDIViewPage::updateTemplate(), TechDrawGui::TaskWeldingSymbol::updateTiles(), TechDrawGui::TaskWeldingSymbol::updateWeldingSymbol(), TechDrawGui::TaskProjGroup::viewToggled(), and PartGui::DlgExtrusion::writeParametersToFeature().
◆ getOldLabel()
const std::string& App::DocumentObject::getOldLabel | ( | ) | const |
◆ getOutList() [1/3]
const std::vector<App::DocumentObject*>& App::DocumentObject::getOutList | ( | ) | const |
returns a list of objects this object is pointing to by Links
Referenced by App::Document::exportGraphviz(), App::DocumentObjectPy::getOutList(), and TechDraw::DrawViewCollection::rebuildViewList().
◆ getOutList() [2/3]
std::vector<App::DocumentObject*> App::DocumentObject::getOutList | ( | int | option | ) | const |
◆ getOutList() [3/3]
void App::DocumentObject::getOutList | ( | int | option, |
std::vector< App::DocumentObject * > & | res | ||
) | const |
◆ getOutListOfProperty()
std::vector<App::DocumentObject*> App::DocumentObject::getOutListOfProperty | ( | App::Property * | ) | const |
returns a list of objects linked by the property
◆ getOutListRecursive()
std::vector<App::DocumentObject*> App::DocumentObject::getOutListRecursive | ( | void | ) | const |
returns a list of objects this object is pointing to by Links and all further descended
Referenced by App::DocumentObjectPy::getOutListRecursive().
◆ getParents()
std::vector<std::pair<App::DocumentObject*,std::string> > App::DocumentObject::getParents | ( | int | depth = 0 | ) | const |
Obtain top parents and subnames of this object using its InList.
Referenced by PartDesignGui::getBody(), and PartDesign::SubShapeBinder::update().
◆ getPathsByOutList()
std::vector<std::list<App::DocumentObject*> > App::DocumentObject::getPathsByOutList | ( | App::DocumentObject * | to | ) | const |
get all possible paths from this to another object following the OutList
Referenced by App::DocumentObjectPy::getPathsByOutList().
◆ getPyObject()
|
overridevirtual |
This method returns the Python wrapper for a C++ object.
It's in the responsibility of the programmer to do the correct reference counting. Basically there are two ways how to implement that: Either always return a new Python object then reference counting is not a matter or return always the same Python object then the reference counter must be incremented by one. However, it's absolutely forbidden to return always the same Python object without incrementing the reference counter.
The default implementation returns 'None'.
Reimplemented from Base::BaseClass.
Reimplemented in App::Part, TechDraw::DrawViewDimension, TechDraw::DrawViewPart, PartDesign::Body, TechDraw::DrawPage, TechDraw::DrawProjGroup, TechDraw::DrawView, TechDraw::DrawLeaderLine, TechDraw::DrawProjGroupItem, App::DocumentObjectGroup, TechDraw::DrawViewSymbol, TechDraw::DrawHatch, TechDraw::DrawGeomHatch, Sketcher::SketchObject, TechDraw::DrawViewClip, App::GeoFeature, Fem::FemResultObject, Path::FeatureCompound, TechDraw::DrawTileWeld, TechDraw::DrawSVGTemplate, TechDraw::DrawTemplate, TechDraw::DrawViewDimExtent, Path::Feature, Fem::FemMeshObject, Path::FeatureArea, Fem::FemSolverObject, Robot::RobotObject, Robot::TrajectoryObject, TechDraw::DrawRichAnno, Fem::FemSetNodesObject, Fem::FemSetObject, TechDraw::DrawTile, App::InventorObject, App::VRMLObject, Fem::FemSetElementsObject, Fem::FemSetFacesObject, Fem::FemSetGeometryObject, Mesh::Feature, TechDraw::DrawWeldSymbol, PartDesign::Feature, TechDraw::DrawParametricTemplate, Part::BodyBase, PartDesign::FeaturePrimitive, Part::Primitive, Part::Feature, Spreadsheet::Sheet, and Fem::FemPostPipeline.
Referenced by App::DocumentPy::addObject(), Gui::ViewProviderPythonFeatureImp::canDropObjectEx(), Gui::ViewProviderPythonFeatureImp::dropObjectEx(), App::LinkBaseExtension::extensionExecute(), Gui::MDIViewPy::getActiveObject(), Gui::View3DInventorPy::getActiveObject(), App::DocumentPy::getActiveObject(), Gui::View3DInventorPy::getattr(), App::GroupExtensionPy::getObject(), App::DocumentPy::getObject(), App::RangeExpression::getRange(), App::GroupExtensionPy::newObject(), App::FeaturePythonImp::redirectSubName(), and Gui::ViewProviderPythonFeatureImp::replaceObject().
◆ getStatus()
unsigned long App::DocumentObject::getStatus | ( | ) | const |
return the status bits
◆ getStatusString()
const char* App::DocumentObject::getStatusString | ( | void | ) | const |
get the status Message
Referenced by PartGui::OffsetWidget::accept(), PartGui::ThicknessWidget::accept(), FemGui::TaskDlgMeshShapeNetgen::accept(), SurfaceGui::FillingUnboundPanel::accept(), FemGui::TaskDlgFemConstraintInitialTemperature::accept(), SurfaceGui::GeomFillSurface::accept(), SurfaceGui::FillingPanel::accept(), PartDesignGui::TaskDlgShapeBinder::accept(), FemGui::TaskDlgFemConstraint::accept(), PartDesignGui::TaskDlgFeatureParameters::accept(), PartDesignGui::TaskDlgPipeParameters::accept(), SurfaceGui::GeomFillSurface::changeFillType(), and Gui::DocumentObjectItem::displayStatusInfo().
◆ getSubObject()
|
virtual |
Get the sub element/object by name.
- Parameters
-
subname a string which is dot separated name to refer to a sub element or object. An empty string can be used to refer to the object itself pyObj if non zero, returns the python object corresponding to this sub object. The actual type of this python object is implementation dependent. For example, The current implementation of Part::Feature will return the TopoShapePy, event if there is no sub-element reference, in which case it returns the whole shape. mat If non zero, it is used as the current transformation matrix on input. And output as the accumulated transformation up until and include the transformation applied by the final object reference in subname
. For Part::Feature, the transformation is applied to the TopoShape insidepyObj
before returning.transform if false, then it will not apply the object's own transformation to mat
, which lets you override the object's placement (and possibly scale).depth depth limitation as hint for cyclic link detection
- Returns
- The last document object referred in subname. If subname is empty, then it shall return itself. If subname is invalid, then it shall return zero.
Reimplemented in PartDesign::SubShapeBinder, PartDesign::Body, PartDesign::CoordinateSystem, Part::Datum, and Part::Feature.
Referenced by App::PropertyLinkSubList::adjustLink(), App::OriginGroupExtension::extensionGetSubObject(), App::GroupExtension::extensionGetSubObject(), App::GeoFeatureGroupExtension::extensionGetSubObject(), App::LinkBaseExtension::extensionGetSubObject(), Gui::DocumentItem::findItem(), Part::Feature::getShapeOwner(), Part::Feature::getSubObject(), Gui::SelectionObjectPy::getSubObjects(), App::ObjectIdentifier::resolveProperty(), App::PropertyLinkBase::restoreLabelReference(), Gui::Document::setEdit(), Gui::DocumentPy::toggleTreeItem(), App::PropertyLinkBase::tryReplaceLink(), App::PropertyLinkBase::updateLabelReference(), and Gui::LinkView::updateLink().
◆ getSubObjectList()
std::vector<DocumentObject*> App::DocumentObject::getSubObjectList | ( | const char * | subname | ) | const |
Return a list of objects referenced by a given subname including this object.
◆ getSubObjects()
|
virtual |
Return name reference of all sub-objects.
- Parameters
-
reason indicate reason of obtaining the sub objects
The default implementation returns all object references in PropertyLink, and PropertyLinkList, if any
- Returns
- Return a vector of subname references for all sub-objects. In most cases, the name returned will be the object name plus an ending '.', which can be passed directly to getSubObject() to retrieve the name. The reason to return the name reference instead of the sub object itself is because there may be no real sub object, or the sub object need special transformation. For example, sub objects of an array type of object.
Reimplemented in PartDesign::Body.
Referenced by App::LinkBaseExtension::extensionGetSubObjects(), and PartDesign::Body::getSubObjects().
◆ getViewProviderName()
|
virtual |
returns the type name of the ViewProvider
Reimplemented in Part::Datum, App::LinkGroup, App::LinkElement, App::Link, TechDraw::DrawViewDimension, App::Part, Part::Extrusion, TechDraw::DrawViewPart, TechDraw::DrawPage, TechDraw::DrawProjGroup, TechDraw::DrawViewArch, TechDraw::DrawViewDraft, PartDesign::SubShapeBinder, TechDraw::DrawView, Part::Revolution, TechDraw::DrawLeaderLine, PartDesign::Boolean, PartDesign::ShapeBinder, Part::Offset2D, Part::Offset, PartDesign::Chamfer, PartDesign::FeaturePrimitive, TechDraw::DrawProjGroupItem, Part::Part2DObject, Part::Face, App::DocumentObjectGroup, TechDraw::DrawViewSection, PartDesign::Point, PartDesign::CoordinateSystem, TechDraw::DrawViewSymbol, TechDraw::DrawHatch, TechDraw::DrawViewBalloon, TechDraw::DrawViewMulti, TechDraw::DrawViewDetail, TechDraw::DrawGeomHatch, PartDesign::Body, TechDraw::LandmarkDimension, Part::Ellipse, Part::Wedge, Part::Spiral, Part::Helix, Part::Torus, Part::Cone, Part::RegularPolygon, Inspection::Group, Fem::FemPostCutFilter, Inspection::Feature, Part::Prism, Fem::FemPostWarpVectorFilter, Part::Cylinder, Part::Reverse, Fem::FemPostScalarClipFilter, Part::Ellipsoid, Part::Refine, Fem::FemPostDataAtPointFilter, Part::Sphere, Part::Thickness, App::FeatureTest, App::FeatureTestException, Part::FeatureExt, Part::Plane, Fem::FemPostSphereFunction, Fem::FemPostDataAlongLineFilter, Part::Sweep, Part::Line, Fem::ConstraintDisplacement, Fem::FemPostPlaneFunction, Fem::ConstraintFluidBoundary, Fem::FemPostClipFilter, TechDraw::DrawViewAnnotation, Drawing::FeatureViewPart, TechDraw::DrawViewClip, PartDesign::Pad, Fem::ConstraintContact, Path::FeatureAreaView, Path::FeatureShape, Fem::ConstraintPulley, TechDraw::DrawViewCollection, Fem::ConstraintBearing, Fem::ConstraintTemperature, Part::Loft, Spreadsheet::Sheet, Drawing::FeatureViewAnnotation, TechDraw::DrawViewSpreadsheet, Drawing::FeatureViewSymbol, Fem::ConstraintInitialTemperature, PartDesign::Groove, PartDesign::Revolution, Drawing::FeatureClip, Drawing::FeatureViewSpreadsheet, Fem::ConstraintHeatflux, Fem::ConstraintTransform, PartDesign::Pocket, Drawing::FeaturePage, Fem::ConstraintGear, Raytracing::RaySegment, Robot::TrajectoryDressUpObject, Fem::ConstraintForce, Sandbox::SandboxObject, Fem::FemResultObject, Mesh::Curvature, Mesh::Transform, Robot::Edge2TracObject, TechDraw::DrawTileWeld, TechDraw::DrawViewImage, Drawing::FeatureView, Mesh::TransformDemolding, PartDesign::Draft, PartDesign::Pipe, Surface::GeomFillSurface, Fem::ConstraintFixed, Fem::FemPostPipeline, Sketcher::SketchObject, TechDraw::DrawSVGTemplate, Part::ImportStep, Part::Vertex, PartDesign::Thickness, Points::Structured, Drawing::PageGroup, Fem::FemMeshShapeNetgenObject, Fem::FemPostFunctionProvider, App::MeasureDistance, Fem::ConstraintPlaneRotation, Part::CustomFeature, PartDesign::Loft, PartDesign::PolarPattern, Path::FeatureCompound, TechDraw::DrawTemplate, App::Origin, Part::Mirroring, Part::Box, Part::Circle, PartDesign::LinearPattern, TechDraw::DrawRichAnno, Fem::ConstraintPressure, Part::FeatureGeometrySet, Part::CurveNet, Part::ImportBrep, Part::ImportIges, Part::RuledSurface, PartDesign::Fillet, Path::FeatureArea, Robot::TrajectoryCompound, TechDraw::DrawTile, Part::Compound, PartDesign::Plane, PartDesign::Scaled, Path::Feature, App::Annotation, App::MaterialObject, Fem::FemMeshObject, Fem::FemPostFunction, Image::ImagePlane, Mesh::Export, PartDesign::Line, PartDesign::Mirrored, PartDesign::MultiTransform, App::AnnotationLabel, Fem::FemSolverObject, Part::MultiFuse, Robot::RobotObject, Robot::TrajectoryObject, App::DocumentObjectFileIncluded, Fem::FemSetNodesObject, Part::MultiCommon, Part::Chamfer, Part::Fillet, App::InventorObject, App::VRMLObject, Fem::FemSetElementsObject, Fem::FemSetFacesObject, Fem::FemSetGeometryObject, Fem::FemMeshShapeObject, App::Line, Raytracing::LuxFeature, Raytracing::RayFeature, Part::Spline, Part::FeatureReference, Raytracing::LuxProject, Raytracing::RayProject, Mesh::Feature, PartDesign::Hole, TechDraw::DrawWeldSymbol, App::Plane, Surface::Filling, Points::Feature, App::Placement, TechDraw::DrawParametricTemplate, Part::Boolean, Part::Feature, Fem::Constraint, Fem::FemAnalysis, App::TextDocument, PartDesign::FeatureBase, and PartDesign::Feature.
Referenced by Gui::Document::slotNewObject().
◆ getViewProviderNameOverride()
|
virtual |
This function is introduced to allow Python feature override its view provider.
The default implementation just returns getViewProviderName().
The core will only accept the overridden view provider if it returns true when calling Gui::ViewProviderDocumentObject::allowOverride(obj). If not, the view provider will be reverted to the one returned from getViewProviderName().
Referenced by App::Document::addObject(), and App::Document::addObjects().
◆ getViewProviderNameStored()
const char* App::DocumentObject::getViewProviderNameStored | ( | ) | const |
Referenced by Gui::Document::slotNewObject().
◆ hasChildElement()
|
virtual |
return true to activate tree view group object handling and element visibility
Referenced by App::LinkBaseExtension::extensionHasChildElement().
◆ hasHiddenMarker()
|
static |
Check if the subname reference ends with hidden marker.
Referenced by Gui::ViewProvider::hasHiddenMarker(), and App::GeoFeature::resolveElement().
◆ hiddenMarker()
|
static |
Special marker to mark the object as hidden.
It is used by Gui::ViewProvider::getElementColors(), but exposed here for convenience
Referenced by Gui::ViewProvider::hiddenMarker().
◆ isAttachedToDocument()
|
overridevirtual |
Reimplemented from App::TransactionalObject.
◆ isElementVisible()
|
virtual |
Get sub-element visibility.
- Returns
- -1 if element visibility is not supported or element not found, 0 if element is invisible, or else 1
Referenced by App::LinkBaseExtension::extensionIsElementVisible(), Gui::SelectionSingleton::setVisible(), and Gui::DocumentObjectItem::testStatus().
◆ isError()
bool App::DocumentObject::isError | ( | void | ) | const |
set this feature to error
Referenced by Gui::DocumentObjectItem::displayStatusInfo(), Mesh::Curvature::execute(), Mesh::Export::execute(), Mesh::SegmentByMesh::execute(), PartDesignGui::ViewProviderTransformed::recomputeFeature(), and Gui::DocumentObjectItem::testStatus().
◆ isExporting()
int App::DocumentObject::isExporting | ( | ) | const |
Referenced by App::ObjectIdentifier::toPersistentString().
◆ isInInList()
bool App::DocumentObject::isInInList | ( | DocumentObject * | objToTest | ) | const |
test if this object is directly (non recursive) in the InList
◆ isInInListRecursive()
bool App::DocumentObject::isInInListRecursive | ( | DocumentObject * | objToTest | ) | const |
test if this object is in the InList and recursive further down
◆ isInOutList()
bool App::DocumentObject::isInOutList | ( | DocumentObject * | objToTest | ) | const |
test if this object is directly (non recursive) in the OutList
◆ isInOutListRecursive()
bool App::DocumentObject::isInOutListRecursive | ( | DocumentObject * | objToTest | ) | const |
test if the given object is in the OutList and recursive further down
◆ isRecomputing()
bool App::DocumentObject::isRecomputing | ( | ) | const |
returns true if this objects is currently recomputing
Referenced by Part::Feature::onChanged(), and PartDesign::MultiTransform::positionBySupport().
◆ isRemoving()
bool App::DocumentObject::isRemoving | ( | ) | const |
returns true if this objects is currently removed from the document
Referenced by App::OriginGroupExtension::onExtendedUnsetupObject(), TechDrawGui::ViewProviderDrawingView::onGuiRepaint(), and TechDrawGui::MDIViewPage::setTreeToSceneSelect().
◆ isRestoring()
bool App::DocumentObject::isRestoring | ( | ) | const |
returns true if this objects is currently restoring from file
Referenced by PartDesign::ShapeBinder::execute(), TechDraw::DrawViewPart::execute(), TechDraw::DrawViewDimension::execute(), TechDraw::DrawViewDimension::getDimValue(), TechDraw::DrawViewPart::getSourceShape(), TechDraw::DrawViewPart::getSourceShapeFused(), App::PropertyExpressionEngine::hasSetValue(), Spreadsheet::PropertySheet::hasSetValue(), TechDraw::DrawViewBalloon::mustExecute(), TechDraw::DrawProjGroupItem::mustExecute(), TechDraw::DrawRichAnno::mustExecute(), TechDraw::DrawView::mustExecute(), TechDraw::DrawLeaderLine::mustExecute(), TechDraw::DrawProjGroup::mustExecute(), TechDraw::DrawViewPart::mustExecute(), TechDraw::DrawViewDimension::mustExecute(), TechDraw::LandmarkDimension::onChanged(), TechDraw::DrawWeldSymbol::onChanged(), TechDraw::DrawViewBalloon::onChanged(), Part::Circle::onChanged(), Part::Primitive::onChanged(), Part::Vertex::onChanged(), Surface::GeomFillSurface::onChanged(), Part::Revolution::onChanged(), App::MeasureDistance::onChanged(), Part::Mirroring::onChanged(), TechDraw::DrawTile::onChanged(), Part::Box::onChanged(), TechDraw::DrawRichAnno::onChanged(), TechDraw::DrawViewDimExtent::onChanged(), Drawing::FeaturePage::onChanged(), TechDraw::DrawTileWeld::onChanged(), Part::Line::onChanged(), TechDraw::DrawView::onChanged(), PartDesign::SubShapeBinder::onChanged(), PartDesign::Body::onChanged(), TechDraw::DrawProjGroup::onChanged(), TechDraw::DrawViewDimension::onChanged(), Part::Helix::onChanged(), Part::Spiral::onChanged(), Part::Wedge::onChanged(), Part::Ellipse::onChanged(), TechDrawGui::ViewProviderDrawingView::onGuiRepaint(), Spreadsheet::Cell::setContent(), and Gui::ViewProviderLink::updateData().
◆ isTouched()
bool App::DocumentObject::isTouched | ( | void | ) | const |
test if this document object is touched
Referenced by App::OriginGroupExtension::extensionMustExecute(), Mesh::Curvature::mustExecute(), TechDraw::DrawLeaderLine::mustExecute(), Part::Prism::mustExecute(), Part::RegularPolygon::mustExecute(), Gui::DocumentObjectItem::testStatus(), and TechDrawGui::MDIViewPage::updateTemplate().
◆ isValid()
bool App::DocumentObject::isValid | ( | void | ) | const |
Referenced by PartGui::OffsetWidget::accept(), PartGui::ThicknessWidget::accept(), SurfaceGui::FillingUnboundPanel::accept(), FemGui::TaskDlgFemConstraintInitialTemperature::accept(), SurfaceGui::GeomFillSurface::accept(), SurfaceGui::FillingPanel::accept(), PartDesignGui::TaskDlgShapeBinder::accept(), FemGui::TaskDlgFemConstraint::accept(), PartDesignGui::TaskDlgFeatureParameters::accept(), PartDesignGui::TaskDlgPipeParameters::accept(), SurfaceGui::GeomFillSurface::changeFillType(), and App::Document::recomputeFeature().
◆ mustExecute()
|
virtual |
mustExecute We call this method to check if the object was modified to be invoked.
If the object label or an argument is modified. If we must recompute the object - to call the method execute(). 0: no recomputation is needed 1: recomputation needed
- Remarks
- If an object is marked as 'touched' then this does not necessarily mean that it will be recomputed. It only means that all objects that link it (i.e. its InList) will be recomputed.
Reimplemented in PartDesign::ShapeBinder, Fem::FemPostCutFilter, Fem::FemPostWarpVectorFilter, Fem::FemPostScalarClipFilter, Spreadsheet::Sheet, Fem::FemPostDataAtPointFilter, App::Origin, App::FeatureTest, Fem::FemPostDataAlongLineFilter, Fem::FemPostClipFilter, Fem::FemResultObject, Path::Feature, Sandbox::SandboxObject, Fem::FemMeshObject, Path::FeatureArea, Fem::FemSolverObject, Mesh::Import, Robot::RobotObject, Robot::TrajectoryObject, Fem::FemSetNodesObject, Fem::FemSetObject, Fem::FemPostPipeline, App::InventorObject, App::VRMLObject, Fem::FemSetElementsObject, Fem::FemSetFacesObject, Fem::FemSetGeometryObject, Part::CustomFeature, PartDesign::FeatureBase, Part::FeatureReference, TechDraw::DrawViewDimension, Part::Extrusion, TechDraw::DrawViewPart, TechDraw::DrawViewArch, TechDraw::DrawViewDraft, TechDraw::DrawPage, TechDraw::DrawProjGroup, TechDraw::DrawLeaderLine, Part::Offset2D, PartDesign::Boolean, Part::Revolution, Part::Offset, PartDesign::Chamfer, TechDraw::DrawView, TechDraw::DrawViewSection, PartDesign::FeatureAddSub, Part::Face, Part::Primitive, TechDraw::DrawViewSymbol, TechDraw::DrawProjGroupItem, TechDraw::DrawViewDetail, TechDraw::DrawGeomHatch, TechDraw::DrawViewBalloon, TechDraw::DrawViewMulti, Part::Feature, PartDesign::Body, TechDraw::LandmarkDimension, Part::Ellipse, Part::Wedge, PartDesign::Wedge, Part::Spiral, PartDesign::Prism, Part::Helix, Part::Torus, PartDesign::Torus, Part::Cone, PartDesign::Ellipsoid, Part::RegularPolygon, Inspection::Feature, Part::Prism, PartDesign::Cone, Part::Cylinder, Part::Ellipsoid, PartDesign::Sphere, Mesh::Cube, Part::Sphere, Part::Thickness, Mesh::Torus, PartDesign::Cylinder, Part::Plane, Mesh::Cone, Part::FilletBase, Part::Sweep, PartDesign::Transformed, Part::Line, Mesh::Cylinder, PartDesign::Box, PartDesign::Pad, Part::Loft, Mesh::SegmentByMesh, PartDesign::Groove, PartDesign::Revolution, TechDraw::DrawViewSpreadsheet, Mesh::SetOperations, PartDesign::Pocket, TechDraw::DrawViewClip, Mesh::FixDefects, Mesh::Export, Mesh::Curvature, PartDesign::Draft, PartDesign::Pipe, Mesh::Ellipsoid, Mesh::Sphere, Part::ImportStep, PartDesign::Thickness, TechDraw::DrawSVGTemplate, TechDraw::DrawTileWeld, Part::Vertex, Sketcher::SketchObjectSF, Surface::Extend, Surface::GeomFillSurface, Surface::Sewing, TechDraw::DrawViewDimExtent, PartDesign::Loft, Sketcher::SketchObject, Part::Mirroring, Part::Box, Part::Polygon, Part::RuledSurface, PartDesign::PolarPattern, TechDraw::DrawTemplate, TechDraw::DrawViewCollection, Part::Circle, Part::CurveNet, Part::ImportBrep, Part::ImportIges, PartDesign::DressUp, PartDesign::Fillet, PartDesign::LinearPattern, TechDraw::DrawRichAnno, TechDraw::DrawTile, Part::Section, PartDesign::Scaled, Part::Compound, PartDesign::Mirrored, PartDesign::MultiTransform, Surface::Cut, Part::MultiFuse, Part::MultiCommon, PartDesign::Hole, Raytracing::LuxProject, Raytracing::RayProject, Raytracing::LuxFeature, Raytracing::RayFeature, TechDraw::DrawWeldSymbol, Surface::Filling, Points::Feature, PartDesign::ProfileBased, TechDraw::DrawParametricTemplate, PartDesign::Feature, and Part::Boolean.
Referenced by Gui::DocumentObjectItem::displayStatusInfo(), TechDraw::DrawParametricTemplate::mustExecute(), TechDraw::DrawGeomHatch::mustExecute(), Raytracing::RayFeature::mustExecute(), Raytracing::LuxFeature::mustExecute(), TechDraw::DrawTemplate::mustExecute(), Fem::FemPostPipeline::mustExecute(), TechDraw::DrawView::mustExecute(), Mesh::Ellipsoid::mustExecute(), Path::Feature::mustExecute(), TechDraw::DrawPage::mustExecute(), Fem::FemPostClipFilter::mustExecute(), Mesh::Cylinder::mustExecute(), Mesh::Cone::mustExecute(), Fem::FemPostDataAlongLineFilter::mustExecute(), App::FeatureTest::mustExecute(), App::Origin::mustExecute(), Mesh::Torus::mustExecute(), Fem::FemPostDataAtPointFilter::mustExecute(), Mesh::Cube::mustExecute(), Fem::FemPostScalarClipFilter::mustExecute(), Fem::FemPostWarpVectorFilter::mustExecute(), Fem::FemPostCutFilter::mustExecute(), and Gui::DocumentObjectItem::testStatus().
◆ mustRecompute()
bool App::DocumentObject::mustRecompute | ( | void | ) | const |
Test if this document object must be recomputed.
◆ onBeforeChange()
|
overrideprotectedvirtual |
get called before the value is changed
Reimplemented from App::PropertyContainer.
Reimplemented in TechDraw::DrawPage, Part::BodyBase, and Drawing::FeaturePage.
Referenced by Drawing::FeaturePage::onBeforeChange(), and TechDraw::DrawPage::onBeforeChange().
◆ onBeforeChangeLabel()
|
virtual |
◆ onChanged()
|
overrideprotectedvirtual |
get called by the container when a property was changed
Reimplemented from App::ExtensionContainer.
Reimplemented in App::MeasureDistance, App::TextDocument, TechDraw::DrawViewPart, TechDraw::DrawViewDimension, TechDraw::DrawPage, TechDraw::DrawProjGroup, PartDesign::Body, PartDesign::SubShapeBinder, Part::BodyBase, TechDraw::DrawView, TechDraw::DrawLeaderLine, Part::Feature, TechDraw::DrawProjGroupItem, PartDesign::Boolean, PartDesign::FeaturePrimitive, Part::Revolution, PartDesign::Point, Part::Primitive, TechDraw::DrawHatch, TechDraw::DrawViewSymbol, TechDraw::DrawViewBalloon, TechDraw::DrawViewSection, TechDraw::LandmarkDimension, TechDraw::DrawViewDetail, TechDraw::DrawViewMulti, TechDraw::DrawGeomHatch, Part::Wedge, Part::Spiral, Part::Helix, Fem::FemPostCutFilter, Fem::FemPostWarpVectorFilter, Fem::Constraint, Fem::FemPostScalarClipFilter, Fem::FemPostDataAtPointFilter, PartDesign::ProfileBased, Fem::FemPostSphereFunction, Fem::FemPostDataAlongLineFilter, Part::Sweep, Fem::FemPostPlaneFunction, Fem::ConstraintDisplacement, TechDraw::DrawViewClip, Robot::RobotObject, Fem::ConstraintFluidBoundary, Fem::FemPostClipFilter, TechDraw::DrawViewAnnotation, Fem::FemPostPipeline, TechDraw::DrawTileWeld, TechDraw::DrawViewCollection, Fem::ConstraintPulley, Part::Loft, Robot::TrajectoryDressUpObject, Fem::ConstraintBearing, Fem::ConstraintContact, TechDraw::DrawViewSpreadsheet, Drawing::FeaturePage, Drawing::FeatureViewSymbol, Fem::ConstraintTemperature, TechDraw::DrawSVGTemplate, Drawing::FeatureClip, Fem::ConstraintGear, Fem::ConstraintInitialTemperature, PartDesign::DressUp, Robot::Edge2TracObject, Fem::ConstraintForce, Fem::ConstraintHeatflux, Fem::ConstraintTransform, Path::Feature, TechDraw::DrawViewImage, Robot::TrajectoryObject, Fem::FemMeshObject, TechDraw::DrawTemplate, Fem::ConstraintFixed, Fem::FemPostFunctionProvider, TechDraw::DrawViewDimExtent, TechDraw::DrawRichAnno, Part::Mirroring, Part::Box, Sandbox::SandboxObject, TechDraw::DrawTile, Part::RuledSurface, Fem::ConstraintPlaneRotation, PartDesign::Hole, Fem::ConstraintPressure, PartDesign::FeatureBase, PartDesign::Plane, PartDesign::Line, TechDraw::DrawWeldSymbol, TechDraw::DrawParametricTemplate, Points::Feature, Mesh::Feature, PartDesign::Chamfer, Sketcher::SketchObject, Part::Ellipse, Part::Line, App::VRMLObject, Part::Vertex, Surface::GeomFillSurface, and Part::Circle.
Referenced by draftviewproviders.view_base.ViewProviderDraft::attach(), ArchSite.Compass::buildCoordinates(), draftobjects.wire.Wire::execute(), ArchAxis.CommandArchGrid::IsActive(), TechDraw::DrawGeomHatch::onChanged(), TechDraw::DrawParametricTemplate::onChanged(), TechDraw::DrawHatch::onChanged(), App::TextDocument::onChanged(), PartDesign::Point::onChanged(), App::MeasureDistance::onChanged(), Sandbox::SandboxObject::onChanged(), Fem::FemPostFunctionProvider::onChanged(), Fem::FemMeshObject::onChanged(), TechDraw::DrawTemplate::onChanged(), Robot::TrajectoryObject::onChanged(), App::VRMLObject::onChanged(), Path::Feature::onChanged(), Robot::Edge2TracObject::onChanged(), Drawing::FeatureClip::onChanged(), Drawing::FeatureViewSymbol::onChanged(), Drawing::FeaturePage::onChanged(), Robot::TrajectoryDressUpObject::onChanged(), Fem::FemPostPipeline::onChanged(), Fem::FemPostClipFilter::onChanged(), Robot::RobotObject::onChanged(), Fem::FemPostPlaneFunction::onChanged(), TechDraw::DrawView::onChanged(), Fem::FemPostDataAlongLineFilter::onChanged(), Fem::FemPostSphereFunction::onChanged(), TechDraw::DrawPage::onChanged(), Fem::FemPostDataAtPointFilter::onChanged(), Fem::FemPostScalarClipFilter::onChanged(), Fem::Constraint::onChanged(), Fem::FemPostWarpVectorFilter::onChanged(), Fem::FemPostCutFilter::onChanged(), draftviewproviders.view_wpproxy.ViewProviderWorkingPlaneProxy::updateData(), draftviewproviders.view_label.ViewProviderLabel::updateData(), DraftLayer.ViewProviderLayer::updateData(), ArchBuildingPart.ViewProviderBuildingPart::updateData(), ArchPanel.ViewProviderPanelCut::updateData(), and ArchPanel.ViewProviderPanelSheet::updateData().
◆ onDocumentRestored()
|
protectedvirtual |
get called after a document has been fully restored
Reimplemented in App::LinkGroup, App::LinkElement, App::Link, TechDraw::DrawViewDimension, PartDesign::Body, TechDraw::DrawPage, PartDesign::SubShapeBinder, TechDraw::DrawViewSection, TechDraw::DrawViewPart, Part::Datum, TechDraw::DrawGeomHatch, PartDesign::Point, TechDraw::DrawHatch, TechDraw::DrawView, TechDraw::DrawProjGroupItem, Part::Compound2, TechDraw::LandmarkDimension, Sketcher::SketchObject, Spreadsheet::Sheet, Fem::Constraint, Drawing::FeaturePage, TechDraw::DrawViewCollection, TechDraw::DrawTileWeld, PartDesign::FeatureBase, Raytracing::LuxProject, and Raytracing::RayProject.
Referenced by TechDraw::DrawHatch::onDocumentRestored(), TechDraw::DrawTileWeld::onDocumentRestored(), TechDraw::DrawGeomHatch::onDocumentRestored(), Part::Datum::onDocumentRestored(), PartDesign::SubShapeBinder::onDocumentRestored(), TechDraw::DrawPage::onDocumentRestored(), Fem::Constraint::onDocumentRestored(), and Sketcher::SketchObject::onDocumentRestored().
◆ onLostLinkToObject()
|
virtual |
Called in case of losing a link Get called by the document when a object got deleted a link property of this object ist pointing to.
The standard behaviour of the DocumentObject implementation is to reset the links to nothing. You may override this method to implement additional or different behavior.
◆ onPropertyStatusChanged()
|
overrideprotectedvirtual |
get called when a property status has changed
Reimplemented from App::PropertyContainer.
◆ onSettingDocument()
|
protectedvirtual |
get called after setting the document
Reimplemented in TechDraw::DrawWeldSymbol, PartDesign::Body, and Spreadsheet::Sheet.
Referenced by TechDraw::DrawWeldSymbol::onSettingDocument(), and PartDesign::Body::onSettingDocument().
◆ onUpdateElementReference()
|
virtual |
◆ purgeError()
void App::DocumentObject::purgeError | ( | void | ) |
remove the error from the object
◆ purgeTouched()
void App::DocumentObject::purgeTouched | ( | void | ) |
reset this document object touched
Referenced by TechDraw::DrawProjGroupItem::autoPosition(), PointsGui::ViewProviderScattered::cut(), PointsGui::ViewProviderStructured::cut(), TechDraw::DrawView::execute(), TechDraw::DrawProjGroup::onChanged(), PartDesign::MultiTransform::positionBySupport(), App::DocumentObjectPy::purgeTouched(), MeshGui::ViewProviderMesh::removeFacets(), and MeshGui::ViewProviderMesh::trimMesh().
◆ recompute()
|
protectedvirtual |
recompute only this object
Reimplemented in Drawing::FeatureView, and Part::Feature.
Referenced by App::MeasureDistance::onChanged(), Drawing::FeatureView::recompute(), Part::Feature::recompute(), draftguitools.gui_trackers.arcTracker::setApertureAngle(), draftguitools.gui_trackers.arcTracker::setEndAngle(), draftguitools.gui_trackers.arcTracker::setStartAngle(), draftguitools.gui_trackers.bsplineTracker::update(), and draftguitools.gui_trackers.bezcurveTracker::update().
◆ recomputeFeature()
Recompute only this feature.
- Parameters
-
recursive set to true to recompute any dependent objects as well
Referenced by FemGui::TaskDlgCreateNodeSet::accept(), FemGui::TaskDlgMeshShapeNetgen::accept(), RobotGui::TaskDlgTrajectoryDressUp::accept(), RobotGui::TaskDlgEdge2Trac::accept(), TechDrawGui::TaskProjGroup::accept(), TechDrawGui::TaskActiveView::accept(), SurfaceGui::FillingUnboundPanel::accept(), SurfaceGui::GeomFillSurface::accept(), SurfaceGui::FillingPanel::accept(), TechDrawGui::TaskCosVertex::accept(), TechDrawGui::TaskWeldingSymbol::accept(), TechDrawGui::TaskProjGroup::apply(), TechDrawGui::TaskSectionView::applyQuick(), SurfaceGui::GeomFillSurface::changeFillType(), RobotGui::TaskDlgTrajectoryDressUp::clicked(), TechDrawGui::TaskCenterLine::createCenterLine(), SurfaceGui::GeomFillSurface::flipOrientation(), TechDraw::DrawViewSpreadsheet::getSheetImage(), Import::ImportOCAF2::loadShapes(), TechDraw::DrawDimHelper::makeDistDim(), TechDraw::DrawDimHelper::makeExtentDim(), TechDrawGui::QGVPage::mouseReleaseEvent(), TechDraw::DrawViewPart::onDocumentRestored(), SurfaceGui::FillingVertexPanel::onSelectionChanged(), SurfaceGui::FillingUnboundPanel::onSelectionChanged(), SurfaceGui::GeomFillSurface::onSelectionChanged(), SurfaceGui::FillingPanel::onSelectionChanged(), TechDrawGui::TaskProjGroup::projectionTypeChanged(), App::DocumentObjectPy::recompute(), PartDesignGui::ViewProviderTransformed::recomputeFeature(), TechDrawGui::TaskSectionView::reject(), TechDrawGui::TaskDetail::reject(), TechDrawGui::TaskProjGroup::scaleManuallyChanged(), TechDraw::DrawPage::updateAllViews(), and TechDrawGui::TaskDetail::updateDetail().
◆ redirectSubName()
|
virtual |
Allow object to redirect a subname path.
- Parameters
-
ss input as the current subname path from topParent leading just before this object, i.e. ends at the parent of this object. This function should append its own name to this path, or redirect the subname to other place. topParent top parent of this subname path child the immediate child object in the path
This function is called by tree view to generate a subname path when an item is selected in the tree. Document object can use this function to redirect the selection to some other objects.
◆ removeDynamicProperty()
|
overridevirtual |
Reimplemented from App::PropertyContainer.
Referenced by Spreadsheet::Sheet::clear(), Spreadsheet::Sheet::clearAll(), Spreadsheet::Sheet::removeAliases(), App::DocumentObjectPy::removeProperty(), Spreadsheet::Sheet::setFloatProperty(), Spreadsheet::Sheet::setIntegerProperty(), Spreadsheet::Sheet::setObjectProperty(), Spreadsheet::Sheet::setQuantityProperty(), Spreadsheet::Sheet::setStringProperty(), PartDesign::SubShapeBinder::update(), and Spreadsheet::Sheet::updateAlias().
◆ renameObjectIdentifiers()
|
virtual |
Reimplemented in Spreadsheet::Sheet.
◆ resetError()
|
protected |
◆ resolve()
App::DocumentObject* App::DocumentObject::resolve | ( | const char * | subname, |
App::DocumentObject ** | parent = 0 , |
||
std::string * | childName = 0 , |
||
const char ** | subElement = 0 , |
||
PyObject ** | pyObj = 0 , |
||
Base::Matrix4D * | mat = 0 , |
||
bool | transform = true , |
||
int | depth = 0 |
||
) | const |
Resolve the last document object referenced in the subname.
- Parameters
-
subname dot separated subname parent return the direct parent of the object childName return child name to be passed to is/setElementVisible() subElement return non-object sub-element name if found. The pointer is guaranteed to be within the buffer pointed to by 'subname'
- See also
- getSubObject()
- Returns
- Returns the last referenced document object in the subname. If no such object in subname, return pObject.
Referenced by Gui::ViewProviderLink::applyColors(), Gui::ViewProviderLink::getElementColors(), and Gui::SelectionSingleton::setVisible().
◆ resolveRelativeLink()
App::DocumentObject* App::DocumentObject::resolveRelativeLink | ( | std::string & | subname, |
App::DocumentObject *& | link, | ||
std::string & | linkSub | ||
) | const |
Resolve a link reference that is relative to this object reference.
- Parameters
-
subname on input, this is the subname reference to the object that is to be assigned a link. On output, the reference may be offset to be rid of any common parent. link on input, this is the top parent of the link reference. On output, it may be altered to one of its child to be rid off any common parent. linkSub on input, this the subname of the link reference. On output, it may be offset to be rid off any common parent.
- Returns
- The corrected top parent of the object that is to be assigned the link. If the output 'subname' is empty, then return the object itself.
To avoid any cyclic reference, an object must not be assign a link to any of the object in its parent. This function can be used to resolve any common parents of an object and its link target.
For example, with the following object hierarchy
Group |–Group001 | |–Box | |–Cylinder |–Group002 |–Box001 |–Cylinder001
If you want add a link of Group.Group002.Box001 to Group.Group001, you can call with the following parameter (which are usually obtained from Selection.getSelectionEx(), check usage in TreeWidget::onDropEvent()): std::string subname("Group002."); auto link = Group; std::string linkSub("Group001.Box001."); parent = Group.resolveRelativeLink(subname,link,linkSub);
The resolving result is as follow: return -> Group001 subname -> "" link -> Group002 linkSub -> "Box001."
The common parent 'Group' is removed.
◆ Save()
|
overridevirtual |
This method is used to save properties to an XML document.
A good example you'll find in PropertyStandard.cpp, e.g. the vector:
The writer.ind() expression writes the indentation, just for pretty printing of the XML. As you see, the writing of the XML document is not done with a DOM implementation because of performance reasons. Therefore the programmer has to take care that a valid XML document is written. This means closing tags and writing UTF-8.
- See also
- Base::Writer
Reimplemented from App::ExtensionContainer.
Reimplemented in App::VRMLObject, Sketcher::SketchObject, and Robot::RobotObject.
Referenced by App::VRMLObject::Save(), Robot::RobotObject::Save(), and Sketcher::SketchObject::Save().
◆ setDocument()
|
protected |
Referenced by App::Document::addObject(), and App::Document::addObjects().
◆ setElementVisible()
|
virtual |
Child element handling.
Set sub-element visibility
For performance reason, element
must not contain any further sub-elements, i.e. there should be no '.' inside element
.
- Returns
- -1 if element visibility is not supported, 0 if element is not found, 1 if success
Referenced by App::LinkBaseExtension::extensionSetElementVisible(), and Gui::SelectionSingleton::setVisible().
◆ setError()
|
protected |
Referenced by Import::FeatureImportStep::Execute(), and App::Origin::execute().
◆ setExpression()
|
virtual |
Reimplemented in Sketcher::SketchObject.
Referenced by App::DocumentObjectPy::setExpression().
◆ setStatus()
void App::DocumentObject::setStatus | ( | ObjectStatus | pos, |
bool | on | ||
) |
Referenced by App::Document::addObject(), App::Document::addObjects(), App::DocumentP::addRecomputeLog(), PartDesign::Body::Body(), Part::Offset2D::Offset2D(), PartDesign::Body::onDocumentRestored(), App::Origin::Origin(), App::OriginFeature::OriginFeature(), App::Document::readObjects(), App::Document::removeObject(), App::Document::Restore(), Path::PropertyPath::RestoreDocFile(), and Gui::DocumentObjectItem::setExpandedStatus().
◆ setupObject()
|
protectedvirtual |
get called after a brand new object was created
Reimplemented in Part::Extrusion, PartDesign::Body, PartDesign::SubShapeBinder, TechDraw::DrawViewSection, Part::Revolution, TechDraw::DrawGeomHatch, Part::Face, TechDraw::DrawHatch, App::Origin, PartDesign::DressUp, TechDraw::DrawTileWeld, and PartDesign::ProfileBased.
Referenced by App::Document::addObject(), App::Document::addObjects(), Part::Face::setupObject(), TechDraw::DrawHatch::setupObject(), TechDraw::DrawTileWeld::setupObject(), TechDraw::DrawGeomHatch::setupObject(), PartDesign::DressUp::setupObject(), Part::Revolution::setupObject(), TechDraw::DrawViewSection::setupObject(), PartDesign::Body::setupObject(), and Part::Extrusion::setupObject().
◆ testIfLinkDAGCompatible() [1/4]
bool App::DocumentObject::testIfLinkDAGCompatible | ( | App::PropertyLinkSub & | linkTo | ) | const |
◆ testIfLinkDAGCompatible() [2/4]
bool App::DocumentObject::testIfLinkDAGCompatible | ( | App::PropertyLinkSubList & | linksTo | ) | const |
◆ testIfLinkDAGCompatible() [3/4]
bool App::DocumentObject::testIfLinkDAGCompatible | ( | const std::vector< DocumentObject * > & | linksTo | ) | const |
◆ testIfLinkDAGCompatible() [4/4]
bool App::DocumentObject::testIfLinkDAGCompatible | ( | DocumentObject * | linkTo | ) | const |
testIfLinkIsDAG tests a link that is about to be created for circular references.
- Parameters
-
objToLinkIn (input). The object this object is to depend on after the link is going to be created.
- Returns
- true if link can be created (no cycles will be made). False if the link will cause a circular dependency and break recomputes. Throws an error if the document already has a circular dependency. That is, if the return is true, the link is allowed.
◆ testStatus()
bool App::DocumentObject::testStatus | ( | ObjectStatus | pos | ) | const |
Referenced by TechDraw::DrawViewDimension::execute(), TechDraw::DrawViewDimension::getDimValue(), PartDesign::DressUp::onChanged(), App::Document::readObjects(), App::PropertyLink::resetLink(), App::PropertyLinkList::set1Value(), PartDesign::SubShapeBinder::slotRecomputedObject(), App::PropertyLinkList::~PropertyLinkList(), App::PropertyLinkSub::~PropertyLinkSub(), and App::PropertyLinkSubList::~PropertyLinkSubList().
◆ touch()
void App::DocumentObject::touch | ( | bool | noRecompute = false | ) |
Set the property touched -> changed, cause recomputation in Update()
set this document object touched (cause recomputation on dependent features)
Referenced by TechDrawGui::TaskHatch::accept(), TechDrawGui::TaskGeomHatch::accept(), Gui::ElementColors::Private::accept(), TechDrawGui::TaskRichAnno::createAnnoFeature(), TechDrawGui::TaskLeaderLine::createLeaderFeature(), PartDesign::Boolean::onChanged(), Drawing::FeaturePage::onChanged(), TechDrawGui::TaskHatch::reject(), TechDrawGui::TaskGeomHatch::reject(), App::DocInfo::slotSaveDocument(), and App::DocumentObjectPy::touch().
◆ unsetupObject()
|
protectedvirtual |
get called when object is going to be removed from the document
Reimplemented in TechDraw::DrawHatch, TechDraw::DrawGeomHatch, TechDraw::DrawViewPart, TechDraw::DrawPage, PartDesign::Body, TechDraw::DrawViewSection, TechDraw::DrawProjGroupItem, TechDraw::DrawViewDetail, TechDraw::LandmarkDimension, App::Origin, TechDraw::DrawViewCollection, and TechDraw::DrawViewDimExtent.
Referenced by TechDraw::DrawGeomHatch::unsetupObject(), TechDraw::DrawHatch::unsetupObject(), TechDraw::DrawViewDimExtent::unsetupObject(), and PartDesign::Body::unsetupObject().
Friends And Related Function Documentation
◆ Document
◆ ObjectExecution
|
friend |
◆ Transaction
|
friend |
Member Data Documentation
◆ ExpressionEngine
PropertyExpressionEngine App::DocumentObject::ExpressionEngine |
Referenced by CmdSketcherConstrainRadius::activated(), CmdSketcherConstrainDiameter::activated(), CmdSketcherConstrainRadius::applyConstraint(), CmdSketcherConstrainDiameter::applyConstraint(), Gui::ExpressionBinding::bind(), App::Document::exportGraphviz(), and Gui::ExpressionBinding::setExpression().
◆ Label
PropertyString App::DocumentObject::Label |
Referenced by MeshGui::Segmentation::accept(), ReverseEngineeringGui::Segmentation::accept(), FemGui::TaskDlgCreateNodeSet::accept(), MeshGui::SegmentationBestFit::accept(), App::Document::addObject(), App::Document::addObjects(), Gui::ExpressionBinding::apply(), Gui::ViewProviderOriginFeature::attach(), Gui::ViewProviderPythonFeatureImp::attach(), SurfaceGui::FillingUnboundPanel::checkOpenCommand(), SurfaceGui::FillingVertexPanel::checkOpenCommand(), SurfaceGui::GeomFillSurface::checkOpenCommand(), SurfaceGui::FillingPanel::checkOpenCommand(), Import::ExportOCAF::createNode(), Gui::PointMarker::customEvent(), PartGui::DlgProjectionOnSurface::DlgProjectionOnSurface(), Gui::DocumentObjectData::DocumentObjectData(), PartDesignGui::ViewProviderDatum::doubleClicked(), PartGui::ViewProviderPart::doubleClicked(), PartDesignGui::ViewProvider::doubleClicked(), Gui::ElementColors::ElementColors(), TechDraw::DrawViewArch::execute(), Inspection::Feature::execute(), MeshGui::ViewProviderMesh::exportMesh(), App::OriginGroupExtension::extensionGetSubObject(), PartGui::FaceColors::FaceColors(), TechDraw::DrawProjGroup::getDirsFromFront(), Part::ImportIgesParts(), MeshPartGui::Mesh2ShapeGmsh::loadOutput(), Import::ImportOCAF2::loadShapes(), TechDrawGui::TaskLinkDim::loadToTree(), MeshGui::MeshSplit::makeCopy(), App::TextDocument::onChanged(), TechDraw::DrawView::onChanged(), PartDesignGui::TaskBooleanParameters::onSelectionChanged(), SurfaceGui::FillingVertexPanel::onSelectionChanged(), SurfaceGui::FillingUnboundPanel::onSelectionChanged(), SurfaceGui::GeomFillSurface::onSelectionChanged(), SurfaceGui::FillingPanel::onSelectionChanged(), App::PropertyLinkBase::restoreLabelReference(), Import::ExportOCAF::saveShape(), SurfaceGui::FillingPanel::setEditedObject(), Gui::ExpressionBinding::setExpression(), RobotGui::TaskEdge2TracParameter::setHideShowObject(), TechDrawGui::TaskDetail::setUiFromFeat(), PartDesignGui::TaskDressUpParameters::setupTransaction(), MeshGui::Annotation::show(), DrawingGui::ViewProviderDrawingPage::showDrawingView(), Spreadsheet::SheetObserver::slotChangedObject(), PartDesignGui::TaskLoftParameters::TaskLoftParameters(), FemGui::TaskObjectName::TaskObjectName(), PartDesignGui::TaskPipeOrientation::TaskPipeOrientation(), PartDesignGui::TaskPipeParameters::TaskPipeParameters(), App::PropertyLinkBase::tryReplaceLink(), TechDraw::DrawProjGroupItem::unsetupObject(), DrawingGui::ViewProviderDrawingPage::updateData(), and MeshPartGui::Mesh2ShapeGmsh::writeProject().
◆ Label2
PropertyString App::DocumentObject::Label2 |
◆ oldLabel
|
protected |
Old label; used for renaming expressions.
◆ pcNameInDocument
|
protected |
Referenced by App::Document::addObject(), and App::Document::addObjects().
◆ PythonObject
|
protected |
python object of this class and all descendent
Referenced by Part::Feature::getPyObject(), TechDraw::DrawWeldSymbol::getPyObject(), Mesh::Feature::getPyObject(), Part::Primitive::getPyObject(), App::DocumentObjectGroup::getPyObject(), App::VRMLObject::getPyObject(), App::InventorObject::getPyObject(), TechDraw::DrawTile::getPyObject(), TechDraw::DrawRichAnno::getPyObject(), Path::FeatureArea::getPyObject(), Path::Feature::getPyObject(), TechDraw::DrawViewDimExtent::getPyObject(), TechDraw::DrawProjGroupItem::getPyObject(), TechDraw::DrawTileWeld::getPyObject(), TechDraw::DrawLeaderLine::getPyObject(), TechDraw::DrawView::getPyObject(), App::GeoFeature::getPyObject(), TechDraw::DrawProjGroup::getPyObject(), PartDesign::Body::getPyObject(), TechDraw::DrawViewPart::getPyObject(), TechDraw::DrawViewDimension::getPyObject(), and Spreadsheet::Sheet::getPyObject().
◆ signalBeforeChange
boost::signals2::signal<void (const App::DocumentObject&, const App::Property&)> App::DocumentObject::signalBeforeChange |
signal before changing a property of this object
◆ signalChanged
boost::signals2::signal<void (const App::DocumentObject&, const App::Property&)> App::DocumentObject::signalChanged |
signal on changed property of this object
◆ StatusBits
|
protected |
Status bits of the document object The first 8 bits are used for the base system the rest can be used in descendent classes to mark special statuses on the objects.
The bits and their meaning are listed below: 0 - object is marked as 'touched' 1 - object is marked as 'erroneous' 2 - object is marked as 'new' 3 - object is marked as 'recompute', i.e. the object gets recomputed now 4 - object is marked as 'restoring', i.e. the object gets loaded at the moment 5 - object is marked as 'deleting', i.e. the object gets deleted at the moment 6 - reserved 7 - reserved 16 - object is marked as 'expanded' in the tree view
Referenced by Drawing::FeaturePage::onDocumentRestored().
◆ StdReturn
|
static |
Referenced by App::Document::afterRestore(), Part::Boolean::execute(), TechDraw::LandmarkDimension::execute(), TechDraw::DrawParametricTemplate::execute(), PartDesign::Body::execute(), TechDraw::DrawGeomHatch::execute(), TechDraw::DrawViewDetail::execute(), TechDraw::DrawViewMulti::execute(), Points::Feature::execute(), Surface::Filling::execute(), TechDraw::DrawHatch::execute(), Mesh::Feature::execute(), TechDraw::DrawWeldSymbol::execute(), PartDesign::Hole::execute(), TechDraw::DrawViewSymbol::execute(), Part::FeatureReference::execute(), Raytracing::LuxProject::execute(), Raytracing::RayProject::execute(), Raytracing::LuxFeature::execute(), Raytracing::RayFeature::execute(), Part::MultiCommon::execute(), Part::Chamfer::execute(), Part::Fillet::execute(), Part::MultiFuse::execute(), Part::Face::execute(), TechDraw::DrawViewSection::execute(), Fem::FemMeshShapeObject::execute(), Part::CustomFeature::execute(), Part::Compound::execute(), PartDesign::Fillet::execute(), Part::CurveNet::execute(), Part::ImportBrep::execute(), Part::ImportIges::execute(), Part::RuledSurface::execute(), Part::FeatureGeometrySet::execute(), Part::Mirroring::execute(), Part::Polygon::execute(), App::MeasureDistance::execute(), PartDesign::Loft::execute(), TechDraw::DrawRichAnno::execute(), TechDraw::DrawSVGTemplate::execute(), TechDraw::DrawView::execute(), Sketcher::SketchObjectSF::execute(), Surface::Extend::execute(), Surface::Sewing::execute(), TechDraw::DrawViewDimExtent::execute(), Mesh::Sphere::execute(), PartDesign::Chamfer::execute(), PartDesign::Thickness::execute(), Part::ImportStep::execute(), Fem::FemPostFunction::execute(), Mesh::Ellipsoid::execute(), Points::Structured::execute(), Sketcher::SketchObject::execute(), Mesh::Import::execute(), Part::Offset::execute(), Surface::GeomFillSurface::execute(), PartDesign::Pipe::execute(), Part::Revolution::execute(), Robot::TrajectoryCompound::execute(), PartDesign::Boolean::execute(), Mesh::Curvature::execute(), Mesh::TransformDemolding::execute(), Part::Offset2D::execute(), Mesh::Export::execute(), Mesh::Transform::execute(), Path::FeatureCompound::execute(), Drawing::FeaturePage::execute(), Mesh::FixDefects::execute(), Drawing::FeatureViewSpreadsheet::execute(), Raytracing::RaySegment::execute(), Fem::FemMeshShapeNetgenObject::execute(), Drawing::FeatureClip::execute(), PartDesign::Pocket::execute(), Mesh::SetOperations::execute(), TechDraw::DrawLeaderLine::execute(), Drawing::FeatureViewSymbol::execute(), PartDesign::Revolution::execute(), PartDesign::Groove::execute(), Drawing::FeatureViewAnnotation::execute(), TechDraw::DrawViewDraft::execute(), TechDraw::DrawPage::execute(), TechDraw::DrawViewArch::execute(), Mesh::SegmentByMesh::execute(), TechDraw::DrawViewCollection::execute(), Mesh::HarmonizeNormals::execute(), Robot::Edge2TracObject::execute(), Path::FeatureShape::execute(), TechDraw::DrawProjGroup::execute(), Part::Loft::execute(), Robot::TrajectoryDressUpObject::execute(), PartDesign::Pad::execute(), TechDraw::DrawViewClip::execute(), Drawing::FeatureViewPart::execute(), Drawing::FeatureProjection::execute(), Drawing::FeatureView::execute(), PartDesign::FeaturePrimitive::execute(), Mesh::Cylinder::execute(), Part::Extrusion::execute(), TechDraw::DrawViewPart::execute(), Mesh::FlipNormals::execute(), PartDesign::Transformed::execute(), TechDraw::DrawViewDimension::execute(), Part::Sweep::execute(), Mesh::Cone::execute(), Mesh::FixNonManifolds::execute(), App::PropertyExpressionEngine::execute(), PartDesign::Cylinder::execute(), App::FeatureTest::execute(), Fem::Constraint::execute(), Mesh::FixDuplicatedFaces::execute(), Mesh::Torus::execute(), Part::Thickness::execute(), Mesh::FixDuplicatedPoints::execute(), Mesh::Cube::execute(), PartDesign::Sphere::execute(), Part::Refine::execute(), Mesh::FixDegenerations::execute(), Part::Reverse::execute(), PartDesign::Cone::execute(), Mesh::FixDeformations::execute(), Mesh::FixIndices::execute(), PartDesign::Ellipsoid::execute(), Mesh::FillHoles::execute(), Mesh::RemoveComponents::execute(), PartDesign::Torus::execute(), PartDesign::Prism::execute(), PartDesign::Wedge::execute(), and App::DocumentObjectExtension::extensionExecute().
◆ Visibility
PropertyBool App::DocumentObject::Visibility |
Allow control visibility status in App name space.
Referenced by PartDesign::Body::addObject(), Gui::ViewProviderDocumentObject::attach(), ReverseEngineeringGui::SegmentationManual::createSegment(), PartDesignGui::TaskDressUpParameters::hideObject(), Gui::ViewProviderDocumentObject::onChanged(), Gui::ViewProviderDocumentObject::show(), and PartDesignGui::TaskDressUpParameters::showObject().
The documentation for this class was generated from the following files:
- src/App/DocumentObject.h
- src/App/DocumentObject.cpp