App::LinkExtension Class Reference
#include <Link.h>
Public Member Functions | |
LinkExtension () | |
virtual ~LinkExtension () | |
Helpers for defining extended parameter | |
extended parameter definition (Name, Type, Property_Type, Default, Document, Property_Name, Derived_Property_Type, App_Property_Type, Group) This helper simply reuses Name as Property_Name, Property_Type as Derived_Property_type, Prop_None as App_Propert_Type Note: Because PropertyView will merge linked object's properties into ours, we set the default group name as ' Link' with a leading space to try to make our group before others | |
void onExtendedDocumentRestored () override | |
get called after a document has been fully restored More... | |
![]() | |
LinkBaseExtension () | |
virtual ~LinkBaseExtension () | |
virtual void setProperty (int idx, Property *prop) | |
Property * getProperty (int idx) | |
Property * getProperty (const char *) | |
virtual const std::vector< PropInfo > & getPropertyInfo () const | |
virtual const PropInfoMap & getPropertyInfoMap () const | |
std::vector< DocumentObject * > getLinkedChildren (bool filter=true) const | |
const char * flattenSubname (const char *subname) const | |
void expandSubname (std::string &subname) const | |
DocumentObject * getLink (int depth=0) const | |
Base::Matrix4D getTransform (bool transform) const | |
Base::Vector3d getScaleVector () const | |
App::GroupExtension * linkedPlainGroup () const | |
bool linkTransform () const | |
const char * getSubName () const | |
const std::vector< std::string > & getSubElements () const | |
bool extensionGetSubObject (DocumentObject *&ret, const char *subname, PyObject **pyObj=0, Base::Matrix4D *mat=0, bool transform=false, int depth=0) const override | |
Get the sub object by name. More... | |
bool extensionGetSubObjects (std::vector< std::string > &ret, int reason) const override | |
Get name references of all sub objects. More... | |
bool extensionGetLinkedObject (DocumentObject *&ret, bool recurse, Base::Matrix4D *mat, bool transform, int depth) const override | |
Get the linked object. More... | |
virtual App::DocumentObjectExecReturn * extensionExecute (void) override | |
virtual short extensionMustExecute (void) override | |
virtual void extensionOnChanged (const Property *p) override | |
virtual void onExtendedUnsetupObject () override | |
get called when object is going to be removed from the document More... | |
virtual int extensionSetElementVisible (const char *, bool) override | |
virtual int extensionIsElementVisible (const char *) override | |
virtual bool extensionHasChildElement () const override | |
virtual PyObject * getExtensionPyObject (void) override | |
virtual Property * extensionGetPropertyByName (const char *name) const override | |
find a property by its name More... | |
int getElementIndex (const char *subname, const char **psubname=0) const | |
void elementNameFromIndex (int idx, std::ostream &ss) const | |
DocumentObject * getContainer () | |
const DocumentObject * getContainer () const | |
void setLink (int index, DocumentObject *obj, const char *subname=0, const std::vector< std::string > &subs=std::vector< std::string >()) | |
DocumentObject * getTrueLinkedObject (bool recurse, Base::Matrix4D *mat=0, int depth=0, bool noElement=false) const | |
bool hasPlacement () const | |
void cacheChildLabel (int enable=-1) const | |
![]() | |
DocumentObjectExtension () | |
App::DocumentObject * getExtendedObject () | |
const App::DocumentObject * getExtendedObject () const | |
virtual const char * getViewProviderExtensionName (void) const | |
returns the type name of the ViewProviderExtension which is automatically attached to the viewprovider object when it is initiated More... | |
virtual void onExtendedSettingDocument () | |
get called after setting the document More... | |
virtual void onExtendedSetupObject () | |
get called after a brand new object was created More... | |
virtual ~DocumentObjectExtension () | |
![]() | |
Extension () | |
App::ExtensionContainer * getExtendedContainer () | |
const App::ExtensionContainer * getExtendedContainer () const | |
virtual void initExtension (App::ExtensionContainer *obj) | |
bool isPythonExtension () | |
std::string name () const | |
virtual ~Extension () | |
virtual const char * extensionGetPropertyName (const Property *prop) const | |
get the name of a property More... | |
virtual void extensionGetPropertyMap (std::map< std::string, Property * > &Map) const | |
get all properties of the class (including properties of the parent) More... | |
virtual void extensionGetPropertyList (std::vector< Property * > &List) const | |
get all properties of the class (including properties of the parent) More... | |
virtual short extensionGetPropertyType (const Property *prop) const | |
get the Type of a Property More... | |
virtual short extensionGetPropertyType (const char *name) const | |
get the Type of a named Property More... | |
virtual const char * extensionGetPropertyGroup (const Property *prop) const | |
get the Group of a Property More... | |
virtual const char * extensionGetPropertyGroup (const char *name) const | |
get the Group of a named Property More... | |
virtual const char * extensionGetPropertyDocumentation (const Property *prop) const | |
get the Group of a Property More... | |
virtual const char * extensionGetPropertyDocumentation (const char *name) const | |
get the Group of a named Property More... | |
virtual void extensionSave (Base::Writer &) const | |
virtual void extensionRestore (Base::XMLReader &) | |
bool extensionIsDerivedFrom (const Base::Type type) const | |
Additional Inherited Members | |
![]() | |
enum { LinkModeNone, LinkModeAutoDelete, LinkModeAutoLink, LinkModeAutoUnlink } | |
enum PropIndex { PropMax } | |
typedef std::map< std::string, PropInfo > PropInfoMap | |
typedef std::map< const Property *, std::pair< LinkBaseExtension *, int > > LinkPropMap | |
![]() | |
static int getArrayIndex (const char *subname, const char **psubname=0) | |
![]() | |
void parseSubName () const | |
void update (App::DocumentObject *parent, const Property *prop) | |
void syncElementList () | |
void detachElement (App::DocumentObject *obj) | |
void checkGeoElementMap (const App::DocumentObject *obj, const App::DocumentObject *linked, PyObject **pyObj, const char *postfix) const | |
void updateGroup () | |
void slotChangedPlainGroup (const App::DocumentObject &, const App::Property &) | |
![]() | |
void initExtensionType (Base::Type type) | |
![]() | |
static void initExtensionSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Base::Type::instantiationMethod method=0) | |
![]() | |
std::vector< Property * > props | |
std::unordered_set< const App::DocumentObject * > myHiddenElements | |
std::vector< std::string > mySubElements | |
std::string mySubName | |
std::unordered_map< const App::DocumentObject *, boost::signals2::scoped_connection > plainGroupConns | |
long myOwner | |
std::unordered_map< std::string, int > myLabelCache | |
bool enableLabelCache | |
bool hasOldSubElement | |
![]() | |
bool m_isPythonExtension = false | |
Py::Object ExtensionPythonObject | |
Constructor & Destructor Documentation
◆ LinkExtension()
LinkExtension::LinkExtension | ( | ) |
◆ ~LinkExtension()
|
virtual |
Member Function Documentation
◆ onExtendedDocumentRestored()
|
overridevirtual |
get called after a document has been fully restored
Reimplemented from App::LinkBaseExtension.
The documentation for this class was generated from the following files:
- src/App/Link.h
- src/App/Link.cpp