diff options
| author | Ted Gould <ted@gould.cx> | 2008-10-27 18:03:09 +0000 |
|---|---|---|
| committer | Ted Gould <ted@canonical.com> | 2008-10-27 18:03:09 +0000 |
| commit | 7dbe11bc23efa5f51a9b84e7d0f6dd16e63e0902 (patch) | |
| tree | 7d3a2b95b84a03a19cb132cdf88bea0ab6dc4773 /src/extension | |
| parent | Merging from trunk (diff) | |
| download | inkscape-7dbe11bc23efa5f51a9b84e7d0f6dd16e63e0902.tar.gz inkscape-7dbe11bc23efa5f51a9b84e7d0f6dd16e63e0902.zip | |
From trunk
(bzr r6885)
Diffstat (limited to 'src/extension')
| -rw-r--r-- | src/extension/error-file.cpp | 13 | ||||
| -rw-r--r-- | src/extension/implementation/script.cpp | 2 | ||||
| -rw-r--r-- | src/extension/init.cpp | 14 | ||||
| -rw-r--r-- | src/extension/internal/bluredge.cpp | 11 | ||||
| -rw-r--r-- | src/extension/internal/cairo-ps-out.cpp | 207 | ||||
| -rw-r--r-- | src/extension/internal/cairo-renderer-pdf-out.cpp | 28 | ||||
| -rw-r--r-- | src/extension/internal/cairo-renderer.cpp | 71 | ||||
| -rw-r--r-- | src/extension/internal/gdkpixbuf-input.cpp | 1 | ||||
| -rw-r--r-- | src/extension/internal/pdfinput/svg-builder.cpp | 4 | ||||
| -rw-r--r-- | src/extension/param/bool.cpp | 21 | ||||
| -rw-r--r-- | src/extension/param/color.cpp | 4 | ||||
| -rw-r--r-- | src/extension/param/color.h | 6 | ||||
| -rw-r--r-- | src/extension/param/description.cpp | 8 | ||||
| -rw-r--r-- | src/extension/param/enum.cpp | 20 | ||||
| -rw-r--r-- | src/extension/param/float.cpp | 12 | ||||
| -rw-r--r-- | src/extension/param/int.cpp | 25 | ||||
| -rw-r--r-- | src/extension/param/notebook.cpp | 14 | ||||
| -rw-r--r-- | src/extension/param/parameter.cpp | 12 | ||||
| -rw-r--r-- | src/extension/param/parameter.h | 32 | ||||
| -rw-r--r-- | src/extension/param/radiobutton.cpp | 10 | ||||
| -rw-r--r-- | src/extension/param/string.cpp | 9 |
21 files changed, 245 insertions, 279 deletions
diff --git a/src/extension/error-file.cpp b/src/extension/error-file.cpp index ec2878f5d..7e40522b3 100644 --- a/src/extension/error-file.cpp +++ b/src/extension/error-file.cpp @@ -16,7 +16,7 @@ #include "inkscape.h" -#include "prefs-utils.h" +#include "preferences.h" #include "dialogs/extensions.h" #include "extension/extension.h" @@ -24,7 +24,7 @@ /** The name and group of the preference to say whether the error dialog should be shown on startup. */ -#define PREFERENCE_ID "dialogs.extension-error", "show-on-startup" +#define PREFERENCE_ID "/dialogs/extension-error/show-on-startup" namespace Inkscape { namespace Extension { @@ -59,10 +59,11 @@ ErrorFileNotice::ErrorFileNotice (void) : Gtk::VBox * vbox = get_vbox(); /* This is some filler text, needs to change before relase */ + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); checkbutton = Gtk::manage(new Gtk::CheckButton(_("Show dialog on startup"))); vbox->pack_start(*checkbutton, true, false, 5); checkbutton->show(); - checkbutton->set_active(prefs_get_int_attribute(PREFERENCE_ID, 1) == 0 ? false : true); + checkbutton->set_active(prefs->getBool(PREFERENCE_ID, true)); checkbutton->signal_toggled().connect(sigc::mem_fun(this, &ErrorFileNotice::checkbox_toggle)); @@ -81,7 +82,8 @@ void ErrorFileNotice::checkbox_toggle (void) { // std::cout << "Toggle value" << std::endl; - prefs_set_int_attribute(PREFERENCE_ID, checkbutton->get_active() ? 1 : 0); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + prefs->setBool(PREFERENCE_ID, checkbutton->get_active()); } /** \brief Shows the dialog @@ -92,7 +94,8 @@ ErrorFileNotice::checkbox_toggle (void) int ErrorFileNotice::run (void) { - if (prefs_get_int_attribute(PREFERENCE_ID, 1) == 0) + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + if (!prefs->getBool(PREFERENCE_ID, true)) return 0; return Gtk::Dialog::run(); } diff --git a/src/extension/implementation/script.cpp b/src/extension/implementation/script.cpp index 9475b4796..fc94205b6 100644 --- a/src/extension/implementation/script.cpp +++ b/src/extension/implementation/script.cpp @@ -120,7 +120,7 @@ Script::resolveInterpreterExecutable(const Glib::ustring &interpNameArg) // 1. Check preferences Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring prefInterp = prefs->getString("extensions", interp->prefstring); + Glib::ustring prefInterp = prefs->getString("/extensions/" + Glib::ustring(interp->prefstring)); if (!prefInterp.empty()) { interpName = prefInterp; diff --git a/src/extension/init.cpp b/src/extension/init.cpp index 9a5aea86c..afacbed63 100644 --- a/src/extension/init.cpp +++ b/src/extension/init.cpp @@ -19,6 +19,7 @@ #include "inkscape.h" +#include <glibmm/ustring.h> #include <glibmm/i18n.h> #include "system.h" @@ -118,17 +119,16 @@ static void check_extensions(); * \brief Examines the given string preference and checks to see * that at least one of the registered extensions matches * it. If not, a default is assigned. - * \param pref_path Preference path to load - * \param pref_attr Attribute to load from the preference + * \param pref_path Preference path to update * \param pref_default Default string to set * \param extension_family List of extensions to search */ static void -update_pref(gchar const *pref_path, gchar const *pref_attr, +update_pref(Glib::ustring const &pref_path, gchar const *pref_default) // , GSList *extension_family) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring pref = prefs->getString(pref_path, pref_attr); + Glib::ustring pref = prefs->getString(pref_path); /* gboolean missing=TRUE; for (GSList *list = extension_family; list; list = g_slist_next(list)) { @@ -141,7 +141,7 @@ update_pref(gchar const *pref_path, gchar const *pref_attr, } */ if (!Inkscape::Extension::db.get( pref.data() ) /*missing*/) { - prefs->setString(pref_path, pref_attr, pref_default); + prefs->setString(pref_path, pref_default); } } @@ -164,7 +164,7 @@ init() //Internal::EpsOutput::init(); // disabled, to be deleted, replaced by CairoEpsOutput Internal::PrintPS::init(); #ifdef HAVE_CAIRO_PDF - if (prefs->getInt("options.useoldpdfexporter", "value", 1) == 1) { + if (prefs->getBool("/options/useoldpdfexporter/value")) { //g_print ("Using CairoPdfOutput: old pdf exporter\n"); Internal::CairoPdfOutput::init(); Internal::PrintCairoPDF::init(); @@ -268,7 +268,7 @@ init() /* This is a hack to deal with updating saved outdated module * names in the prefs... */ - update_pref("dialogs.save_as", "default", + update_pref("/dialogs/save_as/default", SP_MODULE_KEY_OUTPUT_SVG_INKSCAPE // Inkscape::Extension::db.get_output_list() ); diff --git a/src/extension/internal/bluredge.cpp b/src/extension/internal/bluredge.cpp index 80454f9ed..e32012070 100644 --- a/src/extension/internal/bluredge.cpp +++ b/src/extension/internal/bluredge.cpp @@ -16,7 +16,7 @@ #include "desktop.h" #include "selection.h" #include "helper/action.h" -#include "prefs-utils.h" +#include "preferences.h" #include "path-chemistry.h" #include "sp-item.h" @@ -58,7 +58,8 @@ BlurEdge::effect (Inkscape::Extension::Effect *module, Inkscape::UI::View::View float width = module->get_param_float("blur-width"); int steps = module->get_param_int("num-steps"); - double old_offset = prefs_get_double_attribute("options.defaultoffsetwidth", "value", 1.0); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + double old_offset = prefs->getDouble("/options/defaultoffsetwidth/value", 1.0); using Inkscape::Util::GSListConstIterator; // TODO need to properly refcount the items, at least @@ -96,10 +97,10 @@ BlurEdge::effect (Inkscape::Extension::Effect *module, Inkscape::UI::View::View if (offset < 0.0) { /* Doing an inset here folks */ offset *= -1.0; - prefs_set_double_attribute("options.defaultoffsetwidth", "value", offset); + prefs->setDouble("/options/defaultoffsetwidth/value", offset); sp_action_perform(Inkscape::Verb::get(SP_VERB_SELECTION_INSET)->get_action(desktop), NULL); } else if (offset > 0.0) { - prefs_set_double_attribute("options.defaultoffsetwidth", "value", offset); + prefs->setDouble("/options/defaultoffsetwidth/value", offset); sp_action_perform(Inkscape::Verb::get(SP_VERB_SELECTION_OFFSET)->get_action(desktop), NULL); } @@ -109,7 +110,7 @@ BlurEdge::effect (Inkscape::Extension::Effect *module, Inkscape::UI::View::View Inkscape::GC::release(new_group); } - prefs_set_double_attribute("options.defaultoffsetwidth", "value", old_offset); + prefs->setDouble("/options/defaultoffsetwidth/value", old_offset); selection->clear(); selection->add(items.begin(), items.end()); diff --git a/src/extension/internal/cairo-ps-out.cpp b/src/extension/internal/cairo-ps-out.cpp index fba0ab571..01afec0fc 100644 --- a/src/extension/internal/cairo-ps-out.cpp +++ b/src/extension/internal/cairo-ps-out.cpp @@ -61,23 +61,35 @@ CairoEpsOutput::check (Inkscape::Extension::Extension * module) } static bool -ps_print_document_to_file(SPDocument *doc, gchar const *filename, unsigned int level, bool texttopath, bool filtertobitmap, int resolution, bool eps = false) +ps_print_document_to_file(SPDocument *doc, gchar const *filename, unsigned int level, bool texttopath, bool filtertobitmap, int resolution, const gchar * const exportId, bool exportDrawing, bool exportCanvas, bool eps = false) { - CairoRenderer *renderer; - CairoRenderContext *ctx; - sp_document_ensure_up_to_date(doc); -/* Start */ + SPItem *base = NULL; + + bool pageBoundingBox = TRUE; + if (exportId && strcmp(exportId, "")) { + // we want to export the given item only + base = SP_ITEM(doc->getObjectById(exportId)); + pageBoundingBox = exportCanvas; + } + else { + // we want to export the entire document from root + base = SP_ITEM(sp_document_root(doc)); + pageBoundingBox = !exportDrawing; + } + + if (!base) + return false; + /* Create new arena */ - SPItem *base = SP_ITEM(sp_document_root(doc)); NRArena *arena = NRArena::create(); unsigned dkey = sp_item_display_key_new(1); - NRArenaItem *root = sp_item_invoke_show(base, arena, dkey, SP_ITEM_SHOW_DISPLAY); + sp_item_invoke_show(base, arena, dkey, SP_ITEM_SHOW_DISPLAY); /* Create renderer and context */ - renderer = new CairoRenderer(); - ctx = renderer->createContext(); + CairoRenderer *renderer = new CairoRenderer(); + CairoRenderContext *ctx = renderer->createContext(); ctx->setPSLevel(level); ctx->setEPS(eps); ctx->setTextToPath(texttopath); @@ -87,22 +99,21 @@ ps_print_document_to_file(SPDocument *doc, gchar const *filename, unsigned int l bool ret = ctx->setPsTarget(filename); if(ret) { /* Render document */ - ret = renderer->setupDocument(ctx, doc, TRUE, NULL); + ret = renderer->setupDocument(ctx, doc, pageBoundingBox, base); if (ret) { renderer->renderItem(ctx, base); ret = ctx->finish(); } } - renderer->destroyContext(ctx); /* Release arena */ sp_item_invoke_hide(base, dkey); nr_object_unref((NRObject *) arena); -/* end */ + + renderer->destroyContext(ctx); delete renderer; return ret; - } @@ -122,89 +133,51 @@ CairoPsOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, const gc if (ext == NULL) return; - const gchar *old_level = NULL; const gchar *new_level = NULL; - int level = 1; + int level = CAIRO_PS_LEVEL_2; try { - old_level = ext->get_param_enum("PSlevel"); new_level = mod->get_param_enum("PSlevel"); - if((new_level != NULL) && (g_ascii_strcasecmp("PS2", new_level) == 0)) - level = 0; -// ext->set_param_enum("PSlevel", new_level); - } - catch(...) { - g_warning("Parameter <PSlevel> might not exists"); - } + if((new_level != NULL) && !(g_ascii_strcasecmp("PS3", new_level) == 0)) + level = CAIRO_PS_LEVEL_3; + } catch(...) {} - bool old_textToPath = FALSE; bool new_textToPath = FALSE; try { - old_textToPath = ext->get_param_bool("textToPath"); new_textToPath = mod->get_param_bool("textToPath"); - ext->set_param_bool("textToPath", new_textToPath); - } - catch(...) { - g_warning("Parameter <textToPath> might not exists"); - } + } catch(...) {} - bool old_blurToBitmap = FALSE; bool new_blurToBitmap = FALSE; try { - old_blurToBitmap = ext->get_param_bool("blurToBitmap"); new_blurToBitmap = mod->get_param_bool("blurToBitmap"); - ext->set_param_bool("blurToBitmap", new_blurToBitmap); - } - catch(...) { - g_warning("Parameter <blurToBitmap> might not exists"); - } + } catch(...) {} - int old_bitmapResolution = 72; int new_bitmapResolution = 72; try { - old_bitmapResolution = ext->get_param_int("resolution"); new_bitmapResolution = mod->get_param_int("resolution"); - ext->set_param_int("resolution", new_bitmapResolution); - } - catch(...) { - g_warning("Parameter <resolution> might not exists"); - } - - gchar * final_name; - final_name = g_strdup_printf("> %s", uri); - ret = ps_print_document_to_file(doc, final_name, level, new_textToPath, new_blurToBitmap, new_bitmapResolution); - g_free(final_name); + } catch(...) {} + bool new_areaCanvas = true; try { - ext->set_param_int("resolution", old_bitmapResolution); - } - catch(...) { - g_warning("Parameter <resolution> might not exists"); - } - try { - ext->set_param_bool("blurToBitmap", old_blurToBitmap); - } - catch(...) { - g_warning("Parameter <blurToBitmap> might not exists"); - } + new_areaCanvas = mod->get_param_bool("areaCanvas"); + } catch(...) {} + + bool new_areaDrawing = true; try { - ext->set_param_bool("textToPath", old_textToPath); - } - catch(...) { - g_warning("Parameter <textToPath> might not exists"); - } + new_areaDrawing = mod->get_param_bool("areaDrawing"); + } catch(...) {} + + const gchar *new_exportId = NULL; try { -// ext->set_param_enum("PSlevel", old_level); - } - catch(...) { - g_warning("Parameter <PSlevel> might not exists"); - } + new_exportId = mod->get_param_string("exportId"); + } catch(...) {} + gchar * final_name; + final_name = g_strdup_printf("> %s", uri); + ret = ps_print_document_to_file(doc, final_name, level, new_textToPath, new_blurToBitmap, new_bitmapResolution, new_exportId, new_areaDrawing, new_areaCanvas); + g_free(final_name); if (!ret) throw Inkscape::Extension::Output::save_failed(); - - return; - } @@ -224,89 +197,51 @@ CairoEpsOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, const g if (ext == NULL) return; - const gchar *old_level = NULL; const gchar *new_level = NULL; - int level = 1; + int level = CAIRO_PS_LEVEL_2; try { - old_level = ext->get_param_enum("PSlevel"); new_level = mod->get_param_enum("PSlevel"); - if((new_level != NULL) && (g_ascii_strcasecmp("PS2", new_level) == 0)) - level = 0; -// ext->set_param_enum("PSlevel", new_level); - } - catch(...) { - g_warning("Parameter <PSlevel> might not exists"); - } + if((new_level != NULL) && !(g_ascii_strcasecmp("PS3", new_level) == 0)) + level = CAIRO_PS_LEVEL_3; + } catch(...) {} - bool old_textToPath = FALSE; bool new_textToPath = FALSE; try { - old_textToPath = ext->get_param_bool("textToPath"); new_textToPath = mod->get_param_bool("textToPath"); - ext->set_param_bool("textToPath", new_textToPath); - } - catch(...) { - g_warning("Parameter <textToPath> might not exists"); - } + } catch(...) {} - bool old_blurToBitmap = FALSE; bool new_blurToBitmap = FALSE; try { - old_blurToBitmap = ext->get_param_bool("blurToBitmap"); new_blurToBitmap = mod->get_param_bool("blurToBitmap"); - ext->set_param_bool("blurToBitmap", new_blurToBitmap); - } - catch(...) { - g_warning("Parameter <blurToBitmap> might not exists"); - } + } catch(...) {} - int old_bitmapResolution = 72; int new_bitmapResolution = 72; try { - old_bitmapResolution = ext->get_param_int("resolution"); new_bitmapResolution = mod->get_param_int("resolution"); - ext->set_param_int("resolution", new_bitmapResolution); - } - catch(...) { - g_warning("Parameter <resolution> might not exists"); - } - - gchar * final_name; - final_name = g_strdup_printf("> %s", uri); - ret = ps_print_document_to_file(doc, final_name, level, new_textToPath, new_blurToBitmap, new_bitmapResolution, true); - g_free(final_name); + } catch(...) {} + bool new_areaCanvas = true; try { - ext->set_param_int("resolution", old_bitmapResolution); - } - catch(...) { - g_warning("Parameter <resolution> might not exists"); - } - try { - ext->set_param_bool("blurToBitmap", old_blurToBitmap); - } - catch(...) { - g_warning("Parameter <blurToBitmap> might not exists"); - } + new_areaCanvas = mod->get_param_bool("areaCanvas"); + } catch(...) {} + + bool new_areaDrawing = true; try { - ext->set_param_bool("textToPath", old_textToPath); - } - catch(...) { - g_warning("Parameter <textToPath> might not exists"); - } + new_areaDrawing = mod->get_param_bool("areaDrawing"); + } catch(...) {} + + const gchar *new_exportId = NULL; try { -// ext->set_param_enum("PSlevel", old_level); - } - catch(...) { - g_warning("Parameter <PSlevel> might not exists"); - } + new_exportId = mod->get_param_string("exportId"); + } catch(...) {} + gchar * final_name; + final_name = g_strdup_printf("> %s", uri); + ret = ps_print_document_to_file(doc, final_name, level, new_textToPath, new_blurToBitmap, new_bitmapResolution, new_exportId, new_areaDrawing, new_areaCanvas, true); + g_free(final_name); if (!ret) throw Inkscape::Extension::Output::save_failed(); - - return; - } @@ -344,9 +279,12 @@ CairoPsOutput::init (void) "<_item value='PS2'>" N_("PostScript level 2") "</_item>\n" #endif "</param>\n" + "<param name=\"areaCanvas\" gui-text=\"" N_("Export area is whole canvas") "\" type=\"boolean\">true</param>\n" + "<param name=\"areaDrawing\" gui-text=\"" N_("Export area is the drawing") "\" type=\"boolean\">true</param>\n" "<param name=\"textToPath\" gui-text=\"" N_("Convert texts to paths") "\" type=\"boolean\">false</param>\n" "<param name=\"blurToBitmap\" gui-text=\"" N_("Convert blur effects to bitmaps") "\" type=\"boolean\">false</param>\n" "<param name=\"resolution\" gui-text=\"" N_("Preferred resolution (DPI) of bitmaps") "\" type=\"int\" min=\"72\" max=\"2400\">90</param>\n" + "<param name=\"exportId\" gui-text=\"" N_("Limit export to the object with ID") "\" type=\"string\"></param>\n" "<output>\n" "<extension>.ps</extension>\n" "<mimetype>image/x-postscript</mimetype>\n" @@ -378,9 +316,12 @@ CairoEpsOutput::init (void) "<_item value='PS2'>" N_("PostScript level 2") "</_item>\n" #endif "</param>\n" + "<param name=\"areaCanvas\" gui-text=\"" N_("Export area is whole canvas") "\" type=\"boolean\">true</param>\n" + "<param name=\"areaDrawing\" gui-text=\"" N_("Export area is the drawing") "\" type=\"boolean\">true</param>\n" "<param name=\"textToPath\" gui-text=\"" N_("Convert texts to paths") "\" type=\"boolean\">false</param>\n" "<param name=\"blurToBitmap\" gui-text=\"" N_("Convert blur effects to bitmaps") "\" type=\"boolean\">false</param>\n" "<param name=\"resolution\" gui-text=\"" N_("Preferred resolution (DPI) of bitmaps") "\" type=\"int\" min=\"72\" max=\"2400\">90</param>\n" + "<param name=\"exportId\" gui-text=\"" N_("Limit export to the object with ID") "\" type=\"string\"></param>\n" "<output>\n" "<extension>.eps</extension>\n" "<mimetype>image/x-e-postscript</mimetype>\n" diff --git a/src/extension/internal/cairo-renderer-pdf-out.cpp b/src/extension/internal/cairo-renderer-pdf-out.cpp index 4e6c74dff..c82cc7611 100644 --- a/src/extension/internal/cairo-renderer-pdf-out.cpp +++ b/src/extension/internal/cairo-renderer-pdf-out.cpp @@ -75,7 +75,7 @@ pdf_render_document_to_file(SPDocument *doc, gchar const *filename, unsigned int /* Create new arena */ NRArena *arena = NRArena::create(); unsigned dkey = sp_item_display_key_new(1); - NRArenaItem *root = sp_item_invoke_show(base, arena, dkey, SP_ITEM_SHOW_DISPLAY); + sp_item_invoke_show(base, arena, dkey, SP_ITEM_SHOW_DISPLAY); /* Create renderer and context */ CairoRenderer *renderer = new CairoRenderer(); @@ -98,7 +98,7 @@ pdf_render_document_to_file(SPDocument *doc, gchar const *filename, unsigned int /* Release arena */ sp_item_invoke_hide(base, dkey); nr_object_unref((NRObject *) arena); -/* end */ + renderer->destroyContext(ctx); delete renderer; @@ -134,7 +134,7 @@ CairoRendererPdfOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, // level = 1; } catch(...) { -// g_warning("Parameter <PDFversion> might not exists"); +// g_warning("Parameter <PDFversion> might not exist"); } bool new_textToPath = FALSE; @@ -142,7 +142,7 @@ CairoRendererPdfOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, new_textToPath = mod->get_param_bool("textToPath"); } catch(...) { - g_warning("Parameter <textToPath> might not exists"); + g_warning("Parameter <textToPath> might not exist"); } bool new_blurToBitmap = FALSE; @@ -150,7 +150,7 @@ CairoRendererPdfOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, new_blurToBitmap = mod->get_param_bool("blurToBitmap"); } catch(...) { - g_warning("Parameter <blurToBitmap> might not exists"); + g_warning("Parameter <blurToBitmap> might not exist"); } int new_bitmapResolution = 72; @@ -158,7 +158,7 @@ CairoRendererPdfOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, new_bitmapResolution = mod->get_param_int("resolution"); } catch(...) { - g_warning("Parameter <resolution> might not exists"); + g_warning("Parameter <resolution> might not exist"); } const gchar *new_exportId = NULL; @@ -166,23 +166,23 @@ CairoRendererPdfOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, new_exportId = mod->get_param_string("exportId"); } catch(...) { - g_warning("Parameter <exportId> might not exists"); + g_warning("Parameter <exportId> might not exist"); } bool new_exportDrawing = FALSE; try { - new_exportDrawing = mod->get_param_bool("exportDrawing"); + new_exportDrawing = mod->get_param_bool("areaDrawing"); } catch(...) { - g_warning("Parameter <exportDrawing> might not exists"); + g_warning("Parameter <areaDrawing> might not exist"); } bool new_exportCanvas = FALSE; try { - new_exportCanvas = mod->get_param_bool("exportCanvas"); + new_exportCanvas = mod->get_param_bool("areaCanvas"); } catch(...) { - g_warning("Parameter <exportCanvas> might not exists"); + g_warning("Parameter <exportCanvas> might not exist"); } gchar * final_name; @@ -194,8 +194,6 @@ CairoRendererPdfOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, if (!ret) throw Inkscape::Extension::Output::save_failed(); - - return; } #include "clear-n_.h" @@ -220,8 +218,8 @@ CairoRendererPdfOutput::init (void) "<param name=\"textToPath\" gui-text=\"" N_("Convert texts to paths") "\" type=\"boolean\">false</param>\n" "<param name=\"blurToBitmap\" gui-text=\"" N_("Convert filter effects to bitmaps") "\" type=\"boolean\">false</param>\n" "<param name=\"resolution\" gui-text=\"" N_("Preferred resolution (DPI) of bitmaps") "\" type=\"int\" min=\"72\" max=\"2400\">90</param>\n" - "<param name=\"exportDrawing\" gui-text=\"" N_("Export drawing, not page") "\" type=\"boolean\">false</param>\n" - "<param name=\"exportCanvas\" gui-text=\"" N_("Export canvas") "\" type=\"boolean\">false</param>\n" + "<param name=\"areaDrawing\" gui-text=\"" N_("Export drawing, not page") "\" type=\"boolean\">false</param>\n" + "<param name=\"areaCanvas\" gui-text=\"" N_("Export canvas") "\" type=\"boolean\">false</param>\n" "<param name=\"exportId\" gui-text=\"" N_("Limit export to the object with ID") "\" type=\"string\"></param>\n" "<output>\n" "<extension>.pdf</extension>\n" diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index 07d799b0f..86e04fb54 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -180,7 +180,12 @@ static void sp_shape_render (SPItem *item, CairoRenderContext *ctx) SPMarker* marker = SP_MARKER (shape->marker[SP_MARKER_LOC_START]); SPItem* marker_item = sp_item_first_item_child (SP_OBJECT (shape->marker[SP_MARKER_LOC_START])); - Geom::Matrix tr(sp_shape_marker_get_transform_at_start(path_it->front())); + Geom::Matrix tr; + if (marker->orient_auto) { + tr = sp_shape_marker_get_transform_at_start(path_it->front()); + } else { + tr = Geom::Rotate::from_degrees(marker->orient) * Geom::Translate(path_it->front().pointAt(0)); + } if (marker->markerUnits == SP_MARKER_UNITS_STROKEWIDTH) { tr = Geom::Scale(style->stroke_width.computed) * tr; @@ -206,7 +211,12 @@ static void sp_shape_render (SPItem *item, CairoRenderContext *ctx) SPMarker* marker = SP_MARKER (shape->marker[SP_MARKER_LOC_MID]); SPItem* marker_item = sp_item_first_item_child (SP_OBJECT (shape->marker[SP_MARKER_LOC_MID])); - Geom::Matrix tr(sp_shape_marker_get_transform(*curve_it1, *curve_it2)); + Geom::Matrix tr; + if (marker->orient_auto) { + tr = sp_shape_marker_get_transform(*curve_it1, *curve_it2); + } else { + tr = Geom::Rotate::from_degrees(marker->orient) * Geom::Translate(curve_it1->pointAt(1)); + } if (marker->markerUnits == SP_MARKER_UNITS_STROKEWIDTH) { tr = Geom::Scale(style->stroke_width.computed) * tr; @@ -236,7 +246,12 @@ static void sp_shape_render (SPItem *item, CairoRenderContext *ctx) } Geom::Curve const &lastcurve = (*path_it)[index]; - Geom::Matrix tr = sp_shape_marker_get_transform_at_end(lastcurve); + Geom::Matrix tr; + if (marker->orient_auto) { + tr = sp_shape_marker_get_transform_at_end(lastcurve); + } else { + tr = Geom::Rotate::from_degrees(marker->orient) * Geom::Translate(lastcurve.pointAt(1)); + } if (marker->markerUnits == SP_MARKER_UNITS_STROKEWIDTH) { tr = Geom::Scale(style->stroke_width.computed) * tr; @@ -557,42 +572,42 @@ CairoRenderer::setupDocument(CairoRenderContext *ctx, SPDocument *doc, bool page { g_assert( ctx != NULL ); - if (ctx->_vector_based_target) { - // width and height in pt - ctx->_width = sp_document_width(doc) * PT_PER_PX; - ctx->_height = sp_document_height(doc) * PT_PER_PX; - } else { - ctx->_width = sp_document_width(doc); - ctx->_height = sp_document_height(doc); - } + if (!base) + base = SP_ITEM(sp_document_root(doc)); NRRect d; - if (pageBoundingBox || !base) { + if (pageBoundingBox) { d.x0 = d.y0 = 0; - d.x1 = ceil(ctx->_width); - d.y1 = ceil(ctx->_height); + d.x1 = ceil(sp_document_width(doc)); + d.y1 = ceil(sp_document_height(doc)); } else { - sp_item_invoke_bbox(base, &d, sp_item_i2r_affine(base), TRUE); - if (ctx->_vector_based_target) { - // convert from px to pt - d.x0 *= PT_PER_PX; - d.x1 *= PT_PER_PX; - d.y0 *= PT_PER_PX; - d.y1 *= PT_PER_PX; - } + sp_item_invoke_bbox(base, &d, sp_item_i2r_affine(base), TRUE, SPItem::RENDERING_BBOX); } + + if (ctx->_vector_based_target) { + // convert from px to pt + d.x0 *= PT_PER_PX; + d.x1 *= PT_PER_PX; + d.y0 *= PT_PER_PX; + d.y1 *= PT_PER_PX; + } + + ctx->_width = d.x1-d.x0; + ctx->_height = d.y1-d.y0; + TRACE(("setupDocument: %f x %f\n", ctx->_width, ctx->_height)); - bool ret = ctx->setupSurface(d.x1-d.x0, d.y1-d.y0); + bool ret = ctx->setupSurface(ctx->_width, ctx->_height); - if (ret && !pageBoundingBox && base) + if (ret && !pageBoundingBox) { + double high = sp_document_height(doc); + if (ctx->_vector_based_target) + high *= PT_PER_PX; + Geom::Matrix tp(Geom::Translate(-d.x0 * (ctx->_vector_based_target ? PX_PER_PT : 1.0), - (d.y1 - ctx->_height) * (ctx->_vector_based_target ? PX_PER_PT : 1.0))); + (d.y1 - high) * (ctx->_vector_based_target ? PX_PER_PT : 1.0))); ctx->transform(&tp); - - ctx->_width = d.x1 - d.x0; - ctx->_height = d.y1 - d.y0; } return ret; diff --git a/src/extension/internal/gdkpixbuf-input.cpp b/src/extension/internal/gdkpixbuf-input.cpp index 14effbeb7..e8af0ec9d 100644 --- a/src/extension/internal/gdkpixbuf-input.cpp +++ b/src/extension/internal/gdkpixbuf-input.cpp @@ -3,7 +3,6 @@ #endif #include "document-private.h" #include <dir-util.h> -#include "prefs-utils.h" #include "extension/system.h" #include "gdkpixbuf-input.h" #include "selection-chemistry.h" diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp index e28264eff..f58e37173 100644 --- a/src/extension/internal/pdfinput/svg-builder.cpp +++ b/src/extension/internal/pdfinput/svg-builder.cpp @@ -1210,7 +1210,9 @@ void SvgBuilder::_flushText() { last_delta_pos = delta_pos; // Append the character to the text buffer - text_buffer.append((char *)&glyph.code, 1); + if (0 != glyph.code[0]) { + text_buffer.append((char *)&glyph.code, 1); + } glyphs_in_a_row++; i++; diff --git a/src/extension/param/bool.cpp b/src/extension/param/bool.cpp index ab90ddaf9..1dda3d73f 100644 --- a/src/extension/param/bool.cpp +++ b/src/extension/param/bool.cpp @@ -13,10 +13,10 @@ #include <gtkmm/box.h> #include <gtkmm/spinbutton.h> -#include <xml/node.h> - +#include "xml/node.h" #include "../extension.h" #include "bool.h" +#include "preferences.h" namespace Inkscape { namespace Extension { @@ -36,7 +36,8 @@ ParamBool::ParamBool (const gchar * name, const gchar * guitext, const gchar * d } gchar * pref_name = this->pref_name(); - _value = (bool)prefs_get_int_attribute(PREF_DIR, pref_name, _value); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + _value = prefs->getBool(extension_pref_root + pref_name, _value); g_free(pref_name); return; @@ -57,7 +58,8 @@ ParamBool::set( bool in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/ ) _value = in; gchar * prefname = this->pref_name(); - prefs_set_int_attribute(PREF_DIR, prefname, _value == true ? 1 : 0); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + prefs->setBool(extension_pref_root + prefname, _value); g_free(prefname); return _value; @@ -150,3 +152,14 @@ ParamBool::get_widget (SPDocument * doc, Inkscape::XML::Node * node, sigc::signa } /* namespace Extension */ } /* namespace Inkscape */ + +/* + 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:encoding=utf-8:textwidth=99 : diff --git a/src/extension/param/color.cpp b/src/extension/param/color.cpp index 555461bc7..58db85748 100644 --- a/src/extension/param/color.cpp +++ b/src/extension/param/color.cpp @@ -50,7 +50,7 @@ ParamColor::set( guint32 in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node* string(value); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - prefs->setString(PREF_DIR, prefname, value); + prefs->setString(extension_pref_root + prefname, value); g_free(prefname); return _value; @@ -66,7 +66,7 @@ ParamColor::ParamColor (const gchar * name, const gchar * guitext, const gchar * gchar * pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring paramval = prefs->getString(PREF_DIR, pref_name); + Glib::ustring paramval = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); if (!paramval.empty()) diff --git a/src/extension/param/color.h b/src/extension/param/color.h index 6836442a1..e6b44fbcb 100644 --- a/src/extension/param/color.h +++ b/src/extension/param/color.h @@ -8,10 +8,10 @@ */ #include <gtkmm/widget.h> -#include <xml/node.h> -#include <document.h> +#include "xml/node.h" +#include "document.h" #include <color.h> -#include "parameter.h" +#include "extension/param/parameter.h" namespace Inkscape { namespace Extension { diff --git a/src/extension/param/description.cpp b/src/extension/param/description.cpp index 61bfa9f5a..656e58c49 100644 --- a/src/extension/param/description.cpp +++ b/src/extension/param/description.cpp @@ -20,14 +20,10 @@ #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> +#include "xml/node.h" +#include "extension/extension.h" namespace Inkscape { namespace Extension { diff --git a/src/extension/param/enum.cpp b/src/extension/param/enum.cpp index 33c153434..9d324a47c 100644 --- a/src/extension/param/enum.cpp +++ b/src/extension/param/enum.cpp @@ -22,23 +22,15 @@ #include <gtkmm/comboboxtext.h> #include <gtkmm/tooltips.h> #include <gtkmm/label.h> - #include <glibmm/i18n.h> -#include <xml/node.h> - -#include <extension/extension.h> -#include <prefs-utils.h> -#include <document-private.h> -#include <sp-object.h> - +#include "xml/node.h" +#include "extension/extension.h" +#include "document-private.h" +#include "sp-object.h" #include "enum.h" #include "preferences.h" -/** \brief The root directory in the preferences database for extension - related parameters. */ -#define PREF_DIR "extensions" - namespace Inkscape { namespace Extension { @@ -106,7 +98,7 @@ ParamComboBox::ParamComboBox (const gchar * name, const gchar * guitext, const g gchar * pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring paramval = prefs->getString(PREF_DIR, pref_name); + Glib::ustring paramval = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); if (!paramval.empty()) @@ -160,7 +152,7 @@ ParamComboBox::set (const gchar * in, SPDocument * /*doc*/, Inkscape::XML::Node _value = g_strdup(settext->c_str()); gchar * prefname = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - prefs->setString(PREF_DIR, prefname, _value); + prefs->setString(extension_pref_root + prefname, _value); g_free(prefname); } diff --git a/src/extension/param/float.cpp b/src/extension/param/float.cpp index 1225648d6..40cb81ddd 100644 --- a/src/extension/param/float.cpp +++ b/src/extension/param/float.cpp @@ -13,9 +13,9 @@ #include <gtkmm/box.h> #include <gtkmm/spinbutton.h> -#include <xml/node.h> - -#include <extension/extension.h> +#include "xml/node.h" +#include "extension/extension.h" +#include "preferences.h" #include "float.h" namespace Inkscape { @@ -53,7 +53,8 @@ ParamFloat::ParamFloat (const gchar * name, const gchar * guitext, const gchar * } gchar * pref_name = this->pref_name(); - _value = prefs_get_double_attribute(PREF_DIR, pref_name, _value); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + _value = prefs->getDouble(extension_pref_root + pref_name, _value); g_free(pref_name); // std::cout << "New Float:: value: " << _value << " max: " << _max << " min: " << _min << std::endl; @@ -81,7 +82,8 @@ ParamFloat::set (float in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/) if (_value < _min) _value = _min; gchar * prefname = this->pref_name(); - prefs_set_double_attribute(PREF_DIR, prefname, _value); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + prefs->setDouble(extension_pref_root + prefname, _value); g_free(prefname); return _value; diff --git a/src/extension/param/int.cpp b/src/extension/param/int.cpp index dc523435e..db7f9c67b 100644 --- a/src/extension/param/int.cpp +++ b/src/extension/param/int.cpp @@ -13,9 +13,9 @@ #include <gtkmm/box.h> #include <gtkmm/spinbutton.h> -#include <xml/node.h> - -#include <extension/extension.h> +#include "xml/node.h" +#include "extension/extension.h" +#include "preferences.h" #include "int.h" namespace Inkscape { @@ -47,8 +47,9 @@ ParamInt::ParamInt (const gchar * name, const gchar * guitext, const gchar * des _min = 0; } - gchar * pref_name = this->pref_name(); - _value = prefs_get_int_attribute(PREF_DIR, pref_name, _value); + gchar *pref_name = this->pref_name(); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + _value = prefs->getInt(extension_pref_root + pref_name, _value); g_free(pref_name); // std::cout << "New Int:: value: " << _value << " max: " << _max << " min: " << _min << std::endl; @@ -76,7 +77,8 @@ ParamInt::set (int in, SPDocument * /*doc*/, Inkscape::XML::Node * /*node*/) if (_value < _min) _value = _min; gchar * prefname = this->pref_name(); - prefs_set_int_attribute(PREF_DIR, prefname, _value); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + prefs->setInt(extension_pref_root + prefname, _value); g_free(prefname); return _value; @@ -157,3 +159,14 @@ ParamInt::string (std::string &string) } /* namespace Extension */ } /* namespace Inkscape */ + +/* + 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:encoding=utf-8:textwidth=99 : diff --git a/src/extension/param/notebook.cpp b/src/extension/param/notebook.cpp index bce6bc3d0..1c30b7e0e 100644 --- a/src/extension/param/notebook.cpp +++ b/src/extension/param/notebook.cpp @@ -223,13 +223,6 @@ ParamNotebookPage::get_widget (SPDocument * doc, Inkscape::XML::Node * node, sig } - - - - - - - ParamNotebook::ParamNotebook (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) { @@ -264,7 +257,7 @@ ParamNotebook::ParamNotebook (const gchar * name, const gchar * guitext, const g gchar * pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring paramval = prefs->getString(PREF_DIR, pref_name); + Glib::ustring paramval = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); if (!paramval.empty()) @@ -317,7 +310,8 @@ ParamNotebook::set (const int in, SPDocument * /*doc*/, Inkscape::XML::Node * /* _value = g_strdup(page->name()); gchar * prefname = this->pref_name(); - prefs_set_string_attribute(PREF_DIR, prefname, _value); + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + prefs->setString(extension_pref_root + prefname, _value); g_free(prefname); return _value; @@ -434,4 +428,4 @@ ParamNotebook::get_widget (SPDocument * doc, Inkscape::XML::Node * node, sigc::s fill-column:99 End: */ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 : +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 : diff --git a/src/extension/param/parameter.cpp b/src/extension/param/parameter.cpp index 5f434e5e1..2773af61d 100644 --- a/src/extension/param/parameter.cpp +++ b/src/extension/param/parameter.cpp @@ -1,9 +1,7 @@ -/** \file - * Parameters for extensions. +/** @file + * @brief Parameters for extensions. */ - -/* - * Author: +/* Author: * Ted Gould <ted@gould.cx> * Johan Engelen <johan@shouraizou.nl> * @@ -386,6 +384,8 @@ Parameter::string (std::list <std::string> &list) return; } +Glib::ustring const extension_pref_root = "/extensions/"; + } /* namespace Extension */ } /* namespace Inkscape */ @@ -398,4 +398,4 @@ Parameter::string (std::list <std::string> &list) fill-column:99 End: */ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 : +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 : diff --git a/src/extension/param/parameter.h b/src/extension/param/parameter.h index 1aeafbd7c..54249c12e 100644 --- a/src/extension/param/parameter.h +++ b/src/extension/param/parameter.h @@ -1,12 +1,7 @@ -#ifndef __INK_EXTENSION_PARAM_H__ -#define __INK_EXTENSION_PARAM_H__ - -/** \file - * Parameters for extensions. +/** @file + * @brief Parameters for extensions. */ - -/* - * Authors: +/* Authors: * Ted Gould <ted@gould.cx> * * Copyright (C) 2005-2006 Authors @@ -14,24 +9,29 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -/** \brief The root directory in the preferences database for extension-related parameters. */ -#define PREF_DIR "extensions" +#ifndef SEEN_INK_EXTENSION_PARAM_H__ +#define SEEN_INK_EXTENSION_PARAM_H__ #include <gtkmm/widget.h> +#include <glibmm/i18n.h> #include "xml/document.h" #include "xml/node.h" #include "document.h" -#include <extension/extension-forward.h> -#include "prefs-utils.h" - -#include <glibmm/i18n.h> - +#include "extension/extension-forward.h" #include <color.h> namespace Inkscape { namespace Extension { +/** + * @brief The root directory in the preferences database for extension-related parameters + * + * The directory path has both a leading and a trailing slash, so that extension_pref_root + pref_name works + * without having to append a separator. + */ +extern Glib::ustring const extension_pref_root; + /** \brief A class to represent the parameter of an extension This is really a super class that allows them to abstract all @@ -132,4 +132,4 @@ public: fill-column:99 End: */ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 : +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 : diff --git a/src/extension/param/radiobutton.cpp b/src/extension/param/radiobutton.cpp index c05191b58..1e4ba3c8f 100644 --- a/src/extension/param/radiobutton.cpp +++ b/src/extension/param/radiobutton.cpp @@ -25,12 +25,10 @@ #include <gtkmm/radiobuttongroup.h> #include <gtkmm/tooltips.h> #include <gtkmm/label.h> - #include <glibmm/i18n.h> -#include <xml/node.h> - -#include <extension/extension.h> +#include "xml/node.h" +#include "extension/extension.h" #include "preferences.h" #include "document-private.h" #include "sp-object.h" @@ -113,7 +111,7 @@ ParamRadioButton::ParamRadioButton (const gchar * name, gchar * pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring paramval = prefs->getString(PREF_DIR, pref_name); + Glib::ustring paramval = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); if (!paramval.empty()) @@ -167,7 +165,7 @@ ParamRadioButton::set (const gchar * in, SPDocument * /*doc*/, Inkscape::XML::No _value = g_strdup(settext->c_str()); gchar * prefname = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - prefs->setString(PREF_DIR, prefname, _value); + prefs->setString(extension_pref_root + prefname, _value); g_free(prefname); } diff --git a/src/extension/param/string.cpp b/src/extension/param/string.cpp index 56ceeaad5..e32224332 100644 --- a/src/extension/param/string.cpp +++ b/src/extension/param/string.cpp @@ -13,9 +13,8 @@ #include <gtkmm/box.h> #include <gtkmm/spinbutton.h> -#include <xml/node.h> - -#include <extension/extension.h> +#include "xml/node.h" +#include "extension/extension.h" #include "string.h" #include "preferences.h" @@ -53,7 +52,7 @@ ParamString::set (const gchar * in, SPDocument * /*doc*/, Inkscape::XML::Node * gchar * prefname = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - prefs->setString(PREF_DIR, prefname, _value); + prefs->setString(extension_pref_root + prefname, _value); g_free(prefname); return _value; @@ -80,7 +79,7 @@ ParamString::ParamString (const gchar * name, const gchar * guitext, const gchar gchar * pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring paramval = prefs->getString(PREF_DIR, pref_name); + Glib::ustring paramval = prefs->getString(extension_pref_root + pref_name); g_free(pref_name); if (!paramval.empty()) |
