summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolas Dufour <nicoduf@yahoo.fr>2011-03-25 15:09:55 +0000
committerJazzyNico <nicoduf@yahoo.fr>2011-03-25 15:09:55 +0000
commit939f84facd2f8beb4f5a1601c09bf7b71f1274a0 (patch)
tree45b38c9ce784ec1327204193b37ee0aab10d090c
parentemf import. create dummy object CREATEDIBPATTERNBRUSHPT (Bug 382420) (diff)
downloadinkscape-939f84facd2f8beb4f5a1601c09bf7b71f1274a0.tar.gz
inkscape-939f84facd2f8beb4f5a1601c09bf7b71f1274a0.zip
Extensions. Replacing the groupheader element with an appearance mode in the description element.
(bzr r10129)
-rw-r--r--share/extensions/grid_cartesian.inx4
-rw-r--r--share/extensions/grid_polar.inx4
-rw-r--r--share/extensions/perfectboundcover.inx6
-rw-r--r--share/extensions/printing-marks.inx2
-rw-r--r--share/extensions/webslicer_create_rect.inx6
-rw-r--r--src/extension/Makefile_insert2
-rwxr-xr-xsrc/extension/internal/filter/experimental.h6
-rw-r--r--src/extension/param/description.cpp26
-rw-r--r--src/extension/param/description.h18
-rwxr-xr-xsrc/extension/param/groupheader.cpp78
-rwxr-xr-xsrc/extension/param/groupheader.h45
-rw-r--r--src/extension/param/parameter.cpp9
12 files changed, 55 insertions, 151 deletions
diff --git a/share/extensions/grid_cartesian.inx b/share/extensions/grid_cartesian.inx
index 445f50904..52dda8f42 100644
--- a/share/extensions/grid_cartesian.inx
+++ b/share/extensions/grid_cartesian.inx
@@ -5,7 +5,7 @@
<dependency type="executable" location="extensions">grid_cartesian.py</dependency>
<dependency type="executable" location="extensions">inkex.py</dependency>
<param name="border_th" type="float" min="0" max="1000" _gui-text="Border Thickness (px):">3</param>
- <_param name="x_axis" type="groupheader">X Axis</_param>
+ <_param name="x_axis" type="description" appearance="header">X Axis</_param>
<param name="x_divs" type="int" min="1" max="1000" _gui-text="Major X Divisions:">6</param>
<param name="dx" type="float" min="1" max="1000" _gui-text="Major X Division Spacing (px):">100.0</param>
<param name="x_subdivs" type="int" min="1" max="1000" _gui-text="Subdivisions per Major X Division:">2</param>
@@ -15,7 +15,7 @@
<param name="x_divs_th" type="float" min="0" max="1000" _gui-text="Major X Division Thickness (px):">2</param>
<param name="x_subdivs_th" type="float" min="0" max="1000" _gui-text="Minor X Division Thickness (px):">1</param>
<param name="x_subsubdivs_th" type="float" min="0" max="1000" _gui-text="Subminor X Division Thickness (px):">0.3</param>
- <_param name="y_axis" type="groupheader">Y Axis</_param>
+ <_param name="y_axis" type="description" appearance="header">Y Axis</_param>
<param name="y_divs" type="int" min="1" max="1000" _gui-text="Major Y Divisions:">5</param>
<param name="dy" type="float" min="1" max="1000" _gui-text="Major Y Division Spacing (px):">100.0</param>
<param name="y_subdivs" type="int" min="1" max="1000" _gui-text="Subdivisions per Major Y Division:">1</param>
diff --git a/share/extensions/grid_polar.inx b/share/extensions/grid_polar.inx
index 7eb0efe52..1471043dd 100644
--- a/share/extensions/grid_polar.inx
+++ b/share/extensions/grid_polar.inx
@@ -11,14 +11,14 @@
</param>
<param name="a_label_size" type="int" min="1" max="1000" _gui-text="Circumferential Label Size (px):">18</param>
<param name="a_label_outset" type="float" min="0" max="1000" _gui-text="Circumferential Label Outset (px):">24</param>
- <_param name="circ_divs_label" type="groupheader">Circular Divisions</_param>
+ <_param name="circ_divs_label" type="description" appearance="header">Circular Divisions</_param>
<param name="r_divs" type="int" min="1" max="1000" _gui-text="Major Circular Divisions:">5</param>
<param name="dr" type="float" min="1" max="1000" _gui-text="Major Circular Division Spacing (px):">50.0</param>
<param name="r_subdivs" type="int" min="1" max="1000" _gui-text="Subdivisions per Major Circular Division:">3</param>
<param name="r_log" type="boolean" _gui-text="Logarithmic Subdiv. (Base given by entry above)">false</param>
<param name="r_divs_th" type="float" min="0" max="1000" _gui-text="Major Circular Division Thickness (px):">2</param>
<param name="r_subdivs_th" type="float" min="0" max="1000" _gui-text="Minor Circular Division Thickness (px):">1</param>
- <_param name="ang_divs_label" type="groupheader">Angular Divisions</_param>
+ <_param name="ang_divs_label" type="description" appearance="header">Angular Divisions</_param>
<param name="a_divs" type="int" min="1" max="1000" _gui-text="Angle Divisions:">24</param>
<param name="a_divs_cent" type="int" min="1" max="1000" _gui-text="Angle Divisions at Centre:">4</param>
<param name="a_subdivs" type="int" min="1" max="1000" _gui-text="Subdivisions per Major Angular Division:">1</param>
diff --git a/share/extensions/perfectboundcover.inx b/share/extensions/perfectboundcover.inx
index 4cbe27a7f..f36ad64a6 100644
--- a/share/extensions/perfectboundcover.inx
+++ b/share/extensions/perfectboundcover.inx
@@ -4,12 +4,12 @@
<id>org.coswellproductions.inkscape.effects.perfectboundcover</id>
<dependency type="executable" location="extensions">perfectboundcover.py</dependency>
<dependency type="executable" location="extensions">inkex.py</dependency>
- <_param name="book" type="groupheader">Book Properties</_param>
+ <_param name="book" type="description" appearance="header">Book Properties</_param>
<param name="width" precision="3" type="float" min="0.0" max="100.000" _gui-text="Book Width (inches):">6</param>
<param name="height" precision="3" type="float" min="0.0" max="100.000" _gui-text="Book Height (inches):">9</param>
<param name="pages" type="int" min="4" max="6000" _gui-text="Number of Pages:">64</param>
<param name="removeguides" type="boolean" _gui-text="Remove existing guides">true</param>
- <_param name="paper" type="groupheader">Interior Pages</_param>
+ <_param name="paper" type="description" appearance="header">Interior Pages</_param>
<param name="paperthicknessmeasurement" _gui-text="Paper Thickness Measurement:" type="enum">
<_item value="ppi">Pages Per Inch (PPI)</_item>
<_item value="caliper">Caliper (inches)</_item>
@@ -18,7 +18,7 @@
<_item value="width">Specify Width</_item>
</param>
<param precision="4" name="paperthickness" type="float" min="0.000" max="1000.000" _gui-text="Value:">0</param>
- <_param name="cover" type="groupheader">Cover</_param>
+ <_param name="cover" type="description" appearance="header">Cover</_param>
<param name="coverthicknessmeasurement" _gui-text="Cover Thickness Measurement:" type="enum">
<_item value="ppi">Pages Per Inch (PPI)</_item>
<_item value="caliper">Caliper (inches)</_item>
diff --git a/share/extensions/printing-marks.inx b/share/extensions/printing-marks.inx
index 612ae84f5..e5e072c34 100644
--- a/share/extensions/printing-marks.inx
+++ b/share/extensions/printing-marks.inx
@@ -27,7 +27,7 @@
<item value="mm">mm</item>
</param>
<param name="crop_offset" type="float" min="0.0" max="9999.0" _gui-text="Offset:">5</param>
- <_param name="bleed_settings" type="groupheader">Bleed Margin</_param>
+ <_param name="bleed_settings" type="description" appearance="header">Bleed Margin</_param>
<param name="bleed_top" type="float" min="0.0" max="9999.0" _gui-text="Top:">5</param>
<param name="bleed_bottom" type="float" min="0.0" max="9999.0" _gui-text="Bottom:">5</param>
<param name="bleed_left" type="float" min="0.0" max="9999.0" _gui-text="Left:">5</param>
diff --git a/share/extensions/webslicer_create_rect.inx b/share/extensions/webslicer_create_rect.inx
index 8a56c7892..5b3b447e9 100644
--- a/share/extensions/webslicer_create_rect.inx
+++ b/share/extensions/webslicer_create_rect.inx
@@ -19,12 +19,12 @@
<param name="bg-color" type="string" _gui-text="Background color:"></param>
<param name="tab" type="notebook">
<page name="tabJPG" gui-text="JPG">
- <_param name="help-jpg" type="groupheader">JPG specific options</_param>
+ <_param name="help-jpg" type="description" appearance="header">JPG specific options</_param>
<param name="quality" type="int" min="0" max="100" _gui-text="Quality:">85</param>
<_param name="help-quality" type="description">0 is the lowest image quality and highest compression, and 100 is the best quality but least effective compression</_param>
</page>
<page name="tabGIF" gui-text="GIF">
- <_param name="help-gif" type="groupheader">GIF specific options</_param>
+ <_param name="help-gif" type="description" appearance="header">GIF specific options</_param>
<param name="gif-type" type="enum" _gui-text="Type:">
<_item value="grayscale">Grayscale</_item>
<_item value="palette">Palette</_item>
@@ -34,7 +34,7 @@
<page name="tabHTML" gui-text="HTML">
<param name="html-id" type="string" _gui-text="HTML id attribute:"></param>
<param name="html-class" type="string" _gui-text="HTML class attribute:"></param>
- <_param name="help-gif" type="groupheader">Options for HTML export</_param>
+ <_param name="help-gif" type="description" appearance="header">Options for HTML export</_param>
<param name="layout-disposition" type="enum" _gui-text="Layout disposition:">
<_item value="bg-el-norepeat">Positioned html block element with the image as Background</_item>
<_item value="bg-parent-repeat">Tiled Background (on parent group)</_item>
diff --git a/src/extension/Makefile_insert b/src/extension/Makefile_insert
index b9ce224ca..ffcee5f9a 100644
--- a/src/extension/Makefile_insert
+++ b/src/extension/Makefile_insert
@@ -24,8 +24,6 @@ ink_common_sources += \
extension/param/color.cpp \
extension/param/description.h \
extension/param/description.cpp \
- extension/param/groupheader.h \
- extension/param/groupheader.cpp \
extension/param/enum.h \
extension/param/enum.cpp \
extension/param/float.h \
diff --git a/src/extension/internal/filter/experimental.h b/src/extension/internal/filter/experimental.h
index 6617866f5..efc35b418 100755
--- a/src/extension/internal/filter/experimental.h
+++ b/src/extension/internal/filter/experimental.h
@@ -331,16 +331,16 @@ public:
"<id>org.inkscape.effect.filter.Drawing</id>\n"
"<param name=\"tab\" type=\"notebook\">\n"
"<page name=\"optionstab\" _gui-text=\"Options\">\n"
- "<_param name=\"simplifyheader\" type=\"groupheader\">Simplify</_param>\n"
+ "<_param name=\"simplifyheader\" type=\"description\" appearance=\"header\">Simplify</_param>\n"
"<param name=\"simply\" gui-text=\"" N_("Strength:") "\" type=\"float\" appearance=\"full\" precision=\"2\" min=\"0.01\" max=\"20.00\">0.6</param>\n"
"<param name=\"clean\" gui-text=\"" N_("Clean-up:") "\" type=\"int\" appearance=\"full\" min=\"1\" max=\"500\">10</param>\n"
"<param name=\"erase\" gui-text=\"" N_("Erase:") "\" type=\"float\" appearance=\"full\" min=\"0\" max=\"60\">0</param>\n"
"<param name=\"transluscent\" gui-text=\"" N_("Transluscent") "\" type=\"boolean\" >false</param>\n"
- "<_param name=\"smoothheader\" type=\"groupheader\">Smoothness</_param>\n"
+ "<_param name=\"smoothheader\" type=\"description\" appearance=\"header\">Smoothness</_param>\n"
"<param name=\"smooth\" gui-text=\"" N_("Strength:") "\" type=\"float\" appearance=\"full\" precision=\"2\" min=\"0.01\" max=\"20.00\">0.6</param>\n"
"<param name=\"dilat\" gui-text=\"" N_("Dilatation:") "\" type=\"float\" appearance=\"full\" min=\"1\" max=\"50\">6</param>\n"
"<param name=\"erosion\" gui-text=\"" N_("Erosion:") "\" type=\"float\" appearance=\"full\" min=\"0\" max=\"50\">2</param>\n"
- "<_param name=\"meltheader\" type=\"groupheader\">Melt</_param>\n"
+ "<_param name=\"meltheader\" type=\"description\" appearance=\"header\">Melt</_param>\n"
"<param name=\"blur\" gui-text=\"" N_("Level:") "\" type=\"float\" appearance=\"full\" precision=\"2\" min=\"0.01\" max=\"20.00\">1</param>\n"
"<param name=\"bdilat\" gui-text=\"" N_("Dilatation:") "\" type=\"float\" appearance=\"full\" min=\"1\" max=\"50\">6</param>\n"
"<param name=\"berosion\" gui-text=\"" N_("Erosion:") "\" type=\"float\" appearance=\"full\" min=\"0\" max=\"50\">2</param>\n"
diff --git a/src/extension/param/description.cpp b/src/extension/param/description.cpp
index f17b45b4b..049b7d5a3 100644
--- a/src/extension/param/description.cpp
+++ b/src/extension/param/description.cpp
@@ -30,8 +30,16 @@ 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)
+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,
+ AppearanceMode mode) :
+ Parameter(name, guitext, desc, scope, gui_hidden, gui_tip, ext), _value(NULL), _mode(mode)
{
// printf("Building Description\n");
const char * defaultval = NULL;
@@ -60,13 +68,21 @@ ParamDescription::get_widget (SPDocument * /*doc*/, Inkscape::XML::Node * /*node
newguitext = _(_value);
}
- Gtk::Label * label = Gtk::manage(new Gtk::Label(newguitext, Gtk::ALIGN_LEFT));
-
+ Gtk::Label * label;
+ int padding = 12;
+ if (_mode == HEADER) {
+ label = Gtk::manage(new Gtk::Label(Glib::ustring("<b>") +newguitext + Glib::ustring("</b>"), Gtk::ALIGN_LEFT));
+ label->set_padding(0,5);
+ label->set_use_markup(true);
+ padding = 0;
+ } else {
+ label = Gtk::manage(new Gtk::Label(newguitext, Gtk::ALIGN_LEFT));
+ }
label->set_line_wrap();
label->show();
Gtk::HBox * hbox = Gtk::manage(new Gtk::HBox(false, 4));
- hbox->pack_start(*label, true, true, 12);
+ hbox->pack_start(*label, true, true, padding);
hbox->show();
return hbox;
diff --git a/src/extension/param/description.h b/src/extension/param/description.h
index c56b5c21d..c34e4ee38 100644
--- a/src/extension/param/description.h
+++ b/src/extension/param/description.h
@@ -18,13 +18,25 @@ namespace Extension {
/** \brief A description parameter */
class ParamDescription : public Parameter {
+public:
+ enum AppearanceMode {
+ DESC, HEADER
+ };
+ 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,
+ AppearanceMode mode);
+ Gtk::Widget * get_widget(SPDocument * doc, Inkscape::XML::Node * node, sigc::signal<void> * changeSignal);
private:
/** \brief Internal value. */
gchar * _value;
+ AppearanceMode _mode;
const gchar* _context;
-public:
- 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);
- Gtk::Widget * get_widget(SPDocument * doc, Inkscape::XML::Node * node, sigc::signal<void> * changeSignal);
};
} /* namespace Extension */
diff --git a/src/extension/param/groupheader.cpp b/src/extension/param/groupheader.cpp
deleted file mode 100755
index abf5f8beb..000000000
--- a/src/extension/param/groupheader.cpp
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * Copyright (C) 2005-2010 Authors:
- * Ted Gould <ted@gould.cx>
- * Johan Engelen <johan@shouraizou.nl> *
- * Nicolas Dufour <nicoduf@yahoo.fr>
- * 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 "groupheader.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"
-
-namespace Inkscape {
-namespace Extension {
-
-
-/** \brief Initialize the object, to do that, copy the data. */
-ParamGroupHeader::ParamGroupHeader (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 GroupHeader\n");
- const char * defaultval = NULL;
- if (sp_repr_children(xml) != NULL)
- defaultval = sp_repr_children(xml)->content();
-
- if (defaultval != NULL)
- _value = g_strdup(defaultval);
-
- _context = xml->attribute("msgctxt");
-
- return;
-}
-
-/** \brief Create a label for the GroupHeader */
-Gtk::Widget *
-ParamGroupHeader::get_widget (SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/, sigc::signal<void> * /*changeSignal*/)
-{
- if (_gui_hidden) return NULL;
-
- Glib::ustring newguitext;
-
- if (_context != NULL) {
- newguitext = g_dpgettext2(NULL, _context, _value);
- } else {
- newguitext = _(_value);
- }
-
- Gtk::Label * label = Gtk::manage(new Gtk::Label(Glib::ustring("<b>") +newguitext + Glib::ustring("</b>"), Gtk::ALIGN_LEFT));
- label->set_line_wrap();
- label->set_padding(0,5);
- label->set_use_markup(true);
- label->show();
-
- Gtk::HBox * hbox = Gtk::manage(new Gtk::HBox(false, 4));
- hbox->pack_start(*label, true, true);
- hbox->show();
-
- return hbox;
-}
-
-} /* namespace Extension */
-} /* namespace Inkscape */
diff --git a/src/extension/param/groupheader.h b/src/extension/param/groupheader.h
deleted file mode 100755
index 94fe880f9..000000000
--- a/src/extension/param/groupheader.h
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef __INK_EXTENSION_PARAMGROUPHEADER_H__
-#define __INK_EXTENSION_PARAMGROUPHEADER_H__
-
-/*
- * Copyright (C) 2005-2010 Authors:
- * Ted Gould <ted@gould.cx>
- * Johan Engelen <johan@shouraizou.nl> *
- * Nicolas Dufour <nicoduf@yahoo.fr>
- * Released under GNU GPL, read the file 'COPYING' for more information
- */
-
-#include <gtkmm/widget.h>
-#include <xml/node.h>
-#include <document.h>
-#include "parameter.h"
-
-namespace Inkscape {
-namespace Extension {
-
-/** \brief A GroupLabel parameter */
-class ParamGroupHeader : public Parameter {
-private:
- /** \brief Internal value. */
- gchar * _value;
- const gchar* _context;
-public:
- ParamGroupHeader(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);
- Gtk::Widget * get_widget(SPDocument * doc, Inkscape::XML::Node * node, sigc::signal<void> * changeSignal);
-};
-
-} /* namespace Extension */
-} /* namespace Inkscape */
-
-#endif /* __INK_EXTENSION_PARAMGROUPHEADER_H__ */
-
-/*
- Local Variables:
- mode:c++
- c-file-style:"stroustrup"
- c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
- indent-tabs-mode:nil
- fill-column:99
- End:
-*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :
diff --git a/src/extension/param/parameter.cpp b/src/extension/param/parameter.cpp
index d35fb3d3c..a9935cfe6 100644
--- a/src/extension/param/parameter.cpp
+++ b/src/extension/param/parameter.cpp
@@ -36,7 +36,6 @@
#include "bool.h"
#include "color.h"
#include "description.h"
-#include "groupheader.h"
#include "enum.h"
#include "float.h"
#include "int.h"
@@ -143,9 +142,11 @@ Parameter::make (Inkscape::XML::Node * in_repr, Inkscape::Extension::Extension *
ps->setMaxLength(atoi(max_length));
}
} else if (!strcmp(type, "description")) {
- param = new ParamDescription(name, guitext, desc, scope, gui_hidden, gui_tip, in_ext, in_repr);
- } else if (!strcmp(type, "groupheader")) {
- param = new ParamGroupHeader(name, guitext, desc, scope, gui_hidden, gui_tip, in_ext, in_repr);
+ if (appearance && !strcmp(appearance, "header")) {
+ param = new ParamDescription(name, guitext, desc, scope, gui_hidden, gui_tip, in_ext, in_repr, ParamDescription::HEADER);
+ } else {
+ param = new ParamDescription(name, guitext, desc, scope, gui_hidden, gui_tip, in_ext, in_repr, ParamDescription::DESC);
+ }
} else if (!strcmp(type, "enum")) {
param = new ParamComboBox(name, guitext, desc, scope, gui_hidden, gui_tip, in_ext, in_repr);
} else if (!strcmp(type, "notebook")) {