diff options
| author | Ted Gould <ted@gould.cx> | 2008-04-04 04:55:24 +0000 |
|---|---|---|
| committer | gouldtj <gouldtj@users.sourceforge.net> | 2008-04-04 04:55:24 +0000 |
| commit | 8a2ba4f29d0304fef7631e0efec8b10a2dc99121 (patch) | |
| tree | 0eb2b0987084a55191da506c6c7e870bbe2d903d /src/extension/param/description.cpp | |
| parent | * packaging/macosx/ScriptExec/main.c: Add a comment to clarify what looks (diff) | |
| download | inkscape-8a2ba4f29d0304fef7631e0efec8b10a2dc99121.tar.gz inkscape-8a2ba4f29d0304fef7631e0efec8b10a2dc99121.zip | |
r18381@shi: ted | 2008-03-07 20:11:34 -0800
New work branch
r18391@shi: ted | 2008-03-08 21:36:03 -0800
Moving the parameters around to clean up the directories.
r18392@shi: ted | 2008-03-08 21:57:14 -0800
Moving the 'get' function to cpp
r18870@shi: ted | 2008-04-03 21:10:20 -0700
Adding in to the parameter prototype the ability to have a gui-tip and a gui-hidden parameter
r18871@shi: ted | 2008-04-03 21:17:39 -0700
Using the _gui-hidden parameter to block the creation of the widget if set.
r18890@shi: ted | 2008-04-03 21:53:55 -0700
Merge from r18024 which got lost in the shuffle.
(bzr r5322)
Diffstat (limited to 'src/extension/param/description.cpp')
| -rw-r--r-- | src/extension/param/description.cpp | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/src/extension/param/description.cpp b/src/extension/param/description.cpp new file mode 100644 index 000000000..61bfa9f5a --- /dev/null +++ b/src/extension/param/description.cpp @@ -0,0 +1,69 @@ +/* + * Copyright (C) 2005-2007 Authors: + * Ted Gould <ted@gould.cx> + * Johan Engelen <johan@shouraizou.nl> * + * Released under GNU GPL, read the file 'COPYING' for more information + */ + +#ifdef linux // does the dollar sign need escaping when passed as string parameter? +# define ESCAPE_DOLLAR_COMMANDLINE +#endif + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + + +#include "description.h" + +#include <gtkmm/adjustment.h> +#include <gtkmm/box.h> +#include <gtkmm/spinbutton.h> +#include <sstream> + + +#include <glibmm/i18n.h> + +#include <xml/node.h> + +#include <extension/extension.h> +#include <prefs-utils.h> + +namespace Inkscape { +namespace Extension { + + +/** \brief Initialize the object, to do that, copy the data. */ +ParamDescription::ParamDescription (const gchar * name, const gchar * guitext, const gchar * desc, const Parameter::_scope_t scope, bool gui_hidden, const gchar * gui_tip, Inkscape::Extension::Extension * ext, Inkscape::XML::Node * xml) : + Parameter(name, guitext, desc, scope, gui_hidden, gui_tip, ext), _value(NULL) +{ + // printf("Building Description\n"); + const char * defaultval = NULL; + if (sp_repr_children(xml) != NULL) + defaultval = sp_repr_children(xml)->content(); + + if (defaultval != NULL) + _value = g_strdup(defaultval); + + return; +} + +/** \brief Create a label for the description */ +Gtk::Widget * +ParamDescription::get_widget (SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/, sigc::signal<void> * /*changeSignal*/) +{ + if (_gui_hidden) return NULL; + + Gtk::Label * label = Gtk::manage(new Gtk::Label(_(_value))); + label->set_line_wrap(); + label->show(); + + Gtk::HBox * hbox = Gtk::manage(new Gtk::HBox(false, 4)); + hbox->pack_start(*label, true, true, 5); + hbox->show(); + + return hbox; +} + +} /* namespace Extension */ +} /* namespace Inkscape */ |
