#include <ViewProviderSolver.h>
Public Member Functions | |
virtual bool | canDelete (App::DocumentObject *obj) const |
Asks the view provider if the given object can be deleted. More... | |
virtual std::vector< std::string > | getDisplayModes (void) const |
A list of all possible display modes. More... | |
virtual bool | isShow (void) const |
checks whether the view provider is visible or not More... | |
virtual bool | onDelete (const std::vector< std::string > &) |
Get called if the object is about to get deleted. More... | |
ViewProviderSolver () | |
constructor More... | |
~ViewProviderSolver () | |
destructor More... | |
Public Member Functions inherited from Gui::ViewProviderDocumentObject | |
virtual void | attach (App::DocumentObject *pcObject) |
virtual bool | canDelete (App::DocumentObject *obj) const override |
Asks the view provider if the given object can be deleted. More... | |
virtual bool | canDropObjectEx (App::DocumentObject *, App::DocumentObject *, const char *, const std::vector< std::string > &) const override |
Query object dropping with full qualified name. More... | |
virtual void | forceUpdate (bool enable=true) |
virtual bool | getDetailPath (const char *subname, SoFullPath *pPath, bool append, SoDetail *&det) const override |
return the coin node detail and path to the node of the subname More... | |
Gui::Document * | getDocument () const |
Get the GUI document to this ViewProvider object. More... | |
virtual bool | getElementPicked (const SoPickedPoint *, std::string &subname) const override |
return a hit element given the picked point which contains the full node path More... | |
App::DocumentObject * | getObject (void) const |
Get the object of this ViewProvider object. More... | |
PyObject * | getPyObject () override |
Get the python wrapper for that ViewProvider. More... | |
virtual void | getTaskViewContent (std::vector< Gui::TaskView::TaskContent * > &) const override |
Get a list of TaskBoxes associated with this object. More... | |
virtual const char * | getTransactionText () const override |
Is called by the tree if the user double clicks on the object. More... | |
virtual void | hide (void) override |
Hide the object in the view. More... | |
virtual bool | isUpdateForced () const |
virtual void | reattach (App::DocumentObject *) |
virtual int | replaceObject (App::DocumentObject *, App::DocumentObject *) override |
Replace an object to the view provider by drag and drop. More... | |
void | setActiveMode () |
Set the active mode, i.e. the first item of the 'Display' property. More... | |
virtual void | show (void) override |
Show the object in the view. More... | |
virtual bool | showInTree () const override |
Tell the tree view if this object should appear there. More... | |
virtual void | update (const App::Property *) override |
update the content of the ViewProvider this method have to implement the recalculation of the ViewProvider. More... | |
void | updateView () |
Run a redraw. More... | |
ViewProviderDocumentObject () | |
constructor. More... | |
virtual | ~ViewProviderDocumentObject () |
destructor. More... | |
virtual void | startRestoring () |
virtual void | finishRestoring () |
virtual bool | removeDynamicProperty (const char *prop) override |
virtual App::Property * | addDynamicProperty (const char *type, const char *name=nullptr, const char *group=nullptr, const char *doc=nullptr, short attr=0, bool ro=false, bool hidden=false) override |
virtual ViewProviderDocumentObject * | getLinkedViewProvider (std::string *subname=nullptr, bool recursive=false) const |
Return the linked view object. More... | |
virtual std::string | getFullName () const override |
virtual bool | allowOverride (const App::DocumentObject &) const |
Allow this class to be used as an override for the original view provider of the given object. More... | |
void | setShowable (bool enable) |
bool | isShowable () const |
void | startDefaultEditMode () |
Start the edit mode with ViewProvider::Default. More... | |
Public Member Functions inherited from Gui::ViewProvider | |
virtual bool | canAddToSceneGraph () const |
Indicate whether to be added to scene graph or not. More... | |
virtual std::vector< App::DocumentObject * > | claimChildren3D (void) const |
deliver the children belonging to this object this method is used to deliver the objects to the 3DView which should be grouped under its scene graph. More... | |
SoSeparator * | getAnnotation (void) |
virtual SoSeparator * | getBackRoot (void) const |
virtual SoGroup * | getChildRoot (void) const |
virtual SoSeparator * | getFrontRoot (void) const |
SoSwitch * | getModeSwitch (void) const |
virtual SoSeparator * | getRoot (void) const |
SoTransform * | getTransformNode () const |
ViewProvider () | |
constructor. More... | |
virtual | ~ViewProvider () |
destructor. More... | |
virtual bool | useNewSelectionModel (void) const |
indicates if the ViewProvider use the new Selection model More... | |
virtual bool | isSelectable (void) const |
virtual std::string | getElement (const SoDetail *) const |
return a hit element to the selection path or 0 More... | |
virtual SoDetail * | getDetail (const char *) const |
return the coin node detail of the subelement More... | |
int | partialRender (const std::vector< std::string > &subelements, bool clear) |
partial rendering setup More... | |
virtual std::vector< Base::Vector3d > | getModelPoints (const SoPickedPoint *) const |
virtual std::vector< Base::Vector3d > | getSelectionShape (const char *Element) const |
return the highlight lines for a given element or the whole shape More... | |
Base::BoundBox3d | getBoundingBox (const char *subname=nullptr, bool transform=true, MDIView *view=nullptr) const |
Return the bound box of this view object. More... | |
virtual void | beforeDelete () |
Called before deletion. More... | |
virtual bool | canDragObjects () const |
Check whether children can be removed from the view provider by drag and drop. More... | |
virtual bool | canDragObject (App::DocumentObject *) const |
Check whether the object can be removed from the view provider by drag and drop. More... | |
virtual void | dragObject (App::DocumentObject *) |
Remove a child from the view provider by drag and drop. More... | |
virtual bool | canDropObjects () const |
Check whether objects can be added to the view provider by drag and drop or drop only. More... | |
virtual bool | canDropObject (App::DocumentObject *) const |
Check whether the object can be dropped to the view provider by drag and drop or drop only. More... | |
virtual bool | canDragAndDropObject (App::DocumentObject *) const |
Return false to force drop only operation for a given object. More... | |
virtual void | dropObject (App::DocumentObject *) |
Add an object to the view provider by drag and drop. More... | |
virtual std::string | getDropPrefix () const |
return a subname referencing the sub-object holding the dropped objects More... | |
virtual std::string | dropObjectEx (App::DocumentObject *obj, App::DocumentObject *owner, const char *subname, const std::vector< std::string > &elements) |
Add an object with full qualified name to the view provider by drag and drop. More... | |
virtual bool | canRemoveChildrenFromRoot () const |
Tell the tree view to remove children items from the tree root. More... | |
std::string | getActiveDisplayMode (void) const |
virtual void | setDisplayMode (const char *ModeName) |
set the display mode More... | |
virtual const char * | getDefaultDisplayMode () const |
get the default display mode More... | |
void | setVisible (bool) |
bool | isVisible () const |
void | setLinkVisible (bool) |
bool | isLinkVisible () const |
virtual void | setOverrideMode (const std::string &mode) |
Overrides the display mode with mode. More... | |
const std::string | getOverrideMode () |
virtual bool | keyPressed (bool pressed, int key) |
is called when the provider is in edit and a key event occurs. Only ESC ends edit. More... | |
virtual bool | doubleClicked (void) |
is called by the tree if the user double clicks on the object More... | |
virtual bool | mouseMove (const SbVec2s &cursorPos, View3DInventorViewer *viewer) |
is called when the provider is in edit and the mouse is moved More... | |
virtual bool | mouseButtonPressed (int button, bool pressed, const SbVec2s &cursorPos, const View3DInventorViewer *viewer) |
is called when the Provider is in edit and the mouse is clicked More... | |
virtual bool | mouseWheelEvent (int delta, const SbVec2s &cursorPos, const View3DInventorViewer *viewer) |
virtual void | setupContextMenu (QMenu *, QObject *, const char *) |
set up the context-menu with the supported edit modes More... | |
virtual ViewProvider * | startEditing (int ModNum=0) |
bool | isEditing () const |
void | finishEditing () |
virtual void | setEditViewer (View3DInventorViewer *, int ModNum) |
adjust viewer settings when editing a view provider More... | |
virtual void | unsetEditViewer (View3DInventorViewer *) |
restores viewer settings when leaving editing mode More... | |
virtual void | updateData (const App::Property *) |
bool | isUpdatesEnabled () const |
void | setUpdatesEnabled (bool enable) |
unsigned long | getStatus () const |
return the status bits More... | |
bool | testStatus (ViewStatus pos) const |
void | setStatus (ViewStatus pos, bool on) |
std::string | toString () const |
virtual QIcon | getIcon (void) const |
deliver the icon shown in the tree view More... | |
virtual QIcon | mergeColorfulOverlayIcons (const QIcon &orig) const |
virtual std::vector< App::DocumentObject * > | claimChildren (void) const |
deliver the children belonging to this object this method is used to deliver the objects to the tree framework which should be grouped under its label. More... | |
virtual std::map< std::string, App::Color > | getElementColors (const char *element=nullptr) const |
virtual void | setElementColors (const std::map< std::string, App::Color > &colors) |
virtual void | setTransformation (const Base::Matrix4D &rcMatrix) |
set the viewing transformation of the provider More... | |
virtual void | setTransformation (const SbMatrix &rcMatrix) |
virtual MDIView * | getMDIView () const |
virtual void | Restore (Base::XMLReader &reader) |
This method is used to restore properties from an XML document. More... | |
bool | isRestoring () |
void | addDisplayMaskMode (SoNode *node, const char *type) |
Adds a new display mask mode. More... | |
void | setDisplayMaskMode (const char *type) |
Activates the display mask mode type. More... | |
SoNode * | getDisplayMaskMode (const char *type) const |
Get the node to the display mask mode type. More... | |
std::vector< std::string > | getDisplayMaskModes () const |
Returns a list of added display mask modes. More... | |
void | setDefaultMode (int) |
int | getDefaultMode () const |
virtual void | setRenderCacheMode (int) |
Public Member Functions inherited from App::TransactionalObject | |
virtual const char * | detachFromDocument () |
virtual bool | isAttachedToDocument () const |
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 | Save (Base::Writer &writer) const override |
This method is used to save properties to 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 * | addDynamicProperty (const char *type, const char *name=nullptr, const char *group=nullptr, const char *doc=nullptr, short attr=0, bool ro=false, bool hidden=false) |
bool | changeDynamicProperty (const Property *prop, const char *group, const char *doc) |
virtual void | editProperty (const char *) |
virtual App::Property * | getDynamicPropertyByName (const char *name) const |
DynamicProperty::PropData | getDynamicPropertyData (const Property *prop) const |
virtual std::vector< std::string > | getDynamicPropertyNames () const |
virtual std::string | getFullName () 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... | |
virtual Property * | getPropertyByName (const char *name) const |
find a property by its name More... | |
virtual const char * | getPropertyDocumentation (const char *name) const |
get the Group of a named Property More... | |
virtual const char * | getPropertyDocumentation (const Property *prop) const |
get the Group of a Property More... | |
virtual const char * | getPropertyGroup (const char *name) const |
get the Group of a named Property More... | |
virtual const char * | getPropertyGroup (const Property *prop) const |
get the Group of a Property More... | |
virtual void | getPropertyList (std::vector< Property * > &List) const |
get all properties of the class (including properties of the parent) More... | |
virtual void | getPropertyMap (std::map< std::string, Property * > &Map) const |
get all properties of the class (including properties of the parent) More... | |
virtual const char * | getPropertyName (const Property *prop) const |
get the name of a property More... | |
virtual void | getPropertyNamedList (std::vector< std::pair< const char *, Property * > > &List) const |
get all properties with their names, may contain duplicates and aliases More... | |
const char * | getPropertyPrefix () const |
virtual short | getPropertyType (const char *name) const |
get the Type of a named Property More... | |
virtual short | getPropertyType (const Property *prop) const |
get the Type of a Property More... | |
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... | |
virtual void | onPropertyStatusChanged (const Property &prop, unsigned long oldStatus) |
PropertyContainer () | |
A constructor. More... | |
virtual bool | removeDynamicProperty (const char *name) |
virtual void | Restore (Base::XMLReader &reader) |
This method is used to restore properties from an XML document. More... | |
virtual void | Save (Base::Writer &writer) const |
This method is used to save properties to an XML document. 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 unsigned int | getMemSize () const =0 |
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... | |
virtual Base::Type | getTypeId (void) const |
virtual void | Restore (XMLReader &)=0 |
This method is used to restore properties from an XML document. More... | |
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 | Save (Writer &) const =0 |
This method is used to save properties to an XML document. More... | |
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... | |
BaseClass (const BaseClass &)=default | |
virtual PyObject * | getPyObject () |
This method returns the Python wrapper for a C++ object. More... | |
virtual Type | getTypeId () const |
bool | isDerivedFrom (const Type type) const |
BaseClass & | operator= (const BaseClass &)=default |
virtual void | setPyObject (PyObject *) |
virtual | ~BaseClass () |
Destruction. More... | |
Additional Inherited Members | |
Public Types inherited from Gui::ViewProvider | |
enum | EditMode { Default = 0 , Transform , Cutting , Color } |
Public Types inherited from App::ExtensionContainer | |
typedef std::map< Base::Type, App::Extension * >::iterator | ExtensionIterator |
Static Public Member Functions inherited from Gui::ViewProvider | |
static const std::string & | hiddenMarker () |
static const char * | hasHiddenMarker (const char *subname) |
static SbMatrix | convert (const Base::Matrix4D &rcMatrix) |
static Base::Matrix4D | convert (const SbMatrix &sbMat) |
static void | eventCallback (void *ud, SoEventCallback *node) |
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 () |
static Type | getClassTypeId () |
static void | init () |
Public Attributes inherited from Gui::ViewProviderDocumentObject | |
App::PropertyEnumeration | DisplayMode |
App::PropertyEnumeration | OnTopWhenSelected |
App::PropertyEnumeration | SelectionStyle |
App::PropertyBool | ShowInTree |
App::PropertyBool | Visibility |
Public Attributes inherited from Gui::ViewProvider | |
boost::signals2::signal< void()> | signalChangeIcon |
signal on icon change More... | |
boost::signals2::signal< void(const QString &)> | signalChangeToolTip |
signal on tooltip change More... | |
boost::signals2::signal< void(const QString &)> | signalChangeStatusTip |
signal on status tip change More... | |
Protected Member Functions inherited from Gui::ViewProviderDocumentObject | |
virtual bool | isAttachedToDocument () const override |
virtual const char * | detachFromDocument () override |
virtual void | onPropertyStatusChanged (const App::Property &prop, unsigned long oldStatus) override |
get called when a property status has changed More... | |
virtual void | setModeSwitch () override |
Turn on mode switch. More... | |
void | addDefaultAction (QMenu *, const QString &) |
Adds a menu item and bind it with startDefaultEditMode(). More... | |
Gui::MDIView * | getActiveView () const |
Gui::MDIView * | getEditingView () const |
Gui::MDIView * | getInventorView () const |
Gui::MDIView * | getViewOfNode (SoNode *node) const |
virtual void | onBeforeChange (const App::Property *prop) override |
get called before the value is changed More... | |
virtual void | onChanged (const App::Property *prop) override |
Gets called by the container whenever a property has been changed. More... | |
SoNode * | findFrontRootOfType (const SoType &type) const |
Searches in all view providers that are attached to an object that is part of the same document as the object this view provider is attached to for an front root of type. More... | |
Protected Member Functions inherited from Gui::ViewProvider | |
virtual bool | setEdit (int ModNum) |
is called by the document when the provider goes in edit mode More... | |
virtual void | unsetEdit (int ModNum) |
is called when you lose the edit mode More... | |
int | getEditingMode () const |
return the edit mode or -1 if nothing is being edited More... | |
virtual QIcon | mergeGreyableOverlayIcons (const QIcon &orig) const |
bool | checkRecursion (SoNode *) |
Helper method to check that the node is valid, i.e. More... | |
SoPickedPoint * | getPointOnRay (const SbVec2s &pos, const View3DInventorViewer *viewer) const |
Helper method to get picked entities while editing. More... | |
SoPickedPoint * | getPointOnRay (const SbVec3f &pos, const SbVec3f &dir, const View3DInventorViewer *viewer) const |
Helper method to get picked entities while editing. 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... | |
virtual void | onBeforeChange (const Property *) |
get called before the value is changed More... | |
virtual void | onChanged (const Property *) |
get called by the container when a property has changed More... | |
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) |
Protected Attributes inherited from Gui::ViewProviderDocumentObject | |
App::DocumentObject * | pcObject |
Gui::Document * | pcDocument |
Protected Attributes inherited from Gui::ViewProvider | |
SoSeparator * | pcRoot |
The root Separator of the ViewProvider. More... | |
SoTransform * | pcTransform |
this is transformation for the provider More... | |
const char * | sPixmap |
SoSwitch * | pcModeSwitch |
this is the mode switch, all the different viewing modes are collected here More... | |
SoSeparator * | pcAnnotation |
The root separator for annotations. More... | |
ViewProviderPy * | pyViewObject |
std::string | overrideMode |
std::bitset< 32 > | StatusBits |
Protected Attributes inherited from App::PropertyContainer | |
DynamicProperty | dynamicProps |
ViewProviderSolver::ViewProviderSolver | ( | ) |
constructor
ViewProviderSolver::~ViewProviderSolver | ( | ) |
destructor
|
virtual |
Asks the view provider if the given object can be deleted.
Reimplemented from Gui::ViewProviderDocumentObject.
|
virtual |
A list of all possible display modes.
Reimplemented from Gui::ViewProvider.
|
virtual |
checks whether the view provider is visible or not
Reimplemented from Gui::ViewProvider.
|
virtual |
Get called if the object is about to get deleted.
Here you can delete other objects, switch their visibility or prevent the deletion of the object.
subNames | list of selected subelements |
Reimplemented from Gui::ViewProvider.
References Gui::ViewProvider::claimChildren(), and Gui::getMainWindow().