[gimp] plug-ins: fixes and review to the previous commit.
- From: Jehan Pagès <jehanp src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] plug-ins: fixes and review to the previous commit.
- Date: Sun, 10 Sep 2017 20:01:05 +0000 (UTC)
commit af8519b208372bf7047d59593491e765269a39c8
Author: Jehan <jehan girinstud io>
Date: Sun Sep 10 21:55:41 2017 +0200
plug-ins: fixes and review to the previous commit.
- Clean out some C++ style comments (our coding style only accepts
C-style comments. Anyway these comments were just old useless code).
- A block indentation fix.
- As a guideline, it is better to keep a GError as the last parameter.
- In non-interactive mode, the new procedure must use the value in
parameter, otherwise passing the password just doesn't work.
plug-ins/common/file-pdf-load.c | 63 +++++++++++++++++++++++---------------
1 files changed, 38 insertions(+), 25 deletions(-)
---
diff --git a/plug-ins/common/file-pdf-load.c b/plug-ins/common/file-pdf-load.c
index 78e70f8..12420c5 100644
--- a/plug-ins/common/file-pdf-load.c
+++ b/plug-ins/common/file-pdf-load.c
@@ -47,10 +47,10 @@
/* Structs for the load dialog */
typedef struct
{
- GimpPageSelectorTarget target;
- gdouble resolution;
- gboolean antialias;
- gchar *PDF_password;
+ GimpPageSelectorTarget target;
+ gdouble resolution;
+ gboolean antialias;
+ gchar *PDF_password;
} PdfLoadVals;
static PdfLoadVals loadvals =
@@ -87,9 +87,9 @@ static GimpPDBStatusType load_dialog (PopplerDocument *doc,
PdfSelectedPages *pages);
static PopplerDocument * open_document (const gchar *filename,
- GError **error,
- gchar *PDF_password,
- GimpRunMode run_mode);
+ const gchar *PDF_password,
+ GimpRunMode run_mode,
+ GError **error);
static cairo_surface_t * get_thumb_surface (PopplerDocument *doc,
gint page,
@@ -278,12 +278,12 @@ query (void)
{ GIMP_PDB_INT32, "run-mode", "The run mode { RUN-INTERACTIVE (0), RUN-NONINTERACTIVE (1) }"
},
{ GIMP_PDB_STRING, "filename", "The name of the file to load" },
{ GIMP_PDB_STRING, "raw-filename", "The name entered" },
+ { GIMP_PDB_STRING, "pdf-password", "The password to decrypt the encrypted PDF file" }
/* XXX: Nice to have API at some point, but needs work
{ GIMP_PDB_INT32, "resolution", "Resolution to rasterize to (dpi)" },
{ GIMP_PDB_INT32, "antialiasing", "Use anti-aliasing" },
{ GIMP_PDB_INT32, "n-pages", "Number of pages to load (0 for all)" },
{ GIMP_PDB_INT32ARRAY,"pages", "The pages to load" }, */
- { GIMP_PDB_STRING, "pdf-password", "The password to decrypt the encrypted PDF file" }
};
static const GimpParamDef load_return_vals[] =
@@ -405,7 +405,9 @@ run (const gchar *name,
gimp_get_data (LOAD2_PROC, &loadvals);
}
gimp_ui_init (PLUG_IN_BINARY, FALSE);
- doc = open_document (param[1].data.d_string, &error, loadvals.PDF_password, run_mode);
+ doc = open_document (param[1].data.d_string,
+ loadvals.PDF_password,
+ run_mode, &error);
if (!doc)
{
@@ -415,16 +417,15 @@ run (const gchar *name,
status = load_dialog (doc, &pages);
if (status == GIMP_PDB_SUCCESS)
- // gimp_set_data (LOAD_PROC, &loadvals, sizeof(loadvals));
{
- if (strcmp (name, LOAD_PROC) == 0)
- {
- gimp_set_data (LOAD_PROC, &loadvals, sizeof(loadvals));
- }
- else if (strcmp (name, LOAD2_PROC) == 0)
- {
- gimp_set_data (LOAD2_PROC, &loadvals, sizeof(loadvals));
- }
+ if (strcmp (name, LOAD_PROC) == 0)
+ {
+ gimp_set_data (LOAD_PROC, &loadvals, sizeof(loadvals));
+ }
+ else if (strcmp (name, LOAD2_PROC) == 0)
+ {
+ gimp_set_data (LOAD2_PROC, &loadvals, sizeof(loadvals));
+ }
}
break;
@@ -434,7 +435,17 @@ run (const gchar *name,
break;
case GIMP_RUN_NONINTERACTIVE:
- doc = open_document (param[1].data.d_string, &error, loadvals.PDF_password, run_mode);
+ if (strcmp (name, LOAD_PROC) == 0)
+ {
+ doc = open_document (param[1].data.d_string,
+ NULL, run_mode, &error);
+ }
+ else if (strcmp (name, LOAD2_PROC) == 0)
+ {
+ doc = open_document (param[1].data.d_string,
+ param[3].data.d_string,
+ run_mode, &error);
+ }
if (doc)
{
@@ -503,7 +514,6 @@ run (const gchar *name,
cairo_surface_t *surface = NULL;
/* Possibly retrieve last settings */
- // gimp_get_data (LOAD_PROC, &loadvals);
if (strcmp (name, LOAD_PROC) == 0)
{
gimp_get_data (LOAD_PROC, &loadvals);
@@ -513,7 +523,9 @@ run (const gchar *name,
gimp_get_data (LOAD2_PROC, &loadvals);
}
- doc = open_document (param[0].data.d_string, &error, loadvals.PDF_password, run_mode);
+ doc = open_document (param[0].data.d_string,
+ loadvals.PDF_password,
+ run_mode, &error);
if (doc)
{
@@ -592,14 +604,13 @@ run (const gchar *name,
static PopplerDocument*
open_document (const gchar *filename,
- GError **load_error,
- gchar *PDF_password,
- GimpRunMode run_mode)
+ const gchar *PDF_password,
+ GimpRunMode run_mode,
+ GError **load_error)
{
PopplerDocument *doc;
GMappedFile *mapped_file;
GError *error = NULL;
- GtkWidget *label;
mapped_file = g_mapped_file_new (filename, FALSE, &error);
@@ -619,6 +630,8 @@ open_document (const gchar *filename,
if (run_mode == GIMP_RUN_INTERACTIVE)
{
+ GtkWidget *label;
+
label = gtk_label_new (_("PDF is password protected, please input the password:"));
while (error && strcmp (error->message, "Document is encrypted") == 0)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]