diff options
| author | Patrick Storz <eduard.braun2@gmx.de> | 2019-08-06 21:30:51 +0000 |
|---|---|---|
| committer | Patrick Storz <eduard.braun2@gmx.de> | 2019-08-31 14:50:39 +0000 |
| commit | 174427c290f6f8a449a1287251279905a6a9a517 (patch) | |
| tree | efdbb28c90251472a2be32a4486e2717af03fc12 /src/extension | |
| parent | Complete conversion of ParamNotebook to use _children (diff) | |
| download | inkscape-174427c290f6f8a449a1287251279905a6a9a517.tar.gz inkscape-174427c290f6f8a449a1287251279905a6a9a517.zip | |
Inherit destructor and recursively delete all widgets
let's hope this works as expected...
Diffstat (limited to 'src/extension')
| -rw-r--r-- | src/extension/prefdialog/parameter-notebook.cpp | 15 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-notebook.h | 2 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter.h | 2 | ||||
| -rw-r--r-- | src/extension/prefdialog/widget.cpp | 4 |
4 files changed, 5 insertions, 18 deletions
diff --git a/src/extension/prefdialog/parameter-notebook.cpp b/src/extension/prefdialog/parameter-notebook.cpp index 36ec5dff2..1fca1b402 100644 --- a/src/extension/prefdialog/parameter-notebook.cpp +++ b/src/extension/prefdialog/parameter-notebook.cpp @@ -55,13 +55,6 @@ ParamNotebook::ParamNotebookPage::ParamNotebookPage(Inkscape::XML::Node *xml, In } } -ParamNotebook::ParamNotebookPage::~ParamNotebookPage () -{ - // destroy parameters - for (auto child : _children) { - delete child; - } -} /** * Creates a notebookpage widget for a notebook. @@ -165,14 +158,6 @@ ParamNotebook::ParamNotebook(Inkscape::XML::Node *xml, Inkscape::Extension::Exte } } -ParamNotebook::~ParamNotebook () -{ - //destroy pages - for (auto child : _children) { - delete child; - } -} - /** * A function to set the \c _value. diff --git a/src/extension/prefdialog/parameter-notebook.h b/src/extension/prefdialog/parameter-notebook.h index 5ee326704..ee8727158 100644 --- a/src/extension/prefdialog/parameter-notebook.h +++ b/src/extension/prefdialog/parameter-notebook.h @@ -47,7 +47,6 @@ private: friend class ParamNotebook; public: ParamNotebookPage(Inkscape::XML::Node *xml, Inkscape::Extension::Extension *ext); - ~ParamNotebookPage() override; Gtk::Widget *get_widget(SPDocument *doc, Inkscape::XML::Node *node, sigc::signal<void> *changeSignal) override; InxParameter *get_param(const char *name) override; @@ -64,7 +63,6 @@ private: public: ParamNotebook(Inkscape::XML::Node *xml, Inkscape::Extension::Extension *ext); - ~ParamNotebook() override; Gtk::Widget *get_widget(SPDocument *doc, Inkscape::XML::Node *node, sigc::signal<void> *changeSignal) override; diff --git a/src/extension/prefdialog/parameter.h b/src/extension/prefdialog/parameter.h index 493824cbf..eba096be2 100644 --- a/src/extension/prefdialog/parameter.h +++ b/src/extension/prefdialog/parameter.h @@ -38,7 +38,7 @@ public: InxParameter(Inkscape::XML::Node *in_repr, Inkscape::Extension::Extension *ext); - virtual ~InxParameter() override; + ~InxParameter() override; /** Wrapper to cast to the object and use its function. */ bool get_bool(SPDocument const *doc, Inkscape::XML::Node const *node) const; diff --git a/src/extension/prefdialog/widget.cpp b/src/extension/prefdialog/widget.cpp index 05711b58a..efd97e099 100644 --- a/src/extension/prefdialog/widget.cpp +++ b/src/extension/prefdialog/widget.cpp @@ -114,6 +114,10 @@ InxWidget::InxWidget (Inkscape::XML::Node *in_repr, Inkscape::Extension::Extensi InxWidget::~InxWidget() { + for (auto child : _children) { + delete child; + } + g_free(_context); _context = nullptr; |
