Extensions: Port ViewProvider of groups

This commit is contained in:
Stefan Tröger
2016-08-27 11:56:38 +02:00
committed by wmayer
parent b5f4023050
commit f61bb9062e
15 changed files with 321 additions and 136 deletions

View File

@@ -27,12 +27,14 @@
#include "ViewProviderDocumentObject.h"
#include "ViewProviderPythonFeature.h"
#include "ViewProviderGroupExtension.h"
namespace Gui {
class GuiExport ViewProviderDocumentObjectGroup : public ViewProviderDocumentObject
class GuiExport ViewProviderDocumentObjectGroup : public ViewProviderDocumentObject,
public ViewProviderGroupExtension
{
PROPERTY_HEADER(Gui::ViewProviderDocumentObjectGroup);
PROPERTY_HEADER_WITH_EXTENSIONS(Gui::ViewProviderDocumentObjectGroup);
public:
/// constructor.
@@ -40,22 +42,11 @@ public:
/// destructor.
virtual ~ViewProviderDocumentObjectGroup();
virtual std::vector<App::DocumentObject*> claimChildren(void)const;
virtual bool canDragObjects() const;
virtual void dragObject(App::DocumentObject*);
virtual bool canDropObjects() const;
virtual void dropObject(App::DocumentObject*);
void Restore(Base::XMLReader &reader);
QIcon getIcon(void) const;
/// returns a list of all possible modes
std::vector<std::string> getDisplayModes(void) const;
virtual void hide(void);
virtual void show(void);
bool isShow(void) const;
virtual bool onDelete(const std::vector<std::string> &);
/// get called if the user hover over a object in the tree
virtual bool allowDrop(const std::vector<const App::DocumentObject*> &objList,
Qt::KeyboardModifiers keys,
@@ -71,7 +62,6 @@ protected:
void getViewProviders(std::vector<ViewProviderDocumentObject*>&) const;
private:
bool visible; // helper variable
std::vector<ViewProvider*> nodes;
};