This is the father of all classes handled by the document addProperty(string, string) -- Add a generic property. The first argument specifies the type, the second the name of the property. removeProperty(string) -- Remove a generic property. Note, you can only remove user-defined properties but not built-in ones. A list of supported property types Mark the object as changed (touched) Mark the object as unchanged Mark the object for recompute Register an expression for a property Clear the expression for a property Evaluate an expression recompute(recursive=False): Recomputes this object Returns the status of the object as string. If the object is invalid its error description will be returned. If the object is valid but touched then 'Touched' will be returned, 'Valid' otherwise. Returns True if the object is valid, False otherwise getSubObject(subname, retType=0, matrix=None, transform=True, depth=0) * subname(string|list|tuple): dot separated string or sequence of strings referencing subobject. * retType: return type, 0=PyObject, 1=DocObject, 2=DocAndPyObject, 3=Placement PyObject: return a python binding object for the (sub)object referenced in each 'subname' The actual type of 'PyObject' is implementation dependent. For Part::Feature compatible objects, this will be of type TopoShapePy and pre-transformed by accumulated transformation matrix along the object path. DocObject: return the document object referenced in subname, if 'matrix' is None. Or, return a tuple (object, matrix) for each 'subname' and 'matrix' is the accumulated transformation matrix for the sub object. DocAndPyObject: return a tuple (object, matrix, pyobj) for each subname Placement: return a transformed placement of the sub-object * matrix: the initial transformation to be applied to the sub object. * transform: whether to transform the sub object using this object's placement * depth: current recursive depth getSubObjectList(subname) Return a list of objects referenced by a given subname including this object getSubObjects(reason=0): Return subname reference of all sub-objects getLinkedObject(recursive=True, matrix=None, transform=True, depth=0) Returns the linked object if there is one, or else return itself * recursive: whether to recursively resolve the links * transform: whether to transform the sub object using this object's placement * matrix: If not none, this specifies the initial transformation to be applied to the sub object. And cause the method to return a tuple (object, matrix) containing the accumulated transformation matrix * depth: current recursive depth setElementVisible(element,visible): Set the visibility of a child element Return -1 if element visibility is not supported, 0 if element not found, 1 if success isElementVisible(element): Check if a child element is visible Return -1 if element visibility is not supported or element not found, 0 if invisible, or else 1 Return true to indicate the object having child elements Returns the group the object is in or None if it is not part of a group. Note that an object can only be in a single group, hence only a single return value. Returns the GeoFeatureGroup, and hence the local coordinate system, the object is in or None if it is not part of a group. Note that an object can only be in a single group, hence only a single return value. Get all paths from this object to another object following the OutList. resolve(subname) -- resolve the sub object Returns a tuple (subobj,parent,elementName,subElement), where 'subobj' is the last object referenced in 'subname', and 'parent' is the direct parent of 'subobj', and 'elementName' is the name of the subobj, which can be used to call parent.isElementVisible/setElementVisible(). 'subElement' is the non-object sub-element name if any. resolveSubElement(subname,append,type) -- resolve both new and old style sub element subname: subname reference containing object hierarchy append: Whether to append object hierarchy prefix inside subname to returned element name type: 0: normal, 1: for import, 2: for export Return tuple(obj,newElementName,oldElementName) adjustRelativeLinks(parent,recursive=True) -- auto correct potential cyclic dependencies A list of all objects this object links to. A list of all objects this object links to recursively. A list of all objects which link to this object. A list of all objects which link to this object recursively. Return the document name and internal name of this object Return the internal name of this object Return the document this object is part of State of the object in the document If the GUI is loaded the associated view provider is returned or None if the GUI is not up Check if the object must be recomputed The unique identifier (among its document) of this object Indicate if the object is being removed A List of tuple(parent,subname) holding all parents to this object Contains the old label before change Enable/disable no touch on any property change