rendered paste body? file.diff
? src/doc_info.xpm
? src/rotate_left.xpm
? src/rotate_right.xpm
Index: po/ca.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/ca.po,v
retrieving revision 1.1.2.3
diff -u -p -r1.1.2.3 ca.po
--- po/ca.po 2007/02/26 17:49:01 1.1.2.3
+++ po/ca.po 2007/02/28 15:47:50
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pdf_viewer\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
-"POT-Creation-Date: 2007-02-19 09:37+0000\n"
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
"PO-Revision-Date: 2007-02-25 23:51+0001\n"
"Last-Translator: Miquel Oliete i Baliarda <ktalanet@yahoo.es>\n"
"Language-Team: Miquel Oliete i Baliarda <ktalanet@yahoo.es>\n"
@@ -15,28 +15,28 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/poppler_viewer.c:158
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "Carregant..."
+
+#: src/poppler_viewer.c:240
#, c-format
msgid "%s document, page %d/%d"
msgstr "document %s, pàgina %d/%d"
-#: src/poppler_viewer.c:167
+#: src/poppler_viewer.c:248
msgid "Prev page"
msgstr "Pàgina prèvia"
-#: src/poppler_viewer.c:170
+#: src/poppler_viewer.c:251
msgid "Next page"
msgstr "Pàgina següent"
-
-#: src/poppler_viewer.c:191 src/poppler_viewer.c:348
-msgid "Loading..."
-msgstr "Carregant..."
-#: src/poppler_viewer.c:385 src/poppler_viewer.c:398
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
msgid "PDF Viewer"
msgstr "Visor PDF"
-#: src/poppler_viewer.c:403
+#: src/poppler_viewer.c:489
msgid ""
"This plugin enables the viewing of PDF and PostScript attachments using the "
"Poppler lib."
Index: po/fi.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/fi.po,v
retrieving revision 1.1.2.1
diff -u -p -r1.1.2.1 fi.po
--- po/fi.po 2007/02/26 16:09:58 1.1.2.1
+++ po/fi.po 2007/02/28 15:47:50
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: lpoppler_viewer-0\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
-"POT-Creation-Date: 2007-02-19 09:37+0000\n"
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
"PO-Revision-Date: 2007-02-20 03:47+0200\n"
"Last-Translator: Flammie Pirinen <flammie@iki.fi>\n"
"Language-Team: Finnish <laatu@lokalisointi.org>\n"
@@ -15,28 +15,28 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-#: src/poppler_viewer.c:158
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "Ladataanââ€"
+
+#: src/poppler_viewer.c:240
#, c-format
msgid "%s document, page %d/%d"
msgstr "%sâ‐teksti, sivu %dâ∕%d"
-#: src/poppler_viewer.c:167
+#: src/poppler_viewer.c:248
msgid "Prev page"
msgstr "Edellinen sivu"
-#: src/poppler_viewer.c:170
+#: src/poppler_viewer.c:251
msgid "Next page"
msgstr "Seuraava sivu"
-
-#: src/poppler_viewer.c:191 src/poppler_viewer.c:348
-msgid "Loading..."
-msgstr "Ladataanââ€"
-#: src/poppler_viewer.c:385 src/poppler_viewer.c:398
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
msgid "PDF Viewer"
msgstr "PDFâ‐nÃytin"
-#: src/poppler_viewer.c:403
+#: src/poppler_viewer.c:489
msgid ""
"This plugin enables the viewing of PDF and PostScript attachments using the "
"Poppler lib."
Index: po/fr.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/fr.po,v
retrieving revision 1.1.2.1.2.1
diff -u -p -r1.1.2.1.2.1 fr.po
--- po/fr.po 2007/02/23 23:28:47 1.1.2.1.2.1
+++ po/fr.po 2007/02/28 15:47:50
@@ -6,7 +6,11 @@ msgid ""
msgstr ""
"Project-Id-Version: 1\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
+<<<<<<< fr.po
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
+=======
"POT-Creation-Date: 2007-02-24 00:27+0100\n"
+>>>>>>> 1.1.2.1.2.1
"PO-Revision-Date: 2007-02-17 19:05+0100\n"
"Last-Translator: Colin Leroy <colin@colino.net>\n"
"Language-Team: fr <fr@li.org>\n"
@@ -14,20 +18,42 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+<<<<<<< fr.po
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "Chargement..."
+
+#: src/poppler_viewer.c:240
+#, fuzzy, c-format
+msgid "%s document, page %d/%d"
+=======
#: src/poppler_viewer.c:374
#, fuzzy, c-format
msgid "%s document"
+>>>>>>> 1.1.2.1.2.1
msgstr "Document PDF, page %d/%d"
+<<<<<<< fr.po
+#: src/poppler_viewer.c:248
+msgid "Prev page"
+=======
#: src/poppler_viewer.c:652
#, fuzzy
msgid "Previous Page"
+>>>>>>> 1.1.2.1.2.1
msgstr "Page préc."
+<<<<<<< fr.po
+#: src/poppler_viewer.c:251
+msgid "Next page"
+=======
#: src/poppler_viewer.c:656
#, fuzzy
msgid "Next Page"
+>>>>>>> 1.1.2.1.2.1
msgstr "Page suiv."
+<<<<<<< fr.po
+=======
#: src/poppler_viewer.c:660
msgid "Zoom In"
@@ -36,7 +62,15 @@ msgstr ""
#: src/poppler_viewer.c:664
msgid "Zoom Out"
msgstr ""
+>>>>>>> 1.1.2.1.2.1
+
+<<<<<<< fr.po
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
+msgid "PDF Viewer"
+msgstr ""
+#: src/poppler_viewer.c:489
+=======
#: src/poppler_viewer.c:667
msgid "Fit Page"
msgstr ""
@@ -50,7 +84,20 @@ msgid "PDF Viewer"
msgstr ""
#: src/poppler_viewer.c:729
+>>>>>>> 1.1.2.1.2.1
msgid ""
+<<<<<<< fr.po
+"This plugin enables the viewing of PDF and PostScript attachments using the "
+"Poppler lib."
+msgstr ""
+
+#~ msgid ""
+#~ "This plugin renders PDF attachments in mails using the poppler lib.\n"
+#~ "The extended name is Red Poppler PDF Viewer."
+#~ msgstr ""
+#~ "Ce plugin affiche les fichiers PDF joints.Son nom complet est Red Poppler "
+#~ "PDF Viewer."
+=======
"This plugin enables the viewing of PDF and PostScript attachments using the "
"Poppler lib."
msgstr ""
@@ -64,3 +111,4 @@ msgstr ""
#~ msgstr ""
#~ "Ce plugin affiche les fichiers PDF joints.Son nom complet est Red Poppler "
#~ "PDF Viewer."
+>>>>>>> 1.1.2.1.2.1
Index: po/hu.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/hu.po,v
retrieving revision 1.1.2.1
diff -u -p -r1.1.2.1 hu.po
--- po/hu.po 2007/02/26 16:09:59 1.1.2.1
+++ po/hu.po 2007/02/28 15:47:50
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Poppler viewer 0.1\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
-"POT-Creation-Date: 2007-02-19 09:37+0000\n"
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
"PO-Revision-Date: 2007-02-19 23:04+0100\n"
"Last-Translator: rezso <rezso@rezso.net>\n"
"Language-Team: <NONE>\n"
@@ -17,30 +17,31 @@ msgstr ""
"X-Poedit-Language: Hungarian\n"
"X-Poedit-Country: HUNGARY\n"
-#: src/poppler_viewer.c:158
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "Betöltés..."
+
+#: src/poppler_viewer.c:240
#, c-format
msgid "%s document, page %d/%d"
msgstr "%s dokumentum, %d/%d oldal"
-#: src/poppler_viewer.c:167
+#: src/poppler_viewer.c:248
msgid "Prev page"
msgstr "ElÅÅ‘zÅÅ‘ oldal"
-#: src/poppler_viewer.c:170
+#: src/poppler_viewer.c:251
msgid "Next page"
msgstr "KövetkezÅÅ‘ oldal"
-#: src/poppler_viewer.c:191
-#: src/poppler_viewer.c:348
-msgid "Loading..."
-msgstr "Betöltés..."
-
-#: src/poppler_viewer.c:385
-#: src/poppler_viewer.c:398
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
msgid "PDF Viewer"
msgstr "PDF megjelenÃtÅÅ‘"
-
-#: src/poppler_viewer.c:403
-msgid "This plugin enables the viewing of PDF and PostScript attachments using the Poppler lib."
-msgstr "A plugin PDF és PostScript mellékletek megjelenÃtését teszi lehetÅÅ‘vé a Poppler fÃgvénykönyvtár használatával."
+#: src/poppler_viewer.c:489
+msgid ""
+"This plugin enables the viewing of PDF and PostScript attachments using the "
+"Poppler lib."
+msgstr ""
+"A plugin PDF és PostScript mellékletek megjelenÃtését teszi lehetÅÅ‘vé a "
+"Poppler fÃgvénykönyvtár használatával."
Index: po/it.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/it.po,v
retrieving revision 1.1.2.1.2.1
diff -u -p -r1.1.2.1.2.1 it.po
--- po/it.po 2007/02/23 23:28:47 1.1.2.1.2.1
+++ po/it.po 2007/02/28 15:47:50
@@ -5,7 +5,11 @@ msgid ""
msgstr ""
"Project-Id-Version: 1\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
+<<<<<<< it.po
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
+=======
"POT-Creation-Date: 2007-02-24 00:27+0100\n"
+>>>>>>> 1.1.2.1.2.1
"PO-Revision-Date: 2007-02-19 16:38+0100\n"
"Last-Translator: Salvatore De Paolis <iwkse@users.sourceforge.net>\n"
"Language-Team: it Salvatore De Paolis <iwkse@users.sourceforge.net>\n"
@@ -13,21 +17,44 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+<<<<<<< it.po
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "Caricamento..."
+
+#: src/poppler_viewer.c:240
+#, c-format
+msgid "%s document, page %d/%d"
+=======
#: src/poppler_viewer.c:374
#, fuzzy, c-format
msgid "%s document"
+>>>>>>> 1.1.2.1.2.1
msgstr "Documento %s, pagina %d/%d"
+<<<<<<< it.po
+#: src/poppler_viewer.c:248
+msgid "Prev page"
+=======
#: src/poppler_viewer.c:652
#, fuzzy
msgid "Previous Page"
+>>>>>>> 1.1.2.1.2.1
msgstr "Pagina prec."
+<<<<<<< it.po
+#: src/poppler_viewer.c:251
+msgid "Next page"
+=======
#: src/poppler_viewer.c:656
#, fuzzy
msgid "Next Page"
+>>>>>>> 1.1.2.1.2.1
msgstr "Pagina succ."
+<<<<<<< it.po
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
+=======
#: src/poppler_viewer.c:660
msgid "Zoom In"
msgstr ""
@@ -45,10 +72,15 @@ msgid "Fit Page Width"
msgstr ""
#: src/poppler_viewer.c:711 src/poppler_viewer.c:724
+>>>>>>> 1.1.2.1.2.1
msgid "PDF Viewer"
msgstr ""
+<<<<<<< it.po
+#: src/poppler_viewer.c:489
+=======
#: src/poppler_viewer.c:729
+>>>>>>> 1.1.2.1.2.1
msgid ""
"This plugin enables the viewing of PDF and PostScript attachments using the "
"Poppler lib."
Index: po/pl.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/pl.po,v
retrieving revision 1.1.2.1
diff -u -p -r1.1.2.1 pl.po
--- po/pl.po 2007/02/26 16:09:59 1.1.2.1
+++ po/pl.po 2007/02/28 15:47:50
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: poppler_viewer\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
-"POT-Creation-Date: 2007-02-19 09:37+0000\n"
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
"PO-Revision-Date: 2007-02-24 16:22+0100\n"
"Last-Translator: Pawel Pekala <c0rn@o2.pl>\n"
"Language-Team: <pl@li.org>\n"
@@ -16,32 +16,31 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
-#: src/poppler_viewer.c:158
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "Wczytywanie..."
+
+#: src/poppler_viewer.c:240
#, c-format
msgid "%s document, page %d/%d"
msgstr "Dokument %s, strona %d/%d"
-#: src/poppler_viewer.c:167
+#: src/poppler_viewer.c:248
msgid "Prev page"
msgstr "Poprzednia strona"
-#: src/poppler_viewer.c:170
+#: src/poppler_viewer.c:251
msgid "Next page"
msgstr "Nastêpna strona"
-#: src/poppler_viewer.c:191 src/poppler_viewer.c:348
-msgid "Loading..."
-msgstr "Wczytywanie..."
-
-#: src/poppler_viewer.c:385 src/poppler_viewer.c:398
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
msgid "PDF Viewer"
msgstr "Przegl±darka PDF"
-#: src/poppler_viewer.c:403
+#: src/poppler_viewer.c:489
msgid ""
"This plugin enables the viewing of PDF and PostScript attachments using the "
"Poppler lib."
msgstr ""
"Ta wtyczka umo¿liwia przegl±danie dokumentów PDF i Postscript przy u¿yciu "
"biblioteki Poppler."
-
Index: po/pt_BR.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/pt_BR.po,v
retrieving revision 1.1.2.1
diff -u -p -r1.1.2.1 pt_BR.po
--- po/pt_BR.po 2007/02/26 16:09:59 1.1.2.1
+++ po/pt_BR.po 2007/02/28 15:47:50
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: poppler_viewer-pt_BR\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
-"POT-Creation-Date: 2007-02-19 09:37+0000\n"
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
"PO-Revision-Date: 2007-02-25 13:27+0000\n"
"Last-Translator: Frederico Goncalves Guimaraes <frederico@teia.bio.br>\n"
"Language-Team: Português do Brasil\n"
@@ -16,30 +16,31 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 1.11.4\n"
-#: src/poppler_viewer.c:158
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "Abrindo..."
+
+#: src/poppler_viewer.c:240
#, c-format
msgid "%s document, page %d/%d"
msgstr "%s documento, página %d/%d"
-#: src/poppler_viewer.c:167
+#: src/poppler_viewer.c:248
msgid "Prev page"
msgstr "Página anterior"
-#: src/poppler_viewer.c:170
+#: src/poppler_viewer.c:251
msgid "Next page"
msgstr "Próxima página"
-#: src/poppler_viewer.c:191 src/poppler_viewer.c:348
-msgid "Loading..."
-msgstr "Abrindo..."
-
-#: src/poppler_viewer.c:385 src/poppler_viewer.c:398
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
msgid "PDF Viewer"
msgstr "Visualizador PDF"
-#: src/poppler_viewer.c:403
+#: src/poppler_viewer.c:489
msgid ""
"This plugin enables the viewing of PDF and PostScript attachments using the "
"Poppler lib."
-msgstr "Esse plugin habilita a visualização de anexos em PDF e PostScript usando a biblioteca Poppler."
-
+msgstr ""
+"Esse plugin habilita a visualização de anexos em PDF e PostScript usando a "
+"biblioteca Poppler."
Index: po/sk.po
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/po/Attic/sk.po,v
retrieving revision 1.1.2.1
diff -u -p -r1.1.2.1 sk.po
--- po/sk.po 2007/02/26 16:09:59 1.1.2.1
+++ po/sk.po 2007/02/28 15:47:50
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: pdf_viewer\n"
"Report-Msgid-Bugs-To: iwkse@users.sourceforge.net\n"
-"POT-Creation-Date: 2007-02-19 09:37+0000\n"
+"POT-Creation-Date: 2007-02-27 00:34+0100\n"
"PO-Revision-Date: 2007-02-25 20:54+0100\n"
"Last-Translator: Andrej Kacian <andrej@kacian.sk>\n"
"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
@@ -17,32 +17,31 @@ msgstr ""
"X-Generator: KBabel 1.11.4\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-#: src/poppler_viewer.c:158
+#: src/poppler_viewer.c:176 src/poppler_viewer.c:434
+msgid "Loading..."
+msgstr "NaÄčÃtavam..."
+
+#: src/poppler_viewer.c:240
#, c-format
msgid "%s document, page %d/%d"
msgstr "%s dokument, strana %d/%d"
-#: src/poppler_viewer.c:167
+#: src/poppler_viewer.c:248
msgid "Prev page"
msgstr "Predchádzajúca strana"
-#: src/poppler_viewer.c:170
+#: src/poppler_viewer.c:251
msgid "Next page"
msgstr "ÄÄŽalÅ¡ia strana"
-#: src/poppler_viewer.c:191 src/poppler_viewer.c:348
-msgid "Loading..."
-msgstr "NaÄčÃtavam..."
-
-#: src/poppler_viewer.c:385 src/poppler_viewer.c:398
+#: src/poppler_viewer.c:471 src/poppler_viewer.c:484
msgid "PDF Viewer"
msgstr "PrehliadaÄč PDF"
-#: src/poppler_viewer.c:403
+#: src/poppler_viewer.c:489
msgid ""
"This plugin enables the viewing of PDF and PostScript attachments using the "
"Poppler lib."
msgstr ""
-"Tento plugin umoÅÅňuje prehliadanie PDF a PostScript prÃloh pomocou "
-"kniÅnice Poppler."
-
+"Tento plugin umoÅÅňuje prehliadanie PDF a PostScript prÃloh pomocou kniÅnice "
+"Poppler."
Index: src/poppler_viewer.c
===================================================================
RCS file: /pack/anoncvs/sylpheedclaws/plugins/pdf_viewer/src/Attic/poppler_viewer.c,v
retrieving revision 1.1.2.1.2.2
diff -u -p -r1.1.2.1.2.2 poppler_viewer.c
--- src/poppler_viewer.c 2007/02/24 10:52:16 1.1.2.1.2.2
+++ src/poppler_viewer.c 2007/02/28 15:47:50
@@ -53,12 +53,17 @@
#include "zoom_in.xpm"
#include "zoom_out.xpm"
#include "zoom_width.xpm"
+#include "rotate_right.xpm"
+#include "rotate_left.xpm"
+#include "doc_info.xpm"
#ifdef USE_PTHREAD
#include <pthread.h>
#endif
#define ZOOM_FACTOR 0.3
+#define ROTATION 90
+
static void poppler_pdf_view_update(MimeViewer *_viewer, gboolean reload_file, int page_num);
struct _PopplerViewer
@@ -81,14 +86,20 @@ struct _PopplerViewer
GtkWidget *zoom_out;
GtkWidget *zoom_fit;
GtkWidget *zoom_width;
+ GtkWidget *rotate_left;
+ GtkWidget *rotate_right;
+ GtkWidget *doc_info;
+ GtkWidget *dialog_doc_info;
GtkWidget *hbox;
GtkTooltips *button_bar_tips;
PopplerDocument *pdf_doc;
PopplerPage *pdf_page;
gchar *filename;
gchar *fsname;
+ gchar *doc_info_text;
gint cur_page_int;
gint num_pages_int;
+ gint rotate;
double zoom;
double width;
double height;
@@ -106,10 +117,10 @@ typedef struct _PopplerViewer PopplerVie
static MimeViewerFactory poppler_viewer_factory;
+
static GtkWidget *poppler_get_widget(MimeViewer *_viewer)
{
PopplerViewer *viewer = (PopplerViewer *) _viewer;
-
debug_print("poppler_get_widget: %p\n", viewer->vbox);
return GTK_WIDGET(viewer->vbox);
@@ -125,12 +136,10 @@ static void poppler_next_page_cb(GtkButt
{
if (viewer->cur_page_int < viewer->num_pages_int)
poppler_pdf_view_update((MimeViewer *)viewer, FALSE, viewer->cur_page_int + 1);
-
}
static void poppler_zoom_in_cb(GtkButton *button, PopplerViewer *viewer)
{
-
if (viewer->zoom < 4) {
viewer->zoom += ZOOM_FACTOR;
poppler_pdf_view_update((MimeViewer *)viewer, FALSE, viewer->cur_page_int);
@@ -139,7 +148,6 @@ static void poppler_zoom_in_cb(GtkButton
static void poppler_zoom_out_cb(GtkButton *button, PopplerViewer *viewer)
{
-
if (viewer->zoom > 0.3) {
viewer->zoom -= ZOOM_FACTOR;
poppler_pdf_view_update((MimeViewer *)viewer, FALSE, viewer->cur_page_int);
@@ -155,6 +163,7 @@ static void poppler_zoom_fit_cb(GtkButto
debug_print("height: %d\n", allocation->height);
xratio = allocation->width / viewer->width;
yratio = allocation->height / viewer->height;
+
if (xratio >= yratio)
viewer->zoom = yratio;
else
@@ -173,6 +182,75 @@ static void poppler_zoom_width_cb(GtkBut
poppler_pdf_view_update((MimeViewer *)viewer, FALSE, viewer->cur_page_int);
}
+static void poppler_rotate_right_cb(GtkButton *button, PopplerViewer *viewer)
+{
+ if (viewer->rotate == 360)
+ viewer->rotate = 0;
+
+ viewer->rotate += (gint) ROTATION;
+ poppler_pdf_view_update((MimeViewer *)viewer, FALSE, viewer->cur_page_int);
+}
+
+static void poppler_rotate_left_cb(GtkButton *button, PopplerViewer *viewer)
+{
+ if (viewer->rotate == 0)
+ viewer->rotate = 360;
+
+ viewer->rotate = abs(viewer->rotate - (gint) ROTATION);
+ poppler_pdf_view_update((MimeViewer *)viewer, FALSE, viewer->cur_page_int);
+}
+static void poppler_document_info_cb(GtkButton *button, PopplerViewer *viewer)
+{
+ gchar *title, *format, *author, *subject, *keywords, *creator, *producer, *linearized;
+ GTime creation_date, mod_date;
+ PopplerPageLayout layout;
+ PopplerPageMode mode;
+ PopplerViewerPreferences view_prefs;
+
+ g_object_get (viewer->pdf_doc,
+ "title", &title,
+ "format", &format,
+ "author", &author,
+ "subject", &subject,
+ "keywords", &keywords,
+ "creation-date", &creation_date,
+ "mod-date", &mod_date,
+ "creator", &creator,
+ "producer", &producer,
+ "linearized", &linearized,
+ "page-mode", &mode,
+ "page-layout", &layout,
+ "viewer-preferences", &view_prefs,
+ NULL);
+
+ viewer->dialog_doc_info = gtk_message_dialog_new_with_markup(
+ GTK_WINDOW(mainwindow_get_mainwindow()->window),
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
+ "<span foreground=\"#2D1784\" size=\"x-large\"><b>PDF Viewer Plugin</b></span>"
+ );
+
+ gchar *msg;
+ msg = g_markup_printf_escaped(_("<span foreground=#ffffff size=normal>Title: </span>"));
+
+ gtk_message_dialog_format_secondary_markup(
+ GTK_MESSAGE_DIALOG(viewer->dialog_doc_info),
+ "%s",
+ msg
+ );
+
+ g_free(msg);
+
+ gtk_widget_set_size_request(viewer->dialog_doc_info, -1, -1);
+ gtk_widget_show(GTK_WIDGET(viewer->dialog_doc_info));
+ gtk_widget_ref(GTK_WIDGET(viewer->dialog_doc_info));
+
+ g_signal_connect_swapped(viewer->dialog_doc_info,
+ "response",
+ G_CALLBACK(gtk_widget_destroy),
+ viewer->dialog_doc_info);
+}
static gboolean entry_current_page_cb(GtkEntry *entry, GdkEventKey *event, PopplerViewer *viewer)
{
char *endptr;
@@ -266,6 +344,9 @@ static void poppler_show_controls(Popple
gtk_widget_show(viewer->zoom_width);
gtk_widget_show(viewer->vsep);
gtk_widget_show(viewer->vsep1);
+ gtk_widget_show(viewer->rotate_right);
+ gtk_widget_show(viewer->rotate_left);
+ gtk_widget_show(viewer->doc_info);
} else {
gtk_widget_hide(viewer->cur_page);
gtk_widget_hide(viewer->num_pages);
@@ -277,6 +358,9 @@ static void poppler_show_controls(Popple
gtk_widget_hide(viewer->zoom_width);
gtk_widget_hide(viewer->vsep);
gtk_widget_hide(viewer->vsep1);
+ gtk_widget_hide(viewer->rotate_right);
+ gtk_widget_hide(viewer->rotate_left);
+ gtk_widget_hide(viewer->doc_info);
}
}
@@ -302,17 +386,26 @@ static void poppler_pdf_view_update(Mime
}
if (poppler_mimepart_get_type(viewer->to_load) == TYPE_PS) {
- stock_pixmap_gdk(viewer->hbox, STOCK_PIXMAP_MIME_PS, &viewer->icon_pixmap, &viewer->icon_bitmap);
+ stock_pixmap_gdk(viewer->hbox,
+ STOCK_PIXMAP_MIME_PS,
+ &viewer->icon_pixmap,
+ &viewer->icon_bitmap);
gtk_image_set_from_pixmap(GTK_IMAGE(viewer->icon_type), viewer->icon_pixmap, viewer->icon_bitmap);
} else if (poppler_mimepart_get_type(viewer->to_load) == TYPE_PDF) {
- stock_pixmap_gdk(viewer->hbox, STOCK_PIXMAP_MIME_PDF, &viewer->icon_pixmap, &viewer->icon_bitmap);
+ stock_pixmap_gdk(viewer->hbox,
+ STOCK_PIXMAP_MIME_PDF,
+ &viewer->icon_pixmap,
+ &viewer->icon_bitmap);
gtk_image_set_from_pixmap(GTK_IMAGE(viewer->icon_type), viewer->icon_pixmap, viewer->icon_bitmap);
} else {
- stock_pixmap_gdk(viewer->hbox, STOCK_PIXMAP_MIME_APPLICATION, &viewer->icon_pixmap, &viewer->icon_bitmap);
+ stock_pixmap_gdk(viewer->hbox,
+ STOCK_PIXMAP_MIME_APPLICATION,
+ &viewer->icon_pixmap,
+ &viewer->icon_bitmap);
gtk_image_set_from_pixmap(GTK_IMAGE(viewer->icon_type), viewer->icon_pixmap, viewer->icon_bitmap);
}
- gtk_label_set_text(GTK_LABEL(viewer->doc_label), "Loading...");
+ gtk_label_set_text(GTK_LABEL(viewer->doc_label), _("Loading..."));
poppler_show_controls(viewer, FALSE);
GTK_EVENTS_FLUSH();
@@ -347,7 +440,12 @@ static void poppler_pdf_view_update(Mime
}
if (viewer->pdf_doc == NULL) {
strretchomp(error->message);
- stock_pixmap_gdk(viewer->hbox, STOCK_PIXMAP_MIME_APPLICATION, &viewer->icon_pixmap, &viewer->icon_bitmap);
+
+ stock_pixmap_gdk(viewer->hbox,
+ STOCK_PIXMAP_MIME_APPLICATION,
+ &viewer->icon_pixmap,
+ &viewer->icon_bitmap);
+
gtk_image_set_from_pixmap(GTK_IMAGE(viewer->icon_type), viewer->icon_pixmap, viewer->icon_bitmap);
gtk_label_set_text(GTK_LABEL(viewer->doc_label), error->message);
g_error_free(error);
@@ -366,14 +464,28 @@ static void poppler_pdf_view_update(Mime
}
gtk_entry_set_text(GTK_ENTRY(viewer->cur_page), g_strdup_printf("%d",page_num));
-
- poppler_page_get_size(viewer->pdf_page, &viewer->width, &viewer->height);
-
- pb = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, (int)(viewer->width * viewer->zoom), (int)(viewer->height * viewer->zoom));
- poppler_page_render_to_pixbuf (viewer->pdf_page, 0, 0,
- (int)(viewer->width * viewer->zoom), (int)(viewer->height * viewer->zoom), viewer->zoom, 0, pb);
- gtk_image_set_from_pixbuf(GTK_IMAGE(viewer->pdf_view),
- pb);
+ if(viewer->rotate == 90 || viewer->rotate == 270) {
+ poppler_page_get_size(viewer->pdf_page, &viewer->height, &viewer->width);
+ }
+ else {
+ poppler_page_get_size(viewer->pdf_page, &viewer->width, &viewer->height);
+ }
+
+ pb = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ FALSE, 8,
+ (int)(viewer->width * viewer->zoom),
+ (int)(viewer->height * viewer->zoom));
+
+ poppler_page_render_to_pixbuf (viewer->pdf_page,
+ 0,
+ 0,
+ (int)(viewer->width * viewer->zoom),
+ (int)(viewer->height * viewer->zoom),
+ viewer->zoom,
+ viewer->rotate,
+ pb);
+
+ gtk_image_set_from_pixbuf(GTK_IMAGE(viewer->pdf_view), pb);
g_object_unref(G_OBJECT(pb));
g_object_unref(G_OBJECT(viewer->pdf_page));
@@ -436,6 +548,7 @@ static void poppler_show_mimepart(MimeVi
{
PopplerViewer *viewer = (PopplerViewer *) _viewer;
viewer->zoom = 1.0;
+ viewer->rotate = 0;
viewer->to_load = partinfo;
gtk_timeout_add(5, (GtkFunction)poppler_show_mimepart_real, viewer);
@@ -583,7 +696,21 @@ static MimeViewer *poppler_viewer_create
gtk_widget_set_size_request(viewer->zoom_width, -1, -1);
button_set_pixmap(viewer->zoom_width, zoom_width_xpm);
+ viewer->rotate_left = gtk_button_new();
+ gtk_widget_set_size_request(viewer->rotate_left, -1, -1);
+ button_set_pixmap(viewer->rotate_left, rotate_left_xpm);
+
+ viewer->rotate_right = gtk_button_new();
+ gtk_widget_set_size_request(viewer->rotate_right, -1, -1);
+ button_set_pixmap(viewer->rotate_right, rotate_right_xpm);
+
+ viewer->doc_info = gtk_button_new();
+ gtk_widget_set_size_request(viewer->doc_info, -1, -1);
+ button_set_pixmap(viewer->doc_info, doc_info_xpm);
+
viewer->num_pages = gtk_label_new("");
+
+
gtk_scrolled_window_set_policy(
GTK_SCROLLED_WINDOW(viewer->scrollwin),
GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
@@ -604,7 +731,10 @@ static MimeViewer *poppler_viewer_create
gtk_widget_show(viewer->hbox);
- stock_pixmap_gdk(viewer->hbox, STOCK_PIXMAP_MIME_TEXT_PLAIN, &viewer->icon_pixmap, &viewer->icon_bitmap);
+ stock_pixmap_gdk(viewer->hbox,
+ STOCK_PIXMAP_MIME_TEXT_PLAIN,
+ &viewer->icon_pixmap,
+ &viewer->icon_bitmap);
gtk_image_set_from_pixmap(GTK_IMAGE(viewer->icon_type), viewer->icon_pixmap, viewer->icon_bitmap);
gtk_box_pack_start(GTK_BOX(viewer->hbox), viewer->icon_type, FALSE, FALSE, 0);
@@ -623,7 +753,11 @@ static MimeViewer *poppler_viewer_create
gtk_box_pack_start(GTK_BOX(viewer->hbox), viewer->zoom_fit, FALSE, FALSE, 1);
gtk_box_pack_start(GTK_BOX(viewer->hbox), viewer->zoom_width, FALSE, FALSE, 1);
+ gtk_box_pack_start(GTK_BOX(viewer->hbox), viewer->rotate_left, FALSE, FALSE, 1);
+ gtk_box_pack_start(GTK_BOX(viewer->hbox), viewer->rotate_right, FALSE, FALSE, 1);
+ gtk_box_pack_start(GTK_BOX(viewer->hbox), viewer->doc_info, FALSE, FALSE, 1);
+
gtk_box_pack_start(GTK_BOX(viewer->vbox), viewer->hbox, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(viewer->vbox), viewer->scrollwin, TRUE, TRUE, 0);
@@ -657,6 +791,12 @@ static MimeViewer *poppler_viewer_create
gtk_widget_show(GTK_WIDGET(viewer->zoom_width));
gtk_widget_ref(GTK_WIDGET(viewer->zoom_width));
+ gtk_widget_show(GTK_WIDGET(viewer->rotate_right));
+ gtk_widget_ref(GTK_WIDGET(viewer->rotate_right));
+ gtk_widget_show(GTK_WIDGET(viewer->rotate_left));
+ gtk_widget_ref(GTK_WIDGET(viewer->rotate_left));
+ gtk_widget_show(GTK_WIDGET(viewer->doc_info));
+ gtk_widget_ref(GTK_WIDGET(viewer->doc_info));
gtk_widget_show(GTK_WIDGET(viewer->doc_label));
gtk_widget_ref(GTK_WIDGET(viewer->doc_label));
gtk_widget_show(GTK_WIDGET(viewer->icon_type));
@@ -665,43 +805,109 @@ static MimeViewer *poppler_viewer_create
gtk_widget_ref(GTK_WIDGET(viewer->pdf_view));
/* setting tooltips */
- gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips), viewer->prev,
- _("Previous Page"),
- "");
-
- gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips), viewer->next,
- _("Next Page"),
- "");
-
- gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips), viewer->zoom_in,
- _("Zoom In"),
- "");
-
- gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips), viewer->zoom_out,
- _("Zoom Out"),
- "");
- gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips), viewer->zoom_fit,
- _("Fit Page"),
- "");
- gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips), viewer->zoom_width,
- _("Fit Page Width"),
- "");
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->prev,
+ _("Previous Page"),
+ "");
+
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->next,
+ _("Next Page"),
+ "");
+
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->zoom_in,
+ _("Zoom In"),
+ "");
+
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->zoom_out,
+ _("Zoom Out"),
+ "");
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->zoom_fit,
+ _("Fit Page"),
+ "");
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->zoom_width,
+ _("Fit Page Width"),
+ "");
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->rotate_left,
+ _("Rotate Left"),
+ "");
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->rotate_right,
+ _("Rotate Right"),
+ "");
+ gtk_tooltips_set_tip (GTK_TOOLTIPS (viewer->button_bar_tips),
+ viewer->doc_info,
+ _("Document Info"),
+ "");
+
/* Signals */
- g_signal_connect (G_OBJECT(viewer->cur_page), "key_press_event", G_CALLBACK(entry_current_page_cb), (gpointer) viewer);
-
- //g_signal_connect (G_OBJECT(viewer->scrollwin), "key_press_event", G_CALLBACK(scrollwin_key_down_cb), (gpointer) viewer);
- //g_signal_connect (G_OBJECT(viewer->scrollwin), "key_press_event", G_CALLBACK(scrollwin_key_up_cb), (gpointer) viewer);
- //g_signal_connect (G_OBJECT(viewer->scrollwin), "key_press_event", G_CALLBACK(scrollwin_page_down_cb), (gpointer) viewer);
- //g_signal_connect (G_OBJECT(viewer->pdf_view), "key_press_event", G_CALLBACK(scrollwin_page_up_cb), (gpointer) viewer);
-
- g_signal_connect (G_OBJECT(viewer->prev), "clicked", G_CALLBACK(poppler_prev_page_cb), (gpointer) viewer);
- g_signal_connect (G_OBJECT(viewer->next), "clicked", G_CALLBACK(poppler_next_page_cb), (gpointer) viewer);
- g_signal_connect (G_OBJECT(viewer->zoom_in), "clicked", G_CALLBACK(poppler_zoom_in_cb), (gpointer) viewer);
- g_signal_connect (G_OBJECT(viewer->zoom_out), "clicked", G_CALLBACK(poppler_zoom_out_cb), (gpointer) viewer);
-
- g_signal_connect (G_OBJECT(viewer->zoom_fit), "clicked", G_CALLBACK(poppler_zoom_fit_cb), (gpointer) viewer);
- g_signal_connect (G_OBJECT(viewer->zoom_width), "clicked", G_CALLBACK(poppler_zoom_width_cb), (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->cur_page),
+ "key_press_event",
+ G_CALLBACK(entry_current_page_cb),
+ (gpointer) viewer);
+ /*
+ g_signal_connect (G_OBJECT(viewer->scrollwin),
+ "key_press_event",
+ G_CALLBACK(scrollwin_key_down_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->scrollwin),
+ "key_press_event",
+ G_CALLBACK(scrollwin_key_up_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->scrollwin),
+ "key_press_event",
+ G_CALLBACK(scrollwin_page_down_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->pdf_view),
+ "key_press_event",
+ G_CALLBACK(scrollwin_page_up_cb),
+ (gpointer) viewer);
+ */
+
+ g_signal_connect (G_OBJECT(viewer->prev),
+ "clicked",
+ G_CALLBACK(poppler_prev_page_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->next),
+ "clicked",
+ G_CALLBACK(poppler_next_page_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->zoom_in),
+ "clicked",
+ G_CALLBACK(poppler_zoom_in_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->zoom_out),
+ "clicked",
+ G_CALLBACK(poppler_zoom_out_cb),
+ (gpointer) viewer);
+
+ g_signal_connect (G_OBJECT(viewer->zoom_fit),
+ "clicked",
+ G_CALLBACK(poppler_zoom_fit_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->zoom_width),
+ "clicked",
+ G_CALLBACK(poppler_zoom_width_cb),
+ (gpointer) viewer);
+
+ g_signal_connect (G_OBJECT(viewer->rotate_right),
+ "clicked",
+ G_CALLBACK(poppler_rotate_right_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->rotate_left),
+ "clicked",
+ G_CALLBACK(poppler_rotate_left_cb),
+ (gpointer) viewer);
+ g_signal_connect (G_OBJECT(viewer->doc_info),
+ "clicked",
+ G_CALLBACK(poppler_document_info_cb),
+ (gpointer) viewer);
viewer->filename = NULL;
return (MimeViewer *) viewer;