+ fixes #0001884: Crash when double-clicking on Clip element with drawing page closed
This commit is contained in:
parent
b2f8a4ed2a
commit
4d618955b3
|
@ -57,7 +57,7 @@ public:
|
|||
|
||||
/// returns the type name of the ViewProvider
|
||||
virtual const char* getViewProviderName(void) const {
|
||||
return "DrawingGui::ViewProviderDrawingPage";
|
||||
return "DrawingGui::ViewProviderDrawingClip";
|
||||
}
|
||||
|
||||
protected:
|
||||
|
|
|
@ -66,6 +66,7 @@ void DrawingGuiExport initDrawingGui()
|
|||
|
||||
DrawingGui::ViewProviderDrawingPage::init();
|
||||
DrawingGui::ViewProviderDrawingView::init();
|
||||
DrawingGui::ViewProviderDrawingClip::init();
|
||||
|
||||
// add resources and reloads the translators
|
||||
loadDrawingResource();
|
||||
|
|
|
@ -48,11 +48,6 @@ using namespace DrawingGui;
|
|||
|
||||
PROPERTY_SOURCE(DrawingGui::ViewProviderDrawingView, Gui::ViewProviderDocumentObject)
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// Construction/Destruction
|
||||
|
||||
|
||||
ViewProviderDrawingView::ViewProviderDrawingView()
|
||||
{
|
||||
sPixmap = "Page";
|
||||
|
@ -84,3 +79,38 @@ std::vector<std::string> ViewProviderDrawingView::getDisplayModes(void) const
|
|||
void ViewProviderDrawingView::updateData(const App::Property*)
|
||||
{
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
PROPERTY_SOURCE(DrawingGui::ViewProviderDrawingClip, Gui::ViewProviderDocumentObjectGroup)
|
||||
|
||||
ViewProviderDrawingClip::ViewProviderDrawingClip()
|
||||
{
|
||||
sPixmap = "Page";
|
||||
}
|
||||
|
||||
ViewProviderDrawingClip::~ViewProviderDrawingClip()
|
||||
{
|
||||
}
|
||||
|
||||
void ViewProviderDrawingClip::attach(App::DocumentObject *pcFeat)
|
||||
{
|
||||
// call parent attach method
|
||||
ViewProviderDocumentObject::attach(pcFeat);
|
||||
}
|
||||
|
||||
void ViewProviderDrawingClip::setDisplayMode(const char* ModeName)
|
||||
{
|
||||
ViewProviderDocumentObject::setDisplayMode(ModeName);
|
||||
}
|
||||
|
||||
std::vector<std::string> ViewProviderDrawingClip::getDisplayModes(void) const
|
||||
{
|
||||
// get the modes of the father
|
||||
std::vector<std::string> StrList;
|
||||
return StrList;
|
||||
}
|
||||
|
||||
void ViewProviderDrawingClip::updateData(const App::Property*)
|
||||
{
|
||||
}
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#define DRAWINGGUI_VIEWPROVIDERVIEW_H
|
||||
|
||||
#include <Gui/ViewProviderFeature.h>
|
||||
#include <Gui/ViewProviderDocumentObjectGroup.h>
|
||||
|
||||
|
||||
namespace DrawingGui {
|
||||
|
@ -32,7 +33,7 @@ namespace DrawingGui {
|
|||
|
||||
class DrawingGuiExport ViewProviderDrawingView : public Gui::ViewProviderDocumentObject
|
||||
{
|
||||
PROPERTY_HEADER(DrawingGui::ViewProviderDrawing);
|
||||
PROPERTY_HEADER(DrawingGui::ViewProviderDrawingView);
|
||||
|
||||
public:
|
||||
/// constructor
|
||||
|
@ -50,6 +51,26 @@ public:
|
|||
|
||||
};
|
||||
|
||||
class DrawingGuiExport ViewProviderDrawingClip : public Gui::ViewProviderDocumentObjectGroup
|
||||
{
|
||||
PROPERTY_HEADER(DrawingGui::ViewProviderDrawingClip);
|
||||
|
||||
public:
|
||||
/// constructor
|
||||
ViewProviderDrawingClip();
|
||||
/// destructor
|
||||
virtual ~ViewProviderDrawingClip();
|
||||
|
||||
|
||||
virtual void attach(App::DocumentObject *);
|
||||
virtual void setDisplayMode(const char* ModeName);
|
||||
virtual bool useNewSelectionModel(void) const {return false;}
|
||||
/// returns a list of all possible modes
|
||||
virtual std::vector<std::string> getDisplayModes(void) const;
|
||||
virtual void updateData(const App::Property*);
|
||||
|
||||
};
|
||||
|
||||
} // namespace DrawingGui
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user