diff options
| author | Patrick Storz <eduard.braun2@gmx.de> | 2019-08-05 20:13:24 +0000 |
|---|---|---|
| committer | Patrick Storz <eduard.braun2@gmx.de> | 2019-08-31 14:50:39 +0000 |
| commit | 299010c5b11801fa49bd52ae78c6d2cc0e069137 (patch) | |
| tree | 495a5d9571b0e48de6f7cf4d2f784939d597e9c9 /src | |
| parent | cleanup includes a bit (diff) | |
| download | inkscape-299010c5b11801fa49bd52ae78c6d2cc0e069137.tar.gz inkscape-299010c5b11801fa49bd52ae78c6d2cc0e069137.zip | |
More cleanup
Diffstat (limited to 'src')
| -rw-r--r-- | src/extension/prefdialog/parameter-bool.cpp | 6 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-color.cpp | 6 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-color.h | 7 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-float.cpp | 4 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-int.cpp | 4 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-notebook.cpp | 10 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-notebook.h | 14 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-optiongroup.cpp | 4 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-optiongroup.h | 8 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-string.cpp | 4 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter-string.h | 5 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter.cpp | 19 | ||||
| -rw-r--r-- | src/extension/prefdialog/parameter.h | 51 | ||||
| -rw-r--r-- | src/extension/prefdialog/widget-label.h | 2 | ||||
| -rw-r--r-- | src/extension/prefdialog/widget.h | 7 | ||||
| -rw-r--r-- | src/ui/selected-color.h | 2 |
16 files changed, 85 insertions, 68 deletions
diff --git a/src/extension/prefdialog/parameter-bool.cpp b/src/extension/prefdialog/parameter-bool.cpp index e1f242643..f3436374b 100644 --- a/src/extension/prefdialog/parameter-bool.cpp +++ b/src/extension/prefdialog/parameter-bool.cpp @@ -37,7 +37,7 @@ ParamBool::ParamBool(Inkscape::XML::Node *xml, Inkscape::Extension::Extension *e } } - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); _value = prefs->getBool(extension_pref_root + pref_name, _value); g_free(pref_name); @@ -47,7 +47,7 @@ bool ParamBool::set( bool in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node { _value = in; - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setBool(extension_pref_root + pref_name, _value); g_free(pref_name); @@ -74,7 +74,7 @@ public: * * @param param Which parameter to adjust on changing the check button */ - ParamBoolCheckButton (ParamBool *param, gchar *label, SPDocument *doc, Inkscape::XML::Node *node, sigc::signal<void> *changeSignal) : + ParamBoolCheckButton (ParamBool *param, char *label, SPDocument *doc, Inkscape::XML::Node *node, sigc::signal<void> *changeSignal) : Gtk::CheckButton(label), _pref(param), _doc(doc), _node(node), _changeSignal(changeSignal) { this->set_active(_pref->get(nullptr, nullptr) /**\todo fix */); this->signal_toggled().connect(sigc::mem_fun(this, &ParamBoolCheckButton::on_toggle)); diff --git a/src/extension/prefdialog/parameter-color.cpp b/src/extension/prefdialog/parameter-color.cpp index adb6c58a9..f99a2b54b 100644 --- a/src/extension/prefdialog/parameter-color.cpp +++ b/src/extension/prefdialog/parameter-color.cpp @@ -40,7 +40,7 @@ ParamColor::ParamColor(Inkscape::XML::Node *xml, Inkscape::Extension::Extension } } - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); _value = prefs->getUInt(extension_pref_root + pref_name, _value); g_free(pref_name); @@ -58,7 +58,7 @@ ParamColor::~ParamColor() _color_released.disconnect(); } -guint32 ParamColor::set(guint32 in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/) +unsigned int ParamColor::set(unsigned int in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/) { _color.setValue(in); @@ -86,7 +86,7 @@ Gtk::Widget *ParamColor::get_widget( SPDocument * /*doc*/, Inkscape::XML::Node * void ParamColor::_onColorChanged() { - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setUInt(extension_pref_root + pref_name, _color.value()); g_free(pref_name); diff --git a/src/extension/prefdialog/parameter-color.h b/src/extension/prefdialog/parameter-color.h index 552266e43..81df703ea 100644 --- a/src/extension/prefdialog/parameter-color.h +++ b/src/extension/prefdialog/parameter-color.h @@ -32,21 +32,22 @@ private: Inkscape::UI::SelectedColor _color; sigc::connection _color_changed; sigc::connection _color_released; + public: ParamColor(Inkscape::XML::Node *xml, Inkscape::Extension::Extension *ext); ~ParamColor() override; /** Returns \c _value, with a \i const to protect it. */ - guint32 get( SPDocument const * /*doc*/, Inkscape::XML::Node const * /*node*/ ) const { return _color.value(); } + unsigned int get(SPDocument const * /*doc*/, Inkscape::XML::Node const * /*node*/ ) const { return _color.value(); } - guint32 set (guint32 in, SPDocument *doc, Inkscape::XML::Node *node); + unsigned int set(unsigned int in, SPDocument *doc, Inkscape::XML::Node *node); Gtk::Widget *get_widget(SPDocument *doc, Inkscape::XML::Node *node, sigc::signal<void> *changeSignal) override; // Explicitly call superclass version to avoid method being hidden. void string(std::list <std::string> &list) const override { return InxParameter::string(list); } - void string (std::string &string) const override; + void string(std::string &string) const override; sigc::signal<void> *_changeSignal; diff --git a/src/extension/prefdialog/parameter-float.cpp b/src/extension/prefdialog/parameter-float.cpp index cdb5a4dd9..f376de560 100644 --- a/src/extension/prefdialog/parameter-float.cpp +++ b/src/extension/prefdialog/parameter-float.cpp @@ -36,7 +36,7 @@ ParamFloat::ParamFloat(Inkscape::XML::Node *xml, Inkscape::Extension::Extension } } - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); _value = prefs->getDouble(extension_pref_root + pref_name, _value); g_free(pref_name); @@ -99,7 +99,7 @@ float ParamFloat::set(float in, SPDocument * /*doc*/, Inkscape::XML::Node * /*no _value = _min; } - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setDouble(extension_pref_root + pref_name, _value); g_free(pref_name); diff --git a/src/extension/prefdialog/parameter-int.cpp b/src/extension/prefdialog/parameter-int.cpp index 503fa9b43..53e858bdb 100644 --- a/src/extension/prefdialog/parameter-int.cpp +++ b/src/extension/prefdialog/parameter-int.cpp @@ -37,7 +37,7 @@ ParamInt::ParamInt(Inkscape::XML::Node *xml, Inkscape::Extension::Extension *ext } } - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); _value = prefs->getInt(extension_pref_root + pref_name, _value); g_free(pref_name); @@ -92,7 +92,7 @@ int ParamInt::set(int in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/) _value = _min; } - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setInt(extension_pref_root + pref_name, _value); g_free(pref_name); diff --git a/src/extension/prefdialog/parameter-notebook.cpp b/src/extension/prefdialog/parameter-notebook.cpp index 0d64a4c32..31cf5ba4a 100644 --- a/src/extension/prefdialog/parameter-notebook.cpp +++ b/src/extension/prefdialog/parameter-notebook.cpp @@ -101,7 +101,7 @@ Gtk::Widget *ParamNotebook::ParamNotebookPage::get_widget(SPDocument *doc, Inksc parameter_widget->set_margin_start(indent *GUI_INDENTATION); vbox->pack_start(*parameter_widget, false, false, 0); - const gchar *tooltip = parameter->get_tooltip(); + const char *tooltip = parameter->get_tooltip(); if (tooltip) { parameter_widget->set_tooltip_text(tooltip); } @@ -114,7 +114,7 @@ Gtk::Widget *ParamNotebook::ParamNotebookPage::get_widget(SPDocument *doc, Inksc } /** Search the parameter's name in the page content. */ -InxParameter *ParamNotebook::ParamNotebookPage::get_param(const gchar *name) +InxParameter *ParamNotebook::ParamNotebookPage::get_param(const char *name) { if (name == nullptr) { throw Extension::param_not_exist(); @@ -161,7 +161,7 @@ ParamNotebook::ParamNotebook(Inkscape::XML::Node *xml, Inkscape::Extension::Exte } // get value (initialize with value of first page if pref is empty) - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); _value = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); @@ -201,7 +201,7 @@ const Glib::ustring& ParamNotebook::set(const int in, SPDocument * /*doc*/, Inks if (page) { _value = page->_name; - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setString(extension_pref_root + pref_name, _value); g_free(pref_name); @@ -269,7 +269,7 @@ void NotebookWidget::changed_page(Gtk::Widget * /*page*/, guint pagenum) } /** Search the parameter's name in the notebook content. */ -InxParameter *ParamNotebook::get_param(const gchar *name) +InxParameter *ParamNotebook::get_param(const char *name) { if (name == nullptr) { throw Extension::param_not_exist(); diff --git a/src/extension/prefdialog/parameter-notebook.h b/src/extension/prefdialog/parameter-notebook.h index cbf7e8625..a50ad1dca 100644 --- a/src/extension/prefdialog/parameter-notebook.h +++ b/src/extension/prefdialog/parameter-notebook.h @@ -16,17 +16,17 @@ * Released under GNU GPL v2+, read the file 'COPYING' for more information. */ +#include "parameter.h" + #include <vector> -#include "parameter.h" +#include <glibmm/ustring.h> + namespace Gtk { class Widget; } -namespace Glib { -class ustring; -} namespace Inkscape { namespace Extension { @@ -55,8 +55,8 @@ private: Gtk::Widget *get_widget(SPDocument *doc, Inkscape::XML::Node *node, sigc::signal<void> *changeSignal) override; void paramString (std::list <std::string> &list); - gchar *get_text () {return _text;}; - InxParameter *get_param (const gchar *name) override; + char *get_text () {return _text;}; + InxParameter *get_param (const char *name) override; }; /* class ParamNotebookPage */ /** A table to store the pages with parameters for this notebook. @@ -79,7 +79,7 @@ public: void string(std::string &string) const override {return InxParameter::string(string);} - InxParameter *get_param (const gchar *name) override; + InxParameter *get_param (const char *name) override; const Glib::ustring& get (const SPDocument * /*doc*/, const Inkscape::XML::Node * /*node*/) { return _value; } const Glib::ustring& set (const int in, SPDocument *doc, Inkscape::XML::Node *node); diff --git a/src/extension/prefdialog/parameter-optiongroup.cpp b/src/extension/prefdialog/parameter-optiongroup.cpp index 6b6d3463b..99775d8fc 100644 --- a/src/extension/prefdialog/parameter-optiongroup.cpp +++ b/src/extension/prefdialog/parameter-optiongroup.cpp @@ -67,7 +67,7 @@ ParamOptionGroup::ParamOptionGroup(Inkscape::XML::Node *xml, Inkscape::Extension } // get value (initialize with value of first choice if pref is empty) - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); _value = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); @@ -116,7 +116,7 @@ const Glib::ustring& ParamOptionGroup::set(Glib::ustring in, SPDocument *doc, In { if (contains(in, doc, node)) { _value = in; - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setString(extension_pref_root + pref_name, _value.c_str()); g_free(pref_name); diff --git a/src/extension/prefdialog/parameter-optiongroup.h b/src/extension/prefdialog/parameter-optiongroup.h index 96599c518..225fcb2b4 100644 --- a/src/extension/prefdialog/parameter-optiongroup.h +++ b/src/extension/prefdialog/parameter-optiongroup.h @@ -18,18 +18,16 @@ * Released under GNU GPL v2+, read the file 'COPYING' for more information. */ +#include "parameter.h" + #include <vector> -#include "parameter.h" +#include <glibmm/ustring.h> namespace Gtk { class Widget; } -namespace Glib { -class ustring; -} - namespace Inkscape { namespace Extension { diff --git a/src/extension/prefdialog/parameter-string.cpp b/src/extension/prefdialog/parameter-string.cpp index 63d1a7fab..2836f1c99 100644 --- a/src/extension/prefdialog/parameter-string.cpp +++ b/src/extension/prefdialog/parameter-string.cpp @@ -28,7 +28,7 @@ ParamString::ParamString(Inkscape::XML::Node *xml, Inkscape::Extension::Extensio value = xml->firstChild()->content(); } - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); _value = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); @@ -73,7 +73,7 @@ const Glib::ustring& ParamString::set(const Glib::ustring in, SPDocument * /*doc { _value = in; - gchar *pref_name = this->pref_name(); + char *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setString(extension_pref_root + pref_name, _value); g_free(pref_name); diff --git a/src/extension/prefdialog/parameter-string.h b/src/extension/prefdialog/parameter-string.h index fdf20db72..ac5d98943 100644 --- a/src/extension/prefdialog/parameter-string.h +++ b/src/extension/prefdialog/parameter-string.h @@ -12,9 +12,8 @@ #include "parameter.h" -namespace Glib { -class ustring; -} +#include <glibmm/ustring.h> + namespace Inkscape { namespace Extension { diff --git a/src/extension/prefdialog/parameter.cpp b/src/extension/prefdialog/parameter.cpp index 9bb87f7a2..61cf8c662 100644 --- a/src/extension/prefdialog/parameter.cpp +++ b/src/extension/prefdialog/parameter.cpp @@ -55,6 +55,9 @@ public: { return this->WidgetLabel::get_widget(doc, node, changeSignal); } + + // Well, no, I don't have a value! That's why I should not be an InxParameter! + void string(std::string &/*string*/) const override {} }; @@ -149,7 +152,7 @@ bool InxParameter::get_optiongroup_contains(const char *value, SPDocument const return param->contains(value, doc, node); } -guint32 InxParameter::get_color(const SPDocument* doc, Inkscape::XML::Node const *node) const +unsigned int InxParameter::get_color(const SPDocument* doc, Inkscape::XML::Node const *node) const { ParamColor const *param = dynamic_cast<ParamColor const *>(this); if (!param) { @@ -200,7 +203,7 @@ const char *InxParameter::set_optiongroup(const char *in, SPDocument *doc, Inksc return param->set(in, doc, node).c_str(); } -guint32 InxParameter::set_color(guint32 in, SPDocument *doc, Inkscape::XML::Node *node) +unsigned int InxParameter::set_color(unsigned int in, SPDocument *doc, Inkscape::XML::Node *node) { ParamColor*param = dynamic_cast<ParamColor *>(this); if (param == nullptr) @@ -256,15 +259,16 @@ InxParameter::~InxParameter() _description = nullptr; } -gchar *InxParameter::pref_name() const +char *InxParameter::pref_name() const { return g_strdup_printf("%s.%s", _extension->get_id(), _name); } -/** If I'm not sure which it is, just don't return a value. */ void InxParameter::string(std::string &/*string*/) const { - // TODO investigate clearing the target string. + // if we end up here we're missing a definition of ::string() in one of the subclasses + g_critical("InxParameter::string called from parameter '%s' in extension '%s'", _name, _extension->get_id()); + g_assert_not_reached(); } void InxParameter::string(std::list <std::string> &list) const @@ -282,12 +286,13 @@ void InxParameter::string(std::list <std::string> &list) const } } -InxParameter *InxParameter::get_param(const gchar */*name*/) + +InxParameter *InxParameter::get_param(const char */*name*/) { return nullptr; } -Glib::ustring const extension_pref_root = "/extensions/"; +const Glib::ustring InxParameter::extension_pref_root = "/extensions/"; } // namespace Extension } // namespace Inkscape diff --git a/src/extension/prefdialog/parameter.h b/src/extension/prefdialog/parameter.h index c7e6acb86..b5f662ebc 100644 --- a/src/extension/prefdialog/parameter.h +++ b/src/extension/prefdialog/parameter.h @@ -14,21 +14,18 @@ #ifndef SEEN_INK_EXTENSION_PARAM_H__ #define SEEN_INK_EXTENSION_PARAM_H__ -#include "widget.h" // TODO: Necessary? +#include "widget.h" + + +namespace Glib { +class ustring; +} namespace Inkscape { namespace Extension { /** - * The root directory in the preferences database for extension-related parameters. - * - * The directory path has both a leading and a trailing slash, so that extension_pref_root + pref_name works - * without having to append a separator. - */ -extern Glib::ustring const extension_pref_root; - -/** * A class to represent the parameter of an extension. * * This is really a super class that allows them to abstract all @@ -41,7 +38,7 @@ public: InxParameter(Inkscape::XML::Node *in_repr, Inkscape::Extension::Extension *ext); - virtual ~InxParameter(); + ~InxParameter() override; /** Wrapper to cast to the object and use its function. */ bool get_bool(SPDocument const *doc, Inkscape::XML::Node const *node) const; @@ -60,7 +57,7 @@ public: bool get_optiongroup_contains(const char *value, SPDocument const *doc, Inkscape::XML::Node const *node) const; /** Wrapper to cast to the object and use it's function. */ - guint32 get_color(SPDocument const *doc, Inkscape::XML::Node const *node) const; + unsigned int get_color(SPDocument const *doc, Inkscape::XML::Node const *node) const; /** Wrapper to cast to the object and use it's function. */ bool set_bool(bool in, SPDocument *doc, Inkscape::XML::Node *node); @@ -78,9 +75,9 @@ public: const char *set_optiongroup(const char *in, SPDocument *doc, Inkscape::XML::Node *node); /** Wrapper to cast to the object and use it's function. */ - guint32 set_color(guint32 in, SPDocument *doc, Inkscape::XML::Node *node); + unsigned int set_color(unsigned int in, SPDocument *doc, Inkscape::XML::Node *node); - gchar const *name() const { return _name; } + char const *name() const { return _name; } /** * This function creates a parameter that can be used later. This @@ -108,18 +105,23 @@ public: */ static InxParameter *make(Inkscape::XML::Node *in_repr, Inkscape::Extension::Extension *in_ext); - const gchar *get_tooltip() const override { return _description; } + const char *get_tooltip() const override { return _description; } virtual void string(std::list <std::string> &list) const; /** * Gets the current value of the parameter in a string form. - * @return A string with the 'value'. + * + * @return String representation of the parameter's value. + * + * \internal Must be implemented by all derived classes. + * Unfortunately it seems we can't make this a pure virtual function, + * as InxParameter is not supposed to be abstract. */ virtual void string(std::string &string) const; /** All the code in Notebook::get_param to get the notebook content. */ - virtual InxParameter *get_param(gchar const *name); + virtual InxParameter *get_param(char const *name); /** Recommended spacing between the widgets making up a single Parameter (e.g. label and input) (in px) */ @@ -139,13 +141,22 @@ public: protected: /** The name of this parameter. */ - gchar *_name = nullptr; + char *_name = nullptr; /** Parameter text to show as the GUI label. */ - gchar *_text = nullptr; + char *_text = nullptr; /** Extended description of the parameter (currently shown as tooltip on hover). */ - gchar *_description = nullptr; + char *_description = nullptr; + + + /** + * The root directory in the preferences database for extension-related parameters. + * + * The directory path has both a leading and a trailing slash, so that extension_pref_root + pref_name works + * without having to append a separator. + */ + static const Glib::ustring extension_pref_root; /* **** member functions **** */ @@ -153,7 +164,7 @@ protected: /** * Build the name to write the parameter from the extension's ID and the name of this parameter. */ - gchar *pref_name() const; + char *pref_name() const; }; } // namespace Extension diff --git a/src/extension/prefdialog/widget-label.h b/src/extension/prefdialog/widget-label.h index 57ffc5cb1..b99e3d798 100644 --- a/src/extension/prefdialog/widget-label.h +++ b/src/extension/prefdialog/widget-label.h @@ -17,6 +17,8 @@ #include "widget.h" +#include <glibmm/ustring.h> + class SPDocument; namespace Gtk { diff --git a/src/extension/prefdialog/widget.h b/src/extension/prefdialog/widget.h index 95285e2d6..ba688a70b 100644 --- a/src/extension/prefdialog/widget.h +++ b/src/extension/prefdialog/widget.h @@ -17,7 +17,6 @@ #include <vector> #include <sigc++/sigc++.h> -#include <glibmm/ustring.h> class SPDocument; @@ -64,7 +63,7 @@ public: virtual Gtk::Widget *get_widget(SPDocument *doc, Inkscape::XML::Node *node, sigc::signal<void> *changeSignal); - virtual const gchar *get_tooltip() const { return nullptr; } // tool-tips are exclusive to InxParameters for now + virtual const char *get_tooltip() const { return nullptr; } // tool-tips are exclusive to InxParameters for now /** Indicates if the widget is hidden or not */ bool get_hidden() const { return _hidden; } @@ -98,13 +97,13 @@ protected: int _indent = 0; /** Appearance of the Widget (not used by all Widgets). */ - gchar *_appearance = nullptr; + char *_appearance = nullptr; /** Is Widget translatable? */ Translatable _translatable = UNSET; /** context for translation of translatable strings. */ - gchar *_context = nullptr; + char *_context = nullptr; /* **** member functions **** */ diff --git a/src/ui/selected-color.h b/src/ui/selected-color.h index 6bb426b7f..1a00fc5cf 100644 --- a/src/ui/selected-color.h +++ b/src/ui/selected-color.h @@ -14,7 +14,9 @@ #ifndef SEEN_SELECTED_COLOR #define SEEN_SELECTED_COLOR +#include <glib.h> #include <sigc++/signal.h> + #include "color.h" namespace Gtk |
