summaryrefslogtreecommitdiffstats
path: root/src/main.cpp
diff options
context:
space:
mode:
authorMarc Jeanmougin <marc@jeanmougin.fr>2017-06-04 22:58:45 +0000
committerMarc Jeanmougin <marcjeanmougin@free.fr>2017-06-04 22:58:45 +0000
commit99cc870e2202dd3bd4c63be34bb45ba09aa0bd0e (patch)
tree26e0236f3ebb7629d1d361aa6a3636edc8dc0ba6 /src/main.cpp
parentMerge in render frame extension (diff)
downloadinkscape-99cc870e2202dd3bd4c63be34bb45ba09aa0bd0e.tar.gz
inkscape-99cc870e2202dd3bd4c63be34bb45ba09aa0bd0e.zip
Porting the pre-92 file update message from 0.92.x to trunk:
New dialog when opening pre-0.92 files (with 90 dpi). I implemented it mostly based on mizmo's UI proposal (thanks!), with additional inputs from su_v with a few bugfixes from jabiertxof Also adds a commandline option --convert-dpi-method=[none|scale-viewbox|scale-document] to be able to batch convert files. Fixed bugs: - https://launchpad.net/bugs/1659229 (bzr r15729)
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 4c63402fb..7a786234e 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -15,6 +15,7 @@
* ... and various people who have worked with various projects
* Jon A. Cruz <jon@oncruz.org>
* Abhishek Sharma
+ * Marc Jeanmougin
*
* Copyright (C) 1999-2004 authors
* Copyright (C) 2001-2002 Ximian, Inc.
@@ -167,6 +168,7 @@ enum {
SP_ARG_VERSION,
SP_ARG_VACUUM_DEFS,
SP_ARG_NO_CONVERT_TEXT_BASELINE_SPACING,
+ SP_ARG_CONVERT_DPI_METHOD,
#ifdef WITH_DBUS
SP_ARG_DBUS_LISTEN,
SP_ARG_DBUS_NAME,
@@ -278,6 +280,7 @@ static void resetCommandlineGlobals() {
sp_query_id = NULL;
sp_vacuum_defs = FALSE;
sp_no_convert_text_baseline_spacing = FALSE;
+ sp_file_convert_dpi_method_commandline = -1;
#ifdef WITH_DBUS
sp_dbus_listen = FALSE;
sp_dbus_name = NULL;
@@ -539,6 +542,11 @@ struct poptOption options[] = {
N_("Do not fix legacy (pre-0.92) files' text baseline spacing on opening."),
NULL},
+ {"convert-dpi-method", 0,
+ POPT_ARG_STRING, NULL, SP_ARG_CONVERT_DPI_METHOD,
+ N_("Method used to convert pre-.92 document dpi, if needed."),
+ "[none|scale-viewbox|scale-document]"},
+
POPT_AUTOHELP POPT_TABLEEND
};
@@ -2180,6 +2188,21 @@ sp_process_args(poptContext ctx)
}
break;
}
+ case SP_ARG_CONVERT_DPI_METHOD: {
+ gchar const *arg = poptGetOptArg(ctx);
+ if (arg != NULL) {
+ if (!strcmp(arg,"none")) {
+ sp_file_convert_dpi_method_commandline = FILE_DPI_UNCHANGED;
+ } else if (!strcmp(arg,"scale-viewbox")) {
+ sp_file_convert_dpi_method_commandline = FILE_DPI_VIEWBOX_SCALED;
+ } else if (!strcmp(arg,"scale-document")) {
+ sp_file_convert_dpi_method_commandline = FILE_DPI_DOCUMENT_SCALED;
+ } else {
+ g_warning("Invalid update option");
+ }
+ }
+ break;
+ }
case POPT_ERROR_BADOPT: {
g_warning ("Invalid option %s", poptBadOption(ctx, 0));
exit(1);