index 54b5e554e3ee5a06316a6e894be05958ec123079..e1e27302c4e021ada5b1a4271dde5a673cf50fbe 100644 (file)
* Authors:
* Ted Gould <ted@gould.cx>
*
* Authors:
* Ted Gould <ted@gould.cx>
*
- * Copyright (C) 2005 Authors
+ * Copyright (C) 2005-2006 Authors
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
namespace Inkscape {
namespace Extension {
namespace Inkscape {
namespace Extension {
+/** \brief A class to represent the parameter of an extension
+
+ This is really a super class that allows them to abstract all
+ the different types of parameters into some that can be passed
+ around. There is also a few functions that are used by all the
+ different parameters.
+*/
class Parameter {
private:
/** \brief Which extension is this parameter attached to? */
Inkscape::Extension::Extension * extension;
/** \brief The name of this parameter. */
gchar * _name;
class Parameter {
private:
/** \brief Which extension is this parameter attached to? */
Inkscape::Extension::Extension * extension;
/** \brief The name of this parameter. */
gchar * _name;
+
+protected:
/** \brief Description of the parameter. */
gchar * _desc;
/** \brief List of possible scopes. */
/** \brief Description of the parameter. */
gchar * _desc;
/** \brief List of possible scopes. */
} _scope_t;
/** \brief Scope of the parameter. */
_scope_t _scope;
} _scope_t;
/** \brief Scope of the parameter. */
_scope_t _scope;
-
-protected:
/** \brief Text for the GUI selection of this. */
gchar * _text;
/** \brief Text for the GUI selection of this. */
gchar * _text;
- gchar * pref_name (void);
+
+
+ /* **** funcs **** */
+ gchar * pref_name (void);
+ Inkscape::XML::Node * find_child (Inkscape::XML::Node * adult);
+ Inkscape::XML::Node * document_param_node (SPDocument * doc);
+ Inkscape::XML::Node * new_child (Inkscape::XML::Node * parent);
public:
Parameter (const gchar * name,
public:
Parameter (const gchar * name,
Parameter(name, guitext, NULL, Parameter::SCOPE_USER, ext);
};
virtual ~Parameter (void);
Parameter(name, guitext, NULL, Parameter::SCOPE_USER, ext);
};
virtual ~Parameter (void);
- bool get_bool (const Inkscape::XML::Document * doc,
+ bool get_bool (const SPDocument * doc,
const Inkscape::XML::Node * node);
const Inkscape::XML::Node * node);
- int get_int (const Inkscape::XML::Document * doc,
+ int get_int (const SPDocument * doc,
const Inkscape::XML::Node * node);
const Inkscape::XML::Node * node);
- float get_float (const Inkscape::XML::Document * doc,
+ float get_float (const SPDocument * doc,
const Inkscape::XML::Node * node);
const Inkscape::XML::Node * node);
- const gchar * get_string (const Inkscape::XML::Document * doc,
+ const gchar * get_string (const SPDocument * doc,
const Inkscape::XML::Node * node);
const Inkscape::XML::Node * node);
- bool set_bool (bool in, Inkscape::XML::Document * doc, Inkscape::XML::Node * node);
- int set_int (int in, Inkscape::XML::Document * doc, Inkscape::XML::Node * node);
- float set_float (float in, Inkscape::XML::Document * doc, Inkscape::XML::Node * node);
- const gchar * set_string (const gchar * in, Inkscape::XML::Document * doc, Inkscape::XML::Node * 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);
+ const gchar * set_string (const gchar * in, SPDocument * doc, Inkscape::XML::Node * node);
const gchar * name (void) {return _name;}
static Parameter * make (Inkscape::XML::Node * in_repr, Inkscape::Extension::Extension * in_ext);
const gchar * name (void) {return _name;}
static Parameter * make (Inkscape::XML::Node * in_repr, Inkscape::Extension::Extension * in_ext);
- virtual Gtk::Widget * get_widget (void);
+ virtual Gtk::Widget * get_widget (SPDocument * doc, Inkscape::XML::Node * node);
virtual Glib::ustring * string (void);
virtual Glib::ustring * string (void);
+ gchar const * get_tooltip (void) { return _desc; }
};
};