X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fextension%2Fparameter.h;h=e1e27302c4e021ada5b1a4271dde5a673cf50fbe;hb=7150f0829e7f5452f5cab605b8014a245f9b7e7c;hp=54b5e554e3ee5a06316a6e894be05958ec123079;hpb=c8c1601a56503ed517dcc965040e00ca6139d75b;p=inkscape.git diff --git a/src/extension/parameter.h b/src/extension/parameter.h index 54b5e554e..e1e27302c 100644 --- a/src/extension/parameter.h +++ b/src/extension/parameter.h @@ -9,7 +9,7 @@ * Authors: * Ted Gould * - * Copyright (C) 2005 Authors + * Copyright (C) 2005-2006 Authors * * Released under GNU GPL, read the file 'COPYING' for more information */ @@ -21,12 +21,21 @@ 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; + +protected: /** \brief Description of the parameter. */ gchar * _desc; /** \brief List of possible scopes. */ @@ -37,11 +46,15 @@ private: } _scope_t; /** \brief Scope of the parameter. */ _scope_t _scope; - -protected: /** \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, @@ -55,25 +68,26 @@ public: 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); - int get_int (const Inkscape::XML::Document * doc, + int get_int (const SPDocument * doc, 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 gchar * get_string (const Inkscape::XML::Document * doc, + const gchar * get_string (const SPDocument * doc, 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); - virtual Gtk::Widget * get_widget (void); + virtual Gtk::Widget * get_widget (SPDocument * doc, Inkscape::XML::Node * node); virtual Glib::ustring * string (void); + gchar const * get_tooltip (void) { return _desc; } };