summaryrefslogtreecommitdiffstats
path: root/src/extension/param
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2010-03-18 00:41:44 +0000
committerJon A. Cruz <jon@joncruz.org>2010-03-18 00:41:44 +0000
commit095cea090677d2fd6a4fd3c94b4812cff102772e (patch)
tree3b703ff52e58f6eeded1230782d89de778d51da8 /src/extension/param
parentFix Ctrl-drag in node tool with zero snap delay. (diff)
downloadinkscape-095cea090677d2fd6a4fd3c94b4812cff102772e.tar.gz
inkscape-095cea090677d2fd6a4fd3c94b4812cff102772e.zip
Added wrappers for the "optiongroup" type that correspond to existing "float", "enum" etc. wrappers.
(bzr r9201)
Diffstat (limited to 'src/extension/param')
-rw-r--r--src/extension/param/parameter.cpp21
-rw-r--r--src/extension/param/parameter.h4
2 files changed, 25 insertions, 0 deletions
diff --git a/src/extension/param/parameter.cpp b/src/extension/param/parameter.cpp
index 2773af61d..3320cddca 100644
--- a/src/extension/param/parameter.cpp
+++ b/src/extension/param/parameter.cpp
@@ -204,6 +204,16 @@ Parameter::get_enum (const SPDocument * doc, const Inkscape::XML::Node * node)
return param->get(doc, node);
}
+/** \brief Wrapper to cast to the object and use it's function. */
+gchar const *Parameter::get_optiongroup(SPDocument const * doc, Inkscape::XML::Node const * node)
+{
+ ParamRadioButton * param = dynamic_cast<ParamRadioButton *>(this);
+ if (!param) {
+ throw Extension::param_not_optiongroup_param();
+ }
+ return param->get(doc, node);
+}
+
guint32
Parameter::get_color(const SPDocument* doc, const Inkscape::XML::Node* node)
{
@@ -253,6 +263,17 @@ Parameter::set_string (const gchar * in, SPDocument * doc, Inkscape::XML::Node *
throw Extension::param_not_string_param();
return stringpntr->set(in, doc, node);
}
+
+gchar const * Parameter::set_optiongroup( gchar const * in, SPDocument * doc, Inkscape::XML::Node * node )
+{
+ ParamRadioButton *param = dynamic_cast<ParamRadioButton *>(this);
+ if (!param) {
+ throw Extension::param_not_optiongroup_param();
+ }
+ return param->set(in, doc, node);
+}
+
+
/** \brief Wrapper to cast to the object and use it's function. */
guint32
Parameter::set_color (guint32 in, SPDocument * doc, Inkscape::XML::Node * node)
diff --git a/src/extension/param/parameter.h b/src/extension/param/parameter.h
index 54249c12e..c62dad9cc 100644
--- a/src/extension/param/parameter.h
+++ b/src/extension/param/parameter.h
@@ -98,9 +98,13 @@ public:
const gchar * get_enum (const SPDocument * doc,
const Inkscape::XML::Node * node);
+ gchar const * get_optiongroup( SPDocument const * doc,
+ Inkscape::XML::Node const * node);
+
bool set_bool (bool in, SPDocument * doc, Inkscape::XML::Node * node);
int set_int (int in, SPDocument * doc, Inkscape::XML::Node * node);
float set_float (float in, SPDocument * doc, Inkscape::XML::Node * node);
+ gchar const * set_optiongroup(gchar const *in, SPDocument * doc, Inkscape::XML::Node *node);
const gchar * set_string (const gchar * in, SPDocument * doc, Inkscape::XML::Node * node);
guint32 set_color (guint32 in, SPDocument * doc, Inkscape::XML::Node * node);