summaryrefslogtreecommitdiff
path: root/Build/source/libs/poppler/poppler-0.12.4/glib
diff options
context:
space:
mode:
authorTaco Hoekwater <taco@elvenkind.com>2011-04-12 14:17:47 +0000
committerTaco Hoekwater <taco@elvenkind.com>2011-04-12 14:17:47 +0000
commit307453997ef030ec4dfa1e876feaf0b8b8125bab (patch)
treeab2054693ba95e9ac8f6e3478b4d0175d893329f /Build/source/libs/poppler/poppler-0.12.4/glib
parentd95b11a25d3d9e17cc4afb9c8713ef4037567527 (diff)
check in luatex 0.66.0
git-svn-id: svn://tug.org/texlive/trunk@22059 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/poppler/poppler-0.12.4/glib')
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/CMakeLists.txt117
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.am110
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.in978
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/CMakeLists.txt23
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.am51
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.in665
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.c675
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.c358
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.c282
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.c276
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.c491
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.c342
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.cc228
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.c511
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.c289
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/main.c247
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.c218
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.c335
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.c531
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.c175
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.c321
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.h31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.c260
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.h43
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.cc418
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.h162
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.cc839
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.h176
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.cc274
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.h70
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.cc66
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.h30
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.cc1960
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.h192
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c607
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c.template44
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h74
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h.template25
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h34
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.cmake33
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.in34
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.cc579
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.h107
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.cc203
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.h43
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.cc2006
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.h227
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler-private.h135
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler.cc64
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/poppler.h130
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.am88
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.in698
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/ch01.html63
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/home.pngbin0 -> 654 bytes
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.html59
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.sgml309
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/left.pngbin0 -> 459 bytes
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-action.html386
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-annot.html854
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-attachment.html205
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-document.html1122
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-enums.html412
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-features.html143
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-form-field.html871
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-layer.html214
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-page.html1258
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler.html483
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp281
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp2281
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/right.pngbin0 -> 472 bytes
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/style.css167
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/up.pngbin0 -> 406 bytes
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-docs.sgml22
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-overrides.txt0
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-sections.txt320
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler.types6
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-action.sgml207
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-annot.sgml333
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml65
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml.sgml67
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-document.sgml405
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-enums.sgml229
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-features.sgml80
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-form-field.sgml315
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-layer.sgml79
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-page.sgml470
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-private.sgml145
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-unused.sgml31
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler.sgml279
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/stamp-poppler-enums.sgml19
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-deprecated.xml5
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-full.xml266
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-action.xml295
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-annot.xml511
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-attachment.xml143
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-document.xml722
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-enums.xml275
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-features.xml114
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-form-field.xml546
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-layer.xml140
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-page.xml819
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-private.xml196
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler.xml362
-rw-r--r--Build/source/libs/poppler/poppler-0.12.4/glib/test-poppler-glib.cc665
117 files changed, 32517 insertions, 0 deletions
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/CMakeLists.txt b/Build/source/libs/poppler/poppler-0.12.4/glib/CMakeLists.txt
new file mode 100644
index 00000000000..6ed95230104
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/CMakeLists.txt
@@ -0,0 +1,117 @@
+add_definitions(-DG_LOG_DOMAIN=\"Poppler\" ${GLIB2_CFLAGS})
+
+include_directories(
+ ${CMAKE_CURRENT_SOURCE_DIR}
+ ${CMAKE_CURRENT_BINARY_DIR}
+)
+if (CAIRO_FOUND)
+ include_directories(${CAIRO_INCLUDES})
+ set (CAIRO_FEATURE "#define POPPLER_HAS_CAIRO 1")
+ add_definitions(${CAIRO_CFLAGS})
+else (CAIRO_FOUND)
+ set (CAIRO_FEATURE "#undef POPPLER_HAS_CAIRO")
+endif (CAIRO_FOUND)
+
+if (GDK_FOUND)
+ add_definitions(${GDK2_CFLAGS})
+endif (GDK_FOUND)
+
+configure_file(poppler-features.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/poppler-features.h @ONLY)
+
+if (GTK_FOUND)
+ add_subdirectory(demo)
+endif (GTK_FOUND)
+
+set(poppler_glib_public_headers
+ poppler-action.h
+ poppler-date.h
+ poppler-document.h
+ poppler-page.h
+ poppler-attachment.h
+ poppler-form-field.h
+ poppler-annot.h
+ poppler.h
+)
+
+find_program(GLIB2_MKENUMS glib-mkenums)
+
+add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.h
+ COMMAND ${GLIB2_MKENUMS}
+ ARGS
+ --fhead \"\#ifndef __POPPLER_TYPE_ENUMS_H__\\n\"
+ --fhead \"\#define __POPPLER_TYPE_ENUMS_H__ 1\\n\\n\"
+ --fhead \"\#include <glib-object.h>\\n\\n\"
+ --fhead \"G_BEGIN_DECLS\\n\\n\"
+ --ftail \"G_END_DECLS\\n\\n\"
+ --ftail \"\#endif /* __POPPLER_TYPE_ENUMS_H__ */\\n\"
+ --fprod \"\\n/* --- @filename@ --- */\"
+ --eprod \"\#define POPPLER_TYPE_@ENUMSHORT@ \(@enum_name@_get_type\(\)\)\\n\"
+ --eprod \"GType @enum_name@_get_type \(void\) G_GNUC_CONST\;\\n\"
+ ${poppler_glib_public_headers} > ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.h
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ DEPENDS ${poppler_glib_public_headers}
+)
+
+add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.c
+ COMMAND ${GLIB2_MKENUMS}
+ ARGS
+ --fhead \"\#include \\"poppler-enums.h\\"\\n\\n\"
+ --fprod \"\\n/* enumerations from \\"@filename@\\" */\"
+ --fprod \"\\n\#include \\"@filename@\\"\"
+ --vhead \"static const G@Type@Value _@enum_name@_values[] = {\"
+ --vprod \" { @VALUENAME@, \\"@VALUENAME@\\", \\"@valuenick@\\" },\"
+ --vtail \" { 0, NULL, NULL }\\n}\;\\n\\n\"
+ --vtail \"GType\\n@enum_name@_get_type \(void\)\\n{\\n\"
+ --vtail \" static GType type = 0\;\\n\\n\"
+ --vtail \" if \(G_UNLIKELY \(type == 0\)\)\\n\"
+ --vtail \" type = g_\@type\@_register_static \(\\"@EnumName@\\", _@enum_name@_values\)\;\\n\\n\"
+ --vtail \" return type\;\\n}\\n\\n\"
+ ${poppler_glib_public_headers} > ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.c
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ DEPENDS ${poppler_glib_public_headers} ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.h
+)
+
+
+set(poppler_glib_SRCS
+ poppler-action.cc
+ poppler-date.cc
+ poppler-document.cc
+ poppler-page.cc
+ poppler-attachment.cc
+ poppler-form-field.cc
+ poppler-annot.cc
+ poppler-layer.cc
+ poppler.cc
+ ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.c
+)
+if (CAIRO_FOUND)
+ set(poppler_glib_SRCS ${poppler_glib_SRCS}
+ ${CMAKE_SOURCE_DIR}/poppler/CairoFontEngine.cc
+ ${CMAKE_SOURCE_DIR}/poppler/CairoOutputDev.cc
+ )
+endif (CAIRO_FOUND)
+add_library(poppler-glib SHARED ${poppler_glib_SRCS})
+set_target_properties(poppler-glib PROPERTIES VERSION 4.0.0 SOVERSION 4)
+target_link_libraries(poppler-glib poppler ${GLIB2_LIBRARIES})
+if (CAIRO_FOUND)
+ target_link_libraries(poppler-glib ${CAIRO_LIBRARIES})
+endif (CAIRO_FOUND)
+install(TARGETS poppler-glib RUNTIME DESTINATION bin LIBRARY DESTINATION lib${LIB_SUFFIX} ARCHIVE DESTINATION lib${LIB_SUFFIX})
+
+install(FILES
+ ${poppler_glib_public_headers}
+ ${CMAKE_CURRENT_BINARY_DIR}/poppler-enums.h
+ ${CMAKE_CURRENT_BINARY_DIR}/poppler-features.h
+ DESTINATION include/poppler/glib)
+
+
+if (GDK_FOUND)
+ set(test_poppler_glib_SRCS
+ test-poppler-glib.cc
+ )
+ poppler_add_test(test-poppler-glib BUILD_GTK_TESTS ${test_poppler_glib_SRCS})
+ target_link_libraries(test-poppler-glib poppler-glib ${GDK2_LIBRARIES})
+endif (GDK_FOUND)
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.am b/Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.am
new file mode 100644
index 00000000000..3c065fe267a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.am
@@ -0,0 +1,110 @@
+if BUILD_CAIRO_OUTPUT
+
+cairo_includes = \
+ $(CAIRO_CFLAGS)
+
+cairo_libs = \
+ $(top_builddir)/poppler/libpoppler-cairo.la \
+ $(CAIRO_LIBS)
+
+endif
+
+SUBDIRS = . reference demo
+INCLUDES = \
+ -DG_LOG_DOMAIN=\"Poppler\" \
+ -I$(top_srcdir) \
+ -I$(top_srcdir)/poppler \
+ $(cairo_includes) \
+ $(POPPLER_GLIB_CFLAGS) \
+ $(GDK_CFLAGS) \
+ $(FREETYPE_CFLAGS) \
+ $(FONTCONFIG_CFLAGS) \
+ $(cairo_includes) \
+ $(POPPLER_GLIB_DISABLE_DEPRECATED) \
+ $(POPPLER_GLIB_DISABLE_SINGLE_INCLUDES)
+
+stamp_files = stamp-poppler-enums.h
+
+poppler-enums.h: stamp-poppler-enums.h
+ @true
+
+stamp-poppler-enums.h: poppler-enums.h.template $(poppler_glib_public_headers)
+ $(AM_V_GEN) $(GLIB_MKENUMS) --template $< $(filter-out $<,$^) > xgen-etbh \
+ && (cmp -s xgen-etbh poppler-enums.h || cp xgen-etbh poppler-enums.h ) \
+ && rm -f xgen-etbh \
+ && echo timestamp > $(@F)
+
+poppler-enums.c: poppler-enums.c.template $(poppler_glib_public_headers)
+ $(AM_V_GEN) $(GLIB_MKENUMS) --template $< $(filter-out $<,$^) > xgen-etbc \
+ && (cmp -s xgen-etbc poppler-enums.c || cp xgen-etbc poppler-enums.c ) \
+ && rm -f xgen-etbc
+
+EXTRA_DIST = \
+ poppler-enums.h.template \
+ poppler-enums.c.template
+
+poppler_glib_public_headers = \
+ poppler-action.h \
+ poppler-date.h \
+ poppler-document.h \
+ poppler-page.h \
+ poppler-attachment.h \
+ poppler-form-field.h \
+ poppler-annot.h \
+ poppler-layer.h \
+ poppler.h
+
+poppler_glib_includedir = $(includedir)/poppler/glib
+
+poppler_glib_include_HEADERS = \
+ $(poppler_glib_public_headers) \
+ poppler-enums.h \
+ poppler-features.h
+
+lib_LTLIBRARIES = libpoppler-glib.la
+libpoppler_glib_la_SOURCES = \
+ $(BUILT_SOURCES) \
+ poppler-action.cc \
+ poppler-date.cc \
+ poppler-document.cc \
+ poppler-page.cc \
+ poppler-attachment.cc \
+ poppler-form-field.cc \
+ poppler-annot.cc \
+ poppler-layer.cc \
+ poppler.cc \
+ poppler-private.h
+
+libpoppler_glib_la_LIBADD = \
+ $(top_builddir)/poppler/libpoppler.la \
+ $(POPPLER_GLIB_LIBS) \
+ $(GDK_LIBS) \
+ $(FREETYPE_LIBS) \
+ $(FONTCONFIG_LIBS) \
+ $(cairo_libs)
+
+libpoppler_glib_la_LDFLAGS = -version-info 4:0:0 @create_shared_lib@ @auto_import_flags@
+
+if BUILD_WITH_GDK
+noinst_PROGRAMS = test-poppler-glib
+
+test_poppler_glib_SOURCES = \
+ test-poppler-glib.cc
+
+test_poppler_glib_LDADD = \
+ $(top_builddir)/poppler/libpoppler.la \
+ libpoppler-glib.la \
+ $(POPPLER_GLIB_LIBS) \
+ $(GDK_LIBS) \
+ $(FREETYPE_LIBS) \
+ $(cairo_libs)
+endif
+
+BUILT_SOURCES = \
+ poppler-enums.c \
+ poppler-enums.h \
+ poppler-features.h
+
+CLEANFILES = $(BUILT_SOURCES) $(stamp_files)
+DISTCLEANFILES = $(BUILT_SOURCES) $(stamp_files)
+MAINTAINERCLEANFILES = $(BUILT_SOURCES) $(stamp_files)
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.in b/Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.in
new file mode 100644
index 00000000000..256d8c927dd
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/Makefile.in
@@ -0,0 +1,978 @@
+# Makefile.in generated by automake 1.11 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@BUILD_WITH_GDK_TRUE@noinst_PROGRAMS = test-poppler-glib$(EXEEXT)
+subdir = glib
+DIST_COMMON = $(poppler_glib_include_HEADERS) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in $(srcdir)/poppler-features.h.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/acx_pthread.m4 \
+ $(top_srcdir)/m4/define-dir.m4 $(top_srcdir)/m4/gtk-doc.m4 \
+ $(top_srcdir)/m4/libjpeg.m4 $(top_srcdir)/m4/libpng.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/qt.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h \
+ $(top_builddir)/poppler/poppler-config.h
+CONFIG_CLEAN_FILES = poppler-features.h
+CONFIG_CLEAN_VPATH_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__installdirs = "$(DESTDIR)$(libdir)" \
+ "$(DESTDIR)$(poppler_glib_includedir)"
+LTLIBRARIES = $(lib_LTLIBRARIES)
+am__DEPENDENCIES_1 =
+@BUILD_CAIRO_OUTPUT_TRUE@am__DEPENDENCIES_2 = $(top_builddir)/poppler/libpoppler-cairo.la \
+@BUILD_CAIRO_OUTPUT_TRUE@ $(am__DEPENDENCIES_1)
+libpoppler_glib_la_DEPENDENCIES = \
+ $(top_builddir)/poppler/libpoppler.la $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2)
+am__objects_1 = poppler-enums.lo
+am_libpoppler_glib_la_OBJECTS = $(am__objects_1) poppler-action.lo \
+ poppler-date.lo poppler-document.lo poppler-page.lo \
+ poppler-attachment.lo poppler-form-field.lo poppler-annot.lo \
+ poppler-layer.lo poppler.lo
+libpoppler_glib_la_OBJECTS = $(am_libpoppler_glib_la_OBJECTS)
+AM_V_lt = $(am__v_lt_$(V))
+am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
+am__v_lt_0 = --silent
+libpoppler_glib_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
+ $(AM_CXXFLAGS) $(CXXFLAGS) $(libpoppler_glib_la_LDFLAGS) \
+ $(LDFLAGS) -o $@
+PROGRAMS = $(noinst_PROGRAMS)
+am__test_poppler_glib_SOURCES_DIST = test-poppler-glib.cc
+@BUILD_WITH_GDK_TRUE@am_test_poppler_glib_OBJECTS = \
+@BUILD_WITH_GDK_TRUE@ test-poppler-glib.$(OBJEXT)
+test_poppler_glib_OBJECTS = $(am_test_poppler_glib_OBJECTS)
+@BUILD_WITH_GDK_TRUE@test_poppler_glib_DEPENDENCIES = \
+@BUILD_WITH_GDK_TRUE@ $(top_builddir)/poppler/libpoppler.la \
+@BUILD_WITH_GDK_TRUE@ libpoppler-glib.la $(am__DEPENDENCIES_1) \
+@BUILD_WITH_GDK_TRUE@ $(am__DEPENDENCIES_1) \
+@BUILD_WITH_GDK_TRUE@ $(am__DEPENDENCIES_1) \
+@BUILD_WITH_GDK_TRUE@ $(am__DEPENDENCIES_2)
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -I$(top_builddir)/poppler
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_$(V))
+am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
+am__v_CC_0 = @echo " CC " $@;
+AM_V_at = $(am__v_at_$(V))
+am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
+am__v_at_0 = @
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_$(V))
+am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
+am__v_CCLD_0 = @echo " CCLD " $@;
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CXXFLAGS) $(CXXFLAGS)
+AM_V_CXX = $(am__v_CXX_$(V))
+am__v_CXX_ = $(am__v_CXX_$(AM_DEFAULT_VERBOSITY))
+am__v_CXX_0 = @echo " CXX " $@;
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CXXLD = $(am__v_CXXLD_$(V))
+am__v_CXXLD_ = $(am__v_CXXLD_$(AM_DEFAULT_VERBOSITY))
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+AM_V_GEN = $(am__v_GEN_$(V))
+am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
+am__v_GEN_0 = @echo " GEN " $@;
+SOURCES = $(libpoppler_glib_la_SOURCES) $(test_poppler_glib_SOURCES)
+DIST_SOURCES = $(libpoppler_glib_la_SOURCES) \
+ $(am__test_poppler_glib_SOURCES_DIST)
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive
+HEADERS = $(poppler_glib_include_HEADERS)
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+ distdir
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+am__relativize = \
+ dir0=`pwd`; \
+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+ sed_rest='s,^[^/]*/*,,'; \
+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+ sed_butlast='s,/*[^/]*$$,,'; \
+ while test -n "$$dir1"; do \
+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+ if test "$$first" != "."; then \
+ if test "$$first" = ".."; then \
+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+ else \
+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+ if test "$$first2" = "$$first"; then \
+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+ else \
+ dir2="../$$dir2"; \
+ fi; \
+ dir0="$$dir0"/"$$first"; \
+ fi; \
+ fi; \
+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+ done; \
+ reldir="$$dir2"
+ABIWORD_CFLAGS = @ABIWORD_CFLAGS@
+ABIWORD_LIBS = @ABIWORD_LIBS@
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CAIRO_CFLAGS = @CAIRO_CFLAGS@
+CAIRO_FEATURE = @CAIRO_FEATURE@
+CAIRO_LIBS = @CAIRO_LIBS@
+CAIRO_REQ = @CAIRO_REQ@
+CAIRO_VERSION = @CAIRO_VERSION@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@
+FONTCONFIG_LIBS = @FONTCONFIG_LIBS@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_CONFIG = @FREETYPE_CONFIG@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+GDK_CFLAGS = @GDK_CFLAGS@
+GDK_FEATURE = @GDK_FEATURE@
+GDK_LIBS = @GDK_LIBS@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GREP = @GREP@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTK_TEST_CFLAGS = @GTK_TEST_CFLAGS@
+GTK_TEST_LIBS = @GTK_TEST_LIBS@
+HTML_DIR = @HTML_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LCMS_CFLAGS = @LCMS_CFLAGS@
+LCMS_LIBS = @LCMS_LIBS@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBJPEG_LIBS = @LIBJPEG_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBOPENJPEG_LIBS = @LIBOPENJPEG_LIBS@
+LIBPNG_LIBS = @LIBPNG_LIBS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+MOCQT4 = @MOCQT4@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PC_REQUIRES = @PC_REQUIRES@
+PC_REQUIRES_PRIVATE = @PC_REQUIRES_PRIVATE@
+PKG_CONFIG = @PKG_CONFIG@
+POPPLER_DATADIR = @POPPLER_DATADIR@
+POPPLER_GLIB_CFLAGS = @POPPLER_GLIB_CFLAGS@
+POPPLER_GLIB_DISABLE_DEPRECATED = @POPPLER_GLIB_DISABLE_DEPRECATED@
+POPPLER_GLIB_DISABLE_SINGLE_INCLUDES = @POPPLER_GLIB_DISABLE_SINGLE_INCLUDES@
+POPPLER_GLIB_LIBS = @POPPLER_GLIB_LIBS@
+POPPLER_MAJOR_VERSION = @POPPLER_MAJOR_VERSION@
+POPPLER_MICRO_VERSION = @POPPLER_MICRO_VERSION@
+POPPLER_MINOR_VERSION = @POPPLER_MINOR_VERSION@
+POPPLER_QT4_CFLAGS = @POPPLER_QT4_CFLAGS@
+POPPLER_QT4_CXXFLAGS = @POPPLER_QT4_CXXFLAGS@
+POPPLER_QT4_LIBS = @POPPLER_QT4_LIBS@
+POPPLER_QT4_TEST_CFLAGS = @POPPLER_QT4_TEST_CFLAGS@
+POPPLER_QT4_TEST_LIBS = @POPPLER_QT4_TEST_LIBS@
+POPPLER_QT_CXXFLAGS = @POPPLER_QT_CXXFLAGS@
+POPPLER_QT_LIBS = @POPPLER_QT_LIBS@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+XMKMF = @XMKMF@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+ZLIB_LIBS = @ZLIB_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+acx_pthread_config = @acx_pthread_config@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+auto_import_flags = @auto_import_flags@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+create_shared_lib = @create_shared_lib@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+win32_libs = @win32_libs@
+@BUILD_CAIRO_OUTPUT_TRUE@cairo_includes = \
+@BUILD_CAIRO_OUTPUT_TRUE@ $(CAIRO_CFLAGS)
+
+@BUILD_CAIRO_OUTPUT_TRUE@cairo_libs = \
+@BUILD_CAIRO_OUTPUT_TRUE@ $(top_builddir)/poppler/libpoppler-cairo.la \
+@BUILD_CAIRO_OUTPUT_TRUE@ $(CAIRO_LIBS)
+
+SUBDIRS = . reference demo
+INCLUDES = \
+ -DG_LOG_DOMAIN=\"Poppler\" \
+ -I$(top_srcdir) \
+ -I$(top_srcdir)/poppler \
+ $(cairo_includes) \
+ $(POPPLER_GLIB_CFLAGS) \
+ $(GDK_CFLAGS) \
+ $(FREETYPE_CFLAGS) \
+ $(FONTCONFIG_CFLAGS) \
+ $(cairo_includes) \
+ $(POPPLER_GLIB_DISABLE_DEPRECATED) \
+ $(POPPLER_GLIB_DISABLE_SINGLE_INCLUDES)
+
+stamp_files = stamp-poppler-enums.h
+EXTRA_DIST = \
+ poppler-enums.h.template \
+ poppler-enums.c.template
+
+poppler_glib_public_headers = \
+ poppler-action.h \
+ poppler-date.h \
+ poppler-document.h \
+ poppler-page.h \
+ poppler-attachment.h \
+ poppler-form-field.h \
+ poppler-annot.h \
+ poppler-layer.h \
+ poppler.h
+
+poppler_glib_includedir = $(includedir)/poppler/glib
+poppler_glib_include_HEADERS = \
+ $(poppler_glib_public_headers) \
+ poppler-enums.h \
+ poppler-features.h
+
+lib_LTLIBRARIES = libpoppler-glib.la
+libpoppler_glib_la_SOURCES = \
+ $(BUILT_SOURCES) \
+ poppler-action.cc \
+ poppler-date.cc \
+ poppler-document.cc \
+ poppler-page.cc \
+ poppler-attachment.cc \
+ poppler-form-field.cc \
+ poppler-annot.cc \
+ poppler-layer.cc \
+ poppler.cc \
+ poppler-private.h
+
+libpoppler_glib_la_LIBADD = \
+ $(top_builddir)/poppler/libpoppler.la \
+ $(POPPLER_GLIB_LIBS) \
+ $(GDK_LIBS) \
+ $(FREETYPE_LIBS) \
+ $(FONTCONFIG_LIBS) \
+ $(cairo_libs)
+
+libpoppler_glib_la_LDFLAGS = -version-info 4:0:0 @create_shared_lib@ @auto_import_flags@
+@BUILD_WITH_GDK_TRUE@test_poppler_glib_SOURCES = \
+@BUILD_WITH_GDK_TRUE@ test-poppler-glib.cc
+
+@BUILD_WITH_GDK_TRUE@test_poppler_glib_LDADD = \
+@BUILD_WITH_GDK_TRUE@ $(top_builddir)/poppler/libpoppler.la \
+@BUILD_WITH_GDK_TRUE@ libpoppler-glib.la \
+@BUILD_WITH_GDK_TRUE@ $(POPPLER_GLIB_LIBS) \
+@BUILD_WITH_GDK_TRUE@ $(GDK_LIBS) \
+@BUILD_WITH_GDK_TRUE@ $(FREETYPE_LIBS) \
+@BUILD_WITH_GDK_TRUE@ $(cairo_libs)
+
+BUILT_SOURCES = \
+ poppler-enums.c \
+ poppler-enums.h \
+ poppler-features.h
+
+CLEANFILES = $(BUILT_SOURCES) $(stamp_files)
+DISTCLEANFILES = $(BUILT_SOURCES) $(stamp_files)
+MAINTAINERCLEANFILES = $(BUILT_SOURCES) $(stamp_files)
+all: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) all-recursive
+
+.SUFFIXES:
+.SUFFIXES: .c .cc .lo .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign glib/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign glib/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+poppler-features.h: $(top_builddir)/config.status $(srcdir)/poppler-features.h.in
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ list2=; for p in $$list; do \
+ if test -f $$p; then \
+ list2="$$list2 $$p"; \
+ else :; fi; \
+ done; \
+ test -z "$$list2" || { \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
+ }
+
+uninstall-libLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
+ for p in $$list; do \
+ $(am__strip_dir) \
+ echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
+ $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
+ done
+
+clean-libLTLIBRARIES:
+ -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+libpoppler-glib.la: $(libpoppler_glib_la_OBJECTS) $(libpoppler_glib_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(libpoppler_glib_la_LINK) -rpath $(libdir) $(libpoppler_glib_la_OBJECTS) $(libpoppler_glib_la_LIBADD) $(LIBS)
+
+clean-noinstPROGRAMS:
+ @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+test-poppler-glib$(EXEEXT): $(test_poppler_glib_OBJECTS) $(test_poppler_glib_DEPENDENCIES)
+ @rm -f test-poppler-glib$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(test_poppler_glib_OBJECTS) $(test_poppler_glib_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-action.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-annot.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-attachment.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-date.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-document.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-enums.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-form-field.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-layer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler-page.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/poppler.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-poppler-glib.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+
+.cc.o:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cc.obj:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cc.lo:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+install-poppler_glib_includeHEADERS: $(poppler_glib_include_HEADERS)
+ @$(NORMAL_INSTALL)
+ test -z "$(poppler_glib_includedir)" || $(MKDIR_P) "$(DESTDIR)$(poppler_glib_includedir)"
+ @list='$(poppler_glib_include_HEADERS)'; test -n "$(poppler_glib_includedir)" || list=; \
+ for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; \
+ done | $(am__base_list) | \
+ while read files; do \
+ echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(poppler_glib_includedir)'"; \
+ $(INSTALL_HEADER) $$files "$(DESTDIR)$(poppler_glib_includedir)" || exit $$?; \
+ done
+
+uninstall-poppler_glib_includeHEADERS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(poppler_glib_include_HEADERS)'; test -n "$(poppler_glib_includedir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(poppler_glib_includedir)' && rm -f" $$files ")"; \
+ cd "$(DESTDIR)$(poppler_glib_includedir)" && rm -f $$files
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ fi; \
+ done
+ @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+ $(am__relativize); \
+ new_distdir=$$reldir; \
+ dir1=$$subdir; dir2="$(top_distdir)"; \
+ $(am__relativize); \
+ new_top_distdir=$$reldir; \
+ echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+ echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+ ($(am__cd) $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$new_top_distdir" \
+ distdir="$$new_distdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ am__skip_mode_fix=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) check-recursive
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(HEADERS)
+installdirs: installdirs-recursive
+installdirs-am:
+ for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(poppler_glib_includedir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+ -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
+clean: clean-recursive
+
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+ clean-noinstPROGRAMS mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+html-am:
+
+info: info-recursive
+
+info-am:
+
+install-data-am: install-poppler_glib_includeHEADERS
+
+install-dvi: install-dvi-recursive
+
+install-dvi-am:
+
+install-exec-am: install-libLTLIBRARIES
+
+install-html: install-html-recursive
+
+install-html-am:
+
+install-info: install-info-recursive
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-pdf-am:
+
+install-ps: install-ps-recursive
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-libLTLIBRARIES \
+ uninstall-poppler_glib_includeHEADERS
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check \
+ ctags-recursive install install-am install-strip \
+ tags-recursive
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-generic \
+ clean-libLTLIBRARIES clean-libtool clean-noinstPROGRAMS ctags \
+ ctags-recursive distclean distclean-compile distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am install-info \
+ install-info-am install-libLTLIBRARIES install-man install-pdf \
+ install-pdf-am install-poppler_glib_includeHEADERS install-ps \
+ install-ps-am install-strip installcheck installcheck-am \
+ installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags tags-recursive uninstall uninstall-am \
+ uninstall-libLTLIBRARIES uninstall-poppler_glib_includeHEADERS
+
+
+poppler-enums.h: stamp-poppler-enums.h
+ @true
+
+stamp-poppler-enums.h: poppler-enums.h.template $(poppler_glib_public_headers)
+ $(AM_V_GEN) $(GLIB_MKENUMS) --template $< $(filter-out $<,$^) > xgen-etbh \
+ && (cmp -s xgen-etbh poppler-enums.h || cp xgen-etbh poppler-enums.h ) \
+ && rm -f xgen-etbh \
+ && echo timestamp > $(@F)
+
+poppler-enums.c: poppler-enums.c.template $(poppler_glib_public_headers)
+ $(AM_V_GEN) $(GLIB_MKENUMS) --template $< $(filter-out $<,$^) > xgen-etbc \
+ && (cmp -s xgen-etbc poppler-enums.c || cp xgen-etbc poppler-enums.c ) \
+ && rm -f xgen-etbc
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/CMakeLists.txt b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/CMakeLists.txt
new file mode 100644
index 00000000000..2187e7900cf
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/CMakeLists.txt
@@ -0,0 +1,23 @@
+
+add_definitions(${GTK2_CFLAGS})
+
+set(poppler_glib_demo_SRCS
+ main.c
+ find.c
+ fonts.c
+ forms.c
+ info.cc
+ images.c
+ links.c
+ outline.c
+ page.c
+ render.c
+ text.c
+ transitions.c
+ utils.c
+ annots.c
+ attachments.c
+ layers.c
+)
+poppler_add_test(poppler-glib-demo BUILD_GTK_TESTS ${poppler_glib_demo_SRCS})
+target_link_libraries(poppler-glib-demo poppler-glib ${GTK2_LIBRARIES})
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.am b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.am
new file mode 100644
index 00000000000..4c301de525e
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.am
@@ -0,0 +1,51 @@
+INCLUDES = \
+ -I$(top_srcdir)/glib \
+ -I$(top_builddir)/glib \
+ $(GTK_TEST_CFLAGS) \
+ $(POPPLER_GLIB_DISABLE_DEPRECATED) \
+ -DGTK_DISABLE_DEPRECATED \
+ $(POPPLER_GLIB_DISABLE_SINGLE_INCLUDES)
+
+AM_LDFLAGS = @auto_import_flags@
+
+if BUILD_GTK_TEST
+noinst_PROGRAMS = poppler-glib-demo
+endif
+
+poppler_glib_demo_SOURCES = \
+ main.c \
+ annots.h \
+ annots.c \
+ attachments.c \
+ attachments.h \
+ find.h \
+ find.c \
+ fonts.h \
+ fonts.c \
+ forms.h \
+ forms.c \
+ images.h \
+ images.c \
+ info.h \
+ info.cc \
+ layers.h \
+ layers.c \
+ links.h \
+ links.c \
+ outline.h \
+ outline.c \
+ page.h \
+ page.c \
+ render.h \
+ render.c \
+ text.h \
+ text.c \
+ transitions.h \
+ transitions.c \
+ utils.h \
+ utils.c
+
+LDADD = \
+ $(top_builddir)/glib/libpoppler-glib.la \
+ $(top_builddir)/poppler/libpoppler.la \
+ $(GTK_TEST_LIBS)
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.in b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.in
new file mode 100644
index 00000000000..b75e5766ae5
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/Makefile.in
@@ -0,0 +1,665 @@
+# Makefile.in generated by automake 1.11 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@BUILD_GTK_TEST_TRUE@noinst_PROGRAMS = poppler-glib-demo$(EXEEXT)
+subdir = glib/demo
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/acx_pthread.m4 \
+ $(top_srcdir)/m4/define-dir.m4 $(top_srcdir)/m4/gtk-doc.m4 \
+ $(top_srcdir)/m4/libjpeg.m4 $(top_srcdir)/m4/libpng.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/qt.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h \
+ $(top_builddir)/poppler/poppler-config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+PROGRAMS = $(noinst_PROGRAMS)
+am_poppler_glib_demo_OBJECTS = main.$(OBJEXT) annots.$(OBJEXT) \
+ attachments.$(OBJEXT) find.$(OBJEXT) fonts.$(OBJEXT) \
+ forms.$(OBJEXT) images.$(OBJEXT) info.$(OBJEXT) \
+ layers.$(OBJEXT) links.$(OBJEXT) outline.$(OBJEXT) \
+ page.$(OBJEXT) render.$(OBJEXT) text.$(OBJEXT) \
+ transitions.$(OBJEXT) utils.$(OBJEXT)
+poppler_glib_demo_OBJECTS = $(am_poppler_glib_demo_OBJECTS)
+poppler_glib_demo_LDADD = $(LDADD)
+am__DEPENDENCIES_1 =
+poppler_glib_demo_DEPENDENCIES = \
+ $(top_builddir)/glib/libpoppler-glib.la \
+ $(top_builddir)/poppler/libpoppler.la $(am__DEPENDENCIES_1)
+AM_V_lt = $(am__v_lt_$(V))
+am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY))
+am__v_lt_0 = --silent
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -I$(top_builddir)/poppler
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+am__mv = mv -f
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_$(V))
+am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
+am__v_CC_0 = @echo " CC " $@;
+AM_V_at = $(am__v_at_$(V))
+am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
+am__v_at_0 = @
+CCLD = $(CC)
+LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_$(V))
+am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
+am__v_CCLD_0 = @echo " CCLD " $@;
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CXXFLAGS) $(CXXFLAGS)
+AM_V_CXX = $(am__v_CXX_$(V))
+am__v_CXX_ = $(am__v_CXX_$(AM_DEFAULT_VERBOSITY))
+am__v_CXX_0 = @echo " CXX " $@;
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CXXLD = $(am__v_CXXLD_$(V))
+am__v_CXXLD_ = $(am__v_CXXLD_$(AM_DEFAULT_VERBOSITY))
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+AM_V_GEN = $(am__v_GEN_$(V))
+am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
+am__v_GEN_0 = @echo " GEN " $@;
+SOURCES = $(poppler_glib_demo_SOURCES)
+DIST_SOURCES = $(poppler_glib_demo_SOURCES)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ABIWORD_CFLAGS = @ABIWORD_CFLAGS@
+ABIWORD_LIBS = @ABIWORD_LIBS@
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CAIRO_CFLAGS = @CAIRO_CFLAGS@
+CAIRO_FEATURE = @CAIRO_FEATURE@
+CAIRO_LIBS = @CAIRO_LIBS@
+CAIRO_REQ = @CAIRO_REQ@
+CAIRO_VERSION = @CAIRO_VERSION@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@
+FONTCONFIG_LIBS = @FONTCONFIG_LIBS@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_CONFIG = @FREETYPE_CONFIG@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+GDK_CFLAGS = @GDK_CFLAGS@
+GDK_FEATURE = @GDK_FEATURE@
+GDK_LIBS = @GDK_LIBS@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GREP = @GREP@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTK_TEST_CFLAGS = @GTK_TEST_CFLAGS@
+GTK_TEST_LIBS = @GTK_TEST_LIBS@
+HTML_DIR = @HTML_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LCMS_CFLAGS = @LCMS_CFLAGS@
+LCMS_LIBS = @LCMS_LIBS@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBJPEG_LIBS = @LIBJPEG_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBOPENJPEG_LIBS = @LIBOPENJPEG_LIBS@
+LIBPNG_LIBS = @LIBPNG_LIBS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+MOCQT4 = @MOCQT4@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PC_REQUIRES = @PC_REQUIRES@
+PC_REQUIRES_PRIVATE = @PC_REQUIRES_PRIVATE@
+PKG_CONFIG = @PKG_CONFIG@
+POPPLER_DATADIR = @POPPLER_DATADIR@
+POPPLER_GLIB_CFLAGS = @POPPLER_GLIB_CFLAGS@
+POPPLER_GLIB_DISABLE_DEPRECATED = @POPPLER_GLIB_DISABLE_DEPRECATED@
+POPPLER_GLIB_DISABLE_SINGLE_INCLUDES = @POPPLER_GLIB_DISABLE_SINGLE_INCLUDES@
+POPPLER_GLIB_LIBS = @POPPLER_GLIB_LIBS@
+POPPLER_MAJOR_VERSION = @POPPLER_MAJOR_VERSION@
+POPPLER_MICRO_VERSION = @POPPLER_MICRO_VERSION@
+POPPLER_MINOR_VERSION = @POPPLER_MINOR_VERSION@
+POPPLER_QT4_CFLAGS = @POPPLER_QT4_CFLAGS@
+POPPLER_QT4_CXXFLAGS = @POPPLER_QT4_CXXFLAGS@
+POPPLER_QT4_LIBS = @POPPLER_QT4_LIBS@
+POPPLER_QT4_TEST_CFLAGS = @POPPLER_QT4_TEST_CFLAGS@
+POPPLER_QT4_TEST_LIBS = @POPPLER_QT4_TEST_LIBS@
+POPPLER_QT_CXXFLAGS = @POPPLER_QT_CXXFLAGS@
+POPPLER_QT_LIBS = @POPPLER_QT_LIBS@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+XMKMF = @XMKMF@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+ZLIB_LIBS = @ZLIB_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+acx_pthread_config = @acx_pthread_config@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+auto_import_flags = @auto_import_flags@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+create_shared_lib = @create_shared_lib@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+win32_libs = @win32_libs@
+INCLUDES = \
+ -I$(top_srcdir)/glib \
+ -I$(top_builddir)/glib \
+ $(GTK_TEST_CFLAGS) \
+ $(POPPLER_GLIB_DISABLE_DEPRECATED) \
+ -DGTK_DISABLE_DEPRECATED \
+ $(POPPLER_GLIB_DISABLE_SINGLE_INCLUDES)
+
+AM_LDFLAGS = @auto_import_flags@
+poppler_glib_demo_SOURCES = \
+ main.c \
+ annots.h \
+ annots.c \
+ attachments.c \
+ attachments.h \
+ find.h \
+ find.c \
+ fonts.h \
+ fonts.c \
+ forms.h \
+ forms.c \
+ images.h \
+ images.c \
+ info.h \
+ info.cc \
+ layers.h \
+ layers.c \
+ links.h \
+ links.c \
+ outline.h \
+ outline.c \
+ page.h \
+ page.c \
+ render.h \
+ render.c \
+ text.h \
+ text.c \
+ transitions.h \
+ transitions.c \
+ utils.h \
+ utils.c
+
+LDADD = \
+ $(top_builddir)/glib/libpoppler-glib.la \
+ $(top_builddir)/poppler/libpoppler.la \
+ $(GTK_TEST_LIBS)
+
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .cc .lo .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign glib/demo/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign glib/demo/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+clean-noinstPROGRAMS:
+ @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \
+ echo " rm -f" $$list; \
+ rm -f $$list || exit $$?; \
+ test -n "$(EXEEXT)" || exit 0; \
+ list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f" $$list; \
+ rm -f $$list
+poppler-glib-demo$(EXEEXT): $(poppler_glib_demo_OBJECTS) $(poppler_glib_demo_DEPENDENCIES)
+ @rm -f poppler-glib-demo$(EXEEXT)
+ $(AM_V_CXXLD)$(CXXLINK) $(poppler_glib_demo_OBJECTS) $(poppler_glib_demo_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/annots.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/attachments.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/find.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fonts.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/forms.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/images.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/info.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/layers.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/links.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/outline.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/page.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/render.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/text.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/transitions.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utils.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $<
+
+.cc.o:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cc.obj:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cc.lo:
+@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@am__fastdepCXX_FALSE@ $(AM_V_CXX) @AM_BACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ set x; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(PROGRAMS)
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
+ mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: install-am install-strip
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
+ clean-libtool clean-noinstPROGRAMS ctags distclean \
+ distclean-compile distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+ pdf pdf-am ps ps-am tags uninstall uninstall-am
+
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.c
new file mode 100644
index 00000000000..7865f1d41e9
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.c
@@ -0,0 +1,675 @@
+/*
+ * Copyright (C) 2008 Inigo Martinez <inigomartinez@gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <string.h>
+
+#include "annots.h"
+#include "utils.h"
+
+enum {
+ ANNOTS_X1_COLUMN,
+ ANNOTS_Y1_COLUMN,
+ ANNOTS_X2_COLUMN,
+ ANNOTS_Y2_COLUMN,
+ ANNOTS_TYPE_COLUMN,
+ ANNOTS_COLOR_COLUMN,
+ ANNOTS_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+ PopplerPage *page;
+
+ GtkListStore *model;
+ GtkWidget *annot_view;
+ GtkWidget *timer_label;
+
+ gint num_page;
+} PgdAnnotsDemo;
+
+static void
+pgd_annots_free (PgdAnnotsDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ if (demo->page) {
+ g_object_unref (demo->page);
+ demo->page = NULL;
+ }
+
+ if (demo->model) {
+ g_object_unref (demo->model);
+ demo->model = NULL;
+ }
+
+ g_free (demo);
+}
+
+static GtkWidget *
+pgd_annot_view_new (void)
+{
+ GtkWidget *frame, *label;
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
+ label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Annot Properties</b>");
+ gtk_frame_set_label_widget (GTK_FRAME (frame), label);
+ gtk_widget_show (label);
+
+ return frame;
+}
+
+const gchar *
+get_annot_type (PopplerAnnot *poppler_annot)
+{
+ switch (poppler_annot_get_annot_type (poppler_annot))
+ {
+ case POPPLER_ANNOT_TEXT:
+ return "Text";
+ case POPPLER_ANNOT_LINK:
+ return "Link";
+ case POPPLER_ANNOT_FREE_TEXT:
+ return "Free Text";
+ case POPPLER_ANNOT_LINE:
+ return "Line";
+ case POPPLER_ANNOT_SQUARE:
+ return "Square";
+ case POPPLER_ANNOT_CIRCLE:
+ return "Circle";
+ case POPPLER_ANNOT_POLYGON:
+ return "Polygon";
+ case POPPLER_ANNOT_POLY_LINE:
+ return "Poly Line";
+ case POPPLER_ANNOT_HIGHLIGHT:
+ return "Highlight";
+ case POPPLER_ANNOT_UNDERLINE:
+ return "Underline";
+ case POPPLER_ANNOT_SQUIGGLY:
+ return "Squiggly";
+ case POPPLER_ANNOT_STRIKE_OUT:
+ return "Strike Out";
+ case POPPLER_ANNOT_STAMP:
+ return "Stamp";
+ case POPPLER_ANNOT_CARET:
+ return "Caret";
+ case POPPLER_ANNOT_INK:
+ return "Ink";
+ case POPPLER_ANNOT_POPUP:
+ return "Popup";
+ case POPPLER_ANNOT_FILE_ATTACHMENT:
+ return "File Attachment";
+ case POPPLER_ANNOT_SOUND:
+ return "Sound";
+ case POPPLER_ANNOT_MOVIE:
+ return "Movie";
+ case POPPLER_ANNOT_WIDGET:
+ return "Widget";
+ case POPPLER_ANNOT_SCREEN:
+ return "Screen";
+ case POPPLER_ANNOT_PRINTER_MARK:
+ return "Printer Mark";
+ case POPPLER_ANNOT_TRAP_NET:
+ return "Trap Net";
+ case POPPLER_ANNOT_WATERMARK:
+ return "Watermark";
+ case POPPLER_ANNOT_3D:
+ return "3D";
+ default:
+ break;
+ }
+
+ return "Unknown";
+}
+
+GdkPixbuf *
+get_annot_color (PopplerAnnot *poppler_annot)
+{
+ PopplerColor *poppler_color;
+
+ if ((poppler_color = poppler_annot_get_color (poppler_annot))) {
+ GdkPixbuf *pixbuf;
+ gint rowstride, num, x;
+ guchar *pixels;
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ FALSE, 8,
+ 64, 16);
+
+ rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ pixels = gdk_pixbuf_get_pixels (pixbuf);
+
+ num = gdk_pixbuf_get_width (pixbuf) *
+ gdk_pixbuf_get_height (pixbuf);
+
+ for (x = 0; x < num; x++) {
+ pixels[0] = poppler_color->red;
+ pixels[1] = poppler_color->green;
+ pixels[2] = poppler_color->blue;
+ pixels += 3;
+ }
+
+ g_free (poppler_color);
+
+ return pixbuf;
+ }
+
+ return NULL;
+}
+
+gchar *
+get_markup_date (PopplerAnnotMarkup *poppler_annot)
+{
+ GDate *date;
+ struct tm t;
+ time_t timet;
+
+ date = poppler_annot_markup_get_date (poppler_annot);
+ if (!date)
+ return NULL;
+
+ g_date_to_struct_tm (date, &t);
+ g_date_free (date);
+
+ timet = mktime (&t);
+ return timet == (time_t) - 1 ? NULL : pgd_format_date (timet);
+}
+
+const gchar *
+get_markup_reply_to (PopplerAnnotMarkup *poppler_annot)
+{
+ switch (poppler_annot_markup_get_reply_to (poppler_annot))
+ {
+ case POPPLER_ANNOT_MARKUP_REPLY_TYPE_R:
+ return "Type R";
+ case POPPLER_ANNOT_MARKUP_REPLY_TYPE_GROUP:
+ return "Type Group";
+ default:
+ break;
+ }
+
+ return "Unknown";
+}
+
+const gchar *
+get_markup_external_data (PopplerAnnotMarkup *poppler_annot)
+{
+ switch (poppler_annot_markup_get_external_data (poppler_annot))
+ {
+ case POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_3D:
+ return "Markup 3D";
+ default:
+ break;
+ }
+
+ return "Unknown";
+}
+
+const gchar *
+get_text_state (PopplerAnnotText *poppler_annot)
+{
+ switch (poppler_annot_text_get_state (poppler_annot))
+ {
+ case POPPLER_ANNOT_TEXT_STATE_MARKED:
+ return "Marked";
+ case POPPLER_ANNOT_TEXT_STATE_UNMARKED:
+ return "Unmarked";
+ case POPPLER_ANNOT_TEXT_STATE_ACCEPTED:
+ return "Accepted";
+ case POPPLER_ANNOT_TEXT_STATE_REJECTED:
+ return "Rejected";
+ case POPPLER_ANNOT_TEXT_STATE_CANCELLED:
+ return "Cancelled";
+ case POPPLER_ANNOT_TEXT_STATE_COMPLETED:
+ return "Completed";
+ case POPPLER_ANNOT_TEXT_STATE_NONE:
+ return "None";
+ case POPPLER_ANNOT_TEXT_STATE_UNKNOWN:
+ return "Unknown";
+ default:
+ break;
+ }
+
+ return "Unknown";
+}
+
+const gchar *
+get_free_text_quadding (PopplerAnnotFreeText *poppler_annot)
+{
+ switch (poppler_annot_free_text_get_quadding (poppler_annot))
+ {
+ case POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED:
+ return "Left Justified";
+ case POPPLER_ANNOT_FREE_TEXT_QUADDING_CENTERED:
+ return "Centered";
+ case POPPLER_ANNOT_FREE_TEXT_QUADDING_RIGHT_JUSTIFIED:
+ return "Right Justified";
+ default:
+ break;
+ }
+
+ return "Unknown";
+}
+
+gchar *
+get_free_text_callout_line (PopplerAnnotFreeText *poppler_annot)
+{
+ PopplerAnnotCalloutLine *callout;
+ gdouble x1, y1, x2, y2;
+ gchar *text;
+
+ if ((callout = poppler_annot_free_text_get_callout_line (poppler_annot))) {
+ text = g_strdup_printf ("%f,%f,%f,%f", callout->x1,
+ callout->y1,
+ callout->x2,
+ callout->y2);
+ if (callout->multiline)
+ text = g_strdup_printf ("%s,%f,%f", text,
+ callout->x3,
+ callout->y3);
+
+ return text;
+ }
+
+ return NULL;
+}
+
+static void
+pgd_annot_view_set_annot_markup (GtkWidget *table,
+ PopplerAnnotMarkup *markup,
+ gint *row)
+{
+ gchar *text;
+ PopplerRectangle rect;
+
+ text = poppler_annot_markup_get_label (markup);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Label:</b>", text, row);
+ g_free (text);
+
+ if (poppler_annot_markup_has_popup (markup)) {
+ pgd_table_add_property (GTK_TABLE (table), "<b>Popup is open:</b>",
+ poppler_annot_markup_get_popup_is_open (markup) ? "Yes" : "No", row);
+
+ poppler_annot_markup_get_popup_rectangle (markup, &rect);
+ text = g_strdup_printf ("X1: %.2f, Y1: %.2f, X2: %.2f, Y2: %.2f",
+ rect.x1, rect.y1, rect.x2, rect.y2);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Popup Rectangle:</b>", text, row);
+ g_free (text);
+ }
+
+ text = g_strdup_printf ("%f", poppler_annot_markup_get_opacity (markup));
+ pgd_table_add_property (GTK_TABLE (table), "<b>Opacity:</b>", text, row);
+ g_free (text);
+
+ text = get_markup_date (markup);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Date:</b>", text, row);
+ g_free (text);
+
+ text = poppler_annot_markup_get_subject (markup);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Subject:</b>", text, row);
+ g_free (text);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Reply To:</b>", get_markup_reply_to (markup), row);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>External Data:</b>", get_markup_external_data (markup), row);
+}
+
+static void
+pgd_annot_view_set_annot_text (GtkWidget *table,
+ PopplerAnnotText *annot,
+ gint *row)
+{
+ gchar *text;
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Is open:</b>",
+ poppler_annot_text_get_is_open (annot) ? "Yes" : "No", row);
+
+ text = poppler_annot_text_get_icon (annot);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Icon:</b>", text, row);
+ g_free (text);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>State:</b>", get_text_state (annot), row);
+}
+
+static void
+pgd_annot_view_set_annot_free_text (GtkWidget *table,
+ PopplerAnnotFreeText *annot,
+ gint *row)
+{
+ gchar *text;
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Quadding:</b>", get_free_text_quadding (annot), row);
+
+ text = get_free_text_callout_line (annot);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Callout:</b>", text, row);
+ g_free (text);
+}
+
+static void
+pgd_annot_view_set_annot (GtkWidget *annot_view,
+ PopplerAnnot *annot)
+{
+ GtkWidget *alignment;
+ GtkWidget *table;
+ GEnumValue *enum_value;
+ gint row = 0;
+ gchar *text, *warning;
+ time_t timet;
+
+ alignment = gtk_bin_get_child (GTK_BIN (annot_view));
+ if (alignment) {
+ gtk_container_remove (GTK_CONTAINER (annot_view), alignment);
+ }
+
+ alignment = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5);
+ gtk_container_add (GTK_CONTAINER (annot_view), alignment);
+ gtk_widget_show (alignment);
+
+ if (!annot)
+ return;
+
+ table = gtk_table_new (10, 2, FALSE);
+ gtk_table_set_col_spacings (GTK_TABLE (table), 6);
+ gtk_table_set_row_spacings (GTK_TABLE (table), 6);
+
+ text = poppler_annot_get_contents (annot);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Contents:</b>", text, &row);
+ g_free (text);
+
+ text = poppler_annot_get_name (annot);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Name:</b>", text, &row);
+ g_free (text);
+
+ text = poppler_annot_get_modified (annot);
+ if (poppler_date_parse (text, &timet)) {
+ g_free (text);
+ text = pgd_format_date (timet);
+ }
+ pgd_table_add_property (GTK_TABLE (table), "<b>Modified:</b>", text, &row);
+ g_free (text);
+
+ text = g_strdup_printf ("%d", poppler_annot_get_flags (annot));
+ pgd_table_add_property (GTK_TABLE (table), "<b>Flags:</b>", text, &row);
+ g_free (text);
+
+ if (POPPLER_IS_ANNOT_MARKUP (annot))
+ pgd_annot_view_set_annot_markup (table, POPPLER_ANNOT_MARKUP (annot), &row);
+
+ switch (poppler_annot_get_annot_type (annot))
+ {
+ case POPPLER_ANNOT_TEXT:
+ pgd_annot_view_set_annot_text (table, POPPLER_ANNOT_TEXT (annot), &row);
+ break;
+ case POPPLER_ANNOT_FREE_TEXT:
+ pgd_annot_view_set_annot_free_text (table, POPPLER_ANNOT_FREE_TEXT (annot), &row);
+ break;
+ default:
+ break;
+ }
+
+ gtk_container_add (GTK_CONTAINER (alignment), table);
+ gtk_widget_show (table);
+}
+
+static void
+pgd_annots_get_annots (GtkWidget *button,
+ PgdAnnotsDemo *demo)
+{
+ GList *mapping, *l;
+ gint n_fields;
+ GTimer *timer;
+
+ gtk_list_store_clear (demo->model);
+ pgd_annot_view_set_annot (demo->annot_view, NULL);
+
+ if (demo->page) {
+ g_object_unref (demo->page);
+ demo->page = NULL;
+ }
+
+ demo->page = poppler_document_get_page (demo->doc, demo->num_page);
+ if (!demo->page)
+ return;
+
+ timer = g_timer_new ();
+ mapping = poppler_page_get_annot_mapping (demo->page);
+ g_timer_stop (timer);
+
+ n_fields = g_list_length (mapping);
+ if (n_fields > 0) {
+ gchar *str;
+
+ str = g_strdup_printf ("<i>%d annots found in %.4f seconds</i>",
+ n_fields, g_timer_elapsed (timer, NULL));
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), str);
+ g_free (str);
+ } else {
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No annots found</i>");
+ }
+
+ g_timer_destroy (timer);
+
+ for (l = mapping; l; l = g_list_next (l)) {
+ PopplerAnnotMapping *amapping;
+ GtkTreeIter iter;
+ gchar *x1, *y1, *x2, *y2;
+ GdkPixbuf *pixbuf;
+
+ amapping = (PopplerAnnotMapping *) l->data;
+
+ x1 = g_strdup_printf ("%.2f", amapping->area.x1);
+ y1 = g_strdup_printf ("%.2f", amapping->area.y1);
+ x2 = g_strdup_printf ("%.2f", amapping->area.x2);
+ y2 = g_strdup_printf ("%.2f", amapping->area.y2);
+
+ pixbuf = get_annot_color (amapping->annot);
+
+ gtk_list_store_append (demo->model, &iter);
+ gtk_list_store_set (demo->model, &iter,
+ ANNOTS_X1_COLUMN, x1,
+ ANNOTS_Y1_COLUMN, y1,
+ ANNOTS_X2_COLUMN, x2,
+ ANNOTS_Y2_COLUMN, y2,
+ ANNOTS_TYPE_COLUMN, get_annot_type (amapping->annot),
+ ANNOTS_COLOR_COLUMN, pixbuf,
+ ANNOTS_COLUMN, amapping->annot,
+ -1);
+
+ if (pixbuf)
+ g_object_unref (pixbuf);
+
+ g_free (x1);
+ g_free (y1);
+ g_free (x2);
+ g_free (y2);
+ }
+
+ poppler_page_free_annot_mapping (mapping);
+}
+
+static void
+pgd_annots_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdAnnotsDemo *demo)
+{
+ demo->num_page = (gint) gtk_spin_button_get_value (spinbutton) - 1;
+}
+
+static void
+pgd_annots_selection_changed (GtkTreeSelection *treeselection,
+ PgdAnnotsDemo *demo)
+{
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+
+ if (gtk_tree_selection_get_selected (treeselection, &model, &iter)) {
+ PopplerAnnot *annot;
+
+ gtk_tree_model_get (model, &iter,
+ ANNOTS_COLUMN, &annot,
+ -1);
+ pgd_annot_view_set_annot (demo->annot_view, annot);
+ g_object_unref (annot);
+ }
+}
+
+GtkWidget *
+pgd_annots_create_widget (PopplerDocument *document)
+{
+ PgdAnnotsDemo *demo;
+ GtkWidget *label;
+ GtkWidget *vbox;
+ GtkWidget *hbox, *page_selector;
+ GtkWidget *button;
+ GtkWidget *hpaned;
+ GtkWidget *swindow, *treeview;
+ GtkTreeSelection *selection;
+ GtkCellRenderer *renderer;
+ gchar *str;
+ gint n_pages;
+
+ demo = g_new0 (PgdAnnotsDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ n_pages = poppler_document_get_n_pages (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_annots_page_selector_value_changed),
+ (gpointer) demo);
+ gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ button = gtk_button_new_with_label ("Get Annots");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_annots_get_annots),
+ (gpointer) demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ demo->timer_label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No annots found</i>");
+ g_object_set (G_OBJECT (demo->timer_label), "xalign", 1.0, NULL);
+ gtk_box_pack_start (GTK_BOX (vbox), demo->timer_label, FALSE, TRUE, 0);
+ gtk_widget_show (demo->timer_label);
+
+ hpaned = gtk_hpaned_new ();
+
+ demo->annot_view = pgd_annot_view_new ();
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ demo->model = gtk_list_store_new (N_COLUMNS, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ GDK_TYPE_PIXBUF, G_TYPE_OBJECT);
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (demo->model));
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ ANNOTS_X1_COLUMN, "X1",
+ renderer,
+ "text", ANNOTS_X1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ ANNOTS_Y1_COLUMN, "Y1",
+ renderer,
+ "text", ANNOTS_Y1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ ANNOTS_X2_COLUMN, "X2",
+ renderer,
+ "text", ANNOTS_X2_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ ANNOTS_Y2_COLUMN, "Y2",
+ renderer,
+ "text", ANNOTS_Y2_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ ANNOTS_TYPE_COLUMN, "Type",
+ renderer,
+ "text", ANNOTS_TYPE_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_pixbuf_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ ANNOTS_COLOR_COLUMN, "Color",
+ renderer,
+ "pixbuf", ANNOTS_COLOR_COLUMN,
+ NULL);
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
+ g_signal_connect (G_OBJECT (selection), "changed",
+ G_CALLBACK (pgd_annots_selection_changed),
+ (gpointer) demo);
+
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_paned_add1 (GTK_PANED (hpaned), swindow);
+ gtk_widget_show (swindow);
+
+ gtk_paned_add2 (GTK_PANED (hpaned), demo->annot_view);
+ gtk_widget_show (demo->annot_view);
+
+ gtk_paned_set_position (GTK_PANED (hpaned), 300);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hpaned, TRUE, TRUE, 0);
+ gtk_widget_show (hpaned);
+
+ g_object_weak_ref (G_OBJECT (vbox),
+ (GWeakNotify)pgd_annots_free,
+ demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.h
new file mode 100644
index 00000000000..844e4f52baf
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/annots.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2008 Inigo Martinez <inigomartinez@gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _ANNOTS_H_
+#define _ANNOTS_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_annots_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _ANNOTS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.c
new file mode 100644
index 00000000000..28eb62ed305
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.c
@@ -0,0 +1,358 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+
+#include "attachments.h"
+#include "utils.h"
+
+enum {
+ ATTACHMENTS_NAME_COLUMN,
+ ATTACHMENTS_DESCRIPTION_COLUMN,
+ ATTACHMENTS_SIZE_COLUMN,
+ ATTACHMENTS_CTIME_COLUMN,
+ ATTACHMENTS_MTIME_COLUMN,
+ ATTACHMENTS_ATTACHMENT_COLUMN,
+ N_COLUMNS
+};
+
+static void
+pgd_attachments_fill_model (GtkListStore *model,
+ PopplerDocument *document)
+{
+ GList *list, *l;
+
+ list = poppler_document_get_attachments (document);
+
+ for (l = list; l && l->data; l = g_list_next (l)) {
+ PopplerAttachment *attachment = POPPLER_ATTACHMENT (l->data);
+ GtkTreeIter iter;
+ gchar *size;
+ gchar *ctime, *mtime;
+
+ size = g_strdup_printf ("%" G_GSIZE_FORMAT, attachment->size);
+ ctime = pgd_format_date (attachment->ctime);
+ mtime = pgd_format_date (attachment->mtime);
+
+ gtk_list_store_append (model, &iter);
+ gtk_list_store_set (model, &iter,
+ ATTACHMENTS_NAME_COLUMN,
+ attachment->name ? attachment->name : "Unknown",
+ ATTACHMENTS_DESCRIPTION_COLUMN,
+ attachment->description ? attachment->description : "Unknown",
+ ATTACHMENTS_SIZE_COLUMN,
+ size ? size : "Unknown",
+ ATTACHMENTS_CTIME_COLUMN,
+ ctime ? ctime : "Unknown",
+ ATTACHMENTS_MTIME_COLUMN,
+ mtime ? mtime : "Unknown",
+ ATTACHMENTS_ATTACHMENT_COLUMN, attachment,
+ -1);
+
+ g_free (size);
+ g_free (ctime);
+ g_free (mtime);
+
+ g_object_unref (attachment);
+ }
+
+ g_list_free (list);
+}
+
+static GtkWidget *
+pgd_attachments_create_list (GtkTreeModel *model)
+{
+ GtkWidget *treeview;
+ GtkCellRenderer *renderer;
+
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (treeview), TRUE);
+ gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Name",
+ renderer,
+ "text", ATTACHMENTS_NAME_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 1, "Description",
+ renderer,
+ "text", ATTACHMENTS_DESCRIPTION_COLUMN,
+ NULL);
+ g_object_set (G_OBJECT (renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL);
+ g_object_set (G_OBJECT (gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), 1)),
+ "expand", TRUE, NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 2, "Size",
+ renderer,
+ "text", ATTACHMENTS_SIZE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 3, "Creation Date",
+ renderer,
+ "text", ATTACHMENTS_CTIME_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 4, "Modification Date",
+ renderer,
+ "text", ATTACHMENTS_MTIME_COLUMN,
+ NULL);
+ return treeview;
+}
+
+static void
+pgd_attachments_save_dialog_response (GtkFileChooser *file_chooser,
+ gint response,
+ PopplerAttachment *attachment)
+{
+ gchar *filename;
+ GError *error = NULL;
+
+ if (response != GTK_RESPONSE_ACCEPT) {
+ g_object_unref (attachment);
+ gtk_widget_destroy (GTK_WIDGET (file_chooser));
+ return;
+ }
+
+ filename = gtk_file_chooser_get_filename (file_chooser);
+ if (!poppler_attachment_save (attachment, filename, &error)) {
+ g_warning ("%s", error->message);
+ g_error_free (error);
+ }
+ g_free (filename);
+ g_object_unref (attachment);
+ gtk_widget_destroy (GTK_WIDGET (file_chooser));
+}
+
+static void
+pgd_attachments_save_button_clicked (GtkButton *button,
+ GtkTreeView *treeview)
+{
+ GtkTreeSelection *selection;
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+ GtkWidget *file_chooser;
+ PopplerAttachment *attachment;
+
+ selection = gtk_tree_view_get_selection (treeview);
+ if (!gtk_tree_selection_get_selected (selection, &model, &iter))
+ return;
+
+ gtk_tree_model_get (model, &iter,
+ ATTACHMENTS_ATTACHMENT_COLUMN, &attachment,
+ -1);
+
+ if (!attachment)
+ return;
+
+ file_chooser = gtk_file_chooser_dialog_new ("Save attachment",
+ GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (treeview))),
+ GTK_FILE_CHOOSER_ACTION_SAVE,
+ GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+ GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
+ NULL);
+ gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (file_chooser), attachment->name);
+ g_signal_connect (G_OBJECT (file_chooser), "response",
+ G_CALLBACK (pgd_attachments_save_dialog_response),
+ (gpointer) attachment);
+ gtk_widget_show (file_chooser);
+
+}
+
+#if GLIB_CHECK_VERSION(2, 16, 0)
+static gboolean
+attachment_save_callback (const gchar *buf,
+ gsize count,
+ gpointer data,
+ GError **error)
+{
+ GChecksum *cs = (GChecksum *)data;
+
+ g_checksum_update (cs, buf, count);
+
+ return TRUE;
+}
+
+static void
+message_dialog_run (GtkWindow *parent,
+ const gchar *message)
+{
+ GtkWidget *dialog;
+
+ dialog = gtk_message_dialog_new (parent,
+ GTK_DIALOG_DESTROY_WITH_PARENT,
+ GTK_MESSAGE_INFO,
+ GTK_BUTTONS_CLOSE,
+ "%s", message);
+ gtk_dialog_run (GTK_DIALOG (dialog));
+ gtk_widget_destroy (dialog);
+}
+
+static void
+pgd_attachments_validate_button_clicked (GtkButton *button,
+ GtkTreeView *treeview)
+{
+ GtkTreeSelection *selection;
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+ GChecksum *cs;
+ guint8 *digest;
+ gsize digest_len;
+ PopplerAttachment *attachment;
+ gboolean valid = TRUE;
+
+ selection = gtk_tree_view_get_selection (treeview);
+ if (!gtk_tree_selection_get_selected (selection, &model, &iter))
+ return;
+
+ gtk_tree_model_get (model, &iter,
+ ATTACHMENTS_ATTACHMENT_COLUMN, &attachment,
+ -1);
+
+ if (!attachment)
+ return;
+
+ if (attachment->checksum->len == 0) {
+ message_dialog_run (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (treeview))),
+ "Impossible to validate attachment: checksum is not available");
+ g_object_unref (attachment);
+
+ return;
+ }
+
+ cs = g_checksum_new (G_CHECKSUM_MD5);
+ poppler_attachment_save_to_callback (attachment, attachment_save_callback,
+ (gpointer)cs, NULL);
+ digest_len = g_checksum_type_get_length (G_CHECKSUM_MD5);
+ digest = (guint8 *) g_malloc (digest_len);
+ g_checksum_get_digest (cs, digest, &digest_len);
+ g_checksum_free (cs);
+
+ if (attachment->checksum->len == digest_len) {
+ gint i;
+
+ for (i = 0; i < digest_len; i++) {
+ if ((guint8)attachment->checksum->str[i] != digest[i]) {
+ valid = FALSE;
+ break;
+ }
+ }
+ }
+
+ if (valid) {
+ message_dialog_run (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (treeview))),
+ "Attachment is valid");
+ } else {
+ message_dialog_run (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (treeview))),
+ "Attachment is not valid: the checksum does not match");
+ }
+
+ g_free (digest);
+ g_object_unref (attachment);
+}
+#endif
+
+GtkWidget *
+pgd_attachments_create_widget (PopplerDocument *document)
+{
+ GtkWidget *vbox;
+ GtkWidget *treeview;
+ GtkListStore *model;
+ GtkWidget *swindow;
+ GtkWidget *hbox, *button;
+ gboolean has_attachments;
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+
+ has_attachments = poppler_document_has_attachments (document);
+ if (has_attachments) {
+ model = gtk_list_store_new (N_COLUMNS,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_OBJECT);
+ pgd_attachments_fill_model (model, document);
+ treeview = pgd_attachments_create_list (GTK_TREE_MODEL (model));
+ } else {
+ GtkCellRenderer *renderer;
+ GtkTreeIter iter;
+ gchar *markup;
+
+ model = gtk_list_store_new (1, G_TYPE_STRING);
+ gtk_list_store_append (model, &iter);
+ markup = g_strdup_printf ("<span size=\"larger\" style=\"italic\">%s</span>",
+ "The document doesn't contain attachments");
+ gtk_list_store_set (model, &iter, 0, markup, -1);
+ g_free (markup);
+
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Name",
+ renderer,
+ "markup", 0,
+ NULL);
+ }
+ g_object_unref (model);
+
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_box_pack_start (GTK_BOX (vbox), swindow, TRUE, TRUE, 0);
+ gtk_widget_show (swindow);
+
+ if (!has_attachments)
+ return vbox;
+
+ hbox = gtk_hbutton_box_new ();
+ gtk_button_box_set_layout (GTK_BUTTON_BOX (hbox), GTK_BUTTONBOX_SPREAD);
+
+ button = gtk_button_new_with_label ("Save");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_attachments_save_button_clicked),
+ (gpointer)treeview);
+
+ gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+#if GLIB_CHECK_VERSION(2, 16, 0)
+ button = gtk_button_new_with_label ("Validate");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_attachments_validate_button_clicked),
+ (gpointer)treeview);
+
+ gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+#endif
+
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 6);
+ gtk_widget_show (hbox);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.h
new file mode 100644
index 00000000000..36dab828061
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/attachments.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _ATTACHMENTS_H_
+#define _ATTACHMENTS_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_attachments_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _ATTACHMENTS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.c
new file mode 100644
index 00000000000..08e41e24d3d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.c
@@ -0,0 +1,282 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "find.h"
+
+enum {
+ TITLE_COLUMN,
+ X1_COLUMN,
+ Y1_COLUMN,
+ X2_COLUMN,
+ Y2_COLUMN,
+
+ VISIBLE_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkTreeModel *model;
+ GtkWidget *entry;
+ GtkWidget *progress;
+
+ gint n_pages;
+ gint page_index;
+
+ guint idle_id;
+} PgdFindDemo;
+
+static void
+pgd_find_free (PgdFindDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->idle_id > 0) {
+ g_source_remove (demo->idle_id);
+ demo->idle_id = 0;
+ }
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ if (demo->model) {
+ g_object_unref (demo->model);
+ demo->model = NULL;
+ }
+
+ g_free (demo);
+}
+
+static void
+pgd_find_update_progress (PgdFindDemo *demo,
+ gint scanned)
+{
+ gchar *str;
+
+ str = g_strdup_printf ("Searching ... (%d%%)",
+ MIN (scanned * 100 / demo->n_pages, 100));
+ gtk_progress_bar_set_text (GTK_PROGRESS_BAR (demo->progress), str);
+ gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (demo->progress),
+ MIN ((gdouble)scanned / demo->n_pages, 1.0));
+ g_free (str);
+}
+
+static gboolean
+pgd_find_find_text (PgdFindDemo *demo)
+{
+ PopplerPage *page;
+ GList *matches;
+ GTimer *timer;
+
+ page = poppler_document_get_page (demo->doc, demo->page_index);
+ if (!page) {
+ demo->page_index++;
+ return demo->page_index < demo->n_pages;
+ }
+
+ timer = g_timer_new ();
+ matches = poppler_page_find_text (page, gtk_entry_get_text (GTK_ENTRY (demo->entry)));
+ g_timer_stop (timer);
+ if (matches) {
+ GtkTreeIter iter;
+ gchar *str;
+ GList *l;
+ gint n_match = 0;
+
+ str = g_strdup_printf ("%d matches found on page %d in %.4f seconds",
+ g_list_length (matches), demo->page_index + 1,
+ g_timer_elapsed (timer, NULL));
+
+ gtk_tree_store_append (GTK_TREE_STORE (demo->model), &iter, NULL);
+ gtk_tree_store_set (GTK_TREE_STORE (demo->model), &iter,
+ TITLE_COLUMN, str,
+ VISIBLE_COLUMN, FALSE,
+ -1);
+ g_free (str);
+
+ for (l = matches; l && l->data; l = g_list_next (l)) {
+ PopplerRectangle *rect = (PopplerRectangle *)l->data;
+ GtkTreeIter iter_child;
+ gchar *x1, *y1, *x2, *y2;
+
+ str = g_strdup_printf ("Match %d", ++n_match);
+ x1 = g_strdup_printf ("%.2f", rect->x1);
+ y1 = g_strdup_printf ("%.2f", rect->y1);
+ x2 = g_strdup_printf ("%.2f", rect->x2);
+ y2 = g_strdup_printf ("%.2f", rect->y2);
+
+ gtk_tree_store_append (GTK_TREE_STORE (demo->model), &iter_child, &iter);
+ gtk_tree_store_set (GTK_TREE_STORE (demo->model), &iter_child,
+ TITLE_COLUMN, str,
+ X1_COLUMN, x1,
+ Y1_COLUMN, y1,
+ X2_COLUMN, x2,
+ Y2_COLUMN, y2,
+ VISIBLE_COLUMN, TRUE,
+ -1);
+ g_free (str);
+ g_free (x1);
+ g_free (y1);
+ g_free (x2);
+ g_free (y2);
+ g_free (rect);
+ }
+ g_list_free (matches);
+ }
+
+ g_timer_destroy (timer);
+ g_object_unref (page);
+
+ demo->page_index++;
+ pgd_find_update_progress (demo, demo->page_index);
+
+ return demo->page_index < demo->n_pages;
+}
+
+static void
+pgd_find_button_clicked (GtkButton *button,
+ PgdFindDemo *demo)
+{
+ gtk_tree_store_clear (GTK_TREE_STORE (demo->model));
+ demo->page_index = 0;
+ pgd_find_update_progress (demo, demo->page_index);
+ if (demo->idle_id > 0)
+ g_source_remove (demo->idle_id);
+ demo->idle_id = g_idle_add ((GSourceFunc)pgd_find_find_text, demo);
+}
+
+static void
+pgd_find_button_sensitivity_cb (GtkWidget *button,
+ GtkEntry *entry)
+{
+ const gchar *text;
+
+ text = gtk_entry_get_text (entry);
+ gtk_widget_set_sensitive (button, text != NULL && text[0] != '\0');
+}
+
+GtkWidget *
+pgd_find_create_widget (PopplerDocument *document)
+{
+ PgdFindDemo *demo;
+ GtkWidget *vbox, *hbox;
+ GtkWidget *button;
+ GtkWidget *swindow;
+ GtkWidget *treeview;
+ GtkCellRenderer *renderer;
+
+ demo = g_new0 (PgdFindDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ demo->n_pages = poppler_document_get_n_pages (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ demo->entry = gtk_entry_new ();
+ gtk_box_pack_start (GTK_BOX (hbox), demo->entry, FALSE, TRUE, 0);
+ gtk_widget_show (demo->entry);
+
+ demo->progress = gtk_progress_bar_new ();
+ gtk_progress_bar_set_ellipsize (GTK_PROGRESS_BAR (demo->progress),
+ PANGO_ELLIPSIZE_END);
+ gtk_box_pack_start (GTK_BOX (hbox), demo->progress, TRUE, TRUE, 0);
+ gtk_widget_show (demo->progress);
+
+ button = gtk_button_new_with_label ("Find");
+ gtk_widget_set_sensitive (button, FALSE);
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_find_button_clicked),
+ (gpointer)demo);
+ g_signal_connect_swapped (G_OBJECT (demo->entry), "changed",
+ G_CALLBACK (pgd_find_button_sensitivity_cb),
+ (gpointer)button);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 6);
+ gtk_widget_show (hbox);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+
+ demo->model = GTK_TREE_MODEL (
+ gtk_tree_store_new (N_COLUMNS,
+ G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_BOOLEAN));
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (demo->model));
+ gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE);
+ gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),
+ GTK_SELECTION_NONE);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ TITLE_COLUMN, "Matches",
+ renderer,
+ "text", TITLE_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ X1_COLUMN, "X1",
+ renderer,
+ "text", X1_COLUMN,
+ "visible", VISIBLE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ Y1_COLUMN, "Y1",
+ renderer,
+ "text", Y1_COLUMN,
+ "visible", VISIBLE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ X2_COLUMN, "X2",
+ renderer,
+ "text", X2_COLUMN,
+ "visible", VISIBLE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ Y2_COLUMN, "Y2",
+ renderer,
+ "text", Y2_COLUMN,
+ "visible", VISIBLE_COLUMN,
+ NULL);
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_box_pack_start (GTK_BOX (vbox), swindow, TRUE, TRUE, 0);
+ gtk_widget_show (swindow);
+
+ g_object_weak_ref (G_OBJECT (vbox),
+ (GWeakNotify)pgd_find_free,
+ (gpointer)demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.h
new file mode 100644
index 00000000000..36f95c1d54d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/find.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _FIND_H_
+#define _FIND_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_find_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _FIND_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.c
new file mode 100644
index 00000000000..07ea58993b9
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.c
@@ -0,0 +1,276 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+
+#include "fonts.h"
+
+enum {
+ FONTS_NAME_COLUMN,
+ FONTS_DETAILS_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkWidget *treeview;
+ GtkWidget *progress;
+
+ guint idle_id;
+} PgdFontsDemo;
+
+static void
+pgd_fonts_free (PgdFontsDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->idle_id > 0) {
+ g_source_remove (demo->idle_id);
+ demo->idle_id = 0;
+ }
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ g_free (demo);
+}
+
+static void
+pdg_fonts_cell_data_func (GtkTreeViewColumn *col,
+ GtkCellRenderer *renderer,
+ GtkTreeModel *model,
+ GtkTreeIter *iter,
+ gpointer user_data)
+{
+ char *name;
+ char *details;
+ char *markup;
+
+ gtk_tree_model_get (model, iter,
+ FONTS_NAME_COLUMN, &name,
+ FONTS_DETAILS_COLUMN, &details,
+ -1);
+
+ if (details) {
+ markup = g_strdup_printf ("<b><big>%s</big></b>\n<small>%s</small>",
+ name, details);
+ } else {
+ markup = g_strdup_printf ("<b><big>%s</big></b>", name);
+ }
+
+ g_object_set (renderer, "markup", markup, NULL);
+
+ g_free (markup);
+ g_free (details);
+ g_free (name);
+}
+
+static const gchar *
+font_type_to_string (PopplerFontType type)
+{
+ switch (type) {
+ case POPPLER_FONT_TYPE_TYPE1:
+ return "Type 1";
+ case POPPLER_FONT_TYPE_TYPE1C:
+ return "Type 1C";
+ case POPPLER_FONT_TYPE_TYPE3:
+ return "Type 3";
+ case POPPLER_FONT_TYPE_TRUETYPE:
+ return "TrueType";
+ case POPPLER_FONT_TYPE_CID_TYPE0:
+ return "Type 1 (CID)";
+ case POPPLER_FONT_TYPE_CID_TYPE0C:
+ return "Type 1C (CID)";
+ case POPPLER_FONT_TYPE_CID_TYPE2:
+ return "TrueType (CID)";
+ default:
+ return "Unknown font type";
+ }
+}
+
+static void
+pgd_fonts_update_progress (PgdFontsDemo *demo,
+ gint n_pages,
+ gint scanned)
+{
+ gchar *str;
+
+ str = g_strdup_printf ("Scanning fonts (%d%%)",
+ MIN (scanned * 100 / n_pages, 100));
+ gtk_progress_bar_set_text (GTK_PROGRESS_BAR (demo->progress), str);
+ gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (demo->progress),
+ MIN ((gdouble)scanned / n_pages, 1.0));
+ g_free (str);
+}
+
+static gboolean
+pgd_fonts_fill_model (PgdFontsDemo *demo)
+{
+ GtkTreeModel *model;
+ PopplerFontInfo *font_info;
+ PopplerFontsIter *fonts_iter;
+ gint n_pages, scanned = 0;
+
+ n_pages = poppler_document_get_n_pages (demo->doc);
+
+ model = gtk_tree_view_get_model (GTK_TREE_VIEW (demo->treeview));
+ g_object_ref (model);
+
+ gtk_list_store_clear (GTK_LIST_STORE (model));
+
+ font_info = poppler_font_info_new (demo->doc);
+
+ while (poppler_font_info_scan (font_info, 20, &fonts_iter)) {
+ pgd_fonts_update_progress (demo, n_pages, scanned);
+
+ while (gtk_events_pending ())
+ gtk_main_iteration ();
+
+ scanned += 20;
+
+ if (!fonts_iter)
+ continue;
+
+ do {
+ GtkTreeIter iter;
+ const gchar *name;
+ const gchar *type;
+ const gchar *embedded;
+ const gchar *filename;
+ gchar *details;
+
+ name = poppler_fonts_iter_get_name (fonts_iter);
+ if (!name)
+ name = "No name";
+
+ type = font_type_to_string (poppler_fonts_iter_get_font_type (fonts_iter));
+
+ if (poppler_fonts_iter_is_embedded (fonts_iter)) {
+ if (poppler_fonts_iter_is_subset (fonts_iter))
+ embedded = "Embedded subset";
+ else
+ embedded = "Embedded";
+ } else {
+ embedded = "Not embedded";
+ }
+
+ filename = poppler_fonts_iter_get_file_name (fonts_iter);
+
+ if (filename)
+ details = g_markup_printf_escaped ("%s\n%s (%s)", type, embedded, filename);
+ else
+ details = g_markup_printf_escaped ("%s\n%s", type, embedded);
+
+ gtk_list_store_append (GTK_LIST_STORE (model), &iter);
+ gtk_list_store_set (GTK_LIST_STORE (model), &iter,
+ FONTS_NAME_COLUMN, name,
+ FONTS_DETAILS_COLUMN, details,
+ -1);
+
+ g_free (details);
+ } while (poppler_fonts_iter_next (fonts_iter));
+ poppler_fonts_iter_free (fonts_iter);
+ }
+
+ pgd_fonts_update_progress (demo, n_pages, scanned);
+
+ g_object_unref (font_info);
+ g_object_unref (model);
+
+ return FALSE;
+}
+
+static void
+pgd_fonts_scan_button_clicked (GtkButton *button,
+ PgdFontsDemo *demo)
+{
+ demo->idle_id = g_idle_add ((GSourceFunc)pgd_fonts_fill_model, demo);
+}
+
+GtkWidget *
+pgd_fonts_create_widget (PopplerDocument *document)
+{
+ PgdFontsDemo *demo;
+ GtkWidget *vbox;
+ GtkListStore *model;
+ GtkCellRenderer *renderer;
+ GtkTreeViewColumn *column;
+ GtkWidget *swindow;
+ GtkWidget *hbox, *button;
+
+ demo = g_new0 (PgdFontsDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ demo->progress = gtk_progress_bar_new ();
+ gtk_progress_bar_set_ellipsize (GTK_PROGRESS_BAR (demo->progress),
+ PANGO_ELLIPSIZE_END);
+ gtk_box_pack_start (GTK_BOX (hbox), demo->progress, TRUE, TRUE, 0);
+ gtk_widget_show (demo->progress);
+
+ button = gtk_button_new_with_label ("Scan");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_fonts_scan_button_clicked),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 6);
+ gtk_widget_show (hbox);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+
+ model = gtk_list_store_new (N_COLUMNS, G_TYPE_STRING, G_TYPE_STRING);
+ demo->treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (demo->treeview), FALSE);
+ gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (demo->treeview), TRUE);
+ gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (demo->treeview)),
+ GTK_SELECTION_NONE);
+ g_object_unref (model);
+
+ column = gtk_tree_view_column_new ();
+ gtk_tree_view_append_column (GTK_TREE_VIEW (demo->treeview), column);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_column_pack_start (GTK_TREE_VIEW_COLUMN (column), renderer, FALSE);
+ gtk_tree_view_column_set_cell_data_func (column, renderer,
+ pdg_fonts_cell_data_func,
+ NULL, NULL);
+
+ gtk_container_add (GTK_CONTAINER (swindow), demo->treeview);
+ gtk_widget_show (demo->treeview);
+
+ gtk_box_pack_start (GTK_BOX (vbox), swindow, TRUE, TRUE, 0);
+ gtk_widget_show (swindow);
+
+ g_object_weak_ref (G_OBJECT (swindow),
+ (GWeakNotify)pgd_fonts_free,
+ (gpointer)demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.h
new file mode 100644
index 00000000000..b13447c383f
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/fonts.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _FONTS_H_
+#define _FONTS_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_fonts_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _FONTS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.c
new file mode 100644
index 00000000000..e4b1fd8cbf9
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.c
@@ -0,0 +1,491 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <string.h>
+
+#include "forms.h"
+#include "utils.h"
+
+enum {
+ FORMS_FIELD_TYPE_COLUMN,
+ FORMS_ID_COLUMN,
+ FORMS_READ_ONLY_COLUMN,
+ FORMS_X1_COLUMN,
+ FORMS_Y1_COLUMN,
+ FORMS_X2_COLUMN,
+ FORMS_Y2_COLUMN,
+ FORMS_FIELD_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkListStore *model;
+ GtkWidget *field_view;
+ GtkWidget *timer_label;
+
+ gint page;
+} PgdFormsDemo;
+
+static void
+pgd_forms_free (PgdFormsDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ if (demo->model) {
+ g_object_unref (demo->model);
+ demo->model = NULL;
+ }
+
+ g_free (demo);
+}
+
+static GtkWidget *
+pgd_form_field_view_new (void)
+{
+ GtkWidget *frame, *label;
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
+ label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Form Field Properties</b>");
+ gtk_frame_set_label_widget (GTK_FRAME (frame), label);
+ gtk_widget_show (label);
+
+ return frame;
+}
+
+static void
+pgd_form_field_view_add_choice_items (GtkTable *table,
+ PopplerFormField *field,
+ gint *selected,
+ gint *row)
+{
+ GtkWidget *label;
+ GtkWidget *textview, *swindow;
+ GtkTextBuffer *buffer;
+ gint i;
+
+ label = gtk_label_new (NULL);
+ g_object_set (G_OBJECT (label), "xalign", 0.0, NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Items:</b>");
+ gtk_table_attach (GTK_TABLE (table), label, 0, 1, *row, *row + 1,
+ GTK_FILL, GTK_FILL, 0, 0);
+ gtk_widget_show (label);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ textview = gtk_text_view_new ();
+ gtk_text_view_set_editable (GTK_TEXT_VIEW (textview), FALSE);
+ buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview));
+
+ for (i = 0; i < poppler_form_field_choice_get_n_items (field); i++) {
+ gchar *item;
+
+ item = poppler_form_field_choice_get_item (field, i);
+ gtk_text_buffer_insert_at_cursor (buffer, item, strlen (item));
+ gtk_text_buffer_insert_at_cursor (buffer, "\n", strlen ("\n"));
+ g_free (item);
+
+ if (poppler_form_field_choice_is_item_selected (field, i))
+ *selected = i;
+ }
+
+ gtk_container_add (GTK_CONTAINER (swindow), textview);
+ gtk_widget_show (textview);
+
+ gtk_table_attach (GTK_TABLE (table), swindow, 1, 2, *row, *row + 1,
+ GTK_FILL, GTK_FILL, 0, 0);
+ gtk_widget_show (swindow);
+
+ *row += 1;
+}
+
+static void
+pgd_form_field_view_set_field (GtkWidget *field_view,
+ PopplerFormField *field)
+{
+ GtkWidget *alignment;
+ GtkWidget *table;
+ GEnumValue *enum_value;
+ gint row = 0;
+
+ alignment = gtk_bin_get_child (GTK_BIN (field_view));
+ if (alignment) {
+ gtk_container_remove (GTK_CONTAINER (field_view), alignment);
+ }
+
+ alignment = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5);
+ gtk_container_add (GTK_CONTAINER (field_view), alignment);
+ gtk_widget_show (alignment);
+
+ if (!field)
+ return;
+
+ table = gtk_table_new (10, 2, FALSE);
+ gtk_table_set_col_spacings (GTK_TABLE (table), 6);
+ gtk_table_set_row_spacings (GTK_TABLE (table), 6);
+
+ switch (poppler_form_field_get_field_type (field)) {
+ case POPPLER_FORM_FIELD_BUTTON:
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_FORM_BUTTON_TYPE),
+ poppler_form_field_button_get_button_type (field));
+ pgd_table_add_property (GTK_TABLE (table), "<b>Button Type:</b>", enum_value->value_name, &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Button State:</b>",
+ poppler_form_field_button_get_state (field) ? "Active" : "Inactive", &row);
+ break;
+ case POPPLER_FORM_FIELD_TEXT: {
+ gchar *text;
+
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_FORM_TEXT_TYPE),
+ poppler_form_field_text_get_text_type (field));
+ pgd_table_add_property (GTK_TABLE (table), "<b>Text Type:</b>", enum_value->value_name, &row);
+
+ text = poppler_form_field_text_get_text (field);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Contents:</b>", text, &row);
+ g_free (text);
+
+ text = g_strdup_printf ("%d", poppler_form_field_text_get_max_len (field));
+ pgd_table_add_property (GTK_TABLE (table), "<b>Max Length:</b>", text, &row);
+ g_free (text);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Do spellcheck:</b>",
+ poppler_form_field_text_do_spell_check (field) ? "Yes" : "No", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Do scroll:</b>",
+ poppler_form_field_text_do_scroll (field) ? "Yes" : "No", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Rich Text:</b>",
+ poppler_form_field_text_is_rich_text (field) ? "Yes" : "No", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Pasword type:</b>",
+ poppler_form_field_text_is_password (field) ? "Yes" : "No", &row);
+ }
+ break;
+ case POPPLER_FORM_FIELD_CHOICE: {
+ gchar *text, *item;
+ gint selected;
+
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_FORM_CHOICE_TYPE),
+ poppler_form_field_choice_get_choice_type (field));
+ pgd_table_add_property (GTK_TABLE (table), "<b>Choice Type:</b>", enum_value->value_name, &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Editable:</b>",
+ poppler_form_field_choice_is_editable (field) ? "Yes" : "No", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Multiple Selection:</b>",
+ poppler_form_field_choice_can_select_multiple (field) ? "Yes" : "No", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Do spellcheck:</b>",
+ poppler_form_field_choice_do_spell_check (field) ? "Yes" : "No", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Commit on Change:</b>",
+ poppler_form_field_choice_commit_on_change (field) ? "Yes" : "No", &row);
+
+ text = g_strdup_printf ("%d", poppler_form_field_choice_get_n_items (field));
+ pgd_table_add_property (GTK_TABLE (table), "<b>Number of items:</b>", text, &row);
+ g_free (text);
+
+ pgd_form_field_view_add_choice_items (GTK_TABLE (table), field, &selected, &row);
+
+ if (poppler_form_field_choice_get_n_items (field) > selected) {
+ item = poppler_form_field_choice_get_item (field, selected);
+ text = g_strdup_printf ("%d (%s)", selected, item);
+ g_free (item);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Selected item:</b>", text, &row);
+ g_free (text);
+ }
+
+ text = poppler_form_field_choice_get_text (field);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Contents:</b>", text, &row);
+ g_free (text);
+ }
+ break;
+ case POPPLER_FORM_FIELD_SIGNATURE:
+ case POPPLER_FORM_FIELD_UNKNOWN:
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ gtk_container_add (GTK_CONTAINER (alignment), table);
+ gtk_widget_show (table);
+}
+
+const gchar *
+get_form_field_type (PopplerFormField *field)
+{
+ switch (poppler_form_field_get_field_type (field)) {
+ case POPPLER_FORM_FIELD_TEXT:
+ return "Text";
+ case POPPLER_FORM_FIELD_BUTTON:
+ return "Button";
+ case POPPLER_FORM_FIELD_CHOICE:
+ return "Choice";
+ case POPPLER_FORM_FIELD_SIGNATURE:
+ return "Signature";
+ case POPPLER_FORM_FIELD_UNKNOWN:
+ default:
+ break;
+ }
+
+ return "Unknown";
+}
+
+static void
+pgd_forms_get_form_fields (GtkWidget *button,
+ PgdFormsDemo *demo)
+{
+ PopplerPage *page;
+ GList *mapping, *l;
+ gint n_fields;
+ GTimer *timer;
+
+ gtk_list_store_clear (demo->model);
+ pgd_form_field_view_set_field (demo->field_view, NULL);
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return;
+
+ timer = g_timer_new ();
+ mapping = poppler_page_get_form_field_mapping (page);
+ g_timer_stop (timer);
+
+ n_fields = g_list_length (mapping);
+ if (n_fields > 0) {
+ gchar *str;
+
+ str = g_strdup_printf ("<i>%d form fields found in %.4f seconds</i>",
+ n_fields, g_timer_elapsed (timer, NULL));
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), str);
+ g_free (str);
+ } else {
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No form fields found</i>");
+ }
+
+ g_timer_destroy (timer);
+
+ for (l = mapping; l; l = g_list_next (l)) {
+ PopplerFormFieldMapping *fmapping;
+ GtkTreeIter iter;
+ gchar *x1, *y1, *x2, *y2;
+
+ fmapping = (PopplerFormFieldMapping *)l->data;
+
+ x1 = g_strdup_printf ("%.2f", fmapping->area.x1);
+ y1 = g_strdup_printf ("%.2f", fmapping->area.y1);
+ x2 = g_strdup_printf ("%.2f", fmapping->area.x2);
+ y2 = g_strdup_printf ("%.2f", fmapping->area.y2);
+
+ gtk_list_store_append (demo->model, &iter);
+ gtk_list_store_set (demo->model, &iter,
+ FORMS_FIELD_TYPE_COLUMN, get_form_field_type (fmapping->field),
+ FORMS_ID_COLUMN, poppler_form_field_get_id (fmapping->field),
+ FORMS_READ_ONLY_COLUMN, poppler_form_field_is_read_only (fmapping->field),
+ FORMS_X1_COLUMN, x1,
+ FORMS_Y1_COLUMN, y1,
+ FORMS_X2_COLUMN, x2,
+ FORMS_Y2_COLUMN, y2,
+ FORMS_FIELD_COLUMN, fmapping->field,
+ -1);
+ g_free (x1);
+ g_free (y1);
+ g_free (x2);
+ g_free (y2);
+ }
+
+ poppler_page_free_form_field_mapping (mapping);
+ g_object_unref (page);
+}
+
+static void
+pgd_forms_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdFormsDemo *demo)
+{
+ demo->page = (gint)gtk_spin_button_get_value (spinbutton) - 1;
+}
+
+static void
+pgd_forms_selection_changed (GtkTreeSelection *treeselection,
+ PgdFormsDemo *demo)
+{
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+
+ if (gtk_tree_selection_get_selected (treeselection, &model, &iter)) {
+ PopplerFormField *field;
+
+ gtk_tree_model_get (model, &iter,
+ FORMS_FIELD_COLUMN, &field,
+ -1);
+ pgd_form_field_view_set_field (demo->field_view, field);
+ g_object_unref (field);
+ }
+}
+
+GtkWidget *
+pgd_forms_create_widget (PopplerDocument *document)
+{
+ PgdFormsDemo *demo;
+ GtkWidget *label;
+ GtkWidget *vbox;
+ GtkWidget *hbox, *page_selector;
+ GtkWidget *button;
+ GtkWidget *hpaned;
+ GtkWidget *swindow, *treeview;
+ GtkTreeSelection *selection;
+ GtkCellRenderer *renderer;
+ gchar *str;
+ gint n_pages;
+
+ demo = g_new0 (PgdFormsDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ n_pages = poppler_document_get_n_pages (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_forms_page_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ button = gtk_button_new_with_label ("Get Forms Fields");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_forms_get_form_fields),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ demo->timer_label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No form fields found</i>");
+ g_object_set (G_OBJECT (demo->timer_label), "xalign", 1.0, NULL);
+ gtk_box_pack_start (GTK_BOX (vbox), demo->timer_label, FALSE, TRUE, 0);
+ gtk_widget_show (demo->timer_label);
+
+ hpaned = gtk_hpaned_new ();
+
+ demo->field_view = pgd_form_field_view_new ();
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ demo->model = gtk_list_store_new (N_COLUMNS, G_TYPE_STRING,
+ G_TYPE_INT, G_TYPE_BOOLEAN,
+ G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_OBJECT);
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (demo->model));
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Form Field Type",
+ renderer,
+ "text", FORMS_FIELD_TYPE_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 1, "Form Field Id",
+ renderer,
+ "text", FORMS_ID_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_toggle_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 2, "Read Only",
+ renderer,
+ "active", FORMS_READ_ONLY_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 3, "X1",
+ renderer,
+ "text", FORMS_X1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 4, "Y1",
+ renderer,
+ "text", FORMS_Y1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 5, "X2",
+ renderer,
+ "text", FORMS_X2_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 6, "Y2",
+ renderer,
+ "text", FORMS_Y2_COLUMN,
+ NULL);
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
+ g_signal_connect (G_OBJECT (selection), "changed",
+ G_CALLBACK (pgd_forms_selection_changed),
+ (gpointer)demo);
+
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_paned_add1 (GTK_PANED (hpaned), swindow);
+ gtk_widget_show (swindow);
+
+ gtk_paned_add2 (GTK_PANED (hpaned), demo->field_view);
+ gtk_widget_show (demo->field_view);
+
+ gtk_paned_set_position (GTK_PANED (hpaned), 300);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hpaned, TRUE, TRUE, 0);
+ gtk_widget_show (hpaned);
+
+ g_object_weak_ref (G_OBJECT (vbox),
+ (GWeakNotify)pgd_forms_free,
+ demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.h
new file mode 100644
index 00000000000..5b793bd1158
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/forms.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _FORMS_H_
+#define _FORMS_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_forms_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _FORMS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.c
new file mode 100644
index 00000000000..76cfed20846
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.c
@@ -0,0 +1,342 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+
+#include <gtk/gtk.h>
+
+#include "images.h"
+
+enum {
+ IMAGES_ID_COLUMN,
+ IMAGES_X1_COLUMN,
+ IMAGES_Y1_COLUMN,
+ IMAGES_X2_COLUMN,
+ IMAGES_Y2_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkListStore *model;
+ GtkWidget *timer_label;
+ GtkWidget *image_view;
+
+ gint page;
+} PgdImagesDemo;
+
+static void
+pgd_images_free (PgdImagesDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ if (demo->model) {
+ g_object_unref (demo->model);
+ demo->model = NULL;
+ }
+
+ g_free (demo);
+}
+
+static gboolean
+pgd_image_view_drawing_area_expose (GtkWidget *area,
+ GdkEventExpose *event,
+ GtkWidget *image_view)
+{
+ cairo_t *cr;
+ cairo_surface_t *image;
+
+ image = g_object_get_data (G_OBJECT (image_view), "image-surface");
+ if (!image)
+ return FALSE;
+
+ gtk_widget_set_size_request (area,
+ cairo_image_surface_get_width (image),
+ cairo_image_surface_get_height (image));
+
+ cr = gdk_cairo_create (area->window);
+ cairo_set_source_surface (cr, image, 0, 0);
+ cairo_paint (cr);
+ cairo_destroy (cr);
+
+ return TRUE;
+}
+
+static GtkWidget *
+pgd_image_view_new ()
+{
+ GtkWidget *swindow;
+ GtkWidget *darea;
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+
+ darea = gtk_drawing_area_new ();
+ g_signal_connect (G_OBJECT (darea), "expose_event",
+ G_CALLBACK (pgd_image_view_drawing_area_expose),
+ (gpointer)swindow);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+ gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (swindow),
+ darea);
+ gtk_widget_show (darea);
+
+ return swindow;
+}
+
+static void
+pgd_image_view_set_image (GtkWidget *image_view,
+ cairo_surface_t *image)
+{
+ g_object_set_data_full (G_OBJECT (image_view), "image-surface",
+ image,
+ (GDestroyNotify)cairo_surface_destroy);
+ gtk_widget_queue_draw (image_view);
+}
+
+static void
+pgd_images_get_images (GtkWidget *button,
+ PgdImagesDemo *demo)
+{
+ PopplerPage *page;
+ GList *mapping, *l;
+ gint n_images;
+ GTimer *timer;
+
+ gtk_list_store_clear (demo->model);
+ pgd_image_view_set_image (demo->image_view, NULL);
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return;
+
+ timer = g_timer_new ();
+ mapping = poppler_page_get_image_mapping (page);
+ g_timer_stop (timer);
+
+ n_images = g_list_length (mapping);
+ if (n_images > 0) {
+ gchar *str;
+
+ str = g_strdup_printf ("<i>%d images found in %.4f seconds</i>",
+ n_images, g_timer_elapsed (timer, NULL));
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), str);
+ g_free (str);
+ } else {
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No images found</i>");
+ }
+
+ g_timer_destroy (timer);
+
+ for (l = mapping; l; l = g_list_next (l)) {
+ PopplerImageMapping *imapping;
+ GtkTreeIter iter;
+ gchar *x1, *y1, *x2, *y2;
+
+ imapping = (PopplerImageMapping *)l->data;
+
+ x1 = g_strdup_printf ("%.2f", imapping->area.x1);
+ y1 = g_strdup_printf ("%.2f", imapping->area.y1);
+ x2 = g_strdup_printf ("%.2f", imapping->area.x2);
+ y2 = g_strdup_printf ("%.2f", imapping->area.y2);
+
+ gtk_list_store_append (demo->model, &iter);
+ gtk_list_store_set (demo->model, &iter,
+ IMAGES_ID_COLUMN, imapping->image_id,
+ IMAGES_X1_COLUMN, x1,
+ IMAGES_Y1_COLUMN, y1,
+ IMAGES_X2_COLUMN, x2,
+ IMAGES_Y2_COLUMN, y2,
+ -1);
+ g_free (x1);
+ g_free (y1);
+ g_free (x2);
+ g_free (y2);
+ }
+
+ poppler_page_free_image_mapping (mapping);
+ g_object_unref (page);
+}
+
+static void
+pgd_images_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdImagesDemo *demo)
+{
+ demo->page = (gint)gtk_spin_button_get_value (spinbutton) - 1;
+}
+
+static void
+pgd_images_selection_changed (GtkTreeSelection *treeselection,
+ PgdImagesDemo *demo)
+{
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+
+ if (gtk_tree_selection_get_selected (treeselection, &model, &iter)) {
+ PopplerPage *page;
+ gint image_id;
+
+ gtk_tree_model_get (model, &iter,
+ IMAGES_ID_COLUMN, &image_id,
+ -1);
+ page = poppler_document_get_page (demo->doc, demo->page);
+#if defined (HAVE_CAIRO)
+ pgd_image_view_set_image (demo->image_view,
+ poppler_page_get_image (page, image_id));
+#endif
+ g_object_unref (page);
+
+ }
+}
+
+GtkWidget *
+pgd_images_create_widget (PopplerDocument *document)
+{
+ PgdImagesDemo *demo;
+ GtkWidget *label;
+ GtkWidget *vbox;
+ GtkWidget *hbox, *page_selector;
+ GtkWidget *button;
+ GtkWidget *hpaned;
+ GtkWidget *swindow, *treeview;
+ GtkTreeSelection *selection;
+ GtkCellRenderer *renderer;
+ gchar *str;
+ gint n_pages;
+
+ demo = g_new0 (PgdImagesDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ n_pages = poppler_document_get_n_pages (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_images_page_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ button = gtk_button_new_with_label ("Get Images");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_images_get_images),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ demo->timer_label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No images found</i>");
+ g_object_set (G_OBJECT (demo->timer_label), "xalign", 1.0, NULL);
+ gtk_box_pack_start (GTK_BOX (vbox), demo->timer_label, FALSE, TRUE, 0);
+ gtk_widget_show (demo->timer_label);
+
+ hpaned = gtk_hpaned_new ();
+
+ demo->image_view = pgd_image_view_new ();
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ demo->model = gtk_list_store_new (N_COLUMNS, G_TYPE_INT,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING);
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (demo->model));
+
+ renderer = gtk_cell_renderer_text_new ();
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Image",
+ renderer,
+ "text", IMAGES_ID_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 1, "X1",
+ renderer,
+ "text", IMAGES_X1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 2, "Y1",
+ renderer,
+ "text", IMAGES_Y1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 3, "X2",
+ renderer,
+ "text", IMAGES_X2_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 4, "Y2",
+ renderer,
+ "text", IMAGES_Y2_COLUMN,
+ NULL);
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
+ g_signal_connect (G_OBJECT (selection), "changed",
+ G_CALLBACK (pgd_images_selection_changed),
+ (gpointer)demo);
+
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_paned_add1 (GTK_PANED (hpaned), swindow);
+ gtk_widget_show (swindow);
+
+ gtk_paned_add2 (GTK_PANED (hpaned), demo->image_view);
+ gtk_widget_show (demo->image_view);
+
+ gtk_paned_set_position (GTK_PANED (hpaned), 300);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hpaned, TRUE, TRUE, 0);
+ gtk_widget_show (hpaned);
+
+ g_object_weak_ref (G_OBJECT (vbox),
+ (GWeakNotify)pgd_images_free,
+ demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.h
new file mode 100644
index 00000000000..6180c3b2ac6
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/images.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _IMAGES_H_
+#define _IMAGES_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_images_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _IMAGES_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.cc
new file mode 100644
index 00000000000..87be8eaa773
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.cc
@@ -0,0 +1,228 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+
+#include "config.h"
+#include "info.h"
+#include "utils.h"
+
+static void
+pgd_info_add_permissions (GtkTable *table,
+ PopplerPermissions permissions,
+ gint *row)
+{
+ GtkWidget *label, *hbox;
+ GtkWidget *checkbox;
+
+ label = gtk_label_new (NULL);
+ g_object_set (G_OBJECT (label), "xalign", 0.0, NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Permissions:</b>");
+ gtk_table_attach (GTK_TABLE (table), label, 0, 1, *row, *row + 1,
+ GTK_FILL, GTK_FILL, 0, 0);
+ gtk_widget_show (label);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ checkbox = gtk_check_button_new_with_label ("Print");
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbox),
+ (permissions & POPPLER_PERMISSIONS_OK_TO_PRINT));
+ gtk_box_pack_start (GTK_BOX (hbox), checkbox, FALSE, TRUE, 0);
+ gtk_widget_show (checkbox);
+
+ checkbox = gtk_check_button_new_with_label ("Copy");
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbox),
+ (permissions & POPPLER_PERMISSIONS_OK_TO_COPY));
+ gtk_box_pack_start (GTK_BOX (hbox), checkbox, FALSE, TRUE, 0);
+ gtk_widget_show (checkbox);
+
+ checkbox = gtk_check_button_new_with_label ("Modify");
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbox),
+ (permissions & POPPLER_PERMISSIONS_OK_TO_MODIFY));
+ gtk_box_pack_start (GTK_BOX (hbox), checkbox, FALSE, TRUE, 0);
+ gtk_widget_show (checkbox);
+
+ checkbox = gtk_check_button_new_with_label ("Add notes");
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbox),
+ (permissions & POPPLER_PERMISSIONS_OK_TO_ADD_NOTES));
+ gtk_box_pack_start (GTK_BOX (hbox), checkbox, FALSE, TRUE, 0);
+ gtk_widget_show (checkbox);
+
+ gtk_table_attach (GTK_TABLE (table), hbox, 1, 2, *row, *row + 1,
+ GTK_FILL, GTK_FILL, 0, 0);
+ gtk_widget_show (hbox);
+
+ *row += 1;
+}
+
+static void
+pgd_info_add_metadata (GtkTable *table,
+ const gchar *metadata,
+ gint *row)
+{
+ GtkWidget *label;
+ GtkWidget *textview, *swindow;
+ GtkTextBuffer *buffer;
+
+ label = gtk_label_new (NULL);
+ g_object_set (G_OBJECT (label), "xalign", 0.0, NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Metadata:</b>");
+ gtk_table_attach (GTK_TABLE (table), label, 0, 1, *row, *row + 1,
+ GTK_FILL, GTK_FILL, 0, 0);
+ gtk_widget_show (label);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ textview = gtk_text_view_new ();
+ gtk_text_view_set_editable (GTK_TEXT_VIEW (textview), FALSE);
+ buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (textview));
+ if (metadata)
+ gtk_text_buffer_set_text (buffer, metadata, -1);
+
+ gtk_container_add (GTK_CONTAINER (swindow), textview);
+ gtk_widget_show (textview);
+
+ gtk_table_attach (GTK_TABLE (table), swindow, 1, 2, *row, *row + 1,
+ (GtkAttachOptions)(GTK_EXPAND | GTK_FILL),
+ (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), 0, 0);
+ gtk_widget_show (swindow);
+
+ *row += 1;
+}
+
+GtkWidget *
+pgd_info_create_widget (PopplerDocument *document)
+{
+ GtkWidget *vbox;
+ GtkWidget *label;
+ GtkWidget *frame, *alignment, *table;
+ gchar *str;
+ gchar *title, *format, *author, *subject;
+ gchar *keywords, *creator, *producer, *linearized;
+ gchar *metadata;
+ GTime creation_date, mod_date;
+ GEnumValue *enum_value;
+ PopplerBackend backend;
+ PopplerPageLayout layout;
+ PopplerPageMode mode;
+ PopplerPermissions permissions;
+ PopplerViewerPreferences view_prefs;
+ gint row = 0;
+
+ g_object_get (document,
+ "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,
+ "permissions", &permissions,
+ "viewer-preferences", &view_prefs,
+ "metadata", &metadata,
+ NULL);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ backend = poppler_get_backend ();
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_BACKEND), backend);
+ str = g_strdup_printf ("<span weight='bold' size='larger'>Poppler %s (%s)</span>",
+ poppler_get_version (), enum_value->value_name);
+ label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (label), str);
+ g_free (str);
+ gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, TRUE, 12);
+ gtk_widget_show (label);
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
+ label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Document properties</b>");
+ gtk_frame_set_label_widget (GTK_FRAME (frame), label);
+ gtk_widget_show (label);
+
+ alignment = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5);
+ gtk_container_add (GTK_CONTAINER (frame), alignment);
+ gtk_widget_show (alignment);
+
+ table = gtk_table_new (14, 2, FALSE);
+ gtk_table_set_col_spacings (GTK_TABLE (table), 6);
+ gtk_table_set_row_spacings (GTK_TABLE (table), 6);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Format:</b>", format, &row);
+ g_free (format);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Title:</b>", title, &row);
+ g_free (title);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Author:</b>", author, &row);
+ g_free (author);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Subject:</b>", subject, &row);
+ g_free (subject);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Keywords:</b>", keywords, &row);
+ g_free (keywords);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Creator:</b>", creator, &row);
+ g_free (creator);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Producer:</b>", producer, &row);
+ g_free (producer);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Linearized:</b>", linearized, &row);
+ g_free (linearized);
+
+ str = pgd_format_date (creation_date);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Creation Date:</b>", str, &row);
+ g_free (str);
+
+ str = pgd_format_date (mod_date);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Modification Date:</b>", str, &row);
+ g_free (str);
+
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_peek (POPPLER_TYPE_PAGE_MODE), mode);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Page Mode:</b>", enum_value->value_name, &row);
+
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_peek (POPPLER_TYPE_PAGE_LAYOUT), layout);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Page Layout:</b>", enum_value->value_name, &row);
+
+ pgd_info_add_permissions (GTK_TABLE (table), permissions, &row);
+
+ pgd_info_add_metadata (GTK_TABLE (table), metadata, &row);
+ g_free (metadata);
+
+ /* TODO: view_prefs */
+
+ gtk_container_add (GTK_CONTAINER (alignment), table);
+ gtk_widget_show (table);
+
+ gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0);
+ gtk_widget_show (frame);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.h
new file mode 100644
index 00000000000..a8b34d49533
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/info.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _INFO_H_
+#define _INFO_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_info_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _INFO_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.c
new file mode 100644
index 00000000000..ac93376746e
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.c
@@ -0,0 +1,511 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+
+#include <gtk/gtk.h>
+
+#include "layers.h"
+
+enum {
+ LAYERS_TITLE_COLUMN,
+ LAYERS_VISIBILITY_COLUMN,
+ LAYERS_ENABLE_COLUMN,
+ LAYERS_SHOWTOGGLE_COLUMN,
+ LAYERS_RB_GROUP_COLUMN,
+ LAYERS_LAYER_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+ guint page;
+ GtkWidget *treeview;
+ GtkWidget *darea;
+
+#if defined (HAVE_CAIRO)
+ cairo_surface_t *surface;
+#else
+ GdkPixbuf *pixbuf;
+#endif
+} PgdLayersDemo;
+
+static void
+pgd_layers_free (PgdLayersDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+#if defined (HAVE_CAIRO)
+ if (demo->surface) {
+ cairo_surface_destroy (demo->surface);
+ demo->surface = NULL;
+ }
+#else
+ if (demo->pixbuf) {
+ g_object_unref (demo->pixbuf);
+ demo->pixbuf = NULL;
+ }
+#endif
+
+ g_free (demo);
+}
+
+static void
+build_tree (PopplerDocument *document,
+ GtkTreeModel *model,
+ GtkTreeIter *parent,
+ PopplerLayersIter *iter)
+{
+
+ do {
+ GtkTreeIter tree_iter;
+ PopplerLayersIter *child;
+ PopplerLayer *layer;
+ gboolean visible;
+ gchar *markup;
+ gint rb_group = 0;
+
+ layer = poppler_layers_iter_get_layer (iter);
+ if (layer) {
+ markup = g_markup_escape_text (poppler_layer_get_title (layer), -1);
+ visible = poppler_layer_is_visible (layer);
+ rb_group = poppler_layer_get_radio_button_group_id (layer);
+ } else {
+ gchar *title;
+
+ title = poppler_layers_iter_get_title (iter);
+ markup = g_markup_escape_text (title, -1);
+ g_free (title);
+
+ visible = FALSE;
+ layer = NULL;
+ }
+
+ gtk_tree_store_append (GTK_TREE_STORE (model), &tree_iter, parent);
+ gtk_tree_store_set (GTK_TREE_STORE (model), &tree_iter,
+ LAYERS_TITLE_COLUMN, markup,
+ LAYERS_VISIBILITY_COLUMN, visible,
+ LAYERS_ENABLE_COLUMN, TRUE, /* FIXME */
+ LAYERS_SHOWTOGGLE_COLUMN, (layer != NULL),
+ LAYERS_RB_GROUP_COLUMN, rb_group,
+ LAYERS_LAYER_COLUMN, layer,
+ -1);
+ if (layer)
+ g_object_unref (layer);
+ g_free (markup);
+
+ child = poppler_layers_iter_get_child (iter);
+ if (child)
+ build_tree (document, model, &tree_iter, child);
+ poppler_layers_iter_free (child);
+ } while (poppler_layers_iter_next (iter));
+}
+
+GtkTreeModel *
+pgd_layers_create_model (PopplerDocument *document)
+{
+ GtkTreeModel *model;
+ PopplerLayersIter *iter;
+
+ iter = poppler_layers_iter_new (document);
+ if (iter) {
+ model = GTK_TREE_MODEL (
+ gtk_tree_store_new (N_COLUMNS,
+ G_TYPE_STRING,
+ G_TYPE_BOOLEAN,
+ G_TYPE_BOOLEAN,
+ G_TYPE_BOOLEAN,
+ G_TYPE_INT,
+ G_TYPE_OBJECT));
+ build_tree (document, model, NULL, iter);
+ poppler_layers_iter_free (iter);
+ } else {
+ GtkTreeIter tree_iter;
+ gchar *markup;
+
+ model = GTK_TREE_MODEL (gtk_list_store_new (1, G_TYPE_STRING));
+ gtk_list_store_append (GTK_LIST_STORE (model), &tree_iter);
+ markup = g_strdup_printf ("<span size=\"larger\" style=\"italic\">%s</span>",
+ "The document doesn't contain layers");
+ gtk_list_store_set (GTK_LIST_STORE (model), &tree_iter,
+ 0, markup, -1);
+ g_free (markup);
+ }
+
+ return model;
+}
+
+#if defined (HAVE_CAIRO)
+static cairo_surface_t *
+pgd_layers_render_page (PgdLayersDemo *demo)
+{
+ cairo_t *cr;
+ PopplerPage *page;
+ gdouble width, height;
+ cairo_surface_t *surface = NULL;
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return NULL;
+
+ poppler_page_get_size (page, &width, &height);
+ gtk_widget_set_size_request (demo->darea, width, height);
+
+ surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24,
+ width, height);
+ cr = cairo_create (surface);
+
+ cairo_save (cr);
+ cairo_set_source_rgb (cr, 1, 1, 1);
+ cairo_rectangle (cr, 0, 0, width, height);
+ cairo_fill (cr);
+ cairo_restore (cr);
+
+ cairo_save (cr);
+ poppler_page_render (page, cr);
+ cairo_restore (cr);
+
+ cairo_destroy (cr);
+ g_object_unref (page);
+
+ return surface;
+}
+#else
+static GdkPixbuf *
+pgd_layers_render_page (PgdLayersDemo *demo)
+{
+ PopplerPage *page;
+ gdouble width, height;
+ GdkPixbuf *pixbuf = NULL;
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return NULL;
+
+ poppler_page_get_size (page, &width, &height);
+ gtk_widget_set_size_request (demo->darea, width, height);
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ FALSE, 8, width, height);
+ gdk_pixbuf_fill (pixbuf, 0xffffff);
+ poppler_page_render_to_pixbuf (page, 0, 0,
+ width, height,
+ 1.0, 0, pixbuf);
+ g_object_unref (page);
+
+ return pixbuf;
+}
+#endif
+
+static gboolean
+pgd_layers_viewer_drawing_area_expose (GtkWidget *area,
+ GdkEventExpose *event,
+ PgdLayersDemo *demo)
+{
+#if defined (HAVE_CAIRO)
+ cairo_t *cr;
+
+ if (!demo->surface) {
+ demo->surface = pgd_layers_render_page (demo);
+ if (!demo->surface)
+ return FALSE;
+ }
+#else
+
+ if (!demo->pixbuf) {
+ demo->pixbuf = pgd_layers_render_page (demo);
+ if (!demo->pixbuf)
+ return FALSE;
+ }
+#endif
+
+ gdk_window_clear (area->window);
+
+#if defined (HAVE_CAIRO)
+ cr = gdk_cairo_create (area->window);
+ cairo_set_source_surface (cr, demo->surface, 0, 0);
+ cairo_paint (cr);
+ cairo_destroy (cr);
+#else
+ gdk_draw_pixbuf (area->window,
+ area->style->fg_gc[GTK_STATE_NORMAL],
+ demo->pixbuf,
+ 0, 0,
+ 0, 0,
+ gdk_pixbuf_get_width (demo->pixbuf),
+ gdk_pixbuf_get_height (demo->pixbuf),
+ GDK_RGB_DITHER_NORMAL,
+ 0, 0);
+#endif
+
+ return TRUE;
+}
+
+static gboolean
+pgd_layers_viewer_redraw (PgdLayersDemo *demo)
+{
+#if defined (HAVE_CAIRO)
+ cairo_surface_destroy (demo->surface);
+ demo->surface = NULL;
+#else
+ g_object_unref (demo->pixbuf);
+ demo->pixbuf = NULL;
+#endif
+ gtk_widget_queue_draw (demo->darea);
+
+ return FALSE;
+}
+
+static void
+pgd_layers_viewer_queue_redraw (PgdLayersDemo *demo)
+{
+ g_idle_add ((GSourceFunc)pgd_layers_viewer_redraw, demo);
+}
+
+static void
+pgd_layers_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdLayersDemo *demo)
+{
+ demo->page = (gint)gtk_spin_button_get_value (spinbutton) - 1;
+ pgd_layers_viewer_queue_redraw (demo);
+}
+
+static GtkWidget *
+pgd_layers_create_viewer (PgdLayersDemo *demo)
+{
+ GtkWidget *vbox, *hbox;
+ GtkWidget *label;
+ GtkWidget *swindow;
+ GtkWidget *page_selector;
+ guint n_pages;
+ gchar *str;
+
+ vbox = gtk_vbox_new (FALSE, 6);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+
+ n_pages = poppler_document_get_n_pages (demo->doc);
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_layers_page_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ demo->darea = gtk_drawing_area_new ();
+ g_signal_connect (G_OBJECT (demo->darea), "expose_event",
+ G_CALLBACK (pgd_layers_viewer_drawing_area_expose),
+ (gpointer)demo);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+ gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (swindow), demo->darea);
+ gtk_widget_show (demo->darea);
+
+ gtk_box_pack_start (GTK_BOX (vbox), swindow, TRUE, TRUE, 0);
+ gtk_widget_show (swindow);
+
+ return vbox;
+}
+
+static gboolean
+update_kids (GtkTreeModel *model,
+ GtkTreePath *path,
+ GtkTreeIter *iter,
+ GtkTreeIter *parent)
+{
+ if (gtk_tree_store_is_ancestor (GTK_TREE_STORE (model), parent, iter)) {
+ gboolean visible;
+
+ gtk_tree_model_get (model, parent,
+ LAYERS_VISIBILITY_COLUMN, &visible,
+ -1);
+ gtk_tree_store_set (GTK_TREE_STORE (model), iter,
+ LAYERS_ENABLE_COLUMN, visible,
+ -1);
+ }
+
+ return FALSE;
+}
+
+static gboolean
+clear_rb_group (GtkTreeModel *model,
+ GtkTreePath *path,
+ GtkTreeIter *iter,
+ gint *rb_group)
+{
+ gint group;
+
+ gtk_tree_model_get (model, iter,
+ LAYERS_RB_GROUP_COLUMN, &group,
+ -1);
+
+ if (group == *rb_group) {
+ gtk_tree_store_set (GTK_TREE_STORE (model), iter,
+ LAYERS_VISIBILITY_COLUMN, FALSE,
+ -1);
+ }
+
+ return FALSE;
+}
+
+static void
+pgd_layers_visibility_changed (GtkCellRendererToggle *cell,
+ gchar *path_str,
+ PgdLayersDemo *demo)
+{
+ GtkTreeModel *model;
+ GtkTreePath *path;
+ GtkTreeIter iter;
+ gboolean visible;
+ PopplerLayer *layer;
+
+ model = gtk_tree_view_get_model (GTK_TREE_VIEW (demo->treeview));
+
+ path = gtk_tree_path_new_from_string (path_str);
+ gtk_tree_model_get_iter (model, &iter, path);
+ gtk_tree_model_get (model, &iter,
+ LAYERS_VISIBILITY_COLUMN, &visible,
+ LAYERS_LAYER_COLUMN, &layer,
+ -1);
+
+ visible = !visible;
+ visible ? poppler_layer_show (layer) : poppler_layer_hide (layer);
+
+ if (visible) {
+ gint rb_group;
+
+ rb_group = poppler_layer_get_radio_button_group_id (layer);
+ if (rb_group) {
+ gtk_tree_model_foreach (model,
+ (GtkTreeModelForeachFunc)clear_rb_group,
+ &rb_group);
+ }
+ }
+
+ gtk_tree_store_set (GTK_TREE_STORE (model), &iter,
+ LAYERS_VISIBILITY_COLUMN, visible,
+ -1);
+
+ if (poppler_layer_is_parent (layer)) {
+ gtk_tree_model_foreach (model,
+ (GtkTreeModelForeachFunc)update_kids,
+ &iter);
+ }
+
+ pgd_layers_viewer_queue_redraw (demo);
+
+ gtk_tree_path_free (path);
+ g_object_unref (layer);
+}
+
+GtkWidget *
+pgd_layers_create_widget (PopplerDocument *document)
+{
+ PgdLayersDemo *demo;
+ GtkWidget *swindow;
+ GtkWidget *treeview;
+ GtkTreeModel *model;
+ GtkCellRenderer *renderer;
+ GtkTreeSelection *selection;
+ GtkWidget *hpaned, *viewer;
+
+ demo = g_new0 (PgdLayersDemo, 1);
+ demo->doc = g_object_ref (document);
+
+ hpaned = gtk_hpaned_new ();
+
+ viewer = pgd_layers_create_viewer (demo);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ model = pgd_layers_create_model (document);
+ treeview = gtk_tree_view_new_with_model (model);
+ demo->treeview = treeview;
+ g_object_unref (model);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Layer",
+ renderer,
+ "markup", LAYERS_TITLE_COLUMN,
+ NULL);
+ g_object_set (G_OBJECT (renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL);
+ g_object_set (G_OBJECT (gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), 0)),
+ "expand", TRUE, NULL);
+
+ if (GTK_IS_TREE_STORE (model)) {
+ renderer = gtk_cell_renderer_toggle_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 1, "Show/Hide",
+ renderer,
+ "active", LAYERS_VISIBILITY_COLUMN,
+ "activatable", LAYERS_ENABLE_COLUMN,
+ "visible", LAYERS_SHOWTOGGLE_COLUMN,
+ NULL);
+
+ g_signal_connect (renderer, "toggled",
+ G_CALLBACK (pgd_layers_visibility_changed),
+ (gpointer)demo);
+ gtk_tree_view_column_set_clickable (gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), 1),
+ TRUE);
+ }
+
+ gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),
+ GTK_SELECTION_NONE);
+
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_paned_add1 (GTK_PANED (hpaned), swindow);
+ gtk_widget_show (swindow);
+
+ gtk_paned_add2 (GTK_PANED (hpaned), viewer);
+ gtk_widget_show (viewer);
+
+ gtk_paned_set_position (GTK_PANED (hpaned), 150);
+
+ g_object_weak_ref (G_OBJECT (hpaned),
+ (GWeakNotify)pgd_layers_free,
+ (gpointer)demo);
+
+ return hpaned;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.h
new file mode 100644
index 00000000000..88b43c38f8a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/layers.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _LAYERS_H_
+#define _LAYERS_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_layers_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _LAYERS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.c
new file mode 100644
index 00000000000..6cb4a5df621
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.c
@@ -0,0 +1,289 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+
+#include "links.h"
+#include "utils.h"
+
+enum {
+ LINKS_ACTION_TYPE_COLUMN,
+ LINKS_X1_COLUMN,
+ LINKS_Y1_COLUMN,
+ LINKS_X2_COLUMN,
+ LINKS_Y2_COLUMN,
+ LINKS_ACTION_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkListStore *model;
+ GtkWidget *action_view;
+ GtkWidget *timer_label;
+
+ gint page;
+} PgdLinksDemo;
+
+static void
+pgd_links_free (PgdLinksDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ if (demo->model) {
+ g_object_unref (demo->model);
+ demo->model = NULL;
+ }
+
+ g_free (demo);
+}
+
+static void
+pgd_links_get_links (GtkWidget *button,
+ PgdLinksDemo *demo)
+{
+ PopplerPage *page;
+ GList *mapping, *l;
+ gint n_links;
+ GTimer *timer;
+
+ gtk_list_store_clear (demo->model);
+ pgd_action_view_set_action (demo->action_view, NULL);
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return;
+
+ timer = g_timer_new ();
+ mapping = poppler_page_get_link_mapping (page);
+ g_timer_stop (timer);
+
+ n_links = g_list_length (mapping);
+ if (n_links > 0) {
+ gchar *str;
+
+ str = g_strdup_printf ("<i>%d links found in %.4f seconds</i>",
+ n_links, g_timer_elapsed (timer, NULL));
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), str);
+ g_free (str);
+ } else {
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No links found</i>");
+ }
+
+ g_timer_destroy (timer);
+
+ for (l = mapping; l; l = g_list_next (l)) {
+ PopplerLinkMapping *lmapping;
+ PopplerAction *action;
+ GEnumValue *enum_value;
+ GtkTreeIter iter;
+ gchar *x1, *y1, *x2, *y2;
+
+ lmapping = (PopplerLinkMapping *)l->data;
+ action = poppler_action_copy (lmapping->action);
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_ACTION_TYPE), action->type);
+
+ x1 = g_strdup_printf ("%.2f", lmapping->area.x1);
+ y1 = g_strdup_printf ("%.2f", lmapping->area.y1);
+ x2 = g_strdup_printf ("%.2f", lmapping->area.x2);
+ y2 = g_strdup_printf ("%.2f", lmapping->area.y2);
+
+ gtk_list_store_append (demo->model, &iter);
+ gtk_list_store_set (demo->model, &iter,
+ LINKS_ACTION_TYPE_COLUMN, enum_value->value_name,
+ LINKS_X1_COLUMN, x1,
+ LINKS_Y1_COLUMN, y1,
+ LINKS_X2_COLUMN, x2,
+ LINKS_Y2_COLUMN, y2,
+ LINKS_ACTION_COLUMN, action,
+ -1);
+ g_free (x1);
+ g_free (y1);
+ g_free (x2);
+ g_free (y2);
+
+ g_object_weak_ref (G_OBJECT (demo->model),
+ (GWeakNotify)poppler_action_free,
+ action);
+ }
+
+ poppler_page_free_link_mapping (mapping);
+ g_object_unref (page);
+}
+
+static void
+pgd_links_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdLinksDemo *demo)
+{
+ demo->page = (gint)gtk_spin_button_get_value (spinbutton) - 1;
+}
+
+static void
+pgd_links_selection_changed (GtkTreeSelection *treeselection,
+ PgdLinksDemo *demo)
+{
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+
+ if (gtk_tree_selection_get_selected (treeselection, &model, &iter)) {
+ PopplerAction *action;
+
+ gtk_tree_model_get (model, &iter,
+ LINKS_ACTION_COLUMN, &action,
+ -1);
+ pgd_action_view_set_action (demo->action_view, action);
+ }
+}
+
+GtkWidget *
+pgd_links_create_widget (PopplerDocument *document)
+{
+ PgdLinksDemo *demo;
+ GtkWidget *label;
+ GtkWidget *vbox;
+ GtkWidget *hbox, *page_selector;
+ GtkWidget *button;
+ GtkWidget *hpaned;
+ GtkWidget *swindow, *treeview;
+ GtkTreeSelection *selection;
+ GtkCellRenderer *renderer;
+ gchar *str;
+ gint n_pages;
+
+ demo = g_new0 (PgdLinksDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ n_pages = poppler_document_get_n_pages (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_links_page_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ button = gtk_button_new_with_label ("Get Links");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_links_get_links),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ demo->timer_label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No links found</i>");
+ g_object_set (G_OBJECT (demo->timer_label), "xalign", 1.0, NULL);
+ gtk_box_pack_start (GTK_BOX (vbox), demo->timer_label, FALSE, TRUE, 0);
+ gtk_widget_show (demo->timer_label);
+
+ hpaned = gtk_hpaned_new ();
+
+ demo->action_view = pgd_action_view_new (document);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ demo->model = gtk_list_store_new (N_COLUMNS,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_POINTER);
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (demo->model));
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Action Type",
+ renderer,
+ "text", LINKS_ACTION_TYPE_COLUMN,
+ NULL);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 1, "X1",
+ renderer,
+ "text", LINKS_X1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 2, "Y1",
+ renderer,
+ "text", LINKS_Y1_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 3, "X2",
+ renderer,
+ "text", LINKS_X2_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 4, "Y2",
+ renderer,
+ "text", LINKS_Y2_COLUMN,
+ NULL);
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
+ g_signal_connect (G_OBJECT (selection), "changed",
+ G_CALLBACK (pgd_links_selection_changed),
+ (gpointer)demo);
+
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_paned_add1 (GTK_PANED (hpaned), swindow);
+ gtk_widget_show (swindow);
+
+ gtk_paned_add2 (GTK_PANED (hpaned), demo->action_view);
+ gtk_widget_show (demo->action_view);
+
+ gtk_paned_set_position (GTK_PANED (hpaned), 300);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hpaned, TRUE, TRUE, 0);
+ gtk_widget_show (hpaned);
+
+ g_object_weak_ref (G_OBJECT (vbox),
+ (GWeakNotify)pgd_links_free,
+ demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.h
new file mode 100644
index 00000000000..b7dbaeb49ca
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/links.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _LINKS_H_
+#define _LINKS_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_links_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _LINKS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/main.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/main.c
new file mode 100644
index 00000000000..3026c6cf5e2
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/main.c
@@ -0,0 +1,247 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+#include <string.h>
+
+#include "info.h"
+#include "fonts.h"
+#include "render.h"
+#include "page.h"
+#include "outline.h"
+#include "links.h"
+#include "forms.h"
+#include "transitions.h"
+#include "images.h"
+#include "annots.h"
+#include "attachments.h"
+#include "layers.h"
+#include "text.h"
+#include "find.h"
+
+enum {
+ PGD_TITLE_COLUMN,
+ PGD_NPAGE_COLUMN,
+ PGD_WIDGET_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ const gchar *name;
+ GtkWidget *(* create_widget) (PopplerDocument *document);
+} PopplerGlibDemo;
+
+static const PopplerGlibDemo demo_list[] = {
+ { "Info", pgd_info_create_widget },
+ { "Fonts", pgd_fonts_create_widget },
+ { "Render", pgd_render_create_widget },
+ { "Page Info", pgd_page_create_widget },
+ { "Outline", pgd_outline_create_widget },
+ { "Links", pgd_links_create_widget },
+ { "Forms", pgd_forms_create_widget },
+ { "Page Transitions", pgd_transitions_create_widget },
+ { "Images", pgd_images_create_widget },
+ { "Annots", pgd_annots_create_widget },
+ { "Attachments", pgd_attachments_create_widget },
+ { "Layers", pgd_layers_create_widget },
+ { "Text", pgd_text_create_widget },
+ { "Find", pgd_find_create_widget }
+};
+
+static void
+pgd_demo_changed (GtkTreeSelection *selection,
+ GtkNotebook *notebook)
+{
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+
+ if (gtk_tree_selection_get_selected (selection, &model, &iter)) {
+ gint n_page;
+
+ gtk_tree_model_get (model, &iter,
+ PGD_NPAGE_COLUMN, &n_page,
+ -1);
+ gtk_notebook_set_current_page (notebook, n_page);
+ }
+}
+
+static GtkWidget *
+pgd_demo_list_create (void)
+{
+ GtkWidget *treeview;
+ GtkListStore *model;
+ GtkCellRenderer *renderer;
+ gint i;
+
+ model = gtk_list_store_new (N_COLUMNS,
+ G_TYPE_STRING,
+ G_TYPE_INT,
+ G_TYPE_POINTER);
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Demos",
+ renderer,
+ "text", PGD_TITLE_COLUMN,
+ NULL);
+
+ for (i = 0; i < G_N_ELEMENTS (demo_list); i++) {
+ GtkTreeIter iter;
+
+ gtk_list_store_append (model, &iter);
+ gtk_list_store_set (model, &iter,
+ PGD_TITLE_COLUMN, demo_list[i].name,
+ PGD_NPAGE_COLUMN, i,
+ -1);
+ }
+
+ g_object_unref (model);
+
+ return treeview;
+}
+
+static GtkWidget *
+pdg_demo_notebook_create (PopplerDocument *document)
+{
+ GtkWidget *notebook;
+ gint i;
+
+ notebook = gtk_notebook_new ();
+ gtk_notebook_set_show_tabs (GTK_NOTEBOOK (notebook), FALSE);
+ gtk_notebook_set_show_border (GTK_NOTEBOOK (notebook), FALSE);
+
+ for (i = 0; i < G_N_ELEMENTS (demo_list); i++) {
+ GtkWidget *demo_widget;
+
+ demo_widget = demo_list[i].create_widget (document);
+ gtk_notebook_append_page (GTK_NOTEBOOK (notebook), demo_widget, NULL);
+ gtk_widget_show (demo_widget);
+ }
+
+ return notebook;
+}
+
+gint main (gint argc, gchar **argv)
+{
+ PopplerDocument *document;
+ GtkWidget *win;
+ GtkWidget *hbox;
+ GtkWidget *notebook;
+ GtkWidget *treeview;
+ GtkTreeSelection *selection;
+ gchar *uri;
+ GTimer *timer;
+ GError *error = NULL;
+
+ if (argc != 2) {
+ g_print ("Usage: poppler-glib-demo FILE\n");
+ return 1;
+ }
+
+ if (!g_thread_supported ())
+ g_thread_init (NULL);
+
+ gtk_init (&argc, &argv);
+
+#if GLIB_CHECK_VERSION (2,15,0)
+ GFile *file;
+
+ file = g_file_new_for_commandline_arg (argv[1]);
+ uri = g_file_get_uri (file);
+ g_object_unref (file);
+#else
+ if (g_path_is_absolute (argv[1])) {
+ uri = g_filename_to_uri (argv[1], NULL, &error);
+ } else if (g_ascii_strncasecmp (argv[1], "file://", strlen ("file://")) == 0) {
+ uri = g_strdup (argv[1]);
+ } else if (!g_strrstr (argv[1], "://")) {
+ gchar *dir;
+ gchar *filename;
+
+ dir = g_get_current_dir ();
+ filename = g_build_filename (dir, argv[1], NULL);
+ g_free (dir);
+
+ uri = g_filename_to_uri (filename, NULL, &error);
+ g_free (filename);
+ } else {
+ g_print ("Error: unsupported uri\n");
+
+ return 1;
+ }
+
+ if (error) {
+ g_print ("Error: %s\n", error->message);
+ g_error_free (error);
+
+ return 1;
+ }
+#endif /* GLIB_CHECK_VERSION */
+
+ timer = g_timer_new ();
+ document = poppler_document_new_from_file (uri, NULL, &error);
+ g_timer_stop (timer);
+ if (error) {
+ g_print ("Error: %s\n", error->message);
+ g_error_free (error);
+ g_free (uri);
+
+ return 1;
+ }
+
+ g_free (uri);
+
+ g_print ("Document successfully loaded in %.4f seconds\n",
+ g_timer_elapsed (timer, NULL));
+ g_timer_destroy (timer);
+
+ /* Main window */
+ win = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ gtk_window_set_default_size (GTK_WINDOW (win), 600, 600);
+ gtk_window_set_title (GTK_WINDOW (win), "Poppler GLib Demo");
+ g_signal_connect (G_OBJECT (win), "delete-event",
+ G_CALLBACK (gtk_main_quit), NULL);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ treeview = pgd_demo_list_create ();
+ gtk_box_pack_start (GTK_BOX (hbox), treeview, FALSE, TRUE, 0);
+ gtk_widget_show (treeview);
+
+ notebook = pdg_demo_notebook_create (document);
+ gtk_box_pack_start (GTK_BOX (hbox), notebook, TRUE, TRUE, 0);
+ gtk_widget_show (notebook);
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
+ g_signal_connect (G_OBJECT (selection), "changed",
+ G_CALLBACK (pgd_demo_changed),
+ (gpointer) notebook);
+
+ gtk_container_add (GTK_CONTAINER (win), hbox);
+ gtk_widget_show (hbox);
+
+ gtk_widget_show (win);
+
+ gtk_main ();
+
+ g_object_unref (document);
+
+ return 0;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.c
new file mode 100644
index 00000000000..5dc71892513
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.c
@@ -0,0 +1,218 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+
+#include "outline.h"
+#include "utils.h"
+
+enum {
+ OUTLINE_TITLE_COLUMN,
+ OUTLINE_ACTION_TYPE_COLUMN,
+ OUTLINE_EXPAND_COLUMN,
+ OUTLINE_ACTION_COLUMN,
+ N_COLUMNS
+};
+
+static void
+build_tree (PopplerDocument *document,
+ GtkTreeModel *model,
+ GtkTreeIter *parent,
+ PopplerIndexIter *iter)
+{
+
+ do {
+ GtkTreeIter tree_iter;
+ PopplerIndexIter *child;
+ PopplerAction *action;
+ gboolean expand;
+ gchar *markup;
+ GEnumValue *enum_value;
+
+ action = poppler_index_iter_get_action (iter);
+ expand = poppler_index_iter_is_open (iter);
+
+ if (!action)
+ continue;
+
+ markup = g_markup_escape_text (action->any.title, -1);
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_ACTION_TYPE), action->type);
+
+ if (action->type == POPPLER_ACTION_GOTO_DEST &&
+ action->goto_dest.dest->type == POPPLER_DEST_NAMED) {
+ /* TODO */
+ }
+
+ gtk_tree_store_append (GTK_TREE_STORE (model), &tree_iter, parent);
+ gtk_tree_store_set (GTK_TREE_STORE (model), &tree_iter,
+ OUTLINE_TITLE_COLUMN, markup,
+ OUTLINE_ACTION_TYPE_COLUMN, enum_value->value_name,
+ OUTLINE_EXPAND_COLUMN, expand,
+ OUTLINE_ACTION_COLUMN, action,
+ -1);
+ g_object_weak_ref (G_OBJECT (model),
+ (GWeakNotify)poppler_action_free,
+ action);
+
+ g_free (markup);
+
+ child = poppler_index_iter_get_child (iter);
+ if (child)
+ build_tree (document, model, &tree_iter, child);
+ poppler_index_iter_free (child);
+ } while (poppler_index_iter_next (iter));
+}
+
+GtkTreeModel *
+pgd_outline_create_model (PopplerDocument *document)
+{
+ GtkTreeModel *model;
+ PopplerIndexIter *iter;
+
+ iter = poppler_index_iter_new (document);
+ if (iter) {
+ model = GTK_TREE_MODEL (
+ gtk_tree_store_new (N_COLUMNS,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_BOOLEAN, G_TYPE_POINTER));
+ build_tree (document, model, NULL, iter);
+ poppler_index_iter_free (iter);
+ } else {
+ GtkTreeIter tree_iter;
+ gchar *markup;
+
+ model = GTK_TREE_MODEL (gtk_list_store_new (1, G_TYPE_STRING));
+ gtk_list_store_append (GTK_LIST_STORE (model), &tree_iter);
+ markup = g_strdup_printf ("<span size=\"larger\" style=\"italic\">%s</span>",
+ "The document doesn't contain outline");
+ gtk_list_store_set (GTK_LIST_STORE (model), &tree_iter,
+ 0, markup, -1);
+ g_free (markup);
+ }
+
+ return model;
+}
+
+static void
+expand_open_links (GtkTreeView *tree_view,
+ GtkTreeModel *model,
+ GtkTreeIter *parent)
+{
+ GtkTreeIter iter;
+ gboolean expand;
+
+ if (gtk_tree_model_iter_children (model, &iter, parent)) {
+ do {
+ gtk_tree_model_get (model, &iter,
+ OUTLINE_EXPAND_COLUMN, &expand,
+ -1);
+ if (expand) {
+ GtkTreePath *path;
+
+ path = gtk_tree_model_get_path (model, &iter);
+ gtk_tree_view_expand_row (tree_view, path, FALSE);
+ gtk_tree_path_free (path);
+ }
+
+ expand_open_links (tree_view, model, &iter);
+ } while (gtk_tree_model_iter_next (model, &iter));
+ }
+}
+
+static void
+pgd_outline_selection_changed (GtkTreeSelection *treeselection,
+ GtkWidget *action_view)
+{
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+
+ if (gtk_tree_selection_get_selected (treeselection, &model, &iter)) {
+ PopplerAction *action;
+
+ gtk_tree_model_get (model, &iter,
+ OUTLINE_ACTION_COLUMN, &action,
+ -1);
+ pgd_action_view_set_action (action_view, action);
+ }
+}
+
+GtkWidget *
+pgd_outline_create_widget (PopplerDocument *document)
+{
+ GtkWidget *swindow;
+ GtkWidget *treeview;
+ GtkTreeModel *model;
+ GtkCellRenderer *renderer;
+ GtkTreeSelection *selection;
+ GtkWidget *hpaned, *action;
+
+ hpaned = gtk_hpaned_new ();
+
+ action = pgd_action_view_new (document);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ model = pgd_outline_create_model (document);
+ treeview = gtk_tree_view_new_with_model (model);
+ g_object_unref (model);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Title",
+ renderer,
+ "markup", OUTLINE_TITLE_COLUMN,
+ NULL);
+ g_object_set (G_OBJECT (renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL);
+ g_object_set (G_OBJECT (gtk_tree_view_get_column (GTK_TREE_VIEW (treeview), 0)),
+ "expand", TRUE, NULL);
+
+ if (GTK_IS_TREE_STORE (model)) {
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 1, "Action Type",
+ renderer,
+ "text", OUTLINE_ACTION_TYPE_COLUMN,
+ NULL);
+
+ expand_open_links (GTK_TREE_VIEW (treeview), model, NULL);
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview));
+ g_signal_connect (G_OBJECT (selection), "changed",
+ G_CALLBACK (pgd_outline_selection_changed),
+ (gpointer)action);
+ } else {
+ gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),
+ GTK_SELECTION_NONE);
+ }
+
+ gtk_container_add (GTK_CONTAINER (swindow), treeview);
+ gtk_widget_show (treeview);
+
+ gtk_paned_add1 (GTK_PANED (hpaned), swindow);
+ gtk_widget_show (swindow);
+
+ gtk_paned_add2 (GTK_PANED (hpaned), action);
+ gtk_widget_show (action);
+
+ gtk_paned_set_position (GTK_PANED (hpaned), 300);
+
+ return hpaned;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.h
new file mode 100644
index 00000000000..61b8238b742
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/outline.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _OUTLINE_H_
+#define _OUTLINE_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_outline_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _OUTLINE_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.c
new file mode 100644
index 00000000000..ee034f0d8b4
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.c
@@ -0,0 +1,335 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+
+#include <gtk/gtk.h>
+
+#include "page.h"
+#include "utils.h"
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkWidget *index;
+ GtkWidget *label;
+ GtkWidget *size;
+ GtkWidget *duration;
+ GtkWidget *thumbnail;
+ GtkWidget *thumbnail_size;
+
+ gint page;
+} PgdPageDemo;
+
+static void
+pgd_page_free (PgdPageDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ g_free (demo);
+}
+
+#ifndef POPPLER_WITH_GDK
+static void
+image_set_from_surface (GtkImage *gtkimage,
+ cairo_surface_t *surface)
+{
+ GdkPixbuf *pixbuf;
+ cairo_surface_t *image;
+ cairo_t *cr;
+ gboolean has_alpha;
+ gint width, height;
+ cairo_format_t surface_format;
+ gint pixbuf_n_channels;
+ gint pixbuf_rowstride;
+ guchar *pixbuf_pixels;
+ gint x, y;
+
+ width = cairo_image_surface_get_width (surface);
+ height = cairo_image_surface_get_height (surface);
+
+ surface_format = cairo_image_surface_get_format (surface);
+ has_alpha = (surface_format == CAIRO_FORMAT_ARGB32);
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ TRUE, 8,
+ width, height);
+ pixbuf_n_channels = gdk_pixbuf_get_n_channels (pixbuf);
+ pixbuf_rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ pixbuf_pixels = gdk_pixbuf_get_pixels (pixbuf);
+
+ image = cairo_image_surface_create_for_data (pixbuf_pixels,
+ surface_format,
+ width, height,
+ pixbuf_rowstride);
+ cr = cairo_create (image);
+ cairo_set_source_surface (cr, surface, 0, 0);
+
+ if (has_alpha)
+ cairo_mask_surface (cr, surface, 0, 0);
+ else
+ cairo_paint (cr);
+
+ cairo_destroy (cr);
+ cairo_surface_destroy (image);
+
+ for (y = 0; y < height; y++) {
+ guchar *p = pixbuf_pixels + y * pixbuf_rowstride;
+
+ for (x = 0; x < width; x++) {
+ guchar tmp;
+
+#if G_BYTE_ORDER == G_LITTLE_ENDIAN
+ tmp = p[0];
+ p[0] = p[2];
+ p[2] = tmp;
+ p[3] = (has_alpha) ? p[3] : 0xff;
+#else
+ tmp = p[0];
+ p[0] = (has_alpha) ? p[3] : 0xff;
+ p[3] = p[2];
+ p[2] = p[1];
+ p[1] = tmp;
+#endif
+ p += pixbuf_n_channels;
+ }
+ }
+
+ gtk_image_set_from_pixbuf (gtkimage, pixbuf);
+ g_object_unref (pixbuf);
+}
+#endif /* !POPPLER_WITH_GDK */
+
+static void
+pgd_page_set_page (PgdPageDemo *demo,
+ PopplerPage *page)
+{
+#ifdef POPPLER_WITH_GDK
+ GdkPixbuf *thumbnail;
+#else
+ cairo_surface_t *thumbnail;
+#endif
+ gchar *str;
+
+ str = page ? g_strdup_printf ("%d", poppler_page_get_index (page)) : NULL;
+ gtk_label_set_text (GTK_LABEL (demo->index), str);
+ g_free (str);
+
+ if (page) {
+ g_object_get (G_OBJECT (page), "label", &str, NULL);
+ gtk_label_set_text (GTK_LABEL (demo->label), str);
+ g_free (str);
+ } else {
+ gtk_label_set_text (GTK_LABEL (demo->label), NULL);
+ }
+
+ if (page) {
+ gdouble width, height;
+
+ poppler_page_get_size (page, &width, &height);
+ str = g_strdup_printf ("%.2f x %.2f", width, height);
+ gtk_label_set_text (GTK_LABEL (demo->size), str);
+ g_free (str);
+ } else {
+ gtk_label_set_text (GTK_LABEL (demo->size), NULL);
+ }
+
+ str = page ? g_strdup_printf ("%.2f seconds", poppler_page_get_duration (page)) : NULL;
+ gtk_label_set_text (GTK_LABEL (demo->duration), str);
+ g_free (str);
+
+#ifdef POPPLER_WITH_GDK
+ thumbnail = page ? poppler_page_get_thumbnail_pixbuf (page) : NULL;
+#else
+ thumbnail = page ? poppler_page_get_thumbnail (page) : NULL;
+#endif
+ if (thumbnail) {
+ gint width, height;
+
+ poppler_page_get_thumbnail_size (page, &width, &height);
+ str = g_strdup_printf ("%d x %d", width, height);
+ gtk_label_set_text (GTK_LABEL (demo->thumbnail_size), str);
+ g_free (str);
+
+#ifdef POPPLER_WITH_GDK
+ gtk_image_set_from_pixbuf (GTK_IMAGE (demo->thumbnail), thumbnail);
+ g_object_unref (thumbnail);
+#else
+ image_set_from_surface (GTK_IMAGE (demo->thumbnail), thumbnail);
+ cairo_surface_destroy (thumbnail);
+#endif
+ } else {
+ str = g_strdup ("<i>No thumbnail found</i>");
+ gtk_label_set_markup (GTK_LABEL (demo->thumbnail_size), str);
+ g_free (str);
+
+ gtk_image_set_from_stock (GTK_IMAGE (demo->thumbnail),
+ GTK_STOCK_MISSING_IMAGE,
+ GTK_ICON_SIZE_DIALOG);
+ }
+}
+
+static void
+pgd_page_get_info (GtkWidget *button,
+ PgdPageDemo *demo)
+{
+ PopplerPage *page;
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ pgd_page_set_page (demo, page);
+ g_object_unref (page);
+}
+
+static void
+pgd_page_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdPageDemo *demo)
+{
+ demo->page = (gint)gtk_spin_button_get_value (spinbutton) - 1;
+}
+
+GtkWidget *
+pgd_page_create_widget (PopplerDocument *document)
+{
+ PgdPageDemo *demo;
+ GtkWidget *vbox;
+ GtkWidget *hbox, *page_selector;
+ GtkWidget *button;
+ GtkWidget *frame, *alignment;
+ GtkWidget *table;
+ GtkWidget *label;
+ GtkWidget *thumnail_box;
+ gchar *str;
+ gint n_pages;
+ gint row = 0;
+
+ demo = g_new0 (PgdPageDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ n_pages = poppler_document_get_n_pages (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_page_page_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ button = gtk_button_new_with_label ("Get Info");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_page_get_info),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
+ label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Page Properties</b>");
+ gtk_frame_set_label_widget (GTK_FRAME (frame), label);
+ gtk_widget_show (label);
+
+ alignment = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5);
+ gtk_container_add (GTK_CONTAINER (frame), alignment);
+ gtk_widget_show (alignment);
+
+ table = gtk_table_new (3, 2, FALSE);
+
+ gtk_table_set_col_spacings (GTK_TABLE (table), 6);
+ gtk_table_set_row_spacings (GTK_TABLE (table), 6);
+
+ pgd_table_add_property_with_value_widget (GTK_TABLE (table), "<b>Page Index:</b>",
+ &(demo->index), NULL, &row);
+ pgd_table_add_property_with_value_widget (GTK_TABLE (table), "<b>Page Label:</b>",
+ &(demo->label), NULL, &row);
+ pgd_table_add_property_with_value_widget (GTK_TABLE (table), "<b>Page Size:</b>",
+ &(demo->size), NULL, &row);
+ pgd_table_add_property_with_value_widget (GTK_TABLE (table), "<b>Page Duration:</b>",
+ &(demo->duration), NULL, &row);
+
+ gtk_container_add (GTK_CONTAINER (alignment), table);
+ gtk_widget_show (table);
+
+ gtk_box_pack_start (GTK_BOX (hbox), frame, TRUE, TRUE, 0);
+ gtk_widget_show (frame);
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
+ gtk_frame_set_label_align (GTK_FRAME (frame), 0.5, 0.5);
+ label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Page Thumbnail</b>");
+ gtk_frame_set_label_widget (GTK_FRAME (frame), label);
+ gtk_widget_show (label);
+
+ alignment = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5);
+ gtk_container_add (GTK_CONTAINER (frame), alignment);
+ gtk_widget_show (alignment);
+
+ thumnail_box = gtk_vbox_new (FALSE, 6);
+
+ demo->thumbnail = gtk_image_new ();
+ gtk_box_pack_start (GTK_BOX (thumnail_box), demo->thumbnail, TRUE, TRUE, 0);
+ gtk_widget_show (demo->thumbnail);
+
+ demo->thumbnail_size = gtk_label_new (NULL);
+ g_object_set (G_OBJECT (demo->thumbnail_size), "xalign", 0.5, NULL);
+ gtk_box_pack_start (GTK_BOX (thumnail_box), demo->thumbnail_size, TRUE, TRUE, 0);
+ gtk_widget_show (demo->thumbnail_size);
+
+ gtk_container_add (GTK_CONTAINER (alignment), thumnail_box);
+ gtk_widget_show (thumnail_box);
+
+ gtk_box_pack_start (GTK_BOX (hbox), frame, TRUE, TRUE, 0);
+ gtk_widget_show (frame);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ g_object_weak_ref (G_OBJECT (vbox),
+ (GWeakNotify)pgd_page_free,
+ (gpointer)demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.h
new file mode 100644
index 00000000000..5b86a81d2e6
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/page.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _PAGE_H_
+#define _PAGE_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_page_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _PAGE_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.c
new file mode 100644
index 00000000000..610d7d6338c
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.c
@@ -0,0 +1,531 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+
+#include <gtk/gtk.h>
+#include <cairo.h>
+
+#include "render.h"
+
+typedef enum {
+#if defined (HAVE_CAIRO)
+ PGD_RENDER_CAIRO,
+#endif
+ PGD_RENDER_PIXBUF
+} PgdRenderMode;
+
+typedef struct {
+ PopplerDocument *doc;
+
+ /* Properties */
+ PgdRenderMode mode;
+ gint page;
+ gdouble scale;
+ gint rotate;
+ GdkRectangle slice;
+
+ GtkWidget *swindow;
+ GtkWidget *darea;
+ GtkWidget *slice_x;
+ GtkWidget *slice_y;
+ GtkWidget *slice_w;
+ GtkWidget *slice_h;
+ GtkWidget *timer_label;
+
+#if defined (HAVE_CAIRO)
+ cairo_surface_t *surface;
+#endif
+ GdkPixbuf *pixbuf;
+} PgdRenderDemo;
+
+static void
+pgd_render_free (PgdRenderDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+#if defined (HAVE_CAIRO)
+ if (demo->surface) {
+ cairo_surface_destroy (demo->surface);
+ demo->surface = NULL;
+ }
+#endif
+
+ if (demo->pixbuf) {
+ g_object_unref (demo->pixbuf);
+ demo->pixbuf = NULL;
+ }
+
+ g_free (demo);
+}
+
+static gboolean
+pgd_render_drawing_area_expose (GtkWidget *area,
+ GdkEventExpose *event,
+ PgdRenderDemo *demo)
+{
+#if defined (HAVE_CAIRO)
+ if (demo->mode == PGD_RENDER_CAIRO && !demo->surface)
+ return FALSE;
+#endif
+
+ if (demo->mode == PGD_RENDER_PIXBUF && !demo->pixbuf)
+ return FALSE;
+
+ gdk_window_clear (area->window);
+
+#if defined (HAVE_CAIRO)
+ if (demo->mode == PGD_RENDER_CAIRO) {
+ cairo_t *cr;
+
+ cr = gdk_cairo_create (area->window);
+ cairo_set_source_surface (cr, demo->surface, 0, 0);
+ cairo_paint (cr);
+ cairo_destroy (cr);
+ } else if (demo->mode == PGD_RENDER_PIXBUF) {
+#endif
+ gdk_draw_pixbuf (area->window,
+ area->style->fg_gc[GTK_STATE_NORMAL],
+ demo->pixbuf,
+ 0, 0,
+ 0, 0,
+ gdk_pixbuf_get_width (demo->pixbuf),
+ gdk_pixbuf_get_height (demo->pixbuf),
+ GDK_RGB_DITHER_NORMAL,
+ 0, 0);
+#if defined (HAVE_CAIRO)
+ } else {
+ g_assert_not_reached ();
+ }
+#endif
+
+ return TRUE;
+}
+
+static void
+pgd_render_start (GtkButton *button,
+ PgdRenderDemo *demo)
+{
+ PopplerPage *page;
+ gdouble page_width, page_height;
+ gdouble width, height;
+ gint x, y;
+ gchar *str;
+ GTimer *timer;
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return;
+
+#if defined (HAVE_CAIRO)
+ if (demo->surface)
+ cairo_surface_destroy (demo->surface);
+ demo->surface = NULL;
+#endif
+
+ if (demo->pixbuf)
+ g_object_unref (demo->pixbuf);
+ demo->pixbuf = NULL;
+
+ poppler_page_get_size (page, &page_width, &page_height);
+
+ if (demo->rotate == 0 || demo->rotate == 180) {
+ width = demo->slice.width * demo->scale;
+ height = demo->slice.height * demo->scale;
+ x = demo->slice.x * demo->scale;
+ y = demo->slice.y * demo->scale;
+ } else {
+ width = demo->slice.height * demo->scale;
+ height = demo->slice.width * demo->scale;
+ x = demo->slice.y * demo->scale;
+ y = demo->slice.x * demo->scale;
+ }
+
+#if defined (HAVE_CAIRO)
+ if (demo->mode == PGD_RENDER_CAIRO) {
+ cairo_t *cr;
+
+ timer = g_timer_new ();
+ demo->surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32,
+ width, height);
+ cr = cairo_create (demo->surface);
+
+ cairo_save (cr);
+ switch (demo->rotate) {
+ case 90:
+ cairo_translate (cr, x + width, -y);
+ break;
+ case 180:
+ cairo_translate (cr, x + width, y + height);
+ break;
+ case 270:
+ cairo_translate (cr, -x, y + height);
+ break;
+ default:
+ cairo_translate (cr, -x, -y);
+ }
+
+ if (demo->scale != 1.0)
+ cairo_scale (cr, demo->scale, demo->scale);
+
+ if (demo->rotate != 0)
+ cairo_rotate (cr, demo->rotate * G_PI / 180.0);
+
+ poppler_page_render (page, cr);
+ cairo_restore (cr);
+
+ cairo_set_operator (cr, CAIRO_OPERATOR_DEST_OVER);
+ cairo_set_source_rgb (cr, 1., 1., 1.);
+ cairo_paint (cr);
+
+ g_timer_stop (timer);
+
+ cairo_destroy (cr);
+ } else if (demo->mode == PGD_RENDER_PIXBUF) {
+#endif
+#ifdef POPPLER_WITH_GDK
+ timer = g_timer_new ();
+ demo->pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+ FALSE, 8, width, height);
+ gdk_pixbuf_fill (demo->pixbuf, 0xffffff);
+ poppler_page_render_to_pixbuf (page,
+ x, y,
+ width,
+ height,
+ demo->scale,
+ demo->rotate,
+ demo->pixbuf);
+ g_timer_stop (timer);
+#endif /* POPPLER_WITH_GDK */
+#if defined (HAVE_CAIRO)
+ } else {
+ g_assert_not_reached ();
+ }
+#endif
+ g_object_unref (page);
+
+ str = g_strdup_printf ("<i>Page rendered in %.4f seconds</i>",
+ g_timer_elapsed (timer, NULL));
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), str);
+ g_free (str);
+
+ g_timer_destroy (timer);
+
+ gtk_widget_set_size_request (demo->darea, width, height);
+ gtk_widget_queue_draw (demo->darea);
+}
+
+static void
+pgd_render_slice_selector_setup (PgdRenderDemo *demo)
+{
+ PopplerPage *page;
+ gdouble width, height;
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return;
+
+ poppler_page_get_size (page, &width, &height);
+
+ gtk_spin_button_set_range (GTK_SPIN_BUTTON (demo->slice_x), 0, width);
+ gtk_spin_button_set_range (GTK_SPIN_BUTTON (demo->slice_y), 0, height);
+ gtk_spin_button_set_range (GTK_SPIN_BUTTON (demo->slice_w), 0, width);
+ gtk_spin_button_set_range (GTK_SPIN_BUTTON (demo->slice_h), 0, height);
+
+ gtk_spin_button_set_value (GTK_SPIN_BUTTON (demo->slice_x), 0);
+ gtk_spin_button_set_value (GTK_SPIN_BUTTON (demo->slice_y), 0);
+ gtk_spin_button_set_value (GTK_SPIN_BUTTON (demo->slice_w), width);
+ gtk_spin_button_set_value (GTK_SPIN_BUTTON (demo->slice_h), height);
+
+ g_object_unref (page);
+}
+
+static void
+pgd_render_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdRenderDemo *demo)
+{
+ demo->page = (gint)gtk_spin_button_get_value (spinbutton) - 1;
+ pgd_render_slice_selector_setup (demo);
+}
+
+static void
+pgd_render_scale_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdRenderDemo *demo)
+{
+ demo->scale = gtk_spin_button_get_value (spinbutton);
+}
+
+static void
+pgd_render_rotate_selector_changed (GtkComboBox *combobox,
+ PgdRenderDemo *demo)
+{
+ demo->rotate = gtk_combo_box_get_active (combobox) * 90;
+}
+
+static void
+pgd_render_mode_selector_changed (GtkComboBox *combobox,
+ PgdRenderDemo *demo)
+{
+ demo->mode = gtk_combo_box_get_active (combobox);
+}
+
+static void
+pgd_render_slice_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdRenderDemo *demo)
+{
+ demo->slice.x = (gint)gtk_spin_button_get_value (GTK_SPIN_BUTTON (demo->slice_x));
+ demo->slice.y = (gint)gtk_spin_button_get_value (GTK_SPIN_BUTTON (demo->slice_y));
+ demo->slice.width = (gint)gtk_spin_button_get_value (GTK_SPIN_BUTTON (demo->slice_w));
+ demo->slice.height = (gint)gtk_spin_button_get_value (GTK_SPIN_BUTTON (demo->slice_h));
+}
+
+GtkWidget *
+pgd_render_properties_selector_create (PgdRenderDemo *demo)
+{
+ GtkWidget *hbox, *vbox;
+ GtkWidget *label;
+ GtkWidget *page_hbox, *page_selector;
+ GtkWidget *scale_hbox, *scale_selector;
+ GtkWidget *rotate_hbox, *rotate_selector;
+ GtkWidget *mode_hbox, *mode_selector;
+ GtkWidget *slice_hbox, *slice_selector;
+ GtkWidget *button;
+ gint n_pages;
+ gchar *str;
+
+ n_pages = poppler_document_get_n_pages (demo->doc);
+
+ vbox = gtk_vbox_new (FALSE, 6);
+
+ hbox = gtk_hbox_new (FALSE, 12);
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ page_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (page_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_render_page_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (page_hbox), page_selector, TRUE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (page_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ gtk_box_pack_start (GTK_BOX (hbox), page_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (page_hbox);
+
+ scale_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Scale:");
+ gtk_box_pack_start (GTK_BOX (scale_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ scale_selector = gtk_spin_button_new_with_range (0, 10.0, 0.1);
+ gtk_spin_button_set_value (GTK_SPIN_BUTTON (scale_selector), 1.0);
+ g_signal_connect (G_OBJECT (scale_selector), "value-changed",
+ G_CALLBACK (pgd_render_scale_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (scale_hbox), scale_selector, TRUE, TRUE, 0);
+ gtk_widget_show (scale_selector);
+
+ gtk_box_pack_start (GTK_BOX (hbox), scale_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (scale_hbox);
+
+ rotate_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Rotate:");
+ gtk_box_pack_start (GTK_BOX (rotate_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ rotate_selector = gtk_combo_box_new_text ();
+ gtk_combo_box_append_text (GTK_COMBO_BOX (rotate_selector), "0");
+ gtk_combo_box_append_text (GTK_COMBO_BOX (rotate_selector), "90");
+ gtk_combo_box_append_text (GTK_COMBO_BOX (rotate_selector), "180");
+ gtk_combo_box_append_text (GTK_COMBO_BOX (rotate_selector), "270");
+ gtk_combo_box_set_active (GTK_COMBO_BOX (rotate_selector), 0);
+ g_signal_connect (G_OBJECT (rotate_selector), "changed",
+ G_CALLBACK (pgd_render_rotate_selector_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (rotate_hbox), rotate_selector, TRUE, TRUE, 0);
+ gtk_widget_show (rotate_selector);
+
+ gtk_box_pack_start (GTK_BOX (hbox), rotate_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (rotate_hbox);
+
+ mode_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Mode:");
+ gtk_box_pack_start (GTK_BOX (mode_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ mode_selector = gtk_combo_box_new_text ();
+#if defined (HAVE_CAIRO)
+ gtk_combo_box_append_text (GTK_COMBO_BOX (mode_selector), "cairo");
+#endif
+#ifdef POPPLER_WITH_GDK
+ gtk_combo_box_append_text (GTK_COMBO_BOX (mode_selector), "pixbuf");
+#endif
+ gtk_combo_box_set_active (GTK_COMBO_BOX (mode_selector), 0);
+ g_signal_connect (G_OBJECT (mode_selector), "changed",
+ G_CALLBACK (pgd_render_mode_selector_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (mode_hbox), mode_selector, TRUE, TRUE, 0);
+ gtk_widget_show (mode_selector);
+
+ gtk_box_pack_start (GTK_BOX (hbox), mode_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (mode_hbox);
+
+ hbox = gtk_hbox_new (FALSE, 12);
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ slice_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("x:");
+ gtk_box_pack_start (GTK_BOX (slice_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ demo->slice_x = gtk_spin_button_new_with_range (0, 0, 1.0);
+ g_signal_connect (G_OBJECT (demo->slice_x), "value-changed",
+ G_CALLBACK (pgd_render_slice_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (slice_hbox), demo->slice_x, TRUE, TRUE, 0);
+ gtk_widget_show (demo->slice_x);
+
+ gtk_box_pack_start (GTK_BOX (hbox), slice_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (slice_hbox);
+
+ slice_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("y:");
+ gtk_box_pack_start (GTK_BOX (slice_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ demo->slice_y = gtk_spin_button_new_with_range (0, 0, 1.0);
+ g_signal_connect (G_OBJECT (demo->slice_y), "value-changed",
+ G_CALLBACK (pgd_render_slice_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (slice_hbox), demo->slice_y, TRUE, TRUE, 0);
+ gtk_widget_show (demo->slice_y);
+
+ gtk_box_pack_start (GTK_BOX (hbox), slice_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (slice_hbox);
+
+ slice_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("width:");
+ gtk_box_pack_start (GTK_BOX (slice_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ demo->slice_w = gtk_spin_button_new_with_range (0, 0, 1.0);
+ g_signal_connect (G_OBJECT (demo->slice_w), "value-changed",
+ G_CALLBACK (pgd_render_slice_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (slice_hbox), demo->slice_w, TRUE, TRUE, 0);
+ gtk_widget_show (demo->slice_w);
+
+ gtk_box_pack_start (GTK_BOX (hbox), slice_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (slice_hbox);
+
+ slice_hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("height:");
+ gtk_box_pack_start (GTK_BOX (slice_hbox), label, TRUE, TRUE, 0);
+ gtk_widget_show (label);
+
+ demo->slice_h = gtk_spin_button_new_with_range (0, 0, 1.0);
+ g_signal_connect (G_OBJECT (demo->slice_h), "value-changed",
+ G_CALLBACK (pgd_render_slice_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (slice_hbox), demo->slice_h, TRUE, TRUE, 0);
+ gtk_widget_show (demo->slice_h);
+
+ gtk_box_pack_start (GTK_BOX (hbox), slice_hbox, FALSE, TRUE, 0);
+ gtk_widget_show (slice_hbox);
+
+ pgd_render_slice_selector_setup (demo);
+
+ button = gtk_button_new_with_label ("Render");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_render_start),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, TRUE, 0);
+ gtk_widget_show (button);
+
+ demo->timer_label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No page rendered</i>");
+ g_object_set (G_OBJECT (demo->timer_label), "xalign", 1.0, NULL);
+ gtk_box_pack_end (GTK_BOX (vbox), demo->timer_label, FALSE, TRUE, 0);
+ gtk_widget_show (demo->timer_label);
+
+ return vbox;
+}
+
+GtkWidget *
+pgd_render_create_widget (PopplerDocument *document)
+{
+ PgdRenderDemo *demo;
+ GtkWidget *vbox, *hbox;
+
+ demo = g_new0 (PgdRenderDemo, 1);
+
+ demo->doc = g_object_ref (document);
+ demo->scale = 1.0;
+
+ vbox = gtk_vbox_new (FALSE, 6);
+
+ hbox = pgd_render_properties_selector_create (demo);
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 6);
+ gtk_widget_show (hbox);
+
+ demo->darea = gtk_drawing_area_new ();
+ g_signal_connect (G_OBJECT (demo->darea), "expose_event",
+ G_CALLBACK (pgd_render_drawing_area_expose),
+ (gpointer)demo);
+
+ demo->swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (demo->swindow),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+ gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (demo->swindow),
+ demo->darea);
+ gtk_widget_show (demo->darea);
+
+ gtk_box_pack_start (GTK_BOX (vbox), demo->swindow, TRUE, TRUE, 0);
+ gtk_widget_show (demo->swindow);
+
+ g_object_weak_ref (G_OBJECT (demo->swindow),
+ (GWeakNotify)pgd_render_free,
+ (gpointer)demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.h
new file mode 100644
index 00000000000..46f70396d93
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/render.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _RENDER_H_
+#define _RENDER_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_render_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _RENDER_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.c
new file mode 100644
index 00000000000..e11908217a6
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.c
@@ -0,0 +1,175 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <string.h>
+
+#include "text.h"
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkWidget *timer_label;
+ GtkTextBuffer *buffer;
+
+ gint page;
+} PgdTextDemo;
+
+static void
+pgd_text_free (PgdTextDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ if (demo->buffer) {
+ g_object_unref (demo->buffer);
+ demo->buffer = NULL;
+ }
+
+ g_free (demo);
+}
+
+static void
+pgd_text_get_text (GtkWidget *button,
+ PgdTextDemo *demo)
+{
+ PopplerPage *page;
+ PopplerRectangle rect;
+ gdouble width, height;
+ gchar *text;
+ GTimer *timer;
+
+ page = poppler_document_get_page (demo->doc, demo->page);
+ if (!page)
+ return;
+
+ poppler_page_get_size (page, &width, &height);
+ rect.x1 = rect.y1 = 0;
+ rect.x2 = width;
+ rect.y2 = height;
+
+ timer = g_timer_new ();
+ text = poppler_page_get_text (page, POPPLER_SELECTION_GLYPH, &rect);
+ g_timer_stop (timer);
+
+ if (text) {
+ gchar *str;
+
+ str = g_strdup_printf ("<i>got text in %.4f seconds</i>",
+ g_timer_elapsed (timer, NULL));
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), str);
+ g_free (str);
+ } else {
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No text found</i>");
+ }
+
+ g_timer_destroy (timer);
+ g_object_unref (page);
+
+ if (text) {
+ gtk_text_buffer_set_text (demo->buffer, text, strlen (text));
+ g_free (text);
+ }
+}
+
+static void
+pgd_text_page_selector_value_changed (GtkSpinButton *spinbutton,
+ PgdTextDemo *demo)
+{
+ demo->page = (gint)gtk_spin_button_get_value (spinbutton) - 1;
+}
+
+GtkWidget *
+pgd_text_create_widget (PopplerDocument *document)
+{
+ PgdTextDemo *demo;
+ GtkWidget *label;
+ GtkWidget *vbox;
+ GtkWidget *hbox, *page_selector;
+ GtkWidget *button;
+ GtkWidget *swindow, *textview;
+ gchar *str;
+ gint n_pages;
+
+ demo = g_new0 (PgdTextDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ n_pages = poppler_document_get_n_pages (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ label = gtk_label_new ("Page:");
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+
+ page_selector = gtk_spin_button_new_with_range (1, n_pages, 1);
+ g_signal_connect (G_OBJECT (page_selector), "value-changed",
+ G_CALLBACK (pgd_text_page_selector_value_changed),
+ (gpointer)demo);
+ gtk_box_pack_start (GTK_BOX (hbox), page_selector, FALSE, TRUE, 0);
+ gtk_widget_show (page_selector);
+
+ str = g_strdup_printf ("of %d", n_pages);
+ label = gtk_label_new (str);
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, TRUE, 0);
+ gtk_widget_show (label);
+ g_free (str);
+
+ button = gtk_button_new_with_label ("Get Text");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_text_get_text),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
+ gtk_widget_show (hbox);
+
+ demo->timer_label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (demo->timer_label), "<i>No text found</i>");
+ g_object_set (G_OBJECT (demo->timer_label), "xalign", 1.0, NULL);
+ gtk_box_pack_start (GTK_BOX (vbox), demo->timer_label, FALSE, TRUE, 0);
+ gtk_widget_show (demo->timer_label);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC,
+ GTK_POLICY_AUTOMATIC);
+
+ demo->buffer = gtk_text_buffer_new (NULL);
+ textview = gtk_text_view_new_with_buffer (demo->buffer);
+
+ gtk_container_add (GTK_CONTAINER (swindow), textview);
+ gtk_widget_show (textview);
+
+ gtk_box_pack_start (GTK_BOX (vbox), swindow, TRUE, TRUE, 0);
+ gtk_widget_show (swindow);
+
+ g_object_weak_ref (G_OBJECT (vbox),
+ (GWeakNotify)pgd_text_free,
+ demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.h
new file mode 100644
index 00000000000..87a11435822
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/text.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _TEXT_H_
+#define _TEXT_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_text_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _TEXT_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.c
new file mode 100644
index 00000000000..b6188b58a6c
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.c
@@ -0,0 +1,321 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+
+#include "transitions.h"
+
+enum {
+ TRANSITIONS_PAGE_COLUMN,
+ TRANSITIONS_TYPE_COLUMN,
+ TRANSITIONS_ALIGNMENT_COLUMN,
+ TRANSITIONS_DIRECTION_COLUMN,
+ TRANSITIONS_DURATION_COLUMN,
+ TRANSITIONS_ANGLE_COLUMN,
+ TRANSITIONS_SCALE_COLUMN,
+ TRANSITIONS_RECTANGULAR_COLUMN,
+ N_COLUMNS
+};
+
+typedef struct {
+ PopplerDocument *doc;
+
+ GtkWidget *treeview;
+ GtkWidget *progress;
+
+ guint idle_id;
+} PgdTransitionsDemo;
+
+static void
+pgd_transitions_free (PgdTransitionsDemo *demo)
+{
+ if (!demo)
+ return;
+
+ if (demo->idle_id > 0) {
+ g_source_remove (demo->idle_id);
+ demo->idle_id = 0;
+ }
+
+ if (demo->doc) {
+ g_object_unref (demo->doc);
+ demo->doc = NULL;
+ }
+
+ g_free (demo);
+}
+
+static const gchar *
+transition_type_to_string (PopplerPageTransitionType type)
+{
+ switch (type) {
+ case POPPLER_PAGE_TRANSITION_REPLACE:
+ return "Replace";
+ case POPPLER_PAGE_TRANSITION_SPLIT:
+ return "Split";
+ case POPPLER_PAGE_TRANSITION_BLINDS:
+ return "Blinds";
+ case POPPLER_PAGE_TRANSITION_BOX:
+ return "Box";
+ case POPPLER_PAGE_TRANSITION_WIPE:
+ return "Wipe";
+ case POPPLER_PAGE_TRANSITION_DISSOLVE:
+ return "Dissolve";
+ case POPPLER_PAGE_TRANSITION_GLITTER:
+ return "Glitter";
+ case POPPLER_PAGE_TRANSITION_FLY:
+ return "Fly";
+ case POPPLER_PAGE_TRANSITION_PUSH:
+ return "Push";
+ case POPPLER_PAGE_TRANSITION_COVER:
+ return "Cover";
+ case POPPLER_PAGE_TRANSITION_UNCOVER:
+ return "Uncover";
+ case POPPLER_PAGE_TRANSITION_FADE:
+ return "Fade";
+ }
+
+ return "Unknown";
+}
+
+static const gchar *
+transition_alignment_to_string (PopplerPageTransitionAlignment alignment)
+{
+ return alignment == POPPLER_PAGE_TRANSITION_HORIZONTAL ? "Horizontal" : "Vertical";
+}
+
+static const gchar *
+transition_direction_to_string (PopplerPageTransitionDirection direction)
+{
+ return direction == POPPLER_PAGE_TRANSITION_INWARD ? "Inward" : "Outward";
+}
+
+static void
+pgd_transitions_update_progress (PgdTransitionsDemo *demo,
+ gint n_pages,
+ gint scanned)
+{
+ gchar *str;
+
+ str = g_strdup_printf ("Scanning transitions (%d%%)",
+ MIN (scanned * 100 / n_pages, 100));
+ gtk_progress_bar_set_text (GTK_PROGRESS_BAR (demo->progress), str);
+ gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR (demo->progress),
+ MIN ((gdouble)scanned / n_pages, 1.0));
+ g_free (str);
+}
+
+static gboolean
+pgd_transitions_fill_model (PgdTransitionsDemo *demo)
+{
+ GtkTreeModel *model;
+ gint i, n_pages;
+
+ n_pages = poppler_document_get_n_pages (demo->doc);
+
+ model = gtk_tree_view_get_model (GTK_TREE_VIEW (demo->treeview));
+ g_object_ref (model);
+
+ for (i = 0; i < n_pages; i++) {
+ PopplerPage *page;
+ PopplerPageTransition *transition;
+
+ pgd_transitions_update_progress (demo, n_pages, i);
+
+ while (gtk_events_pending ())
+ gtk_main_iteration ();
+
+ page = poppler_document_get_page (demo->doc, i);
+ if (!page)
+ continue;
+
+ transition = poppler_page_get_transition (page);
+ if (transition) {
+ GtkTreeIter iter;
+ gchar *npage;
+ gchar *duration;
+ gchar *angle;
+ gchar *scale;
+
+ npage = g_strdup_printf ("%d", i + 1);
+ duration = g_strdup_printf ("%d", transition->duration);
+ angle = g_strdup_printf ("%d", transition->angle);
+ scale = g_strdup_printf ("%.2f", transition->scale);
+
+ gtk_list_store_append (GTK_LIST_STORE (model), &iter);
+ gtk_list_store_set (GTK_LIST_STORE (model), &iter,
+ TRANSITIONS_PAGE_COLUMN, npage,
+ TRANSITIONS_TYPE_COLUMN,
+ transition_type_to_string (transition->type),
+ TRANSITIONS_ALIGNMENT_COLUMN,
+ transition_alignment_to_string (transition->alignment),
+ TRANSITIONS_DIRECTION_COLUMN,
+ transition_direction_to_string (transition->direction),
+ TRANSITIONS_DURATION_COLUMN, duration,
+ TRANSITIONS_ANGLE_COLUMN, angle,
+ TRANSITIONS_SCALE_COLUMN, scale,
+ TRANSITIONS_RECTANGULAR_COLUMN,
+ transition->rectangular ? "Yes" : "No",
+ -1);
+ g_free (npage);
+ g_free (duration);
+ g_free (angle);
+ g_free (scale);
+
+ poppler_page_transition_free (transition);
+ }
+
+ g_object_unref (page);
+ }
+
+ pgd_transitions_update_progress (demo, n_pages, n_pages);
+ g_object_unref (model);
+
+ return FALSE;
+}
+
+static void
+pgd_transitions_scan_button_clicked (GtkButton *button,
+ PgdTransitionsDemo *demo)
+{
+ if (demo->idle_id > 0)
+ g_source_remove (demo->idle_id);
+
+ demo->idle_id = g_idle_add ((GSourceFunc)pgd_transitions_fill_model, demo);
+}
+
+static GtkWidget *
+pgd_transitions_create_list (GtkTreeModel *model)
+{
+ GtkWidget *treeview;
+ GtkCellRenderer *renderer;
+
+ treeview = gtk_tree_view_new_with_model (GTK_TREE_MODEL (model));
+ gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (treeview), TRUE);
+ gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (treeview), TRUE);
+ gtk_tree_selection_set_mode (gtk_tree_view_get_selection (GTK_TREE_VIEW (treeview)),
+ GTK_SELECTION_NONE);
+
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 0, "Page",
+ renderer,
+ "text", TRANSITIONS_PAGE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 1, "Type",
+ renderer,
+ "text", TRANSITIONS_TYPE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 2, "Alignment",
+ renderer,
+ "text", TRANSITIONS_ALIGNMENT_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 3, "Direction",
+ renderer,
+ "text", TRANSITIONS_DIRECTION_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 4, "Duration",
+ renderer,
+ "text", TRANSITIONS_DURATION_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 5, "Angle",
+ renderer,
+ "text", TRANSITIONS_ANGLE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 6, "Scale",
+ renderer,
+ "text", TRANSITIONS_SCALE_COLUMN,
+ NULL);
+ renderer = gtk_cell_renderer_text_new ();
+ gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (treeview),
+ 7, "Rectangular",
+ renderer,
+ "text", TRANSITIONS_RECTANGULAR_COLUMN,
+ NULL);
+ return treeview;
+}
+
+GtkWidget *
+pgd_transitions_create_widget (PopplerDocument *document)
+{
+ PgdTransitionsDemo *demo;
+ GtkWidget *vbox;
+ GtkListStore *model;
+ GtkWidget *swindow;
+ GtkWidget *hbox, *button;
+
+ demo = g_new0 (PgdTransitionsDemo, 1);
+
+ demo->doc = g_object_ref (document);
+
+ vbox = gtk_vbox_new (FALSE, 12);
+
+ hbox = gtk_hbox_new (FALSE, 6);
+
+ demo->progress = gtk_progress_bar_new ();
+ gtk_progress_bar_set_ellipsize (GTK_PROGRESS_BAR (demo->progress),
+ PANGO_ELLIPSIZE_END);
+ gtk_box_pack_start (GTK_BOX (hbox), demo->progress, TRUE, TRUE, 0);
+ gtk_widget_show (demo->progress);
+
+ button = gtk_button_new_with_label ("Scan");
+ g_signal_connect (G_OBJECT (button), "clicked",
+ G_CALLBACK (pgd_transitions_scan_button_clicked),
+ (gpointer)demo);
+ gtk_box_pack_end (GTK_BOX (hbox), button, FALSE, FALSE, 0);
+ gtk_widget_show (button);
+
+ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 6);
+ gtk_widget_show (hbox);
+
+ swindow = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (swindow),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+
+ model = gtk_list_store_new (N_COLUMNS,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING,
+ G_TYPE_STRING, G_TYPE_STRING);
+ demo->treeview = pgd_transitions_create_list (GTK_TREE_MODEL (model));
+ g_object_unref (model);
+
+ gtk_container_add (GTK_CONTAINER (swindow), demo->treeview);
+ gtk_widget_show (demo->treeview);
+
+ gtk_box_pack_start (GTK_BOX (vbox), swindow, TRUE, TRUE, 0);
+ gtk_widget_show (swindow);
+
+ g_object_weak_ref (G_OBJECT (swindow),
+ (GWeakNotify)pgd_transitions_free,
+ (gpointer)demo);
+
+ return vbox;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.h
new file mode 100644
index 00000000000..11d8bd47f7d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/transitions.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _TRANSITIONS_H_
+#define _TRANSITIONS_H_
+
+G_BEGIN_DECLS
+
+GtkWidget *pgd_transitions_create_widget (PopplerDocument *document);
+
+G_END_DECLS
+
+#endif /* _TRANSITIONS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.c b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.c
new file mode 100644
index 00000000000..010fab3086c
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.c
@@ -0,0 +1,260 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <time.h>
+
+#include "utils.h"
+
+void
+pgd_table_add_property_with_value_widget (GtkTable *table,
+ const gchar *markup,
+ GtkWidget **value_widget,
+ const gchar *value,
+ gint *row)
+{
+ GtkWidget *label;
+
+ label = gtk_label_new (NULL);
+ g_object_set (G_OBJECT (label), "xalign", 0.0, NULL);
+ gtk_label_set_markup (GTK_LABEL (label), markup);
+ gtk_table_attach (GTK_TABLE (table), label, 0, 1, *row, *row + 1,
+ GTK_FILL, GTK_FILL, 0, 0);
+ gtk_widget_show (label);
+
+ *value_widget = label = gtk_label_new (value);
+ g_object_set (G_OBJECT (label),
+ "xalign", 0.0,
+ "selectable", TRUE,
+ "ellipsize", PANGO_ELLIPSIZE_END,
+ NULL);
+ gtk_table_attach (GTK_TABLE (table), label, 1, 2, *row, *row + 1,
+ GTK_FILL | GTK_EXPAND, GTK_FILL, 0, 0);
+ gtk_widget_show (label);
+
+ *row += 1;
+}
+
+void
+pgd_table_add_property (GtkTable *table,
+ const gchar *markup,
+ const gchar *value,
+ gint *row)
+{
+ GtkWidget *label;
+
+ pgd_table_add_property_with_value_widget (table, markup, &label, value, row);
+}
+
+GtkWidget *
+pgd_action_view_new (PopplerDocument *document)
+{
+ GtkWidget *frame, *label;
+
+ frame = gtk_frame_new (NULL);
+ gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
+ label = gtk_label_new (NULL);
+ gtk_label_set_markup (GTK_LABEL (label), "<b>Action Properties</b>");
+ gtk_frame_set_label_widget (GTK_FRAME (frame), label);
+ gtk_widget_show (label);
+
+ g_object_set_data (G_OBJECT (frame), "document", document);
+
+ return frame;
+}
+
+static void
+pgd_action_view_add_destination (GtkWidget *action_view,
+ GtkTable *table,
+ PopplerDest *dest,
+ gboolean remote,
+ gint *row)
+{
+ PopplerDocument *document;
+ GEnumValue *enum_value;
+ gchar *str;
+
+ pgd_table_add_property (table, "<b>Type:</b>", "Destination", row);
+
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_DEST_TYPE), dest->type);
+ pgd_table_add_property (table, "<b>Destination Type:</b>", enum_value->value_name, row);
+
+ document = g_object_get_data (G_OBJECT (action_view), "document");
+
+ if (dest->type != POPPLER_DEST_NAMED) {
+ str = NULL;
+
+ if (document && !remote) {
+ PopplerPage *poppler_page;
+ gchar *page_label;
+
+ poppler_page = poppler_document_get_page (document, MAX (0, dest->page_num - 1));
+
+ g_object_get (G_OBJECT (poppler_page),
+ "label", &page_label,
+ NULL);
+ if (page_label) {
+ str = g_strdup_printf ("%d (%s)", dest->page_num, page_label);
+ g_free (page_label);
+ }
+ }
+
+ if (!str)
+ str = g_strdup_printf ("%d", dest->page_num);
+ pgd_table_add_property (table, "<b>Page:</b>", str, row);
+ g_free (str);
+
+ str = g_strdup_printf ("%.2f", dest->left);
+ pgd_table_add_property (table, "<b>Left:</b>", str, row);
+ g_free (str);
+
+ str = g_strdup_printf ("%.2f", dest->right);
+ pgd_table_add_property (table, "<b>Right:</b>", str, row);
+ g_free (str);
+
+ str = g_strdup_printf ("%.2f", dest->top);
+ pgd_table_add_property (table, "<b>Top:</b>", str, row);
+ g_free (str);
+
+ str = g_strdup_printf ("%.2f", dest->bottom);
+ pgd_table_add_property (table, "<b>Bottom:</b>", str, row);
+ g_free (str);
+
+ str = g_strdup_printf ("%.2f", dest->zoom);
+ pgd_table_add_property (table, "<b>Zoom:</b>", str, row);
+ g_free (str);
+ } else {
+ pgd_table_add_property (table, "<b>Named Dest:</b>", dest->named_dest, row);
+
+ if (document && !remote) {
+ PopplerDest *new_dest;
+
+ new_dest = poppler_document_find_dest (document, dest->named_dest);
+ if (new_dest) {
+ GtkWidget *new_table, *alignment;
+ gint new_row = 0;
+
+ alignment = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5);
+
+ new_table = gtk_table_new (8, 2, FALSE);
+ gtk_table_set_col_spacings (GTK_TABLE (new_table), 6);
+ gtk_table_set_row_spacings (GTK_TABLE (new_table), 6);
+ gtk_table_attach_defaults (table, alignment, 0, 2, *row, *row + 1);
+ gtk_widget_show (alignment);
+
+ pgd_action_view_add_destination (action_view, GTK_TABLE (new_table),
+ new_dest, FALSE, &new_row);
+ poppler_dest_free (new_dest);
+
+ gtk_container_add (GTK_CONTAINER (alignment), new_table);
+ gtk_widget_show (new_table);
+
+ *row += 1;
+ }
+ }
+ }
+}
+
+void
+pgd_action_view_set_action (GtkWidget *action_view,
+ PopplerAction *action)
+{
+ GtkWidget *alignment;
+ GtkWidget *table;
+ gint row = 0;
+
+ alignment = gtk_bin_get_child (GTK_BIN (action_view));
+ if (alignment) {
+ gtk_container_remove (GTK_CONTAINER (action_view), alignment);
+ }
+
+ alignment = gtk_alignment_new (0.5, 0.5, 1, 1);
+ gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 5, 5, 12, 5);
+ gtk_container_add (GTK_CONTAINER (action_view), alignment);
+ gtk_widget_show (alignment);
+
+ if (!action)
+ return;
+
+ table = gtk_table_new (10, 2, FALSE);
+ gtk_table_set_col_spacings (GTK_TABLE (table), 6);
+ gtk_table_set_row_spacings (GTK_TABLE (table), 6);
+
+ pgd_table_add_property (GTK_TABLE (table), "<b>Title:</b>", action->any.title, &row);
+
+ switch (action->type) {
+ case POPPLER_ACTION_UNKNOWN:
+ pgd_table_add_property (GTK_TABLE (table), "<b>Type:</b>", "Unknown", &row);
+ break;
+ case POPPLER_ACTION_NONE:
+ pgd_table_add_property (GTK_TABLE (table), "<b>Type:</b>", "None", &row);
+ break;
+ case POPPLER_ACTION_GOTO_DEST:
+ pgd_action_view_add_destination (action_view, GTK_TABLE (table), action->goto_dest.dest, FALSE, &row);
+ break;
+ case POPPLER_ACTION_GOTO_REMOTE:
+ pgd_table_add_property (GTK_TABLE (table), "<b>Type:</b>", "Remote Destination", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Filename:</b>", action->goto_remote.file_name, &row);
+ pgd_action_view_add_destination (action_view, GTK_TABLE (table), action->goto_remote.dest, TRUE, &row);
+ break;
+ case POPPLER_ACTION_LAUNCH:
+ pgd_table_add_property (GTK_TABLE (table), "<b>Type:</b>", "Launch", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Filename:</b>", action->launch.file_name, &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Params:</b>", action->launch.params, &row);
+ break;
+ case POPPLER_ACTION_URI:
+ pgd_table_add_property (GTK_TABLE (table), "<b>Type:</b>", "External URI", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>URI</b>", action->uri.uri, &row);
+ break;
+ case POPPLER_ACTION_NAMED:
+ pgd_table_add_property (GTK_TABLE (table), "<b>Type:</b>", "Named Action", &row);
+ pgd_table_add_property (GTK_TABLE (table), "<b>Name:</b>", action->named.named_dest, &row);
+ break;
+ case POPPLER_ACTION_MOVIE:
+ pgd_table_add_property (GTK_TABLE (table), "<b>Type:</b>", "Movie", &row);
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ gtk_container_add (GTK_CONTAINER (alignment), table);
+ gtk_widget_show (table);
+}
+
+gchar *
+pgd_format_date (time_t utime)
+{
+ time_t time = (time_t) utime;
+ char s[256];
+ const char *fmt_hack = "%c";
+ size_t len;
+#ifdef HAVE_LOCALTIME_R
+ struct tm t;
+ if (time == 0 || !localtime_r (&time, &t)) return NULL;
+ len = strftime (s, sizeof (s), fmt_hack, &t);
+#else
+ struct tm *t;
+ if (time == 0 || !(t = localtime (&time)) ) return NULL;
+ len = strftime (s, sizeof (s), fmt_hack, t);
+#endif
+
+ if (len == 0 || s[0] == '\0') return NULL;
+
+ return g_locale_to_utf8 (s, -1, NULL, NULL, NULL);
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.h b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.h
new file mode 100644
index 00000000000..72c3ef308d3
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/demo/utils.h
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <gtk/gtk.h>
+#include <poppler.h>
+
+#ifndef _UTILS_H_
+#define _UTILS_H_
+
+G_BEGIN_DECLS
+
+void pgd_table_add_property (GtkTable *table,
+ const gchar *markup,
+ const gchar *value,
+ gint *row);
+void pgd_table_add_property_with_value_widget (GtkTable *table,
+ const gchar *markup,
+ GtkWidget **value_widget,
+ const gchar *value,
+ gint *row);
+GtkWidget *pgd_action_view_new (PopplerDocument *document);
+void pgd_action_view_set_action (GtkWidget *action_view,
+ PopplerAction *action);
+gchar *pgd_format_date (time_t utime);
+
+G_END_DECLS
+
+#endif /* _UTILS_H_ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.cc
new file mode 100644
index 00000000000..f171245857b
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.cc
@@ -0,0 +1,418 @@
+/* poppler-action.cc: glib wrapper for poppler -*- c-basic-offset: 8 -*-
+ * Copyright (C) 2005, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "poppler.h"
+#include "poppler-private.h"
+
+POPPLER_DEFINE_BOXED_TYPE (PopplerDest, poppler_dest, poppler_dest_copy, poppler_dest_free)
+
+/**
+ * poppler_dest_copy:
+ * @dest: a #PopplerDest
+ *
+ * Copies @dest, creating an identical #PopplerDest.
+ *
+ * Return value: a new destination identical to @dest
+ **/
+PopplerDest *
+poppler_dest_copy (PopplerDest *dest)
+{
+ PopplerDest *new_dest;
+
+ new_dest = g_new0 (PopplerDest, 1);
+ memcpy (new_dest, dest, sizeof (PopplerDest));
+
+ if (dest->named_dest)
+ new_dest->named_dest = g_strdup (dest->named_dest);
+
+ return new_dest;
+}
+
+
+/**
+ * poppler_dest_free:
+ * @dest: a #PopplerDest
+ *
+ * Frees @dest
+ **/
+void
+poppler_dest_free (PopplerDest *dest)
+{
+ if (!dest)
+ return;
+
+ if (dest->named_dest)
+ g_free (dest->named_dest);
+
+ g_free (dest);
+}
+
+POPPLER_DEFINE_BOXED_TYPE (PopplerAction, poppler_action, poppler_action_copy, poppler_action_free)
+
+/**
+ * poppler_action_free:
+ * @action: a #PopplerAction
+ *
+ * Frees @action
+ **/
+void
+poppler_action_free (PopplerAction *action)
+{
+ if (action == NULL)
+ return;
+
+ /* Action specific stuff */
+ switch (action->type) {
+ case POPPLER_ACTION_GOTO_DEST:
+ poppler_dest_free (action->goto_dest.dest);
+ break;
+ case POPPLER_ACTION_GOTO_REMOTE:
+ poppler_dest_free (action->goto_remote.dest);
+ g_free (action->goto_remote.file_name);
+ break;
+ case POPPLER_ACTION_URI:
+ g_free (action->uri.uri);
+ break;
+ case POPPLER_ACTION_LAUNCH:
+ g_free (action->launch.file_name);
+ g_free (action->launch.params);
+ break;
+ case POPPLER_ACTION_NAMED:
+ g_free (action->named.named_dest);
+ break;
+ case POPPLER_ACTION_MOVIE:
+ /* TODO */
+ break;
+ default:
+ break;
+ }
+
+ g_free (action->any.title);
+ g_free (action);
+}
+
+/**
+ * poppler_action_copy:
+ * @action: a #PopplerAction
+ *
+ * Copies @action, creating an identical #PopplerAction.
+ *
+ * Return value: a new action identical to @action
+ **/
+PopplerAction *
+poppler_action_copy (PopplerAction *action)
+{
+ PopplerAction *new_action;
+
+ g_return_val_if_fail (action != NULL, NULL);
+
+ /* Do a straight copy of the memory */
+ new_action = g_new0 (PopplerAction, 1);
+ memcpy (new_action, action, sizeof (PopplerAction));
+
+ if (action->any.title != NULL)
+ new_action->any.title = g_strdup (action->any.title);
+
+ switch (action->type) {
+ case POPPLER_ACTION_GOTO_DEST:
+ new_action->goto_dest.dest = poppler_dest_copy (action->goto_dest.dest);
+ break;
+ case POPPLER_ACTION_GOTO_REMOTE:
+ new_action->goto_remote.dest = poppler_dest_copy (action->goto_remote.dest);
+ if (action->goto_remote.file_name)
+ new_action->goto_remote.file_name = g_strdup (action->goto_remote.file_name);
+ break;
+ case POPPLER_ACTION_URI:
+ if (action->uri.uri)
+ new_action->uri.uri = g_strdup (action->uri.uri);
+ break;
+ case POPPLER_ACTION_LAUNCH:
+ if (action->launch.file_name)
+ new_action->launch.file_name = g_strdup (action->launch.file_name);
+ if (action->launch.params)
+ new_action->launch.params = g_strdup (action->launch.params);
+ break;
+ case POPPLER_ACTION_NAMED:
+ if (action->named.named_dest)
+ new_action->named.named_dest = g_strdup (action->named.named_dest);
+ break;
+ case POPPLER_ACTION_MOVIE:
+ /* TODO */
+ break;
+ default:
+ break;
+ }
+
+ return new_action;
+}
+
+PopplerDest *
+dest_new_goto (PopplerDocument *document,
+ LinkDest *link_dest)
+{
+ PopplerDest *dest;
+
+ dest = g_new0 (PopplerDest, 1);
+
+ if (link_dest == NULL) {
+ dest->type = POPPLER_DEST_UNKNOWN;
+ return dest;
+ }
+
+ switch (link_dest->getKind ()) {
+ case destXYZ:
+ dest->type = POPPLER_DEST_XYZ;
+ break;
+ case destFit:
+ dest->type = POPPLER_DEST_FIT;
+ break;
+ case destFitH:
+ dest->type = POPPLER_DEST_FITH;
+ break;
+ case destFitV:
+ dest->type = POPPLER_DEST_FITV;
+ break;
+ case destFitR:
+ dest->type = POPPLER_DEST_FITR;
+ break;
+ case destFitB:
+ dest->type = POPPLER_DEST_FITB;
+ break;
+ case destFitBH:
+ dest->type = POPPLER_DEST_FITBH;
+ break;
+ case destFitBV:
+ dest->type = POPPLER_DEST_FITBV;
+ break;
+ default:
+ dest->type = POPPLER_DEST_UNKNOWN;
+ }
+
+ if (link_dest->isPageRef ()) {
+ if (document) {
+ Ref page_ref = link_dest->getPageRef ();
+ dest->page_num = document->doc->findPage (page_ref.num, page_ref.gen);
+ } else {
+ /* FIXME: We don't keep areound the page_ref for the
+ * remote doc, so we can't look this up. Guess that
+ * it's 0*/
+ dest->page_num = 0;
+ }
+ } else {
+ dest->page_num = link_dest->getPageNum ();
+ }
+
+ dest->left = link_dest->getLeft ();
+ dest->bottom = link_dest->getBottom ();
+ dest->right = link_dest->getRight ();
+ dest->top = link_dest->getTop ();
+ dest->zoom = link_dest->getZoom ();
+ dest->change_left = link_dest->getChangeLeft ();
+ dest->change_top = link_dest->getChangeTop ();
+ dest->change_zoom = link_dest->getChangeZoom ();
+
+ if (document && dest->page_num > 0) {
+ PopplerPage *page;
+
+ page = poppler_document_get_page (document, dest->page_num - 1);
+
+ if (page) {
+ dest->left -= page->page->getCropBox ()->x1;
+ dest->bottom -= page->page->getCropBox ()->x1;
+ dest->right -= page->page->getCropBox ()->y1;
+ dest->top -= page->page->getCropBox ()->y1;
+
+ g_object_unref (page);
+ } else {
+ g_warning ("Invalid page %d in Link Destination\n", dest->page_num);
+ dest->page_num = 0;
+ }
+ }
+
+ return dest;
+}
+
+static PopplerDest *
+dest_new_named (GooString *named_dest)
+{
+ PopplerDest *dest;
+
+ dest = g_new0 (PopplerDest, 1);
+
+ if (named_dest == NULL) {
+ dest->type = POPPLER_DEST_UNKNOWN;
+ return dest;
+ }
+
+ dest->type = POPPLER_DEST_NAMED;
+ dest->named_dest = g_strdup (named_dest->getCString ());
+
+ return dest;
+}
+
+static void
+build_goto_dest (PopplerDocument *document,
+ PopplerAction *action,
+ LinkGoTo *link)
+{
+ LinkDest *link_dest;
+ GooString *named_dest;
+
+ /* Return if it isn't OK */
+ if (! link->isOk ()) {
+ action->goto_dest.dest = dest_new_goto (NULL, NULL);
+ return;
+ }
+
+ link_dest = link->getDest ();
+ named_dest = link->getNamedDest ();
+
+ if (link_dest != NULL) {
+ action->goto_dest.dest = dest_new_goto (document, link_dest);
+ } else if (named_dest != NULL) {
+ action->goto_dest.dest = dest_new_named (named_dest);
+ } else {
+ action->goto_dest.dest = dest_new_goto (document, NULL);
+ }
+}
+
+static void
+build_goto_remote (PopplerAction *action,
+ LinkGoToR *link)
+{
+ LinkDest *link_dest;
+ GooString *named_dest;
+
+ /* Return if it isn't OK */
+ if (! link->isOk ()) {
+ action->goto_remote.dest = dest_new_goto (NULL, NULL);
+ return;
+ }
+
+ action->goto_remote.file_name = _poppler_goo_string_to_utf8 (link->getFileName());
+
+ link_dest = link->getDest ();
+ named_dest = link->getNamedDest ();
+
+ if (link_dest != NULL) {
+ action->goto_remote.dest = dest_new_goto (NULL, link_dest);
+ } else if (named_dest != NULL) {
+ action->goto_remote.dest = dest_new_named (named_dest);
+ } else {
+ action->goto_remote.dest = dest_new_goto (NULL, NULL);
+ }
+}
+
+static void
+build_launch (PopplerAction *action,
+ LinkLaunch *link)
+{
+ if (link->getFileName()) {
+ action->launch.file_name = g_strdup (link->getFileName()->getCString ());
+ }
+ if (link->getParams()) {
+ action->launch.params = g_strdup (link->getParams()->getCString ());
+ }
+}
+
+static void
+build_uri (PopplerAction *action,
+ LinkURI *link)
+{
+ gchar *uri;
+
+ uri = link->getURI()->getCString ();
+ if (uri != NULL)
+ action->uri.uri = g_strdup (uri);
+}
+
+static void
+build_named (PopplerAction *action,
+ LinkNamed *link)
+{
+ gchar *name;
+
+ name = link->getName ()->getCString ();
+ if (name != NULL)
+ action->named.named_dest = g_strdup (name);
+}
+
+static void
+build_movie (PopplerAction *action,
+ LinkAction *link)
+{
+ /* FIXME: Write */
+}
+
+PopplerAction *
+_poppler_action_new (PopplerDocument *document,
+ LinkAction *link,
+ const gchar *title)
+{
+ PopplerAction *action;
+
+ action = g_new0 (PopplerAction, 1);
+
+ if (title)
+ action->any.title = g_strdup (title);
+
+ if (link == NULL) {
+ action->type = POPPLER_ACTION_NONE;
+ return action;
+ }
+
+ switch (link->getKind ()) {
+ case actionGoTo:
+ action->type = POPPLER_ACTION_GOTO_DEST;
+ build_goto_dest (document, action, dynamic_cast <LinkGoTo *> (link));
+ break;
+ case actionGoToR:
+ action->type = POPPLER_ACTION_GOTO_REMOTE;
+ build_goto_remote (action, dynamic_cast <LinkGoToR *> (link));
+ break;
+ case actionLaunch:
+ action->type = POPPLER_ACTION_LAUNCH;
+ build_launch (action, dynamic_cast <LinkLaunch *> (link));
+ break;
+ case actionURI:
+ action->type = POPPLER_ACTION_URI;
+ build_uri (action, dynamic_cast <LinkURI *> (link));
+ break;
+ case actionNamed:
+ action->type = POPPLER_ACTION_NAMED;
+ build_named (action, dynamic_cast <LinkNamed *> (link));
+ break;
+ case actionMovie:
+ action->type = POPPLER_ACTION_MOVIE;
+ build_movie (action, link);
+ break;
+ case actionUnknown:
+ default:
+ action->type = POPPLER_ACTION_UNKNOWN;
+ break;
+ }
+
+ return action;
+}
+
+PopplerDest *
+_poppler_dest_new_goto (PopplerDocument *document,
+ LinkDest *link_dest)
+{
+ return dest_new_goto (document, link_dest);
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.h
new file mode 100644
index 00000000000..a89351af36b
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-action.h
@@ -0,0 +1,162 @@
+/* poppler-action.h: glib interface to poppler
+ * Copyright (C) 2004, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_ACTION_H__
+#define __POPPLER_ACTION_H__
+
+#include <glib-object.h>
+#include "poppler.h"
+
+G_BEGIN_DECLS
+
+typedef enum
+{
+ POPPLER_ACTION_UNKNOWN, /* unknown action */
+ POPPLER_ACTION_NONE, /* no action specified */
+ POPPLER_ACTION_GOTO_DEST, /* go to destination */
+ POPPLER_ACTION_GOTO_REMOTE, /* go to destination in new file */
+ POPPLER_ACTION_LAUNCH, /* launch app (or open document) */
+ POPPLER_ACTION_URI, /* URI */
+ POPPLER_ACTION_NAMED, /* named action*/
+ POPPLER_ACTION_MOVIE /* movie action */
+} PopplerActionType;
+
+typedef enum
+{
+ POPPLER_DEST_UNKNOWN,
+ POPPLER_DEST_XYZ,
+ POPPLER_DEST_FIT,
+ POPPLER_DEST_FITH,
+ POPPLER_DEST_FITV,
+ POPPLER_DEST_FITR,
+ POPPLER_DEST_FITB,
+ POPPLER_DEST_FITBH,
+ POPPLER_DEST_FITBV,
+ POPPLER_DEST_NAMED
+} PopplerDestType;
+
+/* Define the PopplerAction types */
+typedef struct _PopplerActionAny PopplerActionAny;
+typedef struct _PopplerActionGotoDest PopplerActionGotoDest;
+typedef struct _PopplerActionGotoRemote PopplerActionGotoRemote;
+typedef struct _PopplerActionLaunch PopplerActionLaunch;
+typedef struct _PopplerActionUri PopplerActionUri;
+typedef struct _PopplerActionNamed PopplerActionNamed;
+typedef struct _PopplerActionMovie PopplerActionMovie;
+
+struct _PopplerDest
+{
+ PopplerDestType type;
+
+ int page_num;
+ double left;
+ double bottom;
+ double right;
+ double top;
+ double zoom;
+ gchar *named_dest;
+ guint change_left : 1;
+ guint change_top : 1;
+ guint change_zoom : 1;
+};
+
+
+struct _PopplerActionAny
+{
+ PopplerActionType type;
+ gchar *title;
+};
+
+struct _PopplerActionGotoDest
+{
+ PopplerActionType type;
+ gchar *title;
+
+ PopplerDest *dest;
+};
+
+struct _PopplerActionGotoRemote
+{
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *file_name;
+ PopplerDest *dest;
+};
+
+struct _PopplerActionLaunch
+{
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *file_name;
+ gchar *params;
+};
+
+struct _PopplerActionUri
+{
+ PopplerActionType type;
+ gchar *title;
+
+ char *uri;
+};
+
+struct _PopplerActionNamed
+{
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *named_dest;
+};
+
+struct _PopplerActionMovie
+{
+ PopplerActionType type;
+ gchar *title;
+};
+
+union _PopplerAction
+{
+ PopplerActionType type;
+ PopplerActionAny any;
+ PopplerActionGotoDest goto_dest;
+ PopplerActionGotoRemote goto_remote;
+ PopplerActionLaunch launch;
+ PopplerActionUri uri;
+ PopplerActionNamed named;
+ PopplerActionMovie movie;
+};
+
+#define POPPLER_TYPE_ACTION (poppler_action_get_type ())
+#define POPPLER_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ACTION, PopplerAction))
+
+GType poppler_action_get_type (void) G_GNUC_CONST;
+
+void poppler_action_free (PopplerAction *action);
+PopplerAction *poppler_action_copy (PopplerAction *action);
+
+
+#define POPPLER_TYPE_DEST (poppler_dest_get_type ())
+GType poppler_dest_get_type (void) G_GNUC_CONST;
+
+void poppler_dest_free (PopplerDest *dest);
+PopplerDest *poppler_dest_copy (PopplerDest *dest);
+
+G_END_DECLS
+
+#endif /* __POPPLER_GLIB_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.cc
new file mode 100644
index 00000000000..29051f95f7a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.cc
@@ -0,0 +1,839 @@
+/* poppler-annot.cc: glib interface to poppler
+ *
+ * Copyright (C) 2007 Inigo Martinez <inigomartinez@gmail.com>
+ * Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "poppler.h"
+#include "poppler-private.h"
+
+typedef struct _PopplerAnnotClass PopplerAnnotClass;
+typedef struct _PopplerAnnotMarkupClass PopplerAnnotMarkupClass;
+typedef struct _PopplerAnnotFreeTextClass PopplerAnnotFreeTextClass;
+typedef struct _PopplerAnnotTextClass PopplerAnnotTextClass;
+
+struct _PopplerAnnot
+{
+ GObject parent_instance;
+ Annot *annot;
+};
+
+struct _PopplerAnnotClass
+{
+ GObjectClass parent_class;
+};
+
+struct _PopplerAnnotMarkup
+{
+ PopplerAnnot parent_instance;
+};
+
+struct _PopplerAnnotMarkupClass
+{
+ PopplerAnnotClass parent_class;
+};
+
+struct _PopplerAnnotText
+{
+ PopplerAnnotMarkup parent_instance;
+};
+
+struct _PopplerAnnotTextClass
+{
+ PopplerAnnotMarkupClass parent_class;
+};
+
+struct _PopplerAnnotFreeText
+{
+ PopplerAnnotMarkup parent_instance;
+};
+
+struct _PopplerAnnotFreeTextClass
+{
+ PopplerAnnotMarkupClass parent_class;
+};
+
+G_DEFINE_TYPE (PopplerAnnot, poppler_annot, G_TYPE_OBJECT)
+G_DEFINE_TYPE (PopplerAnnotMarkup, poppler_annot_markup, POPPLER_TYPE_ANNOT)
+G_DEFINE_TYPE (PopplerAnnotText, poppler_annot_text, POPPLER_TYPE_ANNOT_MARKUP)
+G_DEFINE_TYPE (PopplerAnnotFreeText, poppler_annot_free_text, POPPLER_TYPE_ANNOT_MARKUP)
+
+static void
+poppler_annot_finalize (GObject *object)
+{
+ PopplerAnnot *poppler_annot = POPPLER_ANNOT (object);
+
+ poppler_annot->annot = NULL;
+
+ G_OBJECT_CLASS (poppler_annot_parent_class)->finalize (object);
+}
+
+static void
+poppler_annot_init (PopplerAnnot *poppler_annot)
+{
+}
+
+static void
+poppler_annot_class_init (PopplerAnnotClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->finalize = poppler_annot_finalize;
+}
+
+PopplerAnnot *
+_poppler_annot_new (Annot *annot)
+{
+ PopplerAnnot *poppler_annot;
+
+ poppler_annot = POPPLER_ANNOT (g_object_new (POPPLER_TYPE_ANNOT, NULL));
+ poppler_annot->annot = annot;
+
+ return poppler_annot;
+}
+
+static void
+poppler_annot_markup_init (PopplerAnnotMarkup *poppler_annot)
+{
+}
+
+static void
+poppler_annot_markup_class_init (PopplerAnnotMarkupClass *klass)
+{
+}
+
+static void
+poppler_annot_text_init (PopplerAnnotText *poppler_annot)
+{
+}
+
+static void
+poppler_annot_text_class_init (PopplerAnnotTextClass *klass)
+{
+}
+
+PopplerAnnot *
+_poppler_annot_text_new (Annot *annot)
+{
+ PopplerAnnot *poppler_annot;
+
+ poppler_annot = POPPLER_ANNOT (g_object_new (POPPLER_TYPE_ANNOT_TEXT, NULL));
+ poppler_annot->annot = annot;
+
+ return poppler_annot;
+}
+
+static void
+poppler_annot_free_text_init (PopplerAnnotFreeText *poppler_annot)
+{
+}
+
+static void
+poppler_annot_free_text_class_init (PopplerAnnotFreeTextClass *klass)
+{
+}
+
+PopplerAnnot *
+_poppler_annot_free_text_new (Annot *annot)
+{
+ PopplerAnnot *poppler_annot;
+
+ poppler_annot = POPPLER_ANNOT (g_object_new (POPPLER_TYPE_ANNOT_FREE_TEXT, NULL));
+ poppler_annot->annot = annot;
+
+ return poppler_annot;
+}
+
+/* Public methods */
+/**
+ * poppler_annot_get_annot_type:
+ * @poppler_annot: a #PopplerAnnot
+ *
+ * Gets the type of @poppler_annot
+ *
+ * Return value: #PopplerAnnotType of @poppler_annot.
+ **/
+PopplerAnnotType
+poppler_annot_get_annot_type (PopplerAnnot *poppler_annot)
+{
+ g_return_val_if_fail (POPPLER_IS_ANNOT (poppler_annot), POPPLER_ANNOT_UNKNOWN);
+
+ switch (poppler_annot->annot->getType ())
+ {
+ case Annot::typeText:
+ return POPPLER_ANNOT_TEXT;
+ case Annot::typeLink:
+ return POPPLER_ANNOT_LINK;
+ case Annot::typeFreeText:
+ return POPPLER_ANNOT_FREE_TEXT;
+ case Annot::typeLine:
+ return POPPLER_ANNOT_LINE;
+ case Annot::typeSquare:
+ return POPPLER_ANNOT_SQUARE;
+ case Annot::typeCircle:
+ return POPPLER_ANNOT_CIRCLE;
+ case Annot::typePolygon:
+ return POPPLER_ANNOT_POLYGON;
+ case Annot::typePolyLine:
+ return POPPLER_ANNOT_POLY_LINE;
+ case Annot::typeHighlight:
+ return POPPLER_ANNOT_HIGHLIGHT;
+ case Annot::typeUnderline:
+ return POPPLER_ANNOT_UNDERLINE;
+ case Annot::typeSquiggly:
+ return POPPLER_ANNOT_SQUIGGLY;
+ case Annot::typeStrikeOut:
+ return POPPLER_ANNOT_STRIKE_OUT;
+ case Annot::typeStamp:
+ return POPPLER_ANNOT_STAMP;
+ case Annot::typeCaret:
+ return POPPLER_ANNOT_CARET;
+ case Annot::typeInk:
+ return POPPLER_ANNOT_INK;
+ case Annot::typePopup:
+ return POPPLER_ANNOT_POPUP;
+ case Annot::typeFileAttachment:
+ return POPPLER_ANNOT_FILE_ATTACHMENT;
+ case Annot::typeSound:
+ return POPPLER_ANNOT_SOUND;
+ case Annot::typeMovie:
+ return POPPLER_ANNOT_MOVIE;
+ case Annot::typeWidget:
+ return POPPLER_ANNOT_WIDGET;
+ case Annot::typeScreen:
+ return POPPLER_ANNOT_SCREEN;
+ case Annot::typePrinterMark:
+ return POPPLER_ANNOT_PRINTER_MARK;
+ case Annot::typeTrapNet:
+ return POPPLER_ANNOT_TRAP_NET;
+ case Annot::typeWatermark:
+ return POPPLER_ANNOT_WATERMARK;
+ case Annot::type3D:
+ return POPPLER_ANNOT_3D;
+ default:
+ g_warning ("Unsupported Annot Type");
+ }
+
+ return POPPLER_ANNOT_UNKNOWN;
+}
+
+/**
+ * poppler_annot_get_contents:
+ * @poppler_annot: a #PopplerAnnot
+ *
+ * Retrieves the contents of @poppler_annot.
+ *
+ * Return value: a new allocated string with the contents of @poppler_annot. It
+ * must be freed with g_free() when done.
+ **/
+gchar *
+poppler_annot_get_contents (PopplerAnnot *poppler_annot)
+{
+ GooString *contents;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT (poppler_annot), NULL);
+
+ contents = poppler_annot->annot->getContents ();
+
+ return contents ? _poppler_goo_string_to_utf8 (contents) : NULL;
+}
+
+/**
+ * poppler_annot_set_contents:
+ * @poppler_annot: a #PopplerAnnot
+ * @contents: a text string containing the new contents
+ *
+ * Sets the contents of @poppler_annot to the given value,
+ * replacing the current contents.
+ **/
+void
+poppler_annot_set_contents (PopplerAnnot *poppler_annot,
+ const gchar *contents)
+{
+ GooString *goo_tmp;
+ gchar *tmp;
+ gsize length = 0;
+
+ g_return_if_fail (POPPLER_IS_ANNOT (poppler_annot));
+
+ tmp = contents ? g_convert (contents, -1, "UTF-16BE", "UTF-8", NULL, &length, NULL) : NULL;
+ goo_tmp = new GooString (tmp, length);
+ g_free (tmp);
+ poppler_annot->annot->setContents (goo_tmp);
+ delete (goo_tmp);
+}
+
+/**
+ * poppler_annot_get_name:
+ * @poppler_annot: a #PopplerAnnot
+ *
+ * Retrieves the name of @poppler_annot.
+ *
+ * Return value: a new allocated string with the name of @poppler_annot. It must
+ * be freed with g_free() when done.
+ **/
+gchar *
+poppler_annot_get_name (PopplerAnnot *poppler_annot)
+{
+ GooString *name;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT (poppler_annot), NULL);
+
+ name = poppler_annot->annot->getName ();
+
+ return name ? _poppler_goo_string_to_utf8 (name) : NULL;
+}
+
+/**
+ * poppler_annot_get_modified:
+ * @poppler_annot: a #PopplerAnnot
+ *
+ * Retrieves the last modification data of @poppler_annot. The returned
+ * string will be either a PDF format date or a text string.
+ * See also #poppler_date_parse()
+ *
+ * Return value: a new allocated string with the last modification data of
+ * @poppler_annot. It must be freed with g_free() when done.
+ **/
+gchar *
+poppler_annot_get_modified (PopplerAnnot *poppler_annot)
+{
+ GooString *text;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT (poppler_annot), NULL);
+
+ text = poppler_annot->annot->getModified ();
+
+ return text ? _poppler_goo_string_to_utf8 (text) : NULL;
+}
+
+/**
+ * poppler_annot_get_flags
+ * @poppler_annot: a #PopplerAnnot
+ *
+ * Retrieves the flag field specifying various characteristics of the
+ * @poppler_annot.
+ *
+ * Return value: the flag field of @poppler_annot.
+ **/
+PopplerAnnotFlag
+poppler_annot_get_flags (PopplerAnnot *poppler_annot)
+{
+ g_return_val_if_fail (POPPLER_IS_ANNOT (poppler_annot), (PopplerAnnotFlag) 0);
+
+ return (PopplerAnnotFlag) poppler_annot->annot->getFlags ();
+}
+
+/**
+ * poppler_annot_get_color:
+ * @poppler_annot: a #PopplerAnnot
+ *
+ * Retrieves the color of @poppler_annot.
+ *
+ * Return value: a new allocated #PopplerColor with the color values of
+ * @poppler_annot, or %NULL. It must be freed with g_free() when done.
+ **/
+PopplerColor *
+poppler_annot_get_color (PopplerAnnot *poppler_annot)
+{
+ AnnotColor *color;
+ PopplerColor *poppler_color = NULL;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT (poppler_annot), NULL);
+
+ color = poppler_annot->annot->getColor ();
+
+ if (color) {
+ double *values = color->getValues ();
+
+ switch (color->getSpace ())
+ {
+ case AnnotColor::colorGray:
+ poppler_color = g_new (PopplerColor, 1);
+
+ poppler_color->red = (guint16) (values[0] * 65535);
+ poppler_color->green = poppler_color->red;
+ poppler_color->blue = poppler_color->red;
+
+ break;
+ case AnnotColor::colorRGB:
+ poppler_color = g_new (PopplerColor, 1);
+
+ poppler_color->red = (guint16) (values[0] * 65535);
+ poppler_color->green = (guint16) (values[1] * 65535);
+ poppler_color->blue = (guint16) (values[2] * 65535);
+
+ break;
+ case AnnotColor::colorCMYK:
+ g_warning ("Unsupported Annot Color: colorCMYK");
+ case AnnotColor::colorTransparent:
+ break;
+ }
+ }
+
+ return poppler_color;
+}
+
+/* PopplerAnnotMarkup */
+/**
+* poppler_annot_markup_get_label:
+* @poppler_annot: a #PopplerAnnotMarkup
+*
+* Retrieves the label text of @poppler_annot.
+*
+* Return value: the label text of @poppler_annot.
+*/
+gchar *
+poppler_annot_markup_get_label (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+ GooString *text;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), NULL);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ text = annot->getLabel ();
+
+ return text ? _poppler_goo_string_to_utf8 (text) : NULL;
+}
+
+/**
+ * poppler_annot_markup_has_popup:
+ * @poppler_annot: a #PopplerAnnotMarkup
+ *
+ * Return %TRUE if the markup annotation has a popup window associated
+ *
+ * Return value: %TRUE, if @poppler_annot has popup, %FALSE otherwise
+ **/
+gboolean
+poppler_annot_markup_has_popup (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), FALSE);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ return annot->getPopup () != NULL;
+}
+
+/**
+ * poppler_annot_markup_get_popup_is_open:
+ * @poppler_annot: a #PopplerAnnotMarkup
+ *
+ * Retrieves the state of the popup annot related to @poppler_annot.
+ *
+ * Return value: the state of @poppler_annot. %TRUE if it's open, %FALSE in
+ * other case.
+ **/
+gboolean
+poppler_annot_markup_get_popup_is_open (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+ AnnotPopup *annot_popup;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), FALSE);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ if ((annot_popup = annot->getPopup ()))
+ return annot_popup->getOpen ();
+
+ return FALSE;
+}
+
+/**
+ * poppler_annot_markup_get_popup_rectangle:
+ * @poppler_annot: a #PopplerAnnotMarkup
+ * @poppler_rect: a #PopplerRectangle to store the popup rectangle
+ *
+ * Retrieves the rectangle of the popup annot related to @poppler_annot.
+ *
+ * Return value: %TRUE if #PopplerRectangle was correctly filled,
+ * %FALSE otherwise
+ **/
+gboolean
+poppler_annot_markup_get_popup_rectangle (PopplerAnnotMarkup *poppler_annot,
+ PopplerRectangle *poppler_rect)
+{
+ AnnotMarkup *annot;
+ Annot *annot_popup;
+ PDFRectangle *annot_rect;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), FALSE);
+ g_return_val_if_fail (poppler_rect != NULL, FALSE);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+ annot_popup = annot->getPopup ();
+ if (!annot_popup)
+ return FALSE;
+
+ annot_rect = annot_popup->getRect ();
+ poppler_rect->x1 = annot_rect->x1;
+ poppler_rect->x2 = annot_rect->x2;
+ poppler_rect->y1 = annot_rect->y1;
+ poppler_rect->y2 = annot_rect->y2;
+
+ return TRUE;
+}
+
+/**
+* poppler_annot_markup_get_opacity:
+* @poppler_annot: a #PopplerAnnotMarkup
+*
+* Retrieves the opacity value of @poppler_annot.
+*
+* Return value: the opacity value of @poppler_annot.
+*/
+gdouble
+poppler_annot_markup_get_opacity (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), 0);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ return annot->getOpacity ();
+}
+
+GDate *
+poppler_annot_markup_get_date (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+ GooString *annot_date;
+ time_t timet;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), NULL);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+ annot_date = annot->getDate ();
+ if (!annot_date)
+ return NULL;
+
+ if (_poppler_convert_pdf_date_to_gtime (annot_date, &timet)) {
+ GDate *date;
+
+ date = g_date_new ();
+ g_date_set_time_t (date, timet);
+
+ return date;
+ }
+
+ return NULL;
+}
+
+/**
+* poppler_annot_markup_get_subject:
+* @poppler_annot: a #PopplerAnnotMarkup
+*
+* Retrives the subject text of @poppler_annot.
+*
+* Return value: the subject text of @poppler_annot.
+*/
+gchar *
+poppler_annot_markup_get_subject (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+ GooString *text;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), NULL);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ text = annot->getSubject ();
+
+ return text ? _poppler_goo_string_to_utf8 (text) : NULL;
+}
+
+/**
+* poppler_annot_markup_get_reply_to:
+* @poppler_annot: a #PopplerAnnotMarkup
+*
+* Gets the reply type of @poppler_annot.
+*
+* Return value: #PopplerAnnotMarkupReplyType of @poppler_annot.
+*/
+PopplerAnnotMarkupReplyType
+poppler_annot_markup_get_reply_to (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), POPPLER_ANNOT_MARKUP_REPLY_TYPE_R);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ switch (annot->getReplyTo ())
+ {
+ case AnnotMarkup::replyTypeR:
+ return POPPLER_ANNOT_MARKUP_REPLY_TYPE_R;
+ case AnnotMarkup::replyTypeGroup:
+ return POPPLER_ANNOT_MARKUP_REPLY_TYPE_GROUP;
+ default:
+ g_warning ("Unsupported Annot Markup Reply To Type");
+ }
+
+ return POPPLER_ANNOT_MARKUP_REPLY_TYPE_R;
+}
+
+/**
+* poppler_annot_markup_get_external_data:
+* @poppler_annot: a #PopplerAnnotMarkup
+*
+* Gets the external data type of @poppler_annot.
+*
+* Return value: #PopplerAnnotExternalDataType of @poppler_annot.
+*/
+PopplerAnnotExternalDataType
+poppler_annot_markup_get_external_data (PopplerAnnotMarkup *poppler_annot)
+{
+ AnnotMarkup *annot;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN);
+
+ annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ switch (annot->getExData ())
+ {
+ case annotExternalDataMarkup3D:
+ return POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_3D;
+ case annotExternalDataMarkupUnknown:
+ return POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN;
+ default:
+ g_warning ("Unsupported Annot Markup External Data");
+ }
+
+ return POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN;
+}
+
+/* PopplerAnnotText */
+/**
+ * poppler_annot_text_get_is_open:
+ * @poppler_annot: a #PopplerAnnotText
+ *
+ * Retrieves the state of @poppler_annot.
+ *
+ * Return value: the state of @poppler_annot. %TRUE if it's open, %FALSE in
+ * other case.
+ **/
+gboolean
+poppler_annot_text_get_is_open (PopplerAnnotText *poppler_annot)
+{
+ AnnotText *annot;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_TEXT (poppler_annot), FALSE);
+
+ annot = static_cast<AnnotText *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ return annot->getOpen ();
+}
+
+/**
+ * poppler_annot_text_get_icon:
+ * @poppler_annot: a #PopplerAnnotText
+ *
+ * Gets the icon type of @poppler_annot.
+ *
+ * Return value: #PopplerAnnotTextIcon of @poppler_annot.
+ **/
+gchar *
+poppler_annot_text_get_icon (PopplerAnnotText *poppler_annot)
+{
+ AnnotText *annot;
+ GooString *text;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_TEXT (poppler_annot), NULL);
+
+ annot = static_cast<AnnotText *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ text = annot->getIcon ();
+
+ return text ? _poppler_goo_string_to_utf8 (text) : NULL;
+}
+
+/**
+ * poppler_annot_text_get_state:
+ * @poppler_annot: a #PopplerAnnotText
+ *
+ * Retrieves the state of @poppler_annot.
+ *
+ * Return value: #PopplerAnnotTextState of @poppler_annot.
+ **/
+PopplerAnnotTextState
+poppler_annot_text_get_state (PopplerAnnotText *poppler_annot)
+{
+ AnnotText *annot;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_TEXT (poppler_annot), POPPLER_ANNOT_TEXT_STATE_UNKNOWN);
+
+ annot = static_cast<AnnotText *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ switch (annot->getState ())
+ {
+ case AnnotText::stateUnknown:
+ return POPPLER_ANNOT_TEXT_STATE_UNKNOWN;
+ case AnnotText::stateMarked:
+ return POPPLER_ANNOT_TEXT_STATE_MARKED;
+ case AnnotText::stateUnmarked:
+ return POPPLER_ANNOT_TEXT_STATE_UNMARKED;
+ case AnnotText::stateAccepted:
+ return POPPLER_ANNOT_TEXT_STATE_ACCEPTED;
+ case AnnotText::stateRejected:
+ return POPPLER_ANNOT_TEXT_STATE_REJECTED;
+ case AnnotText::stateCancelled:
+ return POPPLER_ANNOT_TEXT_STATE_CANCELLED;
+ case AnnotText::stateCompleted:
+ return POPPLER_ANNOT_TEXT_STATE_COMPLETED;
+ case AnnotText::stateNone:
+ return POPPLER_ANNOT_TEXT_STATE_NONE;
+ default:
+ g_warning ("Unsupported Annot Text State");
+ }
+
+ return POPPLER_ANNOT_TEXT_STATE_UNKNOWN;
+}
+
+/* PopplerAnnotFreeText */
+/**
+ * poppler_annot_free_text_get_quadding:
+ * @poppler_annot: a #PopplerAnnotFreeText
+ *
+ * Retrieves the justification of the text of @poppler_annot.
+ *
+ * Return value: #PopplerAnnotFreeTextQuadding of @poppler_annot.
+ **/
+PopplerAnnotFreeTextQuadding
+poppler_annot_free_text_get_quadding (PopplerAnnotFreeText *poppler_annot)
+{
+ AnnotFreeText *annot;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_FREE_TEXT (poppler_annot), POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED);
+
+ annot = static_cast<AnnotFreeText *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ switch (annot->getQuadding ())
+ {
+ case AnnotFreeText::quaddingLeftJustified:
+ return POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED;
+ case AnnotFreeText::quaddingCentered:
+ return POPPLER_ANNOT_FREE_TEXT_QUADDING_CENTERED;
+ case AnnotFreeText::quaddingRightJustified:
+ return POPPLER_ANNOT_FREE_TEXT_QUADDING_RIGHT_JUSTIFIED;
+ default:
+ g_warning ("Unsupported Annot Free Text Quadding");
+ }
+
+ return POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED;
+}
+
+/**
+ * poppler_annot_free_text_get_callout_line:
+ * @poppler_annot: a #PopplerAnnotFreeText
+ *
+ * Retrieves a #PopplerCalloutLine of four or six numbers specifying a callout
+ * line attached to the @poppler_annot.
+ *
+ * Return value: a new allocated #PopplerCalloutLine if the annot has a callout
+ * line, NULL in other case. It must be freed with g_free() when
+ * done.
+ **/
+PopplerAnnotCalloutLine *
+poppler_annot_free_text_get_callout_line (PopplerAnnotFreeText *poppler_annot)
+{
+ AnnotFreeText *annot;
+ AnnotCalloutLine *line;
+
+ g_return_val_if_fail (POPPLER_IS_ANNOT_FREE_TEXT (poppler_annot), NULL);
+
+ annot = static_cast<AnnotFreeText *>(POPPLER_ANNOT (poppler_annot)->annot);
+
+ if ((line = annot->getCalloutLine ())) {
+ AnnotCalloutMultiLine *multiline;
+ PopplerAnnotCalloutLine *callout = g_new0 (PopplerAnnotCalloutLine, 1);
+
+ callout->x1 = line->getX1();
+ callout->y1 = line->getY1();
+ callout->x2 = line->getX2();
+ callout->y2 = line->getY2();
+
+ if ((multiline = static_cast<AnnotCalloutMultiLine *>(line))) {
+ callout->multiline = TRUE;
+ callout->x3 = multiline->getX3();
+ callout->y3 = multiline->getY3();
+ return callout;
+ }
+
+ callout->multiline = FALSE;
+ return callout;
+ }
+
+ return NULL;
+}
+
+/* PopplerAnnotCalloutLine */
+POPPLER_DEFINE_BOXED_TYPE (PopplerAnnotCalloutLine, poppler_annot_callout_line,
+ poppler_annot_callout_line_copy,
+ poppler_annot_callout_line_free)
+
+/**
+ * poppler_annot_callout_line_new:
+ *
+ * Creates a new empty #PopplerAnnotCalloutLine.
+ *
+ * Return value: a new allocated #PopplerAnnotCalloutLine, NULL in other case.
+ * It must be freed when done.
+ **/
+PopplerAnnotCalloutLine *
+poppler_annot_callout_line_new (void)
+{
+ return g_new0 (PopplerAnnotCalloutLine, 1);
+}
+
+/**
+ * poppler_annot_callout_line_copy:
+ * @callout: the #PopplerAnnotCalloutline to be copied.
+ *
+ * It does copy @callout to a new #PopplerAnnotCalloutLine.
+ *
+ * Return value: a new allocated #PopplerAnnotCalloutLine as exact copy of
+ * @callout, NULL in other case. It must be freed when done.
+ **/
+PopplerAnnotCalloutLine *
+poppler_annot_callout_line_copy (PopplerAnnotCalloutLine *callout)
+{
+ PopplerAnnotCalloutLine *new_callout;
+
+ g_return_val_if_fail (callout != NULL, NULL);
+
+ new_callout = g_new0 (PopplerAnnotCalloutLine, 1);
+ *new_callout = *callout;
+
+ return new_callout;
+}
+
+/**
+ * poppler_annot_callout_line_free:
+ * @callout: a #PopplerAnnotCalloutLine
+ *
+ * Frees the memory used by #PopplerAnnotCalloutLine.
+ **/
+void
+poppler_annot_callout_line_free (PopplerAnnotCalloutLine *callout)
+{
+ g_free (callout);
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.h
new file mode 100644
index 00000000000..46480274e45
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-annot.h
@@ -0,0 +1,176 @@
+/* poppler-annot.h: glib interface to poppler
+ *
+ * Copyright (C) 2007 Inigo Martinez <inigomartinez@gmail.com>
+ * Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_ANNOT_H__
+#define __POPPLER_ANNOT_H__
+
+#include <glib-object.h>
+#include "poppler.h"
+
+G_BEGIN_DECLS
+
+#define POPPLER_TYPE_ANNOT (poppler_annot_get_type ())
+#define POPPLER_ANNOT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ANNOT, PopplerAnnot))
+#define POPPLER_IS_ANNOT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_ANNOT))
+
+#define POPPLER_TYPE_ANNOT_MARKUP (poppler_annot_markup_get_type ())
+#define POPPLER_ANNOT_MARKUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ANNOT_MARKUP, PopplerAnnotMarkup))
+#define POPPLER_IS_ANNOT_MARKUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_ANNOT_MARKUP))
+
+#define POPPLER_TYPE_ANNOT_TEXT (poppler_annot_text_get_type ())
+#define POPPLER_ANNOT_TEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ANNOT_TEXT, PopplerAnnotText))
+#define POPPLER_IS_ANNOT_TEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_ANNOT_TEXT))
+
+#define POPPLER_TYPE_ANNOT_FREE_TEXT (poppler_annot_free_text_get_type ())
+#define POPPLER_ANNOT_FREE_TEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ANNOT_FREE_TEXT, PopplerAnnotFreeText))
+#define POPPLER_IS_ANNOT_FREE_TEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_ANNOT_FREE_TEXT))
+
+#define POPPLER_TYPE_ANNOT_CALLOUT_LINE (poppler_annot_callout_line_get_type ())
+
+typedef enum
+{
+ POPPLER_ANNOT_UNKNOWN,
+ POPPLER_ANNOT_TEXT,
+ POPPLER_ANNOT_LINK,
+ POPPLER_ANNOT_FREE_TEXT,
+ POPPLER_ANNOT_LINE,
+ POPPLER_ANNOT_SQUARE,
+ POPPLER_ANNOT_CIRCLE,
+ POPPLER_ANNOT_POLYGON,
+ POPPLER_ANNOT_POLY_LINE,
+ POPPLER_ANNOT_HIGHLIGHT,
+ POPPLER_ANNOT_UNDERLINE,
+ POPPLER_ANNOT_SQUIGGLY,
+ POPPLER_ANNOT_STRIKE_OUT,
+ POPPLER_ANNOT_STAMP,
+ POPPLER_ANNOT_CARET,
+ POPPLER_ANNOT_INK,
+ POPPLER_ANNOT_POPUP,
+ POPPLER_ANNOT_FILE_ATTACHMENT,
+ POPPLER_ANNOT_SOUND,
+ POPPLER_ANNOT_MOVIE,
+ POPPLER_ANNOT_WIDGET,
+ POPPLER_ANNOT_SCREEN,
+ POPPLER_ANNOT_PRINTER_MARK,
+ POPPLER_ANNOT_TRAP_NET,
+ POPPLER_ANNOT_WATERMARK,
+ POPPLER_ANNOT_3D
+} PopplerAnnotType;
+
+typedef enum /*< flags >*/
+{
+ POPPLER_ANNOT_FLAG_UNKNOWN = 0,
+ POPPLER_ANNOT_FLAG_INVISIBLE = 1 << 0,
+ POPPLER_ANNOT_FLAG_HIDDEN = 1 << 1,
+ POPPLER_ANNOT_FLAG_PRINT = 1 << 2,
+ POPPLER_ANNOT_FLAG_NO_ZOOM = 1 << 3,
+ POPPLER_ANNOT_FLAG_NO_ROTATE = 1 << 4,
+ POPPLER_ANNOT_FLAG_NO_VIEW = 1 << 5,
+ POPPLER_ANNOT_FLAG_READ_ONLY = 1 << 6,
+ POPPLER_ANNOT_FLAG_LOCKED = 1 << 7,
+ POPPLER_ANNOT_FLAG_TOGGLE_NO_VIEW = 1 << 8,
+ POPPLER_ANNOT_FLAG_LOCKED_CONTENTS = 1 << 9
+} PopplerAnnotFlag;
+
+typedef enum
+{
+ POPPLER_ANNOT_MARKUP_REPLY_TYPE_R,
+ POPPLER_ANNOT_MARKUP_REPLY_TYPE_GROUP
+} PopplerAnnotMarkupReplyType;
+
+typedef enum
+{
+ POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_3D,
+ POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN
+} PopplerAnnotExternalDataType;
+
+typedef enum
+{
+ POPPLER_ANNOT_TEXT_STATE_MARKED,
+ POPPLER_ANNOT_TEXT_STATE_UNMARKED,
+ POPPLER_ANNOT_TEXT_STATE_ACCEPTED,
+ POPPLER_ANNOT_TEXT_STATE_REJECTED,
+ POPPLER_ANNOT_TEXT_STATE_CANCELLED,
+ POPPLER_ANNOT_TEXT_STATE_COMPLETED,
+ POPPLER_ANNOT_TEXT_STATE_NONE,
+ POPPLER_ANNOT_TEXT_STATE_UNKNOWN
+} PopplerAnnotTextState;
+
+typedef enum
+{
+ POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED,
+ POPPLER_ANNOT_FREE_TEXT_QUADDING_CENTERED,
+ POPPLER_ANNOT_FREE_TEXT_QUADDING_RIGHT_JUSTIFIED
+} PopplerAnnotFreeTextQuadding;
+
+struct _PopplerAnnotCalloutLine
+{
+ gboolean multiline;
+ gdouble x1;
+ gdouble y1;
+ gdouble x2;
+ gdouble y2;
+ gdouble x3;
+ gdouble y3;
+};
+
+GType poppler_annot_get_type (void) G_GNUC_CONST;
+PopplerAnnotType poppler_annot_get_annot_type (PopplerAnnot *poppler_annot);
+gchar *poppler_annot_get_contents (PopplerAnnot *poppler_annot);
+void poppler_annot_set_contents (PopplerAnnot *poppler_annot,
+ const gchar *contents);
+gchar *poppler_annot_get_name (PopplerAnnot *poppler_annot);
+gchar *poppler_annot_get_modified (PopplerAnnot *poppler_annot);
+PopplerAnnotFlag poppler_annot_get_flags (PopplerAnnot *poppler_annot);
+PopplerColor *poppler_annot_get_color (PopplerAnnot *poppler_annot);
+
+/* PopplerAnnotMarkup */
+GType poppler_annot_markup_get_type (void) G_GNUC_CONST;
+gchar *poppler_annot_markup_get_label (PopplerAnnotMarkup *poppler_annot);
+gboolean poppler_annot_markup_has_popup (PopplerAnnotMarkup *poppler_annot);
+gboolean poppler_annot_markup_get_popup_is_open (PopplerAnnotMarkup *poppler_annot);
+gboolean poppler_annot_markup_get_popup_rectangle (PopplerAnnotMarkup *poppler_annot,
+ PopplerRectangle *poppler_rect);
+gdouble poppler_annot_markup_get_opacity (PopplerAnnotMarkup *poppler_annot);
+GDate *poppler_annot_markup_get_date (PopplerAnnotMarkup *poppler_annot);
+gchar *poppler_annot_markup_get_subject (PopplerAnnotMarkup *poppler_annot);
+PopplerAnnotMarkupReplyType poppler_annot_markup_get_reply_to (PopplerAnnotMarkup *poppler_annot);
+PopplerAnnotExternalDataType poppler_annot_markup_get_external_data (PopplerAnnotMarkup *poppler_annot);
+
+/* PopplerAnnotText */
+GType poppler_annot_text_get_type (void) G_GNUC_CONST;
+gboolean poppler_annot_text_get_is_open (PopplerAnnotText *poppler_annot);
+gchar *poppler_annot_text_get_icon (PopplerAnnotText *poppler_annot);
+PopplerAnnotTextState poppler_annot_text_get_state (PopplerAnnotText *poppler_annot);
+
+/* PopplerAnnotFreeText */
+GType poppler_annot_free_text_get_type (void) G_GNUC_CONST;
+PopplerAnnotFreeTextQuadding poppler_annot_free_text_get_quadding (PopplerAnnotFreeText *poppler_annot);
+PopplerAnnotCalloutLine *poppler_annot_free_text_get_callout_line (PopplerAnnotFreeText *poppler_annot);
+
+/* PopplerCalloutLine */
+GType poppler_annot_callout_line_get_type (void) G_GNUC_CONST;
+PopplerAnnotCalloutLine *poppler_annot_callout_line_new (void);
+PopplerAnnotCalloutLine *poppler_annot_callout_line_copy (PopplerAnnotCalloutLine *callout);
+void poppler_annot_callout_line_free (PopplerAnnotCalloutLine *callout);
+
+G_END_DECLS
+
+#endif /* __POPPLER_ANNOT_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.cc
new file mode 100644
index 00000000000..78bc72f63a1
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.cc
@@ -0,0 +1,274 @@
+/* poppler-attachment.cc: glib wrapper for poppler
+ * Copyright (C) 2006, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+#include <errno.h>
+#include <glib/gstdio.h>
+
+#include "poppler.h"
+#include "poppler-private.h"
+
+/* FIXME: We need to add gettext support sometime */
+#define _(x) (x)
+
+typedef struct _PopplerAttachmentPrivate PopplerAttachmentPrivate;
+struct _PopplerAttachmentPrivate
+{
+ Object *obj_stream;
+ PopplerDocument *document;
+};
+
+#define POPPLER_ATTACHMENT_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), POPPLER_TYPE_ATTACHMENT, PopplerAttachmentPrivate))
+
+static void poppler_attachment_dispose (GObject *obj);
+static void poppler_attachment_finalize (GObject *obj);
+
+G_DEFINE_TYPE (PopplerAttachment, poppler_attachment, G_TYPE_OBJECT)
+
+static void
+poppler_attachment_init (PopplerAttachment *attachment)
+{
+}
+
+static void
+poppler_attachment_class_init (PopplerAttachmentClass *klass)
+{
+ G_OBJECT_CLASS (klass)->dispose = poppler_attachment_dispose;
+ G_OBJECT_CLASS (klass)->finalize = poppler_attachment_finalize;
+ g_type_class_add_private (klass, sizeof (PopplerAttachmentPrivate));
+}
+
+static void
+poppler_attachment_dispose (GObject *obj)
+{
+ PopplerAttachmentPrivate *priv;
+
+ priv = POPPLER_ATTACHMENT_GET_PRIVATE (obj);
+
+ if (priv->obj_stream)
+ {
+ priv->obj_stream->free();
+ delete priv->obj_stream;
+ priv->obj_stream = NULL;
+ }
+
+ if (priv->document)
+ {
+ g_object_unref (priv->document);
+ priv->document = NULL;
+ }
+
+ G_OBJECT_CLASS (poppler_attachment_parent_class)->dispose (obj);
+}
+
+static void
+poppler_attachment_finalize (GObject *obj)
+{
+ PopplerAttachment *attachment;
+
+ attachment = (PopplerAttachment *) obj;
+
+ if (attachment->name)
+ g_free (attachment->name);
+ attachment->name = NULL;
+
+ if (attachment->description)
+ g_free (attachment->description);
+ attachment->description = NULL;
+
+ if (attachment->checksum)
+ g_string_free (attachment->checksum, TRUE);
+ attachment->checksum = NULL;
+
+ G_OBJECT_CLASS (poppler_attachment_parent_class)->finalize (obj);
+}
+
+/* Public functions */
+
+PopplerAttachment *
+_poppler_attachment_new (PopplerDocument *document,
+ EmbFile *emb_file)
+{
+ PopplerAttachment *attachment;
+ PopplerAttachmentPrivate *priv;
+
+ g_assert (document != NULL);
+ g_assert (emb_file != NULL);
+
+ attachment = (PopplerAttachment *) g_object_new (POPPLER_TYPE_ATTACHMENT, NULL);
+ priv = POPPLER_ATTACHMENT_GET_PRIVATE (attachment);
+
+ priv->document = (PopplerDocument *) g_object_ref (document);
+
+ if (emb_file->name ())
+ attachment->name = _poppler_goo_string_to_utf8 (emb_file->name ());
+ if (emb_file->description ())
+ attachment->description = _poppler_goo_string_to_utf8 (emb_file->description ());
+
+ attachment->size = emb_file->size ();
+
+ _poppler_convert_pdf_date_to_gtime (emb_file->createDate (), (time_t *)&attachment->ctime);
+ _poppler_convert_pdf_date_to_gtime (emb_file->modDate (), (time_t *)&attachment->mtime);
+
+ if (emb_file->checksum ()->getLength () > 0)
+ attachment->checksum = g_string_new_len (emb_file->checksum ()->getCString (),
+ emb_file->checksum ()->getLength ());
+
+ priv->obj_stream = new Object();
+ emb_file->streamObject().copy(priv->obj_stream);
+
+ return attachment;
+}
+
+static gboolean
+save_helper (const gchar *buf,
+ gsize count,
+ gpointer data,
+ GError **error)
+{
+ FILE *f = (FILE *) data;
+ gsize n;
+
+ n = fwrite (buf, 1, count, f);
+ if (n != count)
+ {
+ g_set_error (error,
+ G_FILE_ERROR,
+ g_file_error_from_errno (errno),
+ _("Error writing to image file: %s"),
+ g_strerror (errno));
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+/**
+ * poppler_attachment_save:
+ * @attachment: A #PopplerAttachment.
+ * @filename: name of file to save
+ * @error: return location for error, or %NULL.
+ *
+ * Saves @attachment to a file indicated by @filename. If @error is set, %FALSE
+ * will be returned. Possible errors include those in the #G_FILE_ERROR domain
+ * and whatever the save function generates.
+ *
+ * Return value: %TRUE, if the file successfully saved
+ **/
+gboolean
+poppler_attachment_save (PopplerAttachment *attachment,
+ const char *filename,
+ GError **error)
+{
+ gboolean result;
+ FILE *f;
+
+ g_return_val_if_fail (POPPLER_IS_ATTACHMENT (attachment), FALSE);
+
+ f = g_fopen (filename, "wb");
+
+ if (f == NULL)
+ {
+ gchar *display_name = g_filename_display_name (filename);
+ g_set_error (error,
+ G_FILE_ERROR,
+ g_file_error_from_errno (errno),
+ _("Failed to open '%s' for writing: %s"),
+ display_name,
+ g_strerror (errno));
+ g_free (display_name);
+ return FALSE;
+ }
+
+ result = poppler_attachment_save_to_callback (attachment, save_helper, f, error);
+
+ if (fclose (f) < 0)
+ {
+ gchar *display_name = g_filename_display_name (filename);
+ g_set_error (error,
+ G_FILE_ERROR,
+ g_file_error_from_errno (errno),
+ _("Failed to close '%s', all data may not have been saved: %s"),
+ display_name,
+ g_strerror (errno));
+ g_free (display_name);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+#define BUF_SIZE 1024
+
+/**
+ * poppler_attachment_save_to_callback:
+ * @attachment: A #PopplerAttachment.
+ * @save_func: a function that is called to save each block of data that the save routine generates.
+ * @user_data: user data to pass to the save function.
+ * @error: return location for error, or %NULL.
+ *
+ * Saves @attachment by feeding the produced data to @save_func. Can be used
+ * when you want to store the attachment to something other than a file, such as
+ * an in-memory buffer or a socket. If @error is set, %FALSE will be
+ * returned. Possible errors include those in the #G_FILE_ERROR domain and
+ * whatever the save function generates.
+ *
+ * Return value: %TRUE, if the save successfully completed
+ **/
+gboolean
+poppler_attachment_save_to_callback (PopplerAttachment *attachment,
+ PopplerAttachmentSaveFunc save_func,
+ gpointer user_data,
+ GError **error)
+{
+ Stream *stream;
+ gchar buf[BUF_SIZE];
+ int i;
+ gboolean eof_reached = FALSE;
+
+ g_return_val_if_fail (POPPLER_IS_ATTACHMENT (attachment), FALSE);
+
+ stream = POPPLER_ATTACHMENT_GET_PRIVATE (attachment)->obj_stream->getStream();
+ stream->reset();
+
+ do
+ {
+ int data;
+
+ for (i = 0; i < BUF_SIZE; i++)
+ {
+ data = stream->getChar ();
+ if (data == EOF)
+ {
+ eof_reached = TRUE;
+ break;
+ }
+ buf[i] = data;
+ }
+
+ if (i > 0)
+ {
+ if (! (save_func) (buf, i, user_data, error))
+ return FALSE;
+ }
+ }
+ while (! eof_reached);
+
+
+ return TRUE;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.h
new file mode 100644
index 00000000000..d506167d005
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-attachment.h
@@ -0,0 +1,70 @@
+/* poppler-attachment.h: glib interface to poppler
+ * Copyright (C) 2004, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_ATTACHMENT_H__
+#define __POPPLER_ATTACHMENT_H__
+
+#include <glib.h>
+#include <glib-object.h>
+
+#include "poppler.h"
+
+G_BEGIN_DECLS
+
+
+#define POPPLER_TYPE_ATTACHMENT (poppler_attachment_get_type ())
+#define POPPLER_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ATTACHMENT, PopplerAttachment))
+#define POPPLER_IS_ATTACHMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_ATTACHMENT))
+
+
+typedef gboolean (*PopplerAttachmentSaveFunc) (const gchar *buf,
+ gsize count,
+ gpointer data,
+ GError **error);
+
+struct _PopplerAttachment
+{
+ GObject parent;
+
+ gchar *name;
+ gchar *description;
+ gsize size;
+ GTime mtime;
+ GTime ctime;
+ GString *checksum;
+};
+
+typedef struct _PopplerAttachmentClass
+{
+ GObjectClass parent_class;
+} PopplerAttachmentClass;
+
+
+GType poppler_attachment_get_type (void) G_GNUC_CONST;
+gboolean poppler_attachment_save (PopplerAttachment *attachment,
+ const char *filename,
+ GError **error);
+gboolean poppler_attachment_save_to_callback (PopplerAttachment *attachment,
+ PopplerAttachmentSaveFunc save_func,
+ gpointer user_data,
+ GError **error);
+
+
+G_END_DECLS
+
+#endif /* __POPPLER_ATTACHMENT_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.cc
new file mode 100644
index 00000000000..2444f93c20a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.cc
@@ -0,0 +1,66 @@
+/* poppler-date.cc: glib interface to poppler
+ *
+ * Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <DateInfo.h>
+
+#include "poppler-date.h"
+
+/**
+ * poppler_date_parse:
+ * @date: string to parse
+ * @timet: an uninitialized #time_t
+ *
+ * Parses a PDF format date string and converts it to a #time_t. Returns #FALSE
+ * if the parsing fails or the input string is not a valid PDF format date string
+ *
+ * Return value: #TRUE, if @timet was set
+ **/
+gboolean
+poppler_date_parse (const gchar *date,
+ time_t *timet)
+{
+ gint year, mon, day, hour, min, sec, tz_hour, tz_minute;
+ gchar tz;
+ struct tm time;
+ time_t retval;
+
+ /* See PDF Reference 1.3, Section 3.8.2 for PDF Date representation */
+ // TODO do something with the timezone information
+ if (!parseDateString (date, &year, &mon, &day, &hour, &min, &sec, &tz, &tz_hour, &tz_minute))
+ return FALSE;
+
+ time.tm_year = year - 1900;
+ time.tm_mon = mon - 1;
+ time.tm_mday = day;
+ time.tm_hour = hour;
+ time.tm_min = min;
+ time.tm_sec = sec;
+ time.tm_wday = -1;
+ time.tm_yday = -1;
+ time.tm_isdst = -1; /* 0 = DST off, 1 = DST on, -1 = don't know */
+
+ /* compute tm_wday and tm_yday and check date */
+ retval = mktime (&time);
+ if (retval == (time_t) - 1)
+ return FALSE;
+
+ *timet = retval;
+
+ return TRUE;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.h
new file mode 100644
index 00000000000..2bb52b27377
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-date.h
@@ -0,0 +1,30 @@
+/* poppler-date.h: glib interface to poppler
+ *
+ * Copyright (C) 2009 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_DATE_H__
+#define __POPPLER_DATE_H__
+
+#include "poppler.h"
+
+G_BEGIN_DECLS
+gboolean poppler_date_parse (const gchar *date,
+ time_t *timet);
+G_END_DECLS
+
+#endif /* __POPPLER_DATE_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.cc
new file mode 100644
index 00000000000..fad45c84911
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.cc
@@ -0,0 +1,1960 @@
+/* poppler-document.cc: glib wrapper for poppler
+ * Copyright (C) 2005, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <string.h>
+
+#include <goo/GooList.h>
+#include <splash/SplashBitmap.h>
+#include <GlobalParams.h>
+#include <PDFDoc.h>
+#include <Outline.h>
+#include <ErrorCodes.h>
+#include <UnicodeMap.h>
+#include <GfxState.h>
+#include <SplashOutputDev.h>
+#include <Stream.h>
+#include <FontInfo.h>
+#include <PDFDocEncoding.h>
+#include <OptionalContent.h>
+
+#include "poppler.h"
+#include "poppler-private.h"
+#include "poppler-enums.h"
+
+enum {
+ PROP_0,
+ PROP_TITLE,
+ PROP_FORMAT,
+ PROP_FORMAT_MAJOR,
+ PROP_FORMAT_MINOR,
+ PROP_AUTHOR,
+ PROP_SUBJECT,
+ PROP_KEYWORDS,
+ PROP_CREATOR,
+ PROP_PRODUCER,
+ PROP_CREATION_DATE,
+ PROP_MOD_DATE,
+ PROP_LINEARIZED,
+ PROP_PAGE_LAYOUT,
+ PROP_PAGE_MODE,
+ PROP_VIEWER_PREFERENCES,
+ PROP_PERMISSIONS,
+ PROP_METADATA
+};
+
+static void poppler_document_layers_free (PopplerDocument *document);
+
+typedef struct _PopplerDocumentClass PopplerDocumentClass;
+struct _PopplerDocumentClass
+{
+ GObjectClass parent_class;
+};
+
+G_DEFINE_TYPE (PopplerDocument, poppler_document, G_TYPE_OBJECT)
+
+static PopplerDocument *
+_poppler_document_new_from_pdfdoc (PDFDoc *newDoc,
+ GError **error)
+{
+ PopplerDocument *document;
+
+ document = (PopplerDocument *) g_object_new (POPPLER_TYPE_DOCUMENT, NULL, NULL);
+
+ if (!newDoc->isOk()) {
+ int fopen_errno;
+ switch (newDoc->getErrorCode())
+ {
+ case errOpenFile:
+ // If there was an error opening the file, count it as a G_FILE_ERROR
+ // and set the GError parameters accordingly. (this assumes that the
+ // only way to get an errOpenFile error is if newDoc was created using
+ // a filename and thus fopen was called, which right now is true.
+ fopen_errno = newDoc->getFopenErrno();
+ g_set_error (error, G_FILE_ERROR,
+ g_file_error_from_errno (fopen_errno),
+ "%s", g_strerror (fopen_errno));
+ break;
+ case errBadCatalog:
+ g_set_error (error, POPPLER_ERROR,
+ POPPLER_ERROR_BAD_CATALOG,
+ "Failed to read the document catalog");
+ break;
+ case errDamaged:
+ g_set_error (error, POPPLER_ERROR,
+ POPPLER_ERROR_DAMAGED,
+ "PDF document is damaged");
+ break;
+ case errEncrypted:
+ g_set_error (error, POPPLER_ERROR,
+ POPPLER_ERROR_ENCRYPTED,
+ "Document is encrypted");
+ break;
+ default:
+ g_set_error (error, POPPLER_ERROR,
+ POPPLER_ERROR_INVALID,
+ "Failed to load document");
+ }
+
+ delete newDoc;
+ return NULL;
+ }
+
+ document->doc = newDoc;
+
+#if defined (HAVE_CAIRO)
+ document->output_dev = new CairoOutputDev ();
+ document->output_dev->startDoc(document->doc->getXRef (), document->doc->getCatalog ());
+#elif defined (HAVE_SPLASH)
+ SplashColor white;
+ white[0] = 255;
+ white[1] = 255;
+ white[2] = 255;
+ document->output_dev = new SplashOutputDev(splashModeRGB8, 4, gFalse, white);
+ document->output_dev->startDoc(document->doc->getXRef ());
+#endif
+
+ return document;
+}
+
+/**
+ * poppler_document_new_from_file:
+ * @uri: uri of the file to load
+ * @password: password to unlock the file with, or %NULL
+ * @error: Return location for an error, or %NULL
+ *
+ * Creates a new #PopplerDocument. If %NULL is returned, then @error will be
+ * set. Possible errors include those in the #POPPLER_ERROR and #G_FILE_ERROR
+ * domains.
+ *
+ * Return value: A newly created #PopplerDocument, or %NULL
+ **/
+PopplerDocument *
+poppler_document_new_from_file (const char *uri,
+ const char *password,
+ GError **error)
+{
+ PDFDoc *newDoc;
+ GooString *filename_g;
+ GooString *password_g;
+ char *filename;
+
+ if (!globalParams) {
+ globalParams = new GlobalParams();
+ }
+
+ filename = g_filename_from_uri (uri, NULL, error);
+ if (!filename)
+ return NULL;
+
+ password_g = NULL;
+ if (password != NULL) {
+ if (g_utf8_validate (password, -1, NULL)) {
+ gchar *password_latin;
+
+ password_latin = g_convert (password, -1,
+ "ISO-8859-1",
+ "UTF-8",
+ NULL, NULL, NULL);
+ password_g = new GooString (password_latin);
+ g_free (password_latin);
+ } else {
+ password_g = new GooString (password);
+ }
+ }
+
+#ifdef G_OS_WIN32
+ wchar_t *filenameW;
+ int length;
+
+ length = MultiByteToWideChar(CP_UTF8, 0, filename, -1, NULL, 0);
+
+ filenameW = new WCHAR[length];
+ if (!filenameW)
+ return NULL;
+
+ length = MultiByteToWideChar(CP_UTF8, 0, filename, -1, filenameW, length);
+
+ newDoc = new PDFDoc(filenameW, length, password_g, password_g);
+ delete filenameW;
+#else
+ filename_g = new GooString (filename);
+ newDoc = new PDFDoc(filename_g, password_g, password_g);
+#endif
+ g_free (filename);
+
+ delete password_g;
+
+ return _poppler_document_new_from_pdfdoc (newDoc, error);
+}
+
+/**
+ * poppler_document_new_from_data:
+ * @data: the pdf data contained in a char array
+ * @length: the length of #data
+ * @password: password to unlock the file with, or %NULL
+ * @error: Return location for an error, or %NULL
+ *
+ * Creates a new #PopplerDocument. If %NULL is returned, then @error will be
+ * set. Possible errors include those in the #POPPLER_ERROR and #G_FILE_ERROR
+ * domains.
+ *
+ * Return value: A newly created #PopplerDocument, or %NULL
+ **/
+PopplerDocument *
+poppler_document_new_from_data (char *data,
+ int length,
+ const char *password,
+ GError **error)
+{
+ Object obj;
+ PDFDoc *newDoc;
+ MemStream *str;
+ GooString *password_g;
+
+ if (!globalParams) {
+ globalParams = new GlobalParams();
+ }
+
+ // create stream
+ obj.initNull();
+ str = new MemStream(data, 0, length, &obj);
+
+ password_g = NULL;
+ if (password != NULL)
+ password_g = new GooString (password);
+
+ newDoc = new PDFDoc(str, password_g, password_g);
+ delete password_g;
+
+ return _poppler_document_new_from_pdfdoc (newDoc, error);
+}
+
+static gboolean
+handle_save_error (int err_code,
+ GError **error)
+{
+ switch (err_code)
+ {
+ case errNone:
+ break;
+ case errOpenFile:
+ g_set_error (error, POPPLER_ERROR,
+ POPPLER_ERROR_OPEN_FILE,
+ "Failed to open file for writing");
+ break;
+ case errEncrypted:
+ g_set_error (error, POPPLER_ERROR,
+ POPPLER_ERROR_ENCRYPTED,
+ "Document is encrypted");
+ break;
+ default:
+ g_set_error (error, POPPLER_ERROR,
+ POPPLER_ERROR_INVALID,
+ "Failed to save document");
+ }
+
+ return err_code == errNone;
+}
+
+/**
+ * poppler_document_save:
+ * @document: a #PopplerDocument
+ * @uri: uri of file to save
+ * @error: return location for an error, or %NULL
+ *
+ * Saves @document. Any change made in the document such as
+ * form fields filled by the user will be saved.
+ * If @error is set, %FALSE will be returned. Possible errors
+ * include those in the #G_FILE_ERROR domain.
+ *
+ * Return value: %TRUE, if the document was successfully saved
+ **/
+gboolean
+poppler_document_save (PopplerDocument *document,
+ const char *uri,
+ GError **error)
+{
+ char *filename;
+ gboolean retval = FALSE;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), FALSE);
+
+ filename = g_filename_from_uri (uri, NULL, error);
+ if (filename != NULL) {
+ GooString *fname = new GooString (filename);
+ int err_code;
+ g_free (filename);
+
+ err_code = document->doc->saveAs (fname);
+ retval = handle_save_error (err_code, error);
+ delete fname;
+ }
+
+ return retval;
+}
+
+/**
+ * poppler_document_save_a_copy:
+ * @document: a #PopplerDocument
+ * @uri: uri of file to save
+ * @error: return location for an error, or %NULL
+ *
+ * Saves a copy of the original @document.
+ * Any change made in the document such as
+ * form fields filled by the user will not be saved.
+ * If @error is set, %FALSE will be returned. Possible errors
+ * include those in the #G_FILE_ERROR domain.
+ *
+ * Return value: %TRUE, if the document was successfully saved
+ **/
+gboolean
+poppler_document_save_a_copy (PopplerDocument *document,
+ const char *uri,
+ GError **error)
+{
+ char *filename;
+ gboolean retval = FALSE;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), FALSE);
+
+ filename = g_filename_from_uri (uri, NULL, error);
+ if (filename != NULL) {
+ GooString *fname = new GooString (filename);
+ int err_code;
+ g_free (filename);
+
+ err_code = document->doc->saveWithoutChangesAs (fname);
+ retval = handle_save_error (err_code, error);
+ delete fname;
+ }
+
+ return retval;
+}
+
+static void
+poppler_document_finalize (GObject *object)
+{
+ PopplerDocument *document = POPPLER_DOCUMENT (object);
+
+ poppler_document_layers_free (document);
+ delete document->output_dev;
+ delete document->doc;
+}
+
+/**
+ * poppler_document_get_n_pages:
+ * @document: A #PopplerDocument
+ *
+ * Returns the number of pages in a loaded document.
+ *
+ * Return value: Number of pages
+ **/
+int
+poppler_document_get_n_pages (PopplerDocument *document)
+{
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), 0);
+
+ return document->doc->getNumPages();
+}
+
+/**
+ * poppler_document_get_page:
+ * @document: A #PopplerDocument
+ * @index: a page index
+ *
+ * Returns the #PopplerPage indexed at @index. This object is owned by the
+ * caller.
+ *
+ * #PopplerPage<!-- -->s are indexed starting at 0.
+ *
+ * Return value: The #PopplerPage at @index
+ **/
+PopplerPage *
+poppler_document_get_page (PopplerDocument *document,
+ int index)
+{
+ Catalog *catalog;
+ Page *page;
+
+ g_return_val_if_fail (0 <= index &&
+ index < poppler_document_get_n_pages (document),
+ NULL);
+
+ catalog = document->doc->getCatalog();
+ page = catalog->getPage (index + 1);
+
+ return _poppler_page_new (document, page, index);
+}
+
+/**
+ * poppler_document_get_page_by_label:
+ * @document: A #PopplerDocument
+ * @label: a page label
+ *
+ * Returns the #PopplerPage reference by @label. This object is owned by the
+ * caller. @label is a human-readable string representation of the page number,
+ * and can be document specific. Typically, it is a value such as "iii" or "3".
+ *
+ * By default, "1" refers to the first page.
+ *
+ * Return value: The #PopplerPage referenced by @label
+ **/
+PopplerPage *
+poppler_document_get_page_by_label (PopplerDocument *document,
+ const char *label)
+{
+ Catalog *catalog;
+ GooString label_g(label);
+ int index;
+
+ catalog = document->doc->getCatalog();
+ if (!catalog->labelToIndex (&label_g, &index))
+ return NULL;
+
+ return poppler_document_get_page (document, index);
+}
+
+/**
+ * poppler_document_has_attachments:
+ * @document: A #PopplerDocument
+ *
+ * Returns %TRUE of @document has any attachments.
+ *
+ * Return value: %TRUE, if @document has attachments.
+ **/
+gboolean
+poppler_document_has_attachments (PopplerDocument *document)
+{
+ Catalog *catalog;
+ int n_files = 0;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), FALSE);
+
+ catalog = document->doc->getCatalog ();
+ if (catalog && catalog->isOk ())
+ {
+ n_files = catalog->numEmbeddedFiles ();
+ }
+
+ return (n_files != 0);
+}
+
+/**
+ * poppler_document_get_attachments:
+ * @document: A #PopplerDocument
+ *
+ * Returns a #GList containing #PopplerAttachment<!-- -->s. These attachments
+ * are unowned, and must be unreffed, and the list must be freed with
+ * g_list_free().
+ *
+ * Return value: a list of available attachments.
+ **/
+GList *
+poppler_document_get_attachments (PopplerDocument *document)
+{
+ Catalog *catalog;
+ int n_files, i;
+ GList *retval = NULL;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), NULL);
+
+ catalog = document->doc->getCatalog ();
+ if (catalog == NULL || ! catalog->isOk ())
+ return NULL;
+
+ n_files = catalog->numEmbeddedFiles ();
+ for (i = 0; i < n_files; i++)
+ {
+ PopplerAttachment *attachment;
+ EmbFile *emb_file;
+
+ emb_file = catalog->embeddedFile (i);
+ if (!emb_file->isOk ()) {
+ delete emb_file;
+ continue;
+ }
+ attachment = _poppler_attachment_new (document, emb_file);
+ delete emb_file;
+
+ retval = g_list_prepend (retval, attachment);
+ }
+ return g_list_reverse (retval);
+}
+
+/**
+ * poppler_document_find_dest:
+ * @document: A #PopplerDocument
+ * @link_name: a named destination
+ *
+ * Finds named destination @link_name in @document
+ *
+ * Return value: The #PopplerDest destination or %NULL if
+ * @link_name is not a destination. Returned value must
+ * be freed with #poppler_dest_free
+ **/
+PopplerDest *
+poppler_document_find_dest (PopplerDocument *document,
+ const gchar *link_name)
+{
+ PopplerDest *dest = NULL;
+ LinkDest *link_dest = NULL;
+ GooString *g_link_name;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), NULL);
+ g_return_val_if_fail (link_name != NULL, NULL);
+
+ g_link_name = new GooString (link_name);
+
+ if (g_link_name) {
+ link_dest = document->doc->findDest (g_link_name);
+ delete g_link_name;
+ }
+
+ if (link_dest) {
+ dest = _poppler_dest_new_goto (document, link_dest);
+ delete link_dest;
+ }
+
+ return dest;
+}
+
+char *_poppler_goo_string_to_utf8(GooString *s)
+{
+ char *result;
+
+ if (s->hasUnicodeMarker()) {
+ result = g_convert (s->getCString () + 2,
+ s->getLength () - 2,
+ "UTF-8", "UTF-16BE", NULL, NULL, NULL);
+ } else {
+ int len;
+ gunichar *ucs4_temp;
+ int i;
+
+ len = s->getLength ();
+ ucs4_temp = g_new (gunichar, len + 1);
+ for (i = 0; i < len; ++i) {
+ ucs4_temp[i] = pdfDocEncoding[(unsigned char)s->getChar(i)];
+ }
+ ucs4_temp[i] = 0;
+
+ result = g_ucs4_to_utf8 (ucs4_temp, -1, NULL, NULL, NULL);
+
+ g_free (ucs4_temp);
+ }
+
+ return result;
+}
+
+static void
+info_dict_get_string (Dict *info_dict, const gchar *key, GValue *value)
+{
+ Object obj;
+ GooString *goo_value;
+ gchar *result;
+
+ if (!info_dict->lookup ((gchar *)key, &obj)->isString ()) {
+ obj.free ();
+ return;
+ }
+
+ goo_value = obj.getString ();
+
+ result = _poppler_goo_string_to_utf8(goo_value);
+
+ obj.free ();
+
+ g_value_set_string (value, result);
+
+ g_free (result);
+}
+
+static void
+info_dict_get_date (Dict *info_dict, const gchar *key, GValue *value)
+{
+ Object obj;
+ time_t result;
+
+ if (!info_dict->lookup ((gchar *)key, &obj)->isString ()) {
+ obj.free ();
+ return;
+ }
+
+ if (_poppler_convert_pdf_date_to_gtime (obj.getString (), &result))
+ g_value_set_int (value, result);
+
+ obj.free ();
+}
+
+static PopplerPageLayout
+convert_page_layout (Catalog::PageLayout pageLayout)
+{
+ switch (pageLayout)
+ {
+ case Catalog::pageLayoutSinglePage:
+ return POPPLER_PAGE_LAYOUT_SINGLE_PAGE;
+ case Catalog::pageLayoutOneColumn:
+ return POPPLER_PAGE_LAYOUT_ONE_COLUMN;
+ case Catalog::pageLayoutTwoColumnLeft:
+ return POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT;
+ case Catalog::pageLayoutTwoColumnRight:
+ return POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT;
+ case Catalog::pageLayoutTwoPageLeft:
+ return POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT;
+ case Catalog::pageLayoutTwoPageRight:
+ return POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT;
+ case Catalog::pageLayoutNone:
+ default:
+ return POPPLER_PAGE_LAYOUT_UNSET;
+ }
+}
+
+static PopplerPageMode
+convert_page_mode (Catalog::PageMode pageMode)
+{
+ switch (pageMode)
+ {
+ case Catalog::pageModeOutlines:
+ return POPPLER_PAGE_MODE_USE_OUTLINES;
+ case Catalog::pageModeThumbs:
+ return POPPLER_PAGE_MODE_USE_THUMBS;
+ case Catalog::pageModeFullScreen:
+ return POPPLER_PAGE_MODE_FULL_SCREEN;
+ case Catalog::pageModeOC:
+ return POPPLER_PAGE_MODE_USE_OC;
+ case Catalog::pageModeAttach:
+ return POPPLER_PAGE_MODE_USE_ATTACHMENTS;
+ case Catalog::pageModeNone:
+ default:
+ return POPPLER_PAGE_MODE_UNSET;
+ }
+}
+
+static void
+poppler_document_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ PopplerDocument *document = POPPLER_DOCUMENT (object);
+ Object obj;
+ Catalog *catalog;
+ gchar *str;
+ guint flag;
+
+ switch (prop_id)
+ {
+ case PROP_TITLE:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_string (obj.getDict(), "Title", value);
+ obj.free ();
+ break;
+ case PROP_FORMAT:
+ str = g_strndup("PDF-", 15); /* allocates 16 chars, pads with \0s */
+ g_ascii_formatd (str + 4, 15 + 1 - 4,
+ "%.2g", document->doc->getPDFMajorVersion () + document->doc->getPDFMinorVersion() / 10.0);
+ g_value_take_string (value, str);
+ break;
+ case PROP_FORMAT_MAJOR:
+ g_value_set_uint (value, document->doc->getPDFMajorVersion ());
+ break;
+ case PROP_FORMAT_MINOR:
+ g_value_set_uint (value, document->doc->getPDFMinorVersion());
+ break;
+ case PROP_AUTHOR:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_string (obj.getDict(), "Author", value);
+ obj.free ();
+ break;
+ case PROP_SUBJECT:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_string (obj.getDict(), "Subject", value);
+ obj.free ();
+ break;
+ case PROP_KEYWORDS:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_string (obj.getDict(), "Keywords", value);
+ obj.free ();
+ break;
+ case PROP_CREATOR:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_string (obj.getDict(), "Creator", value);
+ obj.free ();
+ break;
+ case PROP_PRODUCER:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_string (obj.getDict(), "Producer", value);
+ obj.free ();
+ break;
+ case PROP_CREATION_DATE:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_date (obj.getDict(), "CreationDate", value);
+ obj.free ();
+ break;
+ case PROP_MOD_DATE:
+ document->doc->getDocInfo (&obj);
+ if (obj.isDict ())
+ info_dict_get_date (obj.getDict(), "ModDate", value);
+ obj.free ();
+ break;
+ case PROP_LINEARIZED:
+ if (document->doc->isLinearized ()) {
+ g_value_set_string (value, "Yes");
+ } else {
+ g_value_set_string (value, "No");
+ }
+ break;
+ case PROP_PAGE_LAYOUT:
+ catalog = document->doc->getCatalog ();
+ if (catalog && catalog->isOk ())
+ {
+ PopplerPageLayout page_layout = convert_page_layout (catalog->getPageLayout ());
+ g_value_set_enum (value, page_layout);
+ }
+ break;
+ case PROP_PAGE_MODE:
+ catalog = document->doc->getCatalog ();
+ if (catalog && catalog->isOk ())
+ {
+ PopplerPageMode page_mode = convert_page_mode (catalog->getPageMode ());
+ g_value_set_enum (value, page_mode);
+ }
+ break;
+ case PROP_VIEWER_PREFERENCES:
+ /* FIXME: write... */
+ g_value_set_flags (value, POPPLER_VIEWER_PREFERENCES_UNSET);
+ break;
+ case PROP_PERMISSIONS:
+ flag = 0;
+ if (document->doc->okToPrint ())
+ flag |= POPPLER_PERMISSIONS_OK_TO_PRINT;
+ if (document->doc->okToChange ())
+ flag |= POPPLER_PERMISSIONS_OK_TO_MODIFY;
+ if (document->doc->okToCopy ())
+ flag |= POPPLER_PERMISSIONS_OK_TO_COPY;
+ if (document->doc->okToAddNotes ())
+ flag |= POPPLER_PERMISSIONS_OK_TO_ADD_NOTES;
+ if (document->doc->okToFillForm ())
+ flag |= POPPLER_PERMISSIONS_OK_TO_FILL_FORM;
+ g_value_set_flags (value, flag);
+ break;
+ case PROP_METADATA:
+ catalog = document->doc->getCatalog ();
+ if (catalog && catalog->isOk ())
+ {
+ GooString *s = catalog->readMetadata ();
+ if ( s != NULL ) {
+ g_value_set_string (value, s->getCString());
+ delete s;
+ }
+ }
+ break;
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ }
+}
+
+static void
+poppler_document_class_init (PopplerDocumentClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->finalize = poppler_document_finalize;
+ gobject_class->get_property = poppler_document_get_property;
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_TITLE,
+ g_param_spec_string ("title",
+ "Document Title",
+ "The title of the document",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_FORMAT,
+ g_param_spec_string ("format",
+ "PDF Format",
+ "The PDF version of the document",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_FORMAT_MAJOR,
+ g_param_spec_uint ("format-major",
+ "PDF Format Major",
+ "The PDF major version number of the document",
+ 0, G_MAXUINT, 1,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_FORMAT_MINOR,
+ g_param_spec_uint ("format-minor",
+ "PDF Format Minor",
+ "The PDF minor version number of the document",
+ 0, G_MAXUINT, 0,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_AUTHOR,
+ g_param_spec_string ("author",
+ "Author",
+ "The author of the document",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_SUBJECT,
+ g_param_spec_string ("subject",
+ "Subject",
+ "Subjects the document touches",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_KEYWORDS,
+ g_param_spec_string ("keywords",
+ "Keywords",
+ "Keywords",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_CREATOR,
+ g_param_spec_string ("creator",
+ "Creator",
+ "The software that created the document",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_PRODUCER,
+ g_param_spec_string ("producer",
+ "Producer",
+ "The software that converted the document",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_CREATION_DATE,
+ g_param_spec_int ("creation-date",
+ "Creation Date",
+ "The date and time the document was created",
+ 0, G_MAXINT, 0,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_MOD_DATE,
+ g_param_spec_int ("mod-date",
+ "Modification Date",
+ "The date and time the document was modified",
+ 0, G_MAXINT, 0,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_LINEARIZED,
+ g_param_spec_string ("linearized",
+ "Fast Web View Enabled",
+ "Is the document optimized for web viewing?",
+ NULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_PAGE_LAYOUT,
+ g_param_spec_enum ("page-layout",
+ "Page Layout",
+ "Initial Page Layout",
+ POPPLER_TYPE_PAGE_LAYOUT,
+ POPPLER_PAGE_LAYOUT_UNSET,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_PAGE_MODE,
+ g_param_spec_enum ("page-mode",
+ "Page Mode",
+ "Page Mode",
+ POPPLER_TYPE_PAGE_MODE,
+ POPPLER_PAGE_MODE_UNSET,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_VIEWER_PREFERENCES,
+ g_param_spec_flags ("viewer-preferences",
+ "Viewer Preferences",
+ "Viewer Preferences",
+ POPPLER_TYPE_VIEWER_PREFERENCES,
+ POPPLER_VIEWER_PREFERENCES_UNSET,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_PERMISSIONS,
+ g_param_spec_flags ("permissions",
+ "Permissions",
+ "Permissions",
+ POPPLER_TYPE_PERMISSIONS,
+ POPPLER_PERMISSIONS_FULL,
+ G_PARAM_READABLE));
+
+ g_object_class_install_property
+ (G_OBJECT_CLASS (klass),
+ PROP_METADATA,
+ g_param_spec_string ("metadata",
+ "XML Metadata",
+ "Embedded XML metadata",
+ NULL,
+ G_PARAM_READABLE));
+}
+
+static void
+poppler_document_init (PopplerDocument *document)
+{
+}
+
+/* PopplerIndexIter: For determining the index of a tree */
+struct _PopplerIndexIter
+{
+ PopplerDocument *document;
+ GooList *items;
+ int index;
+};
+
+
+POPPLER_DEFINE_BOXED_TYPE (PopplerIndexIter, poppler_index_iter,
+ poppler_index_iter_copy,
+ poppler_index_iter_free)
+
+/**
+ * poppler_index_iter_copy:
+ * @iter: a #PopplerIndexIter
+ *
+ * Creates a new #PopplerIndexIter as a copy of @iter. This must be freed with
+ * poppler_index_iter_free().
+ *
+ * Return value: a new #PopplerIndexIter
+ **/
+PopplerIndexIter *
+poppler_index_iter_copy (PopplerIndexIter *iter)
+{
+ PopplerIndexIter *new_iter;
+
+ g_return_val_if_fail (iter != NULL, NULL);
+
+ new_iter = g_new0 (PopplerIndexIter, 1);
+ *new_iter = *iter;
+ new_iter->document = (PopplerDocument *) g_object_ref (new_iter->document);
+
+ return new_iter;
+}
+
+/**
+ * poppler_index_iter_new:
+ * @document: a #PopplerDocument
+ *
+ * Returns the root #PopplerIndexIter for @document, or %NULL. This must be
+ * freed with poppler_index_iter_free().
+ *
+ * Certain documents have an index associated with them. This index can be used
+ * to help the user navigate the document, and is similar to a table of
+ * contents. Each node in the index will contain a #PopplerAction that can be
+ * displayed to the user &mdash; typically a #POPPLER_ACTION_GOTO_DEST or a
+ * #POPPLER_ACTION_URI<!-- -->.
+ *
+ * Here is a simple example of some code that walks the full index:
+ *
+ * <informalexample><programlisting>
+ * static void
+ * walk_index (PopplerIndexIter *iter)
+ * {
+ * do
+ * {
+ * /<!-- -->* Get the the action and do something with it *<!-- -->/
+ * PopplerIndexIter *child = poppler_index_iter_get_child (iter);
+ * if (child)
+ * walk_index (child);
+ * poppler_index_iter_free (child);
+ * }
+ * while (poppler_index_iter_next (iter));
+ * }
+ * ...
+ * {
+ * iter = poppler_index_iter_new (document);
+ * walk_index (iter);
+ * poppler_index_iter_free (iter);
+ * }
+ *</programlisting></informalexample>
+ *
+ * Return value: a new #PopplerIndexIter
+ **/
+PopplerIndexIter *
+poppler_index_iter_new (PopplerDocument *document)
+{
+ PopplerIndexIter *iter;
+ Outline *outline;
+ GooList *items;
+
+ outline = document->doc->getOutline();
+ if (outline == NULL)
+ return NULL;
+
+ items = outline->getItems();
+ if (items == NULL)
+ return NULL;
+
+ iter = g_new0 (PopplerIndexIter, 1);
+ iter->document = (PopplerDocument *) g_object_ref (document);
+ iter->items = items;
+ iter->index = 0;
+
+ return iter;
+}
+
+/**
+ * poppler_index_iter_get_child:
+ * @parent: a #PopplerIndexIter
+ *
+ * Returns a newly created child of @parent, or %NULL if the iter has no child.
+ * See poppler_index_iter_new() for more information on this function.
+ *
+ * Return value: a new #PopplerIndexIter
+ **/
+PopplerIndexIter *
+poppler_index_iter_get_child (PopplerIndexIter *parent)
+{
+ PopplerIndexIter *child;
+ OutlineItem *item;
+
+ g_return_val_if_fail (parent != NULL, NULL);
+
+ item = (OutlineItem *)parent->items->get (parent->index);
+ item->open ();
+ if (! (item->hasKids() && item->getKids()) )
+ return NULL;
+
+ child = g_new0 (PopplerIndexIter, 1);
+ child->document = (PopplerDocument *)g_object_ref (parent->document);
+ child->items = item->getKids ();
+
+ g_assert (child->items);
+
+ return child;
+}
+
+static gchar *
+unicode_to_char (Unicode *unicode,
+ int len)
+{
+ static UnicodeMap *uMap = NULL;
+ if (uMap == NULL) {
+ GooString *enc = new GooString("UTF-8");
+ uMap = globalParams->getUnicodeMap(enc);
+ uMap->incRefCnt ();
+ delete enc;
+ }
+
+ GooString gstr;
+ gchar buf[8]; /* 8 is enough for mapping an unicode char to a string */
+ int i, n;
+
+ for (i = 0; i < len; ++i) {
+ n = uMap->mapUnicode(unicode[i], buf, sizeof(buf));
+ gstr.append(buf, n);
+ }
+
+ return g_strdup (gstr.getCString ());
+}
+
+/**
+ * poppler_index_iter_is_open:
+ * @iter: a #PopplerIndexIter
+ *
+ * Returns whether this node should be expanded by default to the user. The
+ * document can provide a hint as to how the document's index should be expanded
+ * initially.
+ *
+ * Return value: %TRUE, if the document wants @iter to be expanded
+ **/
+gboolean
+poppler_index_iter_is_open (PopplerIndexIter *iter)
+{
+ OutlineItem *item;
+
+ item = (OutlineItem *)iter->items->get (iter->index);
+
+ return item->isOpen();
+}
+
+/**
+ * poppler_index_iter_get_action:
+ * @iter: a #PopplerIndexIter
+ *
+ * Returns the #PopplerAction associated with @iter. It must be freed with
+ * poppler_action_free().
+ *
+ * Return value: a new #PopplerAction
+ **/
+PopplerAction *
+poppler_index_iter_get_action (PopplerIndexIter *iter)
+{
+ OutlineItem *item;
+ LinkAction *link_action;
+ PopplerAction *action;
+ gchar *title;
+
+ g_return_val_if_fail (iter != NULL, NULL);
+
+ item = (OutlineItem *)iter->items->get (iter->index);
+ link_action = item->getAction ();
+
+ title = unicode_to_char (item->getTitle(),
+ item->getTitleLength ());
+
+ action = _poppler_action_new (iter->document, link_action, title);
+ g_free (title);
+
+ return action;
+}
+
+/**
+ * poppler_index_iter_next:
+ * @iter: a #PopplerIndexIter
+ *
+ * Sets @iter to point to the next action at the current level, if valid. See
+ * poppler_index_iter_new() for more information.
+ *
+ * Return value: %TRUE, if @iter was set to the next action
+ **/
+gboolean
+poppler_index_iter_next (PopplerIndexIter *iter)
+{
+ g_return_val_if_fail (iter != NULL, FALSE);
+
+ iter->index++;
+ if (iter->index >= iter->items->getLength())
+ return FALSE;
+
+ return TRUE;
+}
+
+/**
+ * poppler_index_iter_free:
+ * @iter: a #PopplerIndexIter
+ *
+ * Frees @iter.
+ **/
+void
+poppler_index_iter_free (PopplerIndexIter *iter)
+{
+ if (iter == NULL)
+ return;
+
+ g_object_unref (iter->document);
+ g_free (iter);
+
+}
+
+struct _PopplerFontsIter
+{
+ GooList *items;
+ int index;
+};
+
+POPPLER_DEFINE_BOXED_TYPE (PopplerFontsIter, poppler_fonts_iter,
+ poppler_fonts_iter_copy,
+ poppler_fonts_iter_free)
+
+const char *
+poppler_fonts_iter_get_full_name (PopplerFontsIter *iter)
+{
+ GooString *name;
+ FontInfo *info;
+
+ info = (FontInfo *)iter->items->get (iter->index);
+
+ name = info->getName();
+ if (name != NULL) {
+ return info->getName()->getCString();
+ } else {
+ return NULL;
+ }
+}
+
+const char *
+poppler_fonts_iter_get_name (PopplerFontsIter *iter)
+{
+ FontInfo *info;
+ const char *name;
+
+ name = poppler_fonts_iter_get_full_name (iter);
+ info = (FontInfo *)iter->items->get (iter->index);
+
+ if (info->getSubset() && name) {
+ while (*name && *name != '+')
+ name++;
+
+ if (*name)
+ name++;
+ }
+
+ return name;
+}
+
+const char *
+poppler_fonts_iter_get_file_name (PopplerFontsIter *iter)
+{
+ GooString *file;
+ FontInfo *info;
+
+ info = (FontInfo *)iter->items->get (iter->index);
+
+ file = info->getFile();
+ if (file != NULL) {
+ return file->getCString();
+ } else {
+ return NULL;
+ }
+}
+
+PopplerFontType
+poppler_fonts_iter_get_font_type (PopplerFontsIter *iter)
+{
+ FontInfo *info;
+
+ g_return_val_if_fail (iter != NULL, POPPLER_FONT_TYPE_UNKNOWN);
+
+ info = (FontInfo *)iter->items->get (iter->index);
+
+ return (PopplerFontType)info->getType ();
+}
+
+gboolean
+poppler_fonts_iter_is_embedded (PopplerFontsIter *iter)
+{
+ FontInfo *info;
+
+ info = (FontInfo *)iter->items->get (iter->index);
+
+ return info->getEmbedded();
+}
+
+gboolean
+poppler_fonts_iter_is_subset (PopplerFontsIter *iter)
+{
+ FontInfo *info;
+
+ info = (FontInfo *)iter->items->get (iter->index);
+
+ return info->getSubset();
+}
+
+gboolean
+poppler_fonts_iter_next (PopplerFontsIter *iter)
+{
+ g_return_val_if_fail (iter != NULL, FALSE);
+
+ iter->index++;
+ if (iter->index >= iter->items->getLength())
+ return FALSE;
+
+ return TRUE;
+}
+
+PopplerFontsIter *
+poppler_fonts_iter_copy (PopplerFontsIter *iter)
+{
+ PopplerFontsIter *new_iter;
+
+ g_return_val_if_fail (iter != NULL, NULL);
+
+ new_iter = g_new0 (PopplerFontsIter, 1);
+ *new_iter = *iter;
+
+ new_iter->items = new GooList ();
+ for (int i = 0; i < iter->items->getLength(); i++) {
+ FontInfo *info = (FontInfo *)iter->items->get(i);
+ new_iter->items->append (new FontInfo (*info));
+ }
+
+ return new_iter;
+}
+
+void
+poppler_fonts_iter_free (PopplerFontsIter *iter)
+{
+ if (iter == NULL)
+ return;
+
+ deleteGooList (iter->items, FontInfo);
+
+ g_free (iter);
+}
+
+static PopplerFontsIter *
+poppler_fonts_iter_new (GooList *items)
+{
+ PopplerFontsIter *iter;
+
+ iter = g_new0 (PopplerFontsIter, 1);
+ iter->items = items;
+ iter->index = 0;
+
+ return iter;
+}
+
+
+typedef struct _PopplerFontInfoClass PopplerFontInfoClass;
+struct _PopplerFontInfoClass
+{
+ GObjectClass parent_class;
+};
+
+G_DEFINE_TYPE (PopplerFontInfo, poppler_font_info, G_TYPE_OBJECT)
+
+static void poppler_font_info_finalize (GObject *object);
+
+
+static void
+poppler_font_info_class_init (PopplerFontInfoClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->finalize = poppler_font_info_finalize;
+}
+
+static void
+poppler_font_info_init (PopplerFontInfo *font_info)
+{
+ font_info->document = NULL;
+ font_info->scanner = NULL;
+}
+
+static void
+poppler_font_info_finalize (GObject *object)
+{
+ PopplerFontInfo *font_info = POPPLER_FONT_INFO (object);
+
+ delete font_info->scanner;
+ g_object_unref (font_info->document);
+}
+
+PopplerFontInfo *
+poppler_font_info_new (PopplerDocument *document)
+{
+ PopplerFontInfo *font_info;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), NULL);
+
+ font_info = (PopplerFontInfo *) g_object_new (POPPLER_TYPE_FONT_INFO,
+ NULL);
+ font_info->document = (PopplerDocument *) g_object_ref (document);
+ font_info->scanner = new FontInfoScanner(document->doc);
+
+ return font_info;
+}
+
+gboolean
+poppler_font_info_scan (PopplerFontInfo *font_info,
+ int n_pages,
+ PopplerFontsIter **iter)
+{
+ GooList *items;
+
+ g_return_val_if_fail (iter != NULL, FALSE);
+
+ items = font_info->scanner->scan(n_pages);
+
+ if (items == NULL) {
+ *iter = NULL;
+ } else if (items->getLength() == 0) {
+ *iter = NULL;
+ delete items;
+ } else {
+ *iter = poppler_fonts_iter_new(items);
+ }
+
+ return (items != NULL);
+}
+
+/* For backward compatibility */
+void
+poppler_font_info_free (PopplerFontInfo *font_info)
+{
+ g_return_if_fail (font_info != NULL);
+
+ g_object_unref (font_info);
+}
+
+
+/* Optional content (layers) */
+static Layer *
+layer_new (OptionalContentGroup *oc)
+{
+ Layer *layer;
+
+ layer = g_new0 (Layer, 1);
+ layer->oc = oc;
+
+ return layer;
+}
+
+static void
+layer_free (Layer *layer)
+{
+ if (!layer)
+ return;
+
+ if (layer->kids) {
+ g_list_foreach (layer->kids, (GFunc)layer_free, NULL);
+ g_list_free (layer->kids);
+ }
+
+ if (layer->label) {
+ g_free (layer->label);
+ }
+
+ g_free (layer);
+}
+
+static GList *
+get_optional_content_rbgroups (OCGs *ocg)
+{
+ Array *rb;
+ GList *groups = NULL;
+
+ rb = ocg->getRBGroupsArray ();
+
+ if (rb) {
+ int i, j;
+
+ for (i = 0; i < rb->getLength (); ++i) {
+ Object obj;
+ Array *rb_array;
+ GList *group = NULL;
+
+ rb->get (i, &obj);
+ if (!obj.isArray ()) {
+ obj.free ();
+ continue;
+ }
+
+ rb_array = obj.getArray ();
+ for (j = 0; j < rb_array->getLength (); ++j) {
+ Object ref;
+ OptionalContentGroup *oc;
+
+ rb_array->getNF (j, &ref);
+ if (!ref.isRef ()) {
+ ref.free ();
+ continue;
+ }
+
+ oc = ocg->findOcgByRef (ref.getRef ());
+ group = g_list_prepend (group, oc);
+ ref.free ();
+ }
+ obj.free ();
+
+ groups = g_list_prepend (groups, group);
+ }
+ }
+
+ return groups;
+}
+
+static GList *
+poppler_document_get_layer_rbgroup (PopplerDocument *document,
+ Layer *layer)
+{
+ GList *l;
+
+ for (l = document->layers_rbgroups; l && l->data; l = g_list_next (l)) {
+ GList *group = (GList *)l->data;
+
+ if (g_list_find (group, layer->oc))
+ return group;
+ }
+
+ return NULL;
+}
+
+static GList *
+get_optional_content_items_sorted (OCGs *ocg, Layer *parent, Array *order)
+{
+ GList *items = NULL;
+ Layer *last_item = parent;
+ int i;
+
+ for (i = 0; i < order->getLength (); ++i) {
+ Object orderItem;
+
+ order->get (i, &orderItem);
+
+ if (orderItem.isDict ()) {
+ Object ref;
+
+ order->getNF (i, &ref);
+ if (ref.isRef ()) {
+ OptionalContentGroup *oc = ocg->findOcgByRef (ref.getRef ());
+ Layer *layer = layer_new (oc);
+
+ items = g_list_prepend (items, layer);
+ last_item = layer;
+ }
+ ref.free ();
+ } else if (orderItem.isArray () && orderItem.arrayGetLength () > 0) {
+ if (!last_item) {
+ last_item = layer_new (NULL);
+ items = g_list_prepend (items, last_item);
+ }
+ last_item->kids = get_optional_content_items_sorted (ocg, last_item, orderItem.getArray ());
+ } else if (orderItem.isString ()) {
+ last_item->label = _poppler_goo_string_to_utf8 (orderItem.getString ());
+ }
+ orderItem.free ();
+ }
+
+ return g_list_reverse (items);
+}
+
+static GList *
+get_optional_content_items (OCGs *ocg)
+{
+ Array *order;
+ GList *items = NULL;
+
+ order = ocg->getOrderArray ();
+
+ if (order) {
+ items = get_optional_content_items_sorted (ocg, NULL, order);
+ } else {
+ GooList *ocgs;
+ int i;
+
+ ocgs = ocg->getOCGs ();
+
+ for (i = 0; i < ocgs->getLength (); ++i) {
+ OptionalContentGroup *oc = (OptionalContentGroup *) ocgs->get (i);
+ Layer *layer = layer_new (oc);
+
+ items = g_list_prepend (items, layer);
+ }
+
+ items = g_list_reverse (items);
+ }
+
+ return items;
+}
+
+static GList *
+poppler_document_get_layers (PopplerDocument *document)
+{
+ if (!document->layers) {
+ Catalog *catalog = document->doc->getCatalog ();
+ OCGs *ocg = catalog->getOptContentConfig ();
+
+ if (!ocg)
+ return NULL;
+
+ document->layers = get_optional_content_items (ocg);
+ document->layers_rbgroups = get_optional_content_rbgroups (ocg);
+ }
+
+ return document->layers;
+}
+
+static void
+poppler_document_layers_free (PopplerDocument *document)
+{
+ if (!document->layers)
+ return;
+
+ g_list_foreach (document->layers, (GFunc)layer_free, NULL);
+ g_list_free (document->layers);
+
+ g_list_foreach (document->layers_rbgroups, (GFunc)g_list_free, NULL);
+ g_list_free (document->layers_rbgroups);
+
+ document->layers = NULL;
+ document->layers_rbgroups = NULL;
+}
+
+/* PopplerLayersIter */
+struct _PopplerLayersIter {
+ PopplerDocument *document;
+ GList *items;
+ int index;
+};
+
+POPPLER_DEFINE_BOXED_TYPE (PopplerLayersIter, poppler_layers_iter,
+ poppler_layers_iter_copy,
+ poppler_layers_iter_free)
+
+/**
+ * poppler_layers_iter_copy:
+ * @iter: a #PopplerLayersIter
+ *
+ * Creates a new #PopplerLayersIter as a copy of @iter. This must be freed with
+ * poppler_layers_iter_free().
+ *
+ * Return value: a new #PopplerLayersIter
+ **/
+PopplerLayersIter *
+poppler_layers_iter_copy (PopplerLayersIter *iter)
+{
+ PopplerLayersIter *new_iter;
+
+ g_return_val_if_fail (iter != NULL, NULL);
+
+ new_iter = g_new0 (PopplerLayersIter, 1);
+ *new_iter = *iter;
+ new_iter->document = (PopplerDocument *) g_object_ref (new_iter->document);
+
+ return new_iter;
+}
+
+/**
+ * poppler_layers_iter_free:
+ * @iter: a #PopplerLayersIter
+ *
+ * Frees @iter.
+ **/
+void
+poppler_layers_iter_free (PopplerLayersIter *iter)
+{
+ if (iter == NULL)
+ return;
+
+ g_object_unref (iter->document);
+ g_free (iter);
+}
+
+/**
+ * poppler_layers_iter_new:
+ **/
+PopplerLayersIter *
+poppler_layers_iter_new (PopplerDocument *document)
+{
+ PopplerLayersIter *iter;
+ GList *items;
+
+ items = poppler_document_get_layers (document);
+
+ if (!items)
+ return NULL;
+
+ iter = g_new0 (PopplerLayersIter, 1);
+ iter->document = (PopplerDocument *)g_object_ref (document);
+ iter->items = items;
+
+ return iter;
+}
+
+/**
+ * poppler_layers_iter_get_child:
+ * @parent: a #PopplerLayersIter
+ *
+ * Returns a newly created child of @parent, or %NULL if the iter has no child.
+ * See poppler_layers_iter_new() for more information on this function.
+ *
+ * Return value: a new #PopplerLayersIter, or %NULL
+ **/
+PopplerLayersIter *
+poppler_layers_iter_get_child (PopplerLayersIter *parent)
+{
+ PopplerLayersIter *child;
+ Layer *layer;
+
+ g_return_val_if_fail (parent != NULL, NULL);
+
+ layer = (Layer *) g_list_nth_data (parent->items, parent->index);
+ if (!layer || !layer->kids)
+ return NULL;
+
+ child = g_new0 (PopplerLayersIter, 1);
+ child->document = (PopplerDocument *)g_object_ref (parent->document);
+ child->items = layer->kids;
+
+ g_assert (child->items);
+
+ return child;
+}
+
+/**
+ * poppler_layers_iter_get_title:
+ * @iter: a #PopplerLayersIter
+ *
+ * Returns the title associated with @iter. It must be freed with
+ * g_free().
+ *
+ * Return value: a new string containing the @iter's title or %NULL if @iter doesn't have a title.
+ * The returned string should be freed with g_free() when no longer needed.
+ **/
+gchar *
+poppler_layers_iter_get_title (PopplerLayersIter *iter)
+{
+ Layer *layer;
+
+ g_return_val_if_fail (iter != NULL, NULL);
+
+ layer = (Layer *)g_list_nth_data (iter->items, iter->index);
+
+ return layer->label ? g_strdup (layer->label) : NULL;
+}
+
+/**
+ * poppler_layers_iter_get_layer:
+ * @iter: a #PopplerLayersIter
+ *
+ * Returns the #PopplerLayer associated with @iter. It must be freed with
+ * poppler_layer_free().
+ *
+ * Return value: a new #PopplerLayer, or %NULL if there isn't any layer associated with @iter
+ **/
+PopplerLayer *
+poppler_layers_iter_get_layer (PopplerLayersIter *iter)
+{
+ Layer *layer;
+ PopplerLayer *poppler_layer = NULL;
+
+ g_return_val_if_fail (iter != NULL, NULL);
+
+ layer = (Layer *)g_list_nth_data (iter->items, iter->index);
+ if (layer->oc) {
+ GList *rb_group = NULL;
+
+ rb_group = poppler_document_get_layer_rbgroup (iter->document, layer);
+ poppler_layer = _poppler_layer_new (iter->document, layer, rb_group);
+ }
+
+ return poppler_layer;
+}
+
+/**
+ * poppler_layers_iter_next:
+ * @iter: a #PopplerLayersIter
+ *
+ * Sets @iter to point to the next action at the current level, if valid. See
+ * poppler_layers_iter_new() for more information.
+ *
+ * Return value: %TRUE, if @iter was set to the next action
+ **/
+gboolean
+poppler_layers_iter_next (PopplerLayersIter *iter)
+{
+ g_return_val_if_fail (iter != NULL, FALSE);
+
+ iter->index++;
+ if (iter->index >= (gint)g_list_length (iter->items))
+ return FALSE;
+
+ return TRUE;
+}
+
+typedef struct _PopplerPSFileClass PopplerPSFileClass;
+struct _PopplerPSFileClass
+{
+ GObjectClass parent_class;
+};
+
+G_DEFINE_TYPE (PopplerPSFile, poppler_ps_file, G_TYPE_OBJECT)
+
+static void poppler_ps_file_finalize (GObject *object);
+
+
+static void
+poppler_ps_file_class_init (PopplerPSFileClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->finalize = poppler_ps_file_finalize;
+}
+
+static void
+poppler_ps_file_init (PopplerPSFile *ps_file)
+{
+ ps_file->out = NULL;
+ ps_file->paper_width = -1;
+ ps_file->paper_height = -1;
+ ps_file->duplex = FALSE;
+}
+
+static void
+poppler_ps_file_finalize (GObject *object)
+{
+ PopplerPSFile *ps_file = POPPLER_PS_FILE (object);
+
+ delete ps_file->out;
+ g_object_unref (ps_file->document);
+ g_free (ps_file->filename);
+}
+
+/**
+ * poppler_ps_file_new:
+ * @document: a #PopplerDocument
+ * @filename: the path of the output filename
+ * @first_page: the first page to print
+ * @n_pages: the number of pages to print
+ *
+ * Create a new postscript file to render to
+ *
+ * Return value: a PopplerPSFile
+ **/
+PopplerPSFile *
+poppler_ps_file_new (PopplerDocument *document, const char *filename,
+ int first_page, int n_pages)
+{
+ PopplerPSFile *ps_file;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), NULL);
+ g_return_val_if_fail (filename != NULL, NULL);
+ g_return_val_if_fail (n_pages > 0, NULL);
+
+ ps_file = (PopplerPSFile *) g_object_new (POPPLER_TYPE_PS_FILE, NULL);
+ ps_file->document = (PopplerDocument *) g_object_ref (document);
+ ps_file->filename = g_strdup (filename);
+ ps_file->first_page = first_page + 1;
+ ps_file->last_page = first_page + 1 + n_pages - 1;
+
+ return ps_file;
+}
+
+/**
+ * poppler_ps_file_set_paper_size:
+ * @ps_file: a PopplerPSFile which was not yet printed to.
+ * @width: the paper width in 1/72 inch
+ * @height: the paper height in 1/72 inch
+ *
+ * Set the output paper size. These values will end up in the
+ * DocumentMedia, the BoundingBox DSC comments and other places in the
+ * generated PostScript.
+ *
+ **/
+void
+poppler_ps_file_set_paper_size (PopplerPSFile *ps_file,
+ double width, double height)
+{
+ g_return_if_fail (ps_file->out == NULL);
+
+ ps_file->paper_width = width;
+ ps_file->paper_height = height;
+}
+
+/**
+ * poppler_ps_file_set_duplex:
+ * @ps_file: a PopplerPSFile which was not yet printed to
+ * @duplex: whether to force duplex printing (on printers which support this)
+ *
+ * Enable or disable Duplex printing.
+ *
+ **/
+void
+poppler_ps_file_set_duplex (PopplerPSFile *ps_file, gboolean duplex)
+{
+ g_return_if_fail (ps_file->out == NULL);
+
+ ps_file->duplex = duplex;
+}
+
+/**
+ * poppler_ps_file_free:
+ * @ps_file: a PopplerPSFile
+ *
+ * Frees @ps_file
+ *
+ **/
+void
+poppler_ps_file_free (PopplerPSFile *ps_file)
+{
+ g_return_if_fail (ps_file != NULL);
+ g_object_unref (ps_file);
+}
+
+/**
+ * poppler_document_get_form_field:
+ * @document: a #PopplerDocument
+ * @id: an id of a #PopplerFormField
+ *
+ * Returns the #PopplerFormField for the given @id. It must be freed with
+ * g_object_unref()
+ *
+ * Return value: a new #PopplerFormField or NULL if not found
+ **/
+PopplerFormField *
+poppler_document_get_form_field (PopplerDocument *document,
+ gint id)
+{
+ Catalog *catalog = document->doc->getCatalog();
+ unsigned pageNum;
+ unsigned fieldNum;
+ FormPageWidgets *widgets;
+ FormWidget *field;
+
+ FormWidget::decodeID (id, &pageNum, &fieldNum);
+
+ widgets = catalog->getPage (pageNum)->getPageWidgets ();
+ if (!widgets)
+ return NULL;
+
+ field = widgets->getWidget (fieldNum);
+ if (field)
+ return _poppler_form_field_new (document, field);
+
+ return NULL;
+}
+
+gboolean
+_poppler_convert_pdf_date_to_gtime (GooString *date,
+ time_t *gdate)
+{
+ gchar *date_string;
+ gboolean retval;
+
+ if (date->hasUnicodeMarker()) {
+ date_string = g_convert (date->getCString () + 2,
+ date->getLength () - 2,
+ "UTF-8", "UTF-16BE", NULL, NULL, NULL);
+ } else {
+ date_string = g_strndup (date->getCString (), date->getLength ());
+ }
+
+ retval = poppler_date_parse (date_string, gdate);
+ g_free (date_string);
+
+ return retval;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.h
new file mode 100644
index 00000000000..2f4f50acb53
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-document.h
@@ -0,0 +1,192 @@
+/* poppler-document.h: glib interface to poppler
+ * Copyright (C) 2004, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_DOCUMENT_H__
+#define __POPPLER_DOCUMENT_H__
+
+#include <glib-object.h>
+#include "poppler.h"
+
+G_BEGIN_DECLS
+
+#define POPPLER_TYPE_DOCUMENT (poppler_document_get_type ())
+#define POPPLER_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_DOCUMENT, PopplerDocument))
+#define POPPLER_IS_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_DOCUMENT))
+
+typedef enum
+{
+ POPPLER_PAGE_LAYOUT_UNSET,
+ POPPLER_PAGE_LAYOUT_SINGLE_PAGE,
+ POPPLER_PAGE_LAYOUT_ONE_COLUMN,
+ POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT,
+ POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT,
+ POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT,
+ POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT
+} PopplerPageLayout;
+
+typedef enum
+{
+ POPPLER_PAGE_MODE_UNSET,
+ POPPLER_PAGE_MODE_NONE,
+ POPPLER_PAGE_MODE_USE_OUTLINES,
+ POPPLER_PAGE_MODE_USE_THUMBS,
+ POPPLER_PAGE_MODE_FULL_SCREEN,
+ POPPLER_PAGE_MODE_USE_OC,
+ POPPLER_PAGE_MODE_USE_ATTACHMENTS
+} PopplerPageMode;
+
+typedef enum
+{
+ POPPLER_FONT_TYPE_UNKNOWN,
+ POPPLER_FONT_TYPE_TYPE1,
+ POPPLER_FONT_TYPE_TYPE1C,
+ POPPLER_FONT_TYPE_TYPE1COT,
+ POPPLER_FONT_TYPE_TYPE3,
+ POPPLER_FONT_TYPE_TRUETYPE,
+ POPPLER_FONT_TYPE_TRUETYPEOT,
+ POPPLER_FONT_TYPE_CID_TYPE0,
+ POPPLER_FONT_TYPE_CID_TYPE0C,
+ POPPLER_FONT_TYPE_CID_TYPE0COT,
+ POPPLER_FONT_TYPE_CID_TYPE2,
+ POPPLER_FONT_TYPE_CID_TYPE2OT
+} PopplerFontType;
+
+typedef enum /*< flags >*/
+{
+ POPPLER_VIEWER_PREFERENCES_UNSET = 0,
+ POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR = 1 << 0,
+ POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR = 1 << 1,
+ POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI = 1 << 2,
+ POPPLER_VIEWER_PREFERENCES_FIT_WINDOW = 1 << 3,
+ POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW = 1 << 4,
+ POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE = 1 << 5,
+ POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL = 1 << 6
+} PopplerViewerPreferences;
+
+typedef enum /*< flags >*/
+{
+ POPPLER_PERMISSIONS_OK_TO_PRINT = 1 << 0,
+ POPPLER_PERMISSIONS_OK_TO_MODIFY = 1 << 1,
+ POPPLER_PERMISSIONS_OK_TO_COPY = 1 << 2,
+ POPPLER_PERMISSIONS_OK_TO_ADD_NOTES = 1 << 3,
+ POPPLER_PERMISSIONS_OK_TO_FILL_FORM = 1 << 4,
+ POPPLER_PERMISSIONS_FULL = (POPPLER_PERMISSIONS_OK_TO_PRINT | POPPLER_PERMISSIONS_OK_TO_MODIFY | POPPLER_PERMISSIONS_OK_TO_COPY | POPPLER_PERMISSIONS_OK_TO_ADD_NOTES | POPPLER_PERMISSIONS_OK_TO_FILL_FORM)
+
+} PopplerPermissions;
+
+
+
+GType poppler_document_get_type (void) G_GNUC_CONST;
+PopplerDocument *poppler_document_new_from_file (const char *uri,
+ const char *password,
+ GError **error);
+PopplerDocument *poppler_document_new_from_data (char *data,
+ int length,
+ const char *password,
+ GError **error);
+gboolean poppler_document_save (PopplerDocument *document,
+ const char *uri,
+ GError **error);
+gboolean poppler_document_save_a_copy (PopplerDocument *document,
+ const char *uri,
+ GError **error);
+int poppler_document_get_n_pages (PopplerDocument *document);
+PopplerPage *poppler_document_get_page (PopplerDocument *document,
+ int index);
+PopplerPage *poppler_document_get_page_by_label (PopplerDocument *document,
+ const char *label);
+/* Attachments */
+gboolean poppler_document_has_attachments (PopplerDocument *document);
+GList *poppler_document_get_attachments (PopplerDocument *document);
+
+/* Links */
+PopplerDest *poppler_document_find_dest (PopplerDocument *document,
+ const gchar *link_name);
+
+/* Form */
+PopplerFormField *poppler_document_get_form_field (PopplerDocument *document,
+ gint id);
+
+/* Interface for getting the Index of a poppler_document */
+#define POPPLER_TYPE_INDEX_ITER (poppler_index_iter_get_type ())
+GType poppler_index_iter_get_type (void) G_GNUC_CONST;
+PopplerIndexIter *poppler_index_iter_new (PopplerDocument *document);
+PopplerIndexIter *poppler_index_iter_copy (PopplerIndexIter *iter);
+void poppler_index_iter_free (PopplerIndexIter *iter);
+
+PopplerIndexIter *poppler_index_iter_get_child (PopplerIndexIter *parent);
+gboolean poppler_index_iter_is_open (PopplerIndexIter *iter);
+PopplerAction *poppler_index_iter_get_action (PopplerIndexIter *iter);
+gboolean poppler_index_iter_next (PopplerIndexIter *iter);
+
+/* Interface for getting the Fonts of a poppler_document */
+#define POPPLER_TYPE_FONT_INFO (poppler_font_info_get_type ())
+#define POPPLER_FONT_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_FONT_INFO, PopplerFontInfo))
+#define POPPLER_IS_FONT_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_FONT_INFO))
+GType poppler_font_info_get_type (void) G_GNUC_CONST;
+PopplerFontInfo *poppler_font_info_new (PopplerDocument *document);
+gboolean poppler_font_info_scan (PopplerFontInfo *font_info,
+ int n_pages,
+ PopplerFontsIter **iter);
+void poppler_font_info_free (PopplerFontInfo *font_info);
+
+#define POPPLER_TYPE_FONTS_ITER (poppler_fonts_iter_get_type ())
+GType poppler_fonts_iter_get_type (void) G_GNUC_CONST;
+PopplerFontsIter *poppler_fonts_iter_copy (PopplerFontsIter *iter);
+void poppler_fonts_iter_free (PopplerFontsIter *iter);
+const char *poppler_fonts_iter_get_name (PopplerFontsIter *iter);
+const char *poppler_fonts_iter_get_full_name (PopplerFontsIter *iter);
+const char *poppler_fonts_iter_get_file_name (PopplerFontsIter *iter);
+PopplerFontType poppler_fonts_iter_get_font_type (PopplerFontsIter *iter);
+gboolean poppler_fonts_iter_is_embedded (PopplerFontsIter *iter);
+gboolean poppler_fonts_iter_is_subset (PopplerFontsIter *iter);
+gboolean poppler_fonts_iter_next (PopplerFontsIter *iter);
+
+/* Interface for getting the Layers of a poppler_document */
+#define POPPLER_TYPE_LAYERS_ITER (poppler_layers_iter_get_type ())
+GType poppler_layers_iter_get_type (void) G_GNUC_CONST;
+PopplerLayersIter *poppler_layers_iter_new (PopplerDocument *document);
+PopplerLayersIter *poppler_layers_iter_copy (PopplerLayersIter *iter);
+void poppler_layers_iter_free (PopplerLayersIter *iter);
+
+PopplerLayersIter *poppler_layers_iter_get_child (PopplerLayersIter *parent);
+gchar *poppler_layers_iter_get_title (PopplerLayersIter *iter);
+PopplerLayer *poppler_layers_iter_get_layer (PopplerLayersIter *iter);
+gboolean poppler_layers_iter_next (PopplerLayersIter *iter);
+
+/* Export to ps */
+#define POPPLER_TYPE_PS_FILE (poppler_ps_file_get_type ())
+#define POPPLER_PS_FILE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_PS_FILE, PopplerPSFile))
+#define POPPLER_IS_PS_FILE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_PS_FILE))
+GType poppler_ps_file_get_type (void) G_GNUC_CONST;
+PopplerPSFile *poppler_ps_file_new (PopplerDocument *document,
+ const char *filename,
+ int first_page,
+ int n_pages);
+void poppler_ps_file_set_paper_size (PopplerPSFile *ps_file,
+ double width,
+ double height);
+void poppler_ps_file_set_duplex (PopplerPSFile *ps_file,
+ gboolean duplex);
+void poppler_ps_file_free (PopplerPSFile *ps_file);
+
+
+
+G_END_DECLS
+
+#endif /* __POPPLER_DOCUMENT_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c
new file mode 100644
index 00000000000..2f567c52dbc
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c
@@ -0,0 +1,607 @@
+
+/* Generated data (by glib-mkenums) */
+
+#include <config.h>
+
+#include "poppler-enums.h"
+
+/* enumerations from "poppler-action.h" */
+#include "poppler-action.h"
+GType
+poppler_action_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ACTION_UNKNOWN, "POPPLER_ACTION_UNKNOWN", "unknown" },
+ { POPPLER_ACTION_NONE, "POPPLER_ACTION_NONE", "none" },
+ { POPPLER_ACTION_GOTO_DEST, "POPPLER_ACTION_GOTO_DEST", "goto-dest" },
+ { POPPLER_ACTION_GOTO_REMOTE, "POPPLER_ACTION_GOTO_REMOTE", "goto-remote" },
+ { POPPLER_ACTION_LAUNCH, "POPPLER_ACTION_LAUNCH", "launch" },
+ { POPPLER_ACTION_URI, "POPPLER_ACTION_URI", "uri" },
+ { POPPLER_ACTION_NAMED, "POPPLER_ACTION_NAMED", "named" },
+ { POPPLER_ACTION_MOVIE, "POPPLER_ACTION_MOVIE", "movie" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerActionType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_dest_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_DEST_UNKNOWN, "POPPLER_DEST_UNKNOWN", "unknown" },
+ { POPPLER_DEST_XYZ, "POPPLER_DEST_XYZ", "xyz" },
+ { POPPLER_DEST_FIT, "POPPLER_DEST_FIT", "fit" },
+ { POPPLER_DEST_FITH, "POPPLER_DEST_FITH", "fith" },
+ { POPPLER_DEST_FITV, "POPPLER_DEST_FITV", "fitv" },
+ { POPPLER_DEST_FITR, "POPPLER_DEST_FITR", "fitr" },
+ { POPPLER_DEST_FITB, "POPPLER_DEST_FITB", "fitb" },
+ { POPPLER_DEST_FITBH, "POPPLER_DEST_FITBH", "fitbh" },
+ { POPPLER_DEST_FITBV, "POPPLER_DEST_FITBV", "fitbv" },
+ { POPPLER_DEST_NAMED, "POPPLER_DEST_NAMED", "named" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerDestType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+/* enumerations from "poppler-document.h" */
+#include "poppler-document.h"
+GType
+poppler_page_layout_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_PAGE_LAYOUT_UNSET, "POPPLER_PAGE_LAYOUT_UNSET", "unset" },
+ { POPPLER_PAGE_LAYOUT_SINGLE_PAGE, "POPPLER_PAGE_LAYOUT_SINGLE_PAGE", "single-page" },
+ { POPPLER_PAGE_LAYOUT_ONE_COLUMN, "POPPLER_PAGE_LAYOUT_ONE_COLUMN", "one-column" },
+ { POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT, "POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT", "two-column-left" },
+ { POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT, "POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT", "two-column-right" },
+ { POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT, "POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT", "two-page-left" },
+ { POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT, "POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT", "two-page-right" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerPageLayout"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_page_mode_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_PAGE_MODE_UNSET, "POPPLER_PAGE_MODE_UNSET", "unset" },
+ { POPPLER_PAGE_MODE_NONE, "POPPLER_PAGE_MODE_NONE", "none" },
+ { POPPLER_PAGE_MODE_USE_OUTLINES, "POPPLER_PAGE_MODE_USE_OUTLINES", "use-outlines" },
+ { POPPLER_PAGE_MODE_USE_THUMBS, "POPPLER_PAGE_MODE_USE_THUMBS", "use-thumbs" },
+ { POPPLER_PAGE_MODE_FULL_SCREEN, "POPPLER_PAGE_MODE_FULL_SCREEN", "full-screen" },
+ { POPPLER_PAGE_MODE_USE_OC, "POPPLER_PAGE_MODE_USE_OC", "use-oc" },
+ { POPPLER_PAGE_MODE_USE_ATTACHMENTS, "POPPLER_PAGE_MODE_USE_ATTACHMENTS", "use-attachments" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerPageMode"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_font_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_FONT_TYPE_UNKNOWN, "POPPLER_FONT_TYPE_UNKNOWN", "unknown" },
+ { POPPLER_FONT_TYPE_TYPE1, "POPPLER_FONT_TYPE_TYPE1", "type1" },
+ { POPPLER_FONT_TYPE_TYPE1C, "POPPLER_FONT_TYPE_TYPE1C", "type1c" },
+ { POPPLER_FONT_TYPE_TYPE1COT, "POPPLER_FONT_TYPE_TYPE1COT", "type1cot" },
+ { POPPLER_FONT_TYPE_TYPE3, "POPPLER_FONT_TYPE_TYPE3", "type3" },
+ { POPPLER_FONT_TYPE_TRUETYPE, "POPPLER_FONT_TYPE_TRUETYPE", "truetype" },
+ { POPPLER_FONT_TYPE_TRUETYPEOT, "POPPLER_FONT_TYPE_TRUETYPEOT", "truetypeot" },
+ { POPPLER_FONT_TYPE_CID_TYPE0, "POPPLER_FONT_TYPE_CID_TYPE0", "cid-type0" },
+ { POPPLER_FONT_TYPE_CID_TYPE0C, "POPPLER_FONT_TYPE_CID_TYPE0C", "cid-type0c" },
+ { POPPLER_FONT_TYPE_CID_TYPE0COT, "POPPLER_FONT_TYPE_CID_TYPE0COT", "cid-type0cot" },
+ { POPPLER_FONT_TYPE_CID_TYPE2, "POPPLER_FONT_TYPE_CID_TYPE2", "cid-type2" },
+ { POPPLER_FONT_TYPE_CID_TYPE2OT, "POPPLER_FONT_TYPE_CID_TYPE2OT", "cid-type2ot" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerFontType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_viewer_preferences_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GFlagsValue values[] = {
+ { POPPLER_VIEWER_PREFERENCES_UNSET, "POPPLER_VIEWER_PREFERENCES_UNSET", "unset" },
+ { POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR, "POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR", "hide-toolbar" },
+ { POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR, "POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR", "hide-menubar" },
+ { POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI, "POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI", "hide-windowui" },
+ { POPPLER_VIEWER_PREFERENCES_FIT_WINDOW, "POPPLER_VIEWER_PREFERENCES_FIT_WINDOW", "fit-window" },
+ { POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW, "POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW", "center-window" },
+ { POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE, "POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE", "display-doc-title" },
+ { POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL, "POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL", "direction-rtl" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_flags_register_static (g_intern_static_string ("PopplerViewerPreferences"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_permissions_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GFlagsValue values[] = {
+ { POPPLER_PERMISSIONS_OK_TO_PRINT, "POPPLER_PERMISSIONS_OK_TO_PRINT", "ok-to-print" },
+ { POPPLER_PERMISSIONS_OK_TO_MODIFY, "POPPLER_PERMISSIONS_OK_TO_MODIFY", "ok-to-modify" },
+ { POPPLER_PERMISSIONS_OK_TO_COPY, "POPPLER_PERMISSIONS_OK_TO_COPY", "ok-to-copy" },
+ { POPPLER_PERMISSIONS_OK_TO_ADD_NOTES, "POPPLER_PERMISSIONS_OK_TO_ADD_NOTES", "ok-to-add-notes" },
+ { POPPLER_PERMISSIONS_OK_TO_FILL_FORM, "POPPLER_PERMISSIONS_OK_TO_FILL_FORM", "ok-to-fill-form" },
+ { POPPLER_PERMISSIONS_FULL, "POPPLER_PERMISSIONS_FULL", "full" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_flags_register_static (g_intern_static_string ("PopplerPermissions"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+/* enumerations from "poppler-form-field.h" */
+#include "poppler-form-field.h"
+GType
+poppler_form_field_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_FORM_FIELD_UNKNOWN, "POPPLER_FORM_FIELD_UNKNOWN", "unknown" },
+ { POPPLER_FORM_FIELD_BUTTON, "POPPLER_FORM_FIELD_BUTTON", "button" },
+ { POPPLER_FORM_FIELD_TEXT, "POPPLER_FORM_FIELD_TEXT", "text" },
+ { POPPLER_FORM_FIELD_CHOICE, "POPPLER_FORM_FIELD_CHOICE", "choice" },
+ { POPPLER_FORM_FIELD_SIGNATURE, "POPPLER_FORM_FIELD_SIGNATURE", "signature" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerFormFieldType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_form_button_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_FORM_BUTTON_PUSH, "POPPLER_FORM_BUTTON_PUSH", "push" },
+ { POPPLER_FORM_BUTTON_CHECK, "POPPLER_FORM_BUTTON_CHECK", "check" },
+ { POPPLER_FORM_BUTTON_RADIO, "POPPLER_FORM_BUTTON_RADIO", "radio" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerFormButtonType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_form_text_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_FORM_TEXT_NORMAL, "POPPLER_FORM_TEXT_NORMAL", "normal" },
+ { POPPLER_FORM_TEXT_MULTILINE, "POPPLER_FORM_TEXT_MULTILINE", "multiline" },
+ { POPPLER_FORM_TEXT_FILE_SELECT, "POPPLER_FORM_TEXT_FILE_SELECT", "file-select" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerFormTextType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_form_choice_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_FORM_CHOICE_COMBO, "POPPLER_FORM_CHOICE_COMBO", "combo" },
+ { POPPLER_FORM_CHOICE_LIST, "POPPLER_FORM_CHOICE_LIST", "list" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerFormChoiceType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+/* enumerations from "poppler-annot.h" */
+#include "poppler-annot.h"
+GType
+poppler_annot_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ANNOT_UNKNOWN, "POPPLER_ANNOT_UNKNOWN", "unknown" },
+ { POPPLER_ANNOT_TEXT, "POPPLER_ANNOT_TEXT", "text" },
+ { POPPLER_ANNOT_LINK, "POPPLER_ANNOT_LINK", "link" },
+ { POPPLER_ANNOT_FREE_TEXT, "POPPLER_ANNOT_FREE_TEXT", "free-text" },
+ { POPPLER_ANNOT_LINE, "POPPLER_ANNOT_LINE", "line" },
+ { POPPLER_ANNOT_SQUARE, "POPPLER_ANNOT_SQUARE", "square" },
+ { POPPLER_ANNOT_CIRCLE, "POPPLER_ANNOT_CIRCLE", "circle" },
+ { POPPLER_ANNOT_POLYGON, "POPPLER_ANNOT_POLYGON", "polygon" },
+ { POPPLER_ANNOT_POLY_LINE, "POPPLER_ANNOT_POLY_LINE", "poly-line" },
+ { POPPLER_ANNOT_HIGHLIGHT, "POPPLER_ANNOT_HIGHLIGHT", "highlight" },
+ { POPPLER_ANNOT_UNDERLINE, "POPPLER_ANNOT_UNDERLINE", "underline" },
+ { POPPLER_ANNOT_SQUIGGLY, "POPPLER_ANNOT_SQUIGGLY", "squiggly" },
+ { POPPLER_ANNOT_STRIKE_OUT, "POPPLER_ANNOT_STRIKE_OUT", "strike-out" },
+ { POPPLER_ANNOT_STAMP, "POPPLER_ANNOT_STAMP", "stamp" },
+ { POPPLER_ANNOT_CARET, "POPPLER_ANNOT_CARET", "caret" },
+ { POPPLER_ANNOT_INK, "POPPLER_ANNOT_INK", "ink" },
+ { POPPLER_ANNOT_POPUP, "POPPLER_ANNOT_POPUP", "popup" },
+ { POPPLER_ANNOT_FILE_ATTACHMENT, "POPPLER_ANNOT_FILE_ATTACHMENT", "file-attachment" },
+ { POPPLER_ANNOT_SOUND, "POPPLER_ANNOT_SOUND", "sound" },
+ { POPPLER_ANNOT_MOVIE, "POPPLER_ANNOT_MOVIE", "movie" },
+ { POPPLER_ANNOT_WIDGET, "POPPLER_ANNOT_WIDGET", "widget" },
+ { POPPLER_ANNOT_SCREEN, "POPPLER_ANNOT_SCREEN", "screen" },
+ { POPPLER_ANNOT_PRINTER_MARK, "POPPLER_ANNOT_PRINTER_MARK", "printer-mark" },
+ { POPPLER_ANNOT_TRAP_NET, "POPPLER_ANNOT_TRAP_NET", "trap-net" },
+ { POPPLER_ANNOT_WATERMARK, "POPPLER_ANNOT_WATERMARK", "watermark" },
+ { POPPLER_ANNOT_3D, "POPPLER_ANNOT_3D", "3d" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerAnnotType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_annot_flag_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GFlagsValue values[] = {
+ { POPPLER_ANNOT_FLAG_UNKNOWN, "POPPLER_ANNOT_FLAG_UNKNOWN", "unknown" },
+ { POPPLER_ANNOT_FLAG_INVISIBLE, "POPPLER_ANNOT_FLAG_INVISIBLE", "invisible" },
+ { POPPLER_ANNOT_FLAG_HIDDEN, "POPPLER_ANNOT_FLAG_HIDDEN", "hidden" },
+ { POPPLER_ANNOT_FLAG_PRINT, "POPPLER_ANNOT_FLAG_PRINT", "print" },
+ { POPPLER_ANNOT_FLAG_NO_ZOOM, "POPPLER_ANNOT_FLAG_NO_ZOOM", "no-zoom" },
+ { POPPLER_ANNOT_FLAG_NO_ROTATE, "POPPLER_ANNOT_FLAG_NO_ROTATE", "no-rotate" },
+ { POPPLER_ANNOT_FLAG_NO_VIEW, "POPPLER_ANNOT_FLAG_NO_VIEW", "no-view" },
+ { POPPLER_ANNOT_FLAG_READ_ONLY, "POPPLER_ANNOT_FLAG_READ_ONLY", "read-only" },
+ { POPPLER_ANNOT_FLAG_LOCKED, "POPPLER_ANNOT_FLAG_LOCKED", "locked" },
+ { POPPLER_ANNOT_FLAG_TOGGLE_NO_VIEW, "POPPLER_ANNOT_FLAG_TOGGLE_NO_VIEW", "toggle-no-view" },
+ { POPPLER_ANNOT_FLAG_LOCKED_CONTENTS, "POPPLER_ANNOT_FLAG_LOCKED_CONTENTS", "locked-contents" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_flags_register_static (g_intern_static_string ("PopplerAnnotFlag"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_annot_markup_reply_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ANNOT_MARKUP_REPLY_TYPE_R, "POPPLER_ANNOT_MARKUP_REPLY_TYPE_R", "r" },
+ { POPPLER_ANNOT_MARKUP_REPLY_TYPE_GROUP, "POPPLER_ANNOT_MARKUP_REPLY_TYPE_GROUP", "group" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerAnnotMarkupReplyType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_annot_external_data_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_3D, "POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_3D", "3d" },
+ { POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN, "POPPLER_ANNOT_EXTERNAL_DATA_MARKUP_UNKNOWN", "unknown" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerAnnotExternalDataType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_annot_text_state_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ANNOT_TEXT_STATE_MARKED, "POPPLER_ANNOT_TEXT_STATE_MARKED", "marked" },
+ { POPPLER_ANNOT_TEXT_STATE_UNMARKED, "POPPLER_ANNOT_TEXT_STATE_UNMARKED", "unmarked" },
+ { POPPLER_ANNOT_TEXT_STATE_ACCEPTED, "POPPLER_ANNOT_TEXT_STATE_ACCEPTED", "accepted" },
+ { POPPLER_ANNOT_TEXT_STATE_REJECTED, "POPPLER_ANNOT_TEXT_STATE_REJECTED", "rejected" },
+ { POPPLER_ANNOT_TEXT_STATE_CANCELLED, "POPPLER_ANNOT_TEXT_STATE_CANCELLED", "cancelled" },
+ { POPPLER_ANNOT_TEXT_STATE_COMPLETED, "POPPLER_ANNOT_TEXT_STATE_COMPLETED", "completed" },
+ { POPPLER_ANNOT_TEXT_STATE_NONE, "POPPLER_ANNOT_TEXT_STATE_NONE", "none" },
+ { POPPLER_ANNOT_TEXT_STATE_UNKNOWN, "POPPLER_ANNOT_TEXT_STATE_UNKNOWN", "unknown" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerAnnotTextState"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_annot_free_text_quadding_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED, "POPPLER_ANNOT_FREE_TEXT_QUADDING_LEFT_JUSTIFIED", "left-justified" },
+ { POPPLER_ANNOT_FREE_TEXT_QUADDING_CENTERED, "POPPLER_ANNOT_FREE_TEXT_QUADDING_CENTERED", "centered" },
+ { POPPLER_ANNOT_FREE_TEXT_QUADDING_RIGHT_JUSTIFIED, "POPPLER_ANNOT_FREE_TEXT_QUADDING_RIGHT_JUSTIFIED", "right-justified" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerAnnotFreeTextQuadding"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+/* enumerations from "poppler.h" */
+#include "poppler.h"
+GType
+poppler_error_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ERROR_INVALID, "POPPLER_ERROR_INVALID", "invalid" },
+ { POPPLER_ERROR_ENCRYPTED, "POPPLER_ERROR_ENCRYPTED", "encrypted" },
+ { POPPLER_ERROR_OPEN_FILE, "POPPLER_ERROR_OPEN_FILE", "open-file" },
+ { POPPLER_ERROR_BAD_CATALOG, "POPPLER_ERROR_BAD_CATALOG", "bad-catalog" },
+ { POPPLER_ERROR_DAMAGED, "POPPLER_ERROR_DAMAGED", "damaged" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerError"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_orientation_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_ORIENTATION_PORTRAIT, "POPPLER_ORIENTATION_PORTRAIT", "portrait" },
+ { POPPLER_ORIENTATION_LANDSCAPE, "POPPLER_ORIENTATION_LANDSCAPE", "landscape" },
+ { POPPLER_ORIENTATION_UPSIDEDOWN, "POPPLER_ORIENTATION_UPSIDEDOWN", "upsidedown" },
+ { POPPLER_ORIENTATION_SEASCAPE, "POPPLER_ORIENTATION_SEASCAPE", "seascape" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerOrientation"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_page_transition_type_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_PAGE_TRANSITION_REPLACE, "POPPLER_PAGE_TRANSITION_REPLACE", "replace" },
+ { POPPLER_PAGE_TRANSITION_SPLIT, "POPPLER_PAGE_TRANSITION_SPLIT", "split" },
+ { POPPLER_PAGE_TRANSITION_BLINDS, "POPPLER_PAGE_TRANSITION_BLINDS", "blinds" },
+ { POPPLER_PAGE_TRANSITION_BOX, "POPPLER_PAGE_TRANSITION_BOX", "box" },
+ { POPPLER_PAGE_TRANSITION_WIPE, "POPPLER_PAGE_TRANSITION_WIPE", "wipe" },
+ { POPPLER_PAGE_TRANSITION_DISSOLVE, "POPPLER_PAGE_TRANSITION_DISSOLVE", "dissolve" },
+ { POPPLER_PAGE_TRANSITION_GLITTER, "POPPLER_PAGE_TRANSITION_GLITTER", "glitter" },
+ { POPPLER_PAGE_TRANSITION_FLY, "POPPLER_PAGE_TRANSITION_FLY", "fly" },
+ { POPPLER_PAGE_TRANSITION_PUSH, "POPPLER_PAGE_TRANSITION_PUSH", "push" },
+ { POPPLER_PAGE_TRANSITION_COVER, "POPPLER_PAGE_TRANSITION_COVER", "cover" },
+ { POPPLER_PAGE_TRANSITION_UNCOVER, "POPPLER_PAGE_TRANSITION_UNCOVER", "uncover" },
+ { POPPLER_PAGE_TRANSITION_FADE, "POPPLER_PAGE_TRANSITION_FADE", "fade" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerPageTransitionType"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_page_transition_alignment_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_PAGE_TRANSITION_HORIZONTAL, "POPPLER_PAGE_TRANSITION_HORIZONTAL", "horizontal" },
+ { POPPLER_PAGE_TRANSITION_VERTICAL, "POPPLER_PAGE_TRANSITION_VERTICAL", "vertical" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerPageTransitionAlignment"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_page_transition_direction_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_PAGE_TRANSITION_INWARD, "POPPLER_PAGE_TRANSITION_INWARD", "inward" },
+ { POPPLER_PAGE_TRANSITION_OUTWARD, "POPPLER_PAGE_TRANSITION_OUTWARD", "outward" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerPageTransitionDirection"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_selection_style_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_SELECTION_GLYPH, "POPPLER_SELECTION_GLYPH", "glyph" },
+ { POPPLER_SELECTION_WORD, "POPPLER_SELECTION_WORD", "word" },
+ { POPPLER_SELECTION_LINE, "POPPLER_SELECTION_LINE", "line" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerSelectionStyle"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+GType
+poppler_backend_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const GEnumValue values[] = {
+ { POPPLER_BACKEND_UNKNOWN, "POPPLER_BACKEND_UNKNOWN", "unknown" },
+ { POPPLER_BACKEND_SPLASH, "POPPLER_BACKEND_SPLASH", "splash" },
+ { POPPLER_BACKEND_CAIRO, "POPPLER_BACKEND_CAIRO", "cairo" },
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_enum_register_static (g_intern_static_string ("PopplerBackend"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+
+
+/* Generated data ends here */
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c.template b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c.template
new file mode 100644
index 00000000000..26a51b4c410
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.c.template
@@ -0,0 +1,44 @@
+/*** BEGIN file-header ***/
+#include <config.h>
+
+#include "poppler-enums.h"
+
+/*** END file-header ***/
+
+/*** BEGIN file-production ***/
+/* enumerations from "@filename@" */
+#include "@filename@"
+/*** END file-production ***/
+
+
+/*** BEGIN value-header ***/
+GType
+@enum_name@_get_type (void)
+{
+ static volatile gsize g_define_type_id__volatile = 0;
+
+ if (g_once_init_enter (&g_define_type_id__volatile)) {
+ static const G@Type@Value values[] = {
+/*** END value-header ***/
+
+/*** BEGIN value-production ***/
+ { @VALUENAME@, "@VALUENAME@", "@valuenick@" },
+/*** END value-production ***/
+
+/*** BEGIN value-tail ***/
+ { 0, NULL, NULL }
+ };
+ GType g_define_type_id =
+ g_@type@_register_static (g_intern_static_string ("@EnumName@"), values);
+
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);
+ }
+
+ return g_define_type_id__volatile;
+}
+
+/*** END value-tail ***/
+
+/*** BEGIN file-tail ***/
+
+/*** END file-tail ***/
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h
new file mode 100644
index 00000000000..250416f04fe
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h
@@ -0,0 +1,74 @@
+
+/* Generated data (by glib-mkenums) */
+
+
+#ifndef POPPLER_ENUMS_H
+#define POPPLER_ENUMS_H
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+/* enumerations from "poppler-action.h" */
+GType poppler_action_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ACTION_TYPE (poppler_action_type_get_type ())
+GType poppler_dest_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_DEST_TYPE (poppler_dest_type_get_type ())
+
+/* enumerations from "poppler-document.h" */
+GType poppler_page_layout_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_PAGE_LAYOUT (poppler_page_layout_get_type ())
+GType poppler_page_mode_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_PAGE_MODE (poppler_page_mode_get_type ())
+GType poppler_font_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_FONT_TYPE (poppler_font_type_get_type ())
+GType poppler_viewer_preferences_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_VIEWER_PREFERENCES (poppler_viewer_preferences_get_type ())
+GType poppler_permissions_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_PERMISSIONS (poppler_permissions_get_type ())
+
+/* enumerations from "poppler-form-field.h" */
+GType poppler_form_field_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_FORM_FIELD_TYPE (poppler_form_field_type_get_type ())
+GType poppler_form_button_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_FORM_BUTTON_TYPE (poppler_form_button_type_get_type ())
+GType poppler_form_text_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_FORM_TEXT_TYPE (poppler_form_text_type_get_type ())
+GType poppler_form_choice_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_FORM_CHOICE_TYPE (poppler_form_choice_type_get_type ())
+
+/* enumerations from "poppler-annot.h" */
+GType poppler_annot_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ANNOT_TYPE (poppler_annot_type_get_type ())
+GType poppler_annot_flag_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ANNOT_FLAG (poppler_annot_flag_get_type ())
+GType poppler_annot_markup_reply_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ANNOT_MARKUP_REPLY_TYPE (poppler_annot_markup_reply_type_get_type ())
+GType poppler_annot_external_data_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ANNOT_EXTERNAL_DATA_TYPE (poppler_annot_external_data_type_get_type ())
+GType poppler_annot_text_state_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ANNOT_TEXT_STATE (poppler_annot_text_state_get_type ())
+GType poppler_annot_free_text_quadding_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ANNOT_FREE_TEXT_QUADDING (poppler_annot_free_text_quadding_get_type ())
+
+/* enumerations from "poppler.h" */
+GType poppler_error_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ERROR (poppler_error_get_type ())
+GType poppler_orientation_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_ORIENTATION (poppler_orientation_get_type ())
+GType poppler_page_transition_type_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_PAGE_TRANSITION_TYPE (poppler_page_transition_type_get_type ())
+GType poppler_page_transition_alignment_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT (poppler_page_transition_alignment_get_type ())
+GType poppler_page_transition_direction_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_PAGE_TRANSITION_DIRECTION (poppler_page_transition_direction_get_type ())
+GType poppler_selection_style_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_SELECTION_STYLE (poppler_selection_style_get_type ())
+GType poppler_backend_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_BACKEND (poppler_backend_get_type ())
+G_END_DECLS
+
+#endif /* !POPPLER_ENUMS_H */
+
+/* Generated data ends here */
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h.template b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h.template
new file mode 100644
index 00000000000..5d056dd54c0
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-enums.h.template
@@ -0,0 +1,25 @@
+/*** BEGIN file-header ***/
+
+#ifndef POPPLER_ENUMS_H
+#define POPPLER_ENUMS_H
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+/*** END file-header ***/
+
+/*** BEGIN file-production ***/
+
+/* enumerations from "@filename@" */
+/*** END file-production ***/
+
+/*** BEGIN value-header ***/
+GType @enum_name@_get_type (void) G_GNUC_CONST;
+#define POPPLER_TYPE_@ENUMSHORT@ (@enum_name@_get_type ())
+/*** END value-header ***/
+
+/*** BEGIN file-tail ***/
+G_END_DECLS
+
+#endif /* !POPPLER_ENUMS_H */
+/*** END file-tail ***/
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h
new file mode 100644
index 00000000000..6df10361f23
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h
@@ -0,0 +1,34 @@
+/* poppler-features.h: glib interface to poppler
+ * Copyright (C) 2006, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_FEATURES_H__
+#define __POPPLER_FEATURES_H__
+
+#define POPPLER_HAS_CAIRO 1
+#define POPPLER_WITH_GDK 1
+
+#define POPPLER_MAJOR_VERSION (0)
+#define POPPLER_MINOR_VERSION (12)
+#define POPPLER_MICRO_VERSION (4)
+
+#define POPPLER_CHECK_VERSION(major,minor,micro) \
+ (POPPLER_MAJOR_VERSION > (major) || \
+ (POPPLER_MAJOR_VERSION == (major) && POPPLER_MINOR_VERSION > (minor)) || \
+ (POPPLER_MAJOR_VERSION == (major) && POPPLER_MINOR_VERSION == (minor) && POPPLER_MICRO_VERSION >= (micro)))
+
+#endif /* __POPPLER_FEATURES_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.cmake b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.cmake
new file mode 100644
index 00000000000..1f79ce4fdcd
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.cmake
@@ -0,0 +1,33 @@
+/* poppler-features.h: glib interface to poppler
+ * Copyright (C) 2006, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_FEATURES_H__
+#define __POPPLER_FEATURES_H__
+
+@CAIRO_FEATURE@
+
+#define POPPLER_MAJOR_VERSION (@POPPLER_MAJOR_VERSION@)
+#define POPPLER_MINOR_VERSION (@POPPLER_MINOR_VERSION@)
+#define POPPLER_MICRO_VERSION (@POPPLER_MICRO_VERSION@)
+
+#define POPPLER_CHECK_VERSION(major,minor,micro) \
+ (POPPLER_MAJOR_VERSION > (major) || \
+ (POPPLER_MAJOR_VERSION == (major) && POPPLER_MINOR_VERSION > (minor)) || \
+ (POPPLER_MAJOR_VERSION == (major) && POPPLER_MINOR_VERSION == (minor) && POPPLER_MICRO_VERSION >= (micro)))
+
+#endif /* __POPPLER_FEATURES_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.in b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.in
new file mode 100644
index 00000000000..99c7ed8e02d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-features.h.in
@@ -0,0 +1,34 @@
+/* poppler-features.h: glib interface to poppler
+ * Copyright (C) 2006, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_FEATURES_H__
+#define __POPPLER_FEATURES_H__
+
+@CAIRO_FEATURE@
+@GDK_FEATURE@
+
+#define POPPLER_MAJOR_VERSION (@POPPLER_MAJOR_VERSION@)
+#define POPPLER_MINOR_VERSION (@POPPLER_MINOR_VERSION@)
+#define POPPLER_MICRO_VERSION (@POPPLER_MICRO_VERSION@)
+
+#define POPPLER_CHECK_VERSION(major,minor,micro) \
+ (POPPLER_MAJOR_VERSION > (major) || \
+ (POPPLER_MAJOR_VERSION == (major) && POPPLER_MINOR_VERSION > (minor)) || \
+ (POPPLER_MAJOR_VERSION == (major) && POPPLER_MINOR_VERSION == (minor) && POPPLER_MICRO_VERSION >= (micro)))
+
+#endif /* __POPPLER_FEATURES_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.cc
new file mode 100644
index 00000000000..4ed5b9ecc2e
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.cc
@@ -0,0 +1,579 @@
+/* poppler-form-field.cc: glib interface to poppler
+ *
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ * Copyright (C) 2006 Julien Rebetez
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "poppler.h"
+#include "poppler-private.h"
+
+typedef struct _PopplerFormFieldClass PopplerFormFieldClass;
+struct _PopplerFormFieldClass
+{
+ GObjectClass parent_class;
+};
+
+G_DEFINE_TYPE (PopplerFormField, poppler_form_field, G_TYPE_OBJECT)
+
+static void
+poppler_form_field_finalize (GObject *object)
+{
+ PopplerFormField *field = POPPLER_FORM_FIELD (object);
+
+ if (field->document)
+ {
+ g_object_unref (field->document);
+ field->document = NULL;
+ }
+ field->widget = NULL;
+
+ G_OBJECT_CLASS (poppler_form_field_parent_class)->finalize (object);
+}
+
+static void
+poppler_form_field_init (PopplerFormField *field)
+{
+}
+
+static void
+poppler_form_field_class_init (PopplerFormFieldClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->finalize = poppler_form_field_finalize;
+}
+
+PopplerFormField *
+_poppler_form_field_new (PopplerDocument *document,
+ FormWidget *field)
+{
+ PopplerFormField *poppler_field;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), NULL);
+ g_return_val_if_fail (field != NULL, NULL);
+
+ poppler_field = POPPLER_FORM_FIELD (g_object_new (POPPLER_TYPE_FORM_FIELD, NULL));
+
+ poppler_field->document = (PopplerDocument *)g_object_ref (document);
+ poppler_field->widget = field;
+
+ return poppler_field;
+}
+
+/* Public methods */
+/**
+ * poppler_form_field_get_field_type:
+ * @field: a #PopplerFormField
+ *
+ * Gets the type of @field
+ *
+ * Return value: #PopplerFormFieldType of @field
+ **/
+PopplerFormFieldType
+poppler_form_field_get_field_type (PopplerFormField *field)
+{
+ g_return_val_if_fail (POPPLER_IS_FORM_FIELD (field), POPPLER_FORM_FIELD_UNKNOWN);
+
+ switch (field->widget->getType ())
+ {
+ case formButton:
+ return POPPLER_FORM_FIELD_BUTTON;
+ case formText:
+ return POPPLER_FORM_FIELD_TEXT;
+ case formChoice:
+ return POPPLER_FORM_FIELD_CHOICE;
+ case formSignature:
+ return POPPLER_FORM_FIELD_SIGNATURE;
+ default:
+ g_warning ("Unsupported Form Field Type");
+ }
+
+ return POPPLER_FORM_FIELD_UNKNOWN;
+}
+
+/**
+ * poppler_form_field_get_id:
+ * @field: a #PopplerFormField
+ *
+ * Gets the id of @field
+ *
+ * Return value: the id of @field
+ **/
+gint
+poppler_form_field_get_id (PopplerFormField *field)
+{
+ g_return_val_if_fail (POPPLER_IS_FORM_FIELD (field), -1);
+
+ return field->widget->getID ();
+}
+
+/**
+ * poppler_form_field_get_font_size
+ * @field: a #PopplerFormField
+ *
+ * Gets the font size of @field
+ *
+ * Return value: the font size of @field
+ **/
+gdouble
+poppler_form_field_get_font_size (PopplerFormField *field)
+{
+ g_return_val_if_fail (POPPLER_IS_FORM_FIELD (field), 0);
+
+ return field->widget->getFontSize ();
+}
+
+/**
+ * poppler_form_field_is_read_only
+ * @field: a #PopplerFormField
+ *
+ * Checks whether @field is read only
+ *
+ * Return value: %TRUE if @field is read only
+ **/
+gboolean
+poppler_form_field_is_read_only (PopplerFormField *field)
+{
+ g_return_val_if_fail (POPPLER_IS_FORM_FIELD (field), FALSE);
+
+ return field->widget->isReadOnly ();
+}
+
+/* Button Field */
+/**
+ * poppler_form_field_button_get_button_type
+ * @field: a #PopplerFormField
+ *
+ * Gets the button type of @field
+ *
+ * Return value: #PopplerFormButtonType of @field
+ **/
+PopplerFormButtonType
+poppler_form_field_button_get_button_type (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formButton, POPPLER_FORM_BUTTON_PUSH);
+
+ switch (static_cast<FormWidgetButton*>(field->widget)->getButtonType ())
+ {
+ case formButtonPush:
+ return POPPLER_FORM_BUTTON_PUSH;
+ case formButtonCheck:
+ return POPPLER_FORM_BUTTON_CHECK;
+ case formButtonRadio:
+ return POPPLER_FORM_BUTTON_RADIO;
+ default:
+ g_assert_not_reached ();
+ }
+}
+
+/**
+ * poppler_form_field_button_get_state
+ * @field: a #PopplerFormField
+ *
+ * Queries a #PopplerFormField and returns its current state. Returns %TRUE if
+ * @field is pressed in and %FALSE if it is raised.
+ *
+ * Return value: current state of @field
+ **/
+gboolean
+poppler_form_field_button_get_state (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formButton, FALSE);
+
+ return static_cast<FormWidgetButton*>(field->widget)->getState ();
+}
+
+/**
+ * poppler_form_field_button_set_state
+ * @field: a #PopplerFormField
+ * @state: %TRUE or %FALSE
+ *
+ * Sets the status of @field. Set to %TRUE if you want the #PopplerFormField
+ * to be 'pressed in', and %FALSE to raise it.
+ **/
+void
+poppler_form_field_button_set_state (PopplerFormField *field,
+ gboolean state)
+{
+ g_return_if_fail (field->widget->getType () == formButton);
+
+ static_cast<FormWidgetButton*>(field->widget)->setState ((GBool)state);
+}
+
+/* Text Field */
+/**
+ * poppler_form_field_text_get_text_type:
+ * @field: a #PopplerFormField
+ *
+ * Gets the text type of @field.
+ *
+ * Return value: #PopplerFormTextType of @field
+ **/
+PopplerFormTextType
+poppler_form_field_text_get_text_type (PopplerFormField *field)
+{
+ FormWidgetText *text_field;
+
+ g_return_val_if_fail (field->widget->getType () == formText, POPPLER_FORM_TEXT_NORMAL);
+
+ text_field = static_cast<FormWidgetText*>(field->widget);
+
+ if (text_field->isMultiline ())
+ return POPPLER_FORM_TEXT_MULTILINE;
+ else if (text_field->isFileSelect ())
+ return POPPLER_FORM_TEXT_FILE_SELECT;
+
+ return POPPLER_FORM_TEXT_NORMAL;
+}
+
+/**
+ * poppler_form_field_text_get_text:
+ * @field: a #PopplerFormField
+ *
+ * Retrieves the contents of @field.
+ *
+ * Return value: a new allocated string. It must be freed with g_free() when done.
+ **/
+gchar *
+poppler_form_field_text_get_text (PopplerFormField *field)
+{
+ FormWidgetText *text_field;
+ GooString *tmp;
+
+ g_return_val_if_fail (field->widget->getType () == formText, NULL);
+
+ text_field = static_cast<FormWidgetText*>(field->widget);
+ tmp = text_field->getContent ();
+
+ return tmp ? _poppler_goo_string_to_utf8 (tmp) : NULL;
+}
+
+/**
+ * poppler_form_field_text_set_text:
+ * @field: a #PopplerFormField
+ * @text: the new text
+ *
+ * Sets the text in @field to the given value, replacing the current contents.
+ **/
+void
+poppler_form_field_text_set_text (PopplerFormField *field,
+ const gchar *text)
+{
+ GooString *goo_tmp;
+ gchar *tmp;
+ gsize length = 0;
+
+ g_return_if_fail (field->widget->getType () == formText);
+
+ tmp = text ? g_convert (text, -1, "UTF-16BE", "UTF-8", NULL, &length, NULL) : NULL;
+ goo_tmp = new GooString (tmp, length);
+ g_free (tmp);
+ static_cast<FormWidgetText*>(field->widget)->setContent (goo_tmp);
+ delete goo_tmp;
+}
+
+/**
+ * poppler_form_field_text_get_max_len:
+ * @field: a #PopplerFormField
+ *
+ * Retrieves the maximum allowed length of the text in @field
+ *
+ * Return value: the maximum allowed number of characters in @field, or -1 if there is no maximum.
+ **/
+gint
+poppler_form_field_text_get_max_len (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formText, 0);
+
+ return static_cast<FormWidgetText*>(field->widget)->getMaxLen ();
+}
+
+/**
+ * poppler_form_field_text_do_spell_check:
+ * @field: a #PopplerFormField
+ *
+ * Checks whether spell checking should be done for the contents of @field
+ *
+ * Return value: %TRUE if spell checking should be done for @field
+ **/
+gboolean
+poppler_form_field_text_do_spell_check (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formText, FALSE);
+
+ return !static_cast<FormWidgetText*>(field->widget)->noSpellCheck ();
+}
+
+gboolean
+poppler_form_field_text_do_scroll (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formText, FALSE);
+
+ return !static_cast<FormWidgetText*>(field->widget)->noScroll ();
+}
+
+/**
+ * poppler_form_field_text_is_rich_text:
+ * @field: a #PopplerFormField
+ *
+ * Checks whether the contents of @field are rich text
+ *
+ * Return value: %TRUE if the contents of @field are rich text
+ **/
+gboolean
+poppler_form_field_text_is_rich_text (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formText, FALSE);
+
+ return static_cast<FormWidgetText*>(field->widget)->isRichText ();
+}
+
+/**
+ * poppler_form_field_text_is_password:
+ * @field: a #PopplerFormField
+ *
+ * Checks whether content of @field is a password and it must be hidden
+ *
+ * Return value: %TRUE if the content of @field is a password
+ **/
+gboolean
+poppler_form_field_text_is_password (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formText, FALSE);
+
+ return static_cast<FormWidgetText*>(field->widget)->isPassword ();
+}
+
+/* Choice Field */
+/**
+ * poppler_form_field_choice_get_choice_type:
+ * @field: a #PopplerFormField
+ *
+ * Gets the choice type of @field
+ *
+ * Return value: #PopplerFormChoiceType of @field
+ **/
+PopplerFormChoiceType
+poppler_form_field_choice_get_choice_type (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formChoice, POPPLER_FORM_CHOICE_COMBO);
+
+ if (static_cast<FormWidgetChoice*>(field->widget)->isCombo ())
+ return POPPLER_FORM_CHOICE_COMBO;
+ else
+ return POPPLER_FORM_CHOICE_LIST;
+}
+
+/**
+ * poppler_form_field_choice_is_editable:
+ * @field: a #PopplerFormField
+ *
+ * Checks whether @field is editable
+ *
+ * Return value: %TRUE if @field is editable
+ **/
+gboolean
+poppler_form_field_choice_is_editable (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formChoice, FALSE);
+
+ return static_cast<FormWidgetChoice*>(field->widget)->hasEdit ();
+}
+
+/**
+ * poppler_form_field_choice_can_select_multiple:
+ * @field: a #PopplerFormField
+ *
+ * Checks whether @field allows multiple choices to be selected
+ *
+ * Return value: %TRUE if @field allows multiple choices to be selected
+ **/
+gboolean
+poppler_form_field_choice_can_select_multiple (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formChoice, FALSE);
+
+ return static_cast<FormWidgetChoice*>(field->widget)->isMultiSelect ();
+}
+
+/**
+ * poppler_form_field_choice_do_spell_check:
+ * @field: a #PopplerFormField
+ *
+ * Checks whether spell checking should be done for the contents of @field
+ *
+ * Return value: %TRUE if spell checking should be done for @field
+ **/
+gboolean
+poppler_form_field_choice_do_spell_check (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formChoice, FALSE);
+
+ return !static_cast<FormWidgetChoice*>(field->widget)->noSpellCheck ();
+}
+
+gboolean
+poppler_form_field_choice_commit_on_change (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formChoice, FALSE);
+
+ return static_cast<FormWidgetChoice*>(field->widget)->commitOnSelChange ();
+}
+
+/**
+ * poppler_form_field_choice_get_n_items:
+ * @field: a #PopplerFormField
+ *
+ * Returns the number of items on @field
+ *
+ * Return value: the number of items on @field
+ **/
+gint
+poppler_form_field_choice_get_n_items (PopplerFormField *field)
+{
+ g_return_val_if_fail (field->widget->getType () == formChoice, -1);
+
+ return static_cast<FormWidgetChoice*>(field->widget)->getNumChoices ();
+}
+
+/**
+ * poppler_form_field_choice_get_item:
+ * @field: a #PopplerFormField
+ * @index: the index of the item
+ *
+ * Returns the contents of the item on @field at the given index
+ *
+ * Return value: a new allocated string. It must be freed with g_free() when done.
+ **/
+gchar *
+poppler_form_field_choice_get_item (PopplerFormField *field,
+ gint index)
+{
+ GooString *tmp;
+
+ g_return_val_if_fail (field->widget->getType () == formChoice, NULL);
+
+ tmp = static_cast<FormWidgetChoice*>(field->widget)->getChoice (index);
+ return tmp ? _poppler_goo_string_to_utf8 (tmp) : NULL;
+}
+
+/**
+ * poppler_form_field_choice_is_item_selected:
+ * @field: a #PopplerFormField
+ * @index: the index of the item
+ *
+ * Checks whether the item at the given index on @field is currently selected
+ *
+ * Return value: %TRUE if item at @index is currently selected
+ **/
+gboolean
+poppler_form_field_choice_is_item_selected (PopplerFormField *field,
+ gint index)
+{
+ g_return_val_if_fail (field->widget->getType () == formChoice, FALSE);
+
+ return static_cast<FormWidgetChoice*>(field->widget)->isSelected (index);
+}
+
+/**
+ * poppler_form_field_choice_select_item:
+ * @field: a #PopplerFormField
+ * @index: the index of the item
+ *
+ * Selects the item at the given index on @field
+ **/
+void
+poppler_form_field_choice_select_item (PopplerFormField *field,
+ gint index)
+{
+ g_return_if_fail (field->widget->getType () == formChoice);
+
+ static_cast<FormWidgetChoice*>(field->widget)->select (index);
+}
+
+/**
+ * poppler_form_field_choice_unselect_all:
+ * @field: a #PopplerFormField
+ *
+ * Unselects all the items on @field
+ **/
+void
+poppler_form_field_choice_unselect_all (PopplerFormField *field)
+{
+ g_return_if_fail (field->widget->getType () == formChoice);
+
+ static_cast<FormWidgetChoice*>(field->widget)->deselectAll ();
+}
+
+/**
+ * poppler_form_field_choice_toggle_item:
+ * @field: a #PopplerFormField
+ * @index: the index of the item
+ *
+ * Changes the state of the item at the given index
+ **/
+void
+poppler_form_field_choice_toggle_item (PopplerFormField *field,
+ gint index)
+{
+ g_return_if_fail (field->widget->getType () == formChoice);
+
+ static_cast<FormWidgetChoice*>(field->widget)->toggle (index);
+}
+
+/**
+ * poppler_form_field_choice_toggle_item:
+ * @field: a #PopplerFormField
+ * @text: the new text
+ *
+ * Sets the text in @field to the given value, replacing the current contents
+ **/
+void
+poppler_form_field_choice_set_text (PopplerFormField *field,
+ const gchar *text)
+{
+ GooString *goo_tmp;
+ gchar *tmp;
+ gsize length = 0;
+
+ g_return_if_fail (field->widget->getType () == formChoice);
+
+ tmp = text ? g_convert (text, -1, "UTF-16BE", "UTF-8", NULL, &length, NULL) : NULL;
+ goo_tmp = new GooString (tmp, length);
+ g_free (tmp);
+ static_cast<FormWidgetChoice*>(field->widget)->setEditChoice (goo_tmp);
+ delete goo_tmp;
+}
+
+/**
+ * poppler_form_field_choice_get_text:
+ * @field: a #PopplerFormField
+ *
+ * Retrieves the contents of @field.
+ *
+ * Return value: a new allocated string. It must be freed with g_free() when done.
+ **/
+gchar *
+poppler_form_field_choice_get_text (PopplerFormField *field)
+{
+ GooString *tmp;
+
+ g_return_val_if_fail (field->widget->getType () == formChoice, NULL);
+
+ tmp = static_cast<FormWidgetChoice*>(field->widget)->getEditChoice ();
+ return tmp ? _poppler_goo_string_to_utf8 (tmp) : NULL;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.h
new file mode 100644
index 00000000000..b8727e9e2c0
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-form-field.h
@@ -0,0 +1,107 @@
+/* poppler-form-field.h: glib interface to poppler
+ *
+ * Copyright (C) 2007 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_FORM_FIELD_H__
+#define __POPPLER_FORM_FIELD_H__
+
+#include <glib-object.h>
+#include "poppler.h"
+
+G_BEGIN_DECLS
+
+#define POPPLER_TYPE_FORM_FIELD (poppler_form_field_get_type ())
+#define POPPLER_FORM_FIELD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_FORM_FIELD, PopplerFormField))
+#define POPPLER_IS_FORM_FIELD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_FORM_FIELD))
+
+typedef enum
+{
+ POPPLER_FORM_FIELD_UNKNOWN,
+ POPPLER_FORM_FIELD_BUTTON,
+ POPPLER_FORM_FIELD_TEXT,
+ POPPLER_FORM_FIELD_CHOICE,
+ POPPLER_FORM_FIELD_SIGNATURE
+} PopplerFormFieldType;
+
+typedef enum
+{
+ POPPLER_FORM_BUTTON_PUSH,
+ POPPLER_FORM_BUTTON_CHECK,
+ POPPLER_FORM_BUTTON_RADIO
+} PopplerFormButtonType;
+
+typedef enum
+{
+ POPPLER_FORM_TEXT_NORMAL,
+ POPPLER_FORM_TEXT_MULTILINE,
+ POPPLER_FORM_TEXT_FILE_SELECT
+} PopplerFormTextType;
+
+typedef enum
+{
+ POPPLER_FORM_CHOICE_COMBO,
+ POPPLER_FORM_CHOICE_LIST
+} PopplerFormChoiceType;
+
+GType poppler_form_field_get_type (void) G_GNUC_CONST;
+
+PopplerFormFieldType poppler_form_field_get_field_type (PopplerFormField *field);
+gint poppler_form_field_get_id (PopplerFormField *field);
+gdouble poppler_form_field_get_font_size (PopplerFormField *field);
+gboolean poppler_form_field_is_read_only (PopplerFormField *field);
+
+/* Button Field */
+PopplerFormButtonType poppler_form_field_button_get_button_type (PopplerFormField *field);
+gboolean poppler_form_field_button_get_state (PopplerFormField *field);
+void poppler_form_field_button_set_state (PopplerFormField *field,
+ gboolean state);
+
+/* Text Field */
+PopplerFormTextType poppler_form_field_text_get_text_type (PopplerFormField *field);
+gchar *poppler_form_field_text_get_text (PopplerFormField *field);
+void poppler_form_field_text_set_text (PopplerFormField *field,
+ const gchar *text);
+gint poppler_form_field_text_get_max_len (PopplerFormField *field);
+gboolean poppler_form_field_text_do_spell_check (PopplerFormField *field);
+gboolean poppler_form_field_text_do_scroll (PopplerFormField *field);
+gboolean poppler_form_field_text_is_rich_text (PopplerFormField *field);
+gboolean poppler_form_field_text_is_password (PopplerFormField *field);
+
+/* Choice Field */
+PopplerFormChoiceType poppler_form_field_choice_get_choice_type (PopplerFormField *field);
+gboolean poppler_form_field_choice_is_editable (PopplerFormField *field);
+gboolean poppler_form_field_choice_can_select_multiple (PopplerFormField *field);
+gboolean poppler_form_field_choice_do_spell_check (PopplerFormField *field);
+gboolean poppler_form_field_choice_commit_on_change (PopplerFormField *field);
+gint poppler_form_field_choice_get_n_items (PopplerFormField *field);
+gchar *poppler_form_field_choice_get_item (PopplerFormField *field,
+ gint index);
+gboolean poppler_form_field_choice_is_item_selected (PopplerFormField *field,
+ gint index);
+void poppler_form_field_choice_select_item (PopplerFormField *field,
+ gint index);
+void poppler_form_field_choice_unselect_all (PopplerFormField *field);
+void poppler_form_field_choice_toggle_item (PopplerFormField *field,
+ gint index);
+void poppler_form_field_choice_set_text (PopplerFormField *field,
+ const gchar *text);
+gchar *poppler_form_field_choice_get_text (PopplerFormField *field);
+
+G_END_DECLS
+
+#endif /* __POPPLER_FORM_FIELD_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.cc
new file mode 100644
index 00000000000..43aa85aa204
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.cc
@@ -0,0 +1,203 @@
+/* poppler-layer.cc: glib interface to poppler
+ *
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "poppler-layer.h"
+#include "poppler-private.h"
+
+typedef struct _PopplerLayerClass PopplerLayerClass;
+struct _PopplerLayerClass
+{
+ GObjectClass parent_class;
+};
+
+G_DEFINE_TYPE (PopplerLayer, poppler_layer, G_TYPE_OBJECT)
+
+static void
+poppler_layer_finalize (GObject *object)
+{
+ PopplerLayer *poppler_layer = POPPLER_LAYER (object);
+
+ if (poppler_layer->document)
+ {
+ g_object_unref (poppler_layer->document);
+ poppler_layer->document = NULL;
+ }
+
+ if (poppler_layer->title)
+ {
+ g_free (poppler_layer->title);
+ poppler_layer->title = NULL;
+ }
+ poppler_layer->layer = NULL;
+ poppler_layer->rbgroup = NULL;
+
+ G_OBJECT_CLASS (poppler_layer_parent_class)->finalize (object);
+}
+
+static void
+poppler_layer_init (PopplerLayer *layer)
+{
+}
+
+static void
+poppler_layer_class_init (PopplerLayerClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->finalize = poppler_layer_finalize;
+}
+
+PopplerLayer *
+_poppler_layer_new (PopplerDocument *document,
+ Layer *layer,
+ GList *rbgroup)
+{
+ PopplerLayer *poppler_layer;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), NULL);
+ g_return_val_if_fail (layer != NULL, NULL);
+
+ poppler_layer = POPPLER_LAYER (g_object_new (POPPLER_TYPE_LAYER, NULL));
+
+ poppler_layer->document = (PopplerDocument *)g_object_ref (document);
+ poppler_layer->layer = layer;
+ poppler_layer->rbgroup = rbgroup;
+ poppler_layer->title = _poppler_goo_string_to_utf8 (layer->oc->getName ());
+
+ return poppler_layer;
+}
+
+/**
+ * poppler_layer_get_title
+ * @layer: a #PopplerLayer
+ *
+ * Returns the name of the layer suitable for
+ * presentation as a title in a viewer's GUI
+ *
+ * Return value: a string containing the title of the layer
+ **/
+const gchar *
+poppler_layer_get_title (PopplerLayer *poppler_layer)
+{
+ g_return_val_if_fail (POPPLER_IS_LAYER (poppler_layer), NULL);
+
+ return poppler_layer->title;
+}
+
+/**
+ * poppler_layer_is_visible
+ * @layer: a #PopplerLayer
+ *
+ * Returns whether @layer is visible
+ *
+ * Return value: %TRUE if @layer is visible
+ **/
+gboolean
+poppler_layer_is_visible (PopplerLayer *poppler_layer)
+{
+ g_return_val_if_fail (POPPLER_IS_LAYER (poppler_layer), FALSE);
+
+ return poppler_layer->layer->oc->getState () == OptionalContentGroup::On;
+}
+
+/**
+ * poppler_layer_show
+ * @layer: a #PopplerLayer
+ *
+ * Shows @layer
+ **/
+void
+poppler_layer_show (PopplerLayer *poppler_layer)
+{
+ GList *l;
+ Layer *layer;
+
+ g_return_if_fail (POPPLER_IS_LAYER (poppler_layer));
+
+ layer = poppler_layer->layer;
+
+ if (layer->oc->getState () == OptionalContentGroup::On)
+ return;
+
+ layer->oc->setState (OptionalContentGroup::On);
+
+ for (l = poppler_layer->rbgroup; l && l->data; l = g_list_next (l)) {
+ OptionalContentGroup *oc = (OptionalContentGroup *)l->data;
+
+ if (oc != layer->oc)
+ oc->setState (OptionalContentGroup::Off);
+ }
+}
+
+/**
+ * poppler_layer_hide
+ * @layer: a #PopplerLayer
+ *
+ * Hides @layer. If @layer is the parent of other nested layers,
+ * such layers will be also hidden and will be blocked until @layer
+ * is shown again
+ **/
+void
+poppler_layer_hide (PopplerLayer *poppler_layer)
+{
+ Layer *layer;
+
+ g_return_if_fail (POPPLER_IS_LAYER (poppler_layer));
+
+ layer = poppler_layer->layer;
+
+ if (layer->oc->getState () == OptionalContentGroup::Off)
+ return;
+
+ layer->oc->setState (OptionalContentGroup::Off);
+}
+
+
+/**
+ * poppler_layer_is_parent
+ * @layer: a #PopplerLayer
+ *
+ * Returns whether @layer is parent of other nested layers.
+ *
+ * Return value: %TRUE if @layer is a parent layer
+ **/
+gboolean
+poppler_layer_is_parent (PopplerLayer *poppler_layer)
+{
+ g_return_val_if_fail (POPPLER_IS_LAYER (poppler_layer), FALSE);
+
+ return poppler_layer->layer->kids != NULL;
+}
+
+/**
+ * poppler_layer_get_radio_button_group_id
+ * @layer: a #PopplerLayer
+ *
+ * Returns the numeric ID the radio button group associated with @layer.
+ *
+ * Return value: the ID of the radio button group associated with @layer,
+ * or 0 if the layer is not associated to any radio button group
+ **/
+gint
+poppler_layer_get_radio_button_group_id (PopplerLayer *poppler_layer)
+{
+ g_return_val_if_fail (POPPLER_IS_LAYER (poppler_layer), FALSE);
+
+ return GPOINTER_TO_INT (poppler_layer->rbgroup);
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.h
new file mode 100644
index 00000000000..2434e275888
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-layer.h
@@ -0,0 +1,43 @@
+/* poppler-layer.h: glib interface to poppler
+ *
+ * Copyright (C) 2008 Carlos Garcia Campos <carlosgc@gnome.org>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_LAYER_H__
+#define __POPPLER_LAYER_H__
+
+#include <glib-object.h>
+#include "poppler.h"
+
+G_BEGIN_DECLS
+
+#define POPPLER_TYPE_LAYER (poppler_layer_get_type ())
+#define POPPLER_LAYER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_LAYER, PopplerLayer))
+#define POPPLER_IS_LAYER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_LAYER))
+
+GType poppler_layer_get_type (void) G_GNUC_CONST;
+
+const gchar *poppler_layer_get_title (PopplerLayer *layer);
+gboolean poppler_layer_is_visible (PopplerLayer *layer);
+void poppler_layer_show (PopplerLayer *layer);
+void poppler_layer_hide (PopplerLayer *layer);
+gboolean poppler_layer_is_parent (PopplerLayer *layer);
+gint poppler_layer_get_radio_button_group_id (PopplerLayer *layer);
+
+G_END_DECLS
+
+#endif /* __POPPLER_LAYER_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.cc
new file mode 100644
index 00000000000..3c0ead1f431
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.cc
@@ -0,0 +1,2006 @@
+/* poppler-page.cc: glib wrapper for poppler
+ * Copyright (C) 2005, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+#include <math.h>
+
+#include <goo/GooList.h>
+#include <splash/SplashBitmap.h>
+#include <GlobalParams.h>
+#include <PDFDoc.h>
+#include <Outline.h>
+#include <ErrorCodes.h>
+#include <UnicodeMap.h>
+#include <GfxState.h>
+#include <PageTransition.h>
+
+#include "poppler.h"
+#include "poppler-private.h"
+
+enum
+{
+ PROP_0,
+ PROP_LABEL
+};
+
+typedef struct _PopplerPageClass PopplerPageClass;
+struct _PopplerPageClass
+{
+ GObjectClass parent_class;
+};
+
+G_DEFINE_TYPE (PopplerPage, poppler_page, G_TYPE_OBJECT)
+
+PopplerPage *
+_poppler_page_new (PopplerDocument *document, Page *page, int index)
+{
+ PopplerPage *poppler_page;
+
+ g_return_val_if_fail (POPPLER_IS_DOCUMENT (document), NULL);
+
+ poppler_page = (PopplerPage *) g_object_new (POPPLER_TYPE_PAGE, NULL, NULL);
+ poppler_page->document = (PopplerDocument *) g_object_ref (document);
+ poppler_page->page = page;
+ poppler_page->index = index;
+
+ return poppler_page;
+}
+
+static void
+poppler_page_finalize (GObject *object)
+{
+ PopplerPage *page = POPPLER_PAGE (object);
+
+ g_object_unref (page->document);
+ page->document = NULL;
+
+ if (page->annots != NULL)
+ delete page->annots;
+#if defined (HAVE_CAIRO)
+ if (page->text != NULL)
+ page->text->decRefCnt();
+#else
+ if (page->gfx != NULL)
+ delete page->gfx;
+ if (page->text_dev != NULL)
+ delete page->text_dev;
+#endif
+ /* page->page is owned by the document */
+}
+
+/**
+ * poppler_page_get_size:
+ * @page: A #PopplerPage
+ * @width: return location for the width of @page
+ * @height: return location for the height of @page
+ *
+ * Gets the size of @page at the current scale and rotation.
+ **/
+void
+poppler_page_get_size (PopplerPage *page,
+ double *width,
+ double *height)
+{
+ double page_width, page_height;
+ int rotate;
+
+ g_return_if_fail (POPPLER_IS_PAGE (page));
+
+ rotate = page->page->getRotate ();
+ if (rotate == 90 || rotate == 270) {
+ page_height = page->page->getCropWidth ();
+ page_width = page->page->getCropHeight ();
+ } else {
+ page_width = page->page->getCropWidth ();
+ page_height = page->page->getCropHeight ();
+ }
+
+ if (width != NULL)
+ *width = page_width;
+ if (height != NULL)
+ *height = page_height;
+}
+
+/**
+ * poppler_page_get_index:
+ * @page: a #PopplerPage
+ *
+ * Returns the index of @page
+ *
+ * Return value: index value of @page
+ **/
+int
+poppler_page_get_index (PopplerPage *page)
+{
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), 0);
+
+ return page->index;
+}
+
+/**
+ * poppler_page_get_duration:
+ * @page: a #PopplerPage
+ *
+ * Returns the duration of @page
+ *
+ * Return value: duration in seconds of @page or -1.
+ **/
+double
+poppler_page_get_duration (PopplerPage *page)
+{
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), -1);
+
+ return page->page->getDuration ();
+}
+
+/**
+ * poppler_page_get_transition:
+ * @page: a #PopplerPage
+ *
+ * Returns the transition effect of @page
+ *
+ * Return value: a #PopplerPageTransition or NULL.
+ **/
+PopplerPageTransition *
+poppler_page_get_transition (PopplerPage *page)
+{
+ PageTransition *trans;
+ PopplerPageTransition *transition;
+ Object obj;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), NULL);
+
+ trans = new PageTransition (page->page->getTrans (&obj));
+ obj.free ();
+
+ if (!trans->isOk ()) {
+ delete trans;
+ return NULL;
+ }
+
+ transition = poppler_page_transition_new ();
+
+ switch (trans->getType ())
+ {
+ case transitionReplace:
+ transition->type = POPPLER_PAGE_TRANSITION_REPLACE;
+ break;
+ case transitionSplit:
+ transition->type = POPPLER_PAGE_TRANSITION_SPLIT;
+ break;
+ case transitionBlinds:
+ transition->type = POPPLER_PAGE_TRANSITION_BLINDS;
+ break;
+ case transitionBox:
+ transition->type = POPPLER_PAGE_TRANSITION_BOX;
+ break;
+ case transitionWipe:
+ transition->type = POPPLER_PAGE_TRANSITION_WIPE;
+ break;
+ case transitionDissolve:
+ transition->type = POPPLER_PAGE_TRANSITION_DISSOLVE;
+ break;
+ case transitionGlitter:
+ transition->type = POPPLER_PAGE_TRANSITION_GLITTER;
+ break;
+ case transitionFly:
+ transition->type = POPPLER_PAGE_TRANSITION_FLY;
+ break;
+ case transitionPush:
+ transition->type = POPPLER_PAGE_TRANSITION_PUSH;
+ break;
+ case transitionCover:
+ transition->type = POPPLER_PAGE_TRANSITION_COVER;
+ break;
+ case transitionUncover:
+ transition->type = POPPLER_PAGE_TRANSITION_UNCOVER;
+ break;
+ case transitionFade:
+ transition->type = POPPLER_PAGE_TRANSITION_FADE;
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ transition->alignment = (trans->getAlignment() == transitionHorizontal) ?
+ POPPLER_PAGE_TRANSITION_HORIZONTAL :
+ POPPLER_PAGE_TRANSITION_VERTICAL;
+
+ transition->direction = (trans->getDirection() == transitionInward) ?
+ POPPLER_PAGE_TRANSITION_INWARD :
+ POPPLER_PAGE_TRANSITION_OUTWARD;
+
+ transition->duration = trans->getDuration();
+ transition->angle = trans->getAngle();
+ transition->scale = trans->getScale();
+ transition->rectangular = trans->isRectangular();
+
+ delete trans;
+
+ return transition;
+}
+
+#if !defined (HAVE_CAIRO)
+static TextOutputDev *
+poppler_page_get_text_output_dev (PopplerPage *page)
+{
+ if (page->text_dev == NULL) {
+ page->text_dev = new TextOutputDev (NULL, gTrue, gFalse, gFalse);
+
+ if (page->gfx)
+ delete page->gfx;
+ page->gfx = page->page->createGfx(page->text_dev,
+ 72.0, 72.0, 0,
+ gFalse, /* useMediaBox */
+ gTrue, /* Crop */
+ -1, -1, -1, -1,
+ gFalse, /* printing */
+ page->document->doc->getCatalog (),
+ NULL, NULL, NULL, NULL);
+
+ page->page->display(page->gfx);
+
+ page->text_dev->endPage();
+ }
+
+ return page->text_dev;
+}
+#endif /* !defined (HAVE_CAIRO) */
+
+#if defined (HAVE_CAIRO)
+
+static TextPage *
+poppler_page_get_text_page (PopplerPage *page)
+{
+ if (page->text == NULL) {
+ cairo_t *cr;
+ cairo_surface_t *surface;
+
+ surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, 1, 1);
+ cr = cairo_create (surface);
+ poppler_page_render (page, cr);
+ cairo_destroy (cr);
+ cairo_surface_destroy (surface);
+
+ }
+
+ return page->text;
+}
+
+#ifdef POPPLER_WITH_GDK
+typedef struct {
+ unsigned char *cairo_data;
+ cairo_surface_t *surface;
+ cairo_t *cairo;
+} OutputDevData;
+
+static void
+poppler_page_prepare_output_dev (PopplerPage *page,
+ double scale,
+ int rotation,
+ gboolean transparent,
+ OutputDevData *output_dev_data)
+{
+ CairoOutputDev *output_dev;
+ cairo_surface_t *surface;
+ double width, height;
+ int cairo_width, cairo_height, cairo_rowstride, rotate;
+ unsigned char *cairo_data;
+
+ rotate = rotation + page->page->getRotate ();
+ if (rotate == 90 || rotate == 270) {
+ height = page->page->getCropWidth ();
+ width = page->page->getCropHeight ();
+ } else {
+ width = page->page->getCropWidth ();
+ height = page->page->getCropHeight ();
+ }
+
+ cairo_width = (int) ceil(width * scale);
+ cairo_height = (int) ceil(height * scale);
+
+ output_dev = page->document->output_dev;
+ cairo_rowstride = cairo_width * 4;
+ cairo_data = (guchar *) gmallocn (cairo_height, cairo_rowstride);
+ if (transparent)
+ memset (cairo_data, 0x00, cairo_height * cairo_rowstride);
+ else
+ memset (cairo_data, 0xff, cairo_height * cairo_rowstride);
+
+ surface = cairo_image_surface_create_for_data(cairo_data,
+ CAIRO_FORMAT_ARGB32,
+ cairo_width, cairo_height,
+ cairo_rowstride);
+
+ output_dev_data->cairo_data = cairo_data;
+ output_dev_data->surface = surface;
+ output_dev_data->cairo = cairo_create (surface);
+ output_dev->setCairo (output_dev_data->cairo);
+}
+
+static void
+copy_cairo_surface_to_pixbuf (cairo_surface_t *surface,
+ unsigned char *data,
+ GdkPixbuf *pixbuf)
+{
+ int cairo_width, cairo_height, cairo_rowstride;
+ unsigned char *pixbuf_data, *dst, *cairo_data;
+ int pixbuf_rowstride, pixbuf_n_channels;
+ unsigned int *src;
+ int x, y;
+
+ cairo_width = cairo_image_surface_get_width (surface);
+ cairo_height = cairo_image_surface_get_height (surface);
+ cairo_rowstride = cairo_width * 4;
+ cairo_data = data;
+
+ pixbuf_data = gdk_pixbuf_get_pixels (pixbuf);
+ pixbuf_rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ pixbuf_n_channels = gdk_pixbuf_get_n_channels (pixbuf);
+
+ if (cairo_width > gdk_pixbuf_get_width (pixbuf))
+ cairo_width = gdk_pixbuf_get_width (pixbuf);
+ if (cairo_height > gdk_pixbuf_get_height (pixbuf))
+ cairo_height = gdk_pixbuf_get_height (pixbuf);
+ for (y = 0; y < cairo_height; y++)
+ {
+ src = (unsigned int *) (cairo_data + y * cairo_rowstride);
+ dst = pixbuf_data + y * pixbuf_rowstride;
+ for (x = 0; x < cairo_width; x++)
+ {
+ dst[0] = (*src >> 16) & 0xff;
+ dst[1] = (*src >> 8) & 0xff;
+ dst[2] = (*src >> 0) & 0xff;
+ if (pixbuf_n_channels == 4)
+ dst[3] = (*src >> 24) & 0xff;
+ dst += pixbuf_n_channels;
+ src++;
+ }
+ }
+}
+
+static void
+poppler_page_copy_to_pixbuf (PopplerPage *page,
+ GdkPixbuf *pixbuf,
+ OutputDevData *output_dev_data)
+{
+ copy_cairo_surface_to_pixbuf (output_dev_data->surface,
+ output_dev_data->cairo_data,
+ pixbuf);
+
+ page->document->output_dev->setCairo (NULL);
+ cairo_surface_destroy (output_dev_data->surface);
+ cairo_destroy (output_dev_data->cairo);
+ gfree (output_dev_data->cairo_data);
+}
+
+static void
+poppler_page_set_selection_alpha (PopplerPage *page,
+ double scale,
+ GdkPixbuf *pixbuf,
+ PopplerSelectionStyle style,
+ PopplerRectangle *selection)
+{
+ /* Cairo doesn't need this, since cairo generates an alpha channel. */
+}
+#endif /* POPPLER_WITH_GDK */
+
+#elif defined (HAVE_SPLASH) && defined (POPPLER_WITH_GDK)
+
+typedef struct {
+} OutputDevData;
+
+static void
+poppler_page_prepare_output_dev (PopplerPage *page,
+ double scale,
+ int rotation,
+ gboolean transparent,
+ OutputDevData *output_dev_data)
+{
+ /* pft */
+}
+
+static void
+poppler_page_copy_to_pixbuf(PopplerPage *page,
+ GdkPixbuf *pixbuf,
+ OutputDevData *data)
+{
+ SplashOutputDev *output_dev;
+ SplashBitmap *bitmap;
+ SplashColorPtr color_ptr;
+ int splash_width, splash_height, splash_rowstride;
+ int pixbuf_rowstride, pixbuf_n_channels;
+ guchar *pixbuf_data, *dst;
+ int x, y;
+
+ output_dev = page->document->output_dev;
+
+ bitmap = output_dev->getBitmap ();
+ color_ptr = bitmap->getDataPtr ();
+
+ splash_width = bitmap->getWidth ();
+ splash_height = bitmap->getHeight ();
+ splash_rowstride = bitmap->getRowSize ();
+
+ pixbuf_data = gdk_pixbuf_get_pixels (pixbuf);
+ pixbuf_rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ pixbuf_n_channels = gdk_pixbuf_get_n_channels (pixbuf);
+
+ if (splash_width > gdk_pixbuf_get_width (pixbuf))
+ splash_width = gdk_pixbuf_get_width (pixbuf);
+ if (splash_height > gdk_pixbuf_get_height (pixbuf))
+ splash_height = gdk_pixbuf_get_height (pixbuf);
+
+ SplashColorPtr pixel = new Guchar[4];
+ for (y = 0; y < splash_height; y++)
+ {
+ dst = pixbuf_data + y * pixbuf_rowstride;
+ for (x = 0; x < splash_width; x++)
+ {
+ output_dev->getBitmap()->getPixel(x, y, pixel);
+ dst[0] = pixel[0];
+ dst[1] = pixel[1];
+ dst[2] = pixel[2];
+ if (pixbuf_n_channels == 4)
+ dst[3] = 0xff;
+ dst += pixbuf_n_channels;
+ }
+ }
+ delete [] pixel;
+}
+
+static void
+poppler_page_set_selection_alpha (PopplerPage *page,
+ double scale,
+ GdkPixbuf *pixbuf,
+ PopplerSelectionStyle style,
+ PopplerRectangle *selection)
+{
+ GList *region, *l;
+ gint x, y, width, height;
+ int pixbuf_rowstride, pixbuf_n_channels;
+ guchar *pixbuf_data, *dst;
+
+ pixbuf_data = gdk_pixbuf_get_pixels (pixbuf);
+ pixbuf_rowstride = gdk_pixbuf_get_rowstride (pixbuf);
+ pixbuf_n_channels = gdk_pixbuf_get_n_channels (pixbuf);
+ width = gdk_pixbuf_get_width (pixbuf);
+ height = gdk_pixbuf_get_height (pixbuf);
+
+ if (pixbuf_n_channels != 4)
+ return;
+
+ for (y = 0; y < height; y++) {
+ dst = pixbuf_data + y * pixbuf_rowstride;
+ for (x = 0; x < width; x++) {
+ dst[3] = 0x00;
+ dst += pixbuf_n_channels;
+ }
+ }
+
+ region = poppler_page_get_selection_region (page, scale, style, selection);
+
+ for (l = region; l; l = g_list_next (l)) {
+ PopplerRectangle *rectangle = (PopplerRectangle *)l->data;
+ GdkRectangle rect;
+
+ rect.x = (gint)rectangle->x1;
+ rect.y = (gint)rectangle->y1;
+ rect.width = (gint) (rectangle->x2 - rectangle->x1);
+ rect.height = (gint) (rectangle->y2 - rectangle->y1);
+
+ for (y = 0; y < rect.height; y++) {
+ dst = pixbuf_data + (rect.y + y) * pixbuf_rowstride +
+ rect.x * pixbuf_n_channels;
+ for (x = 0; x < rect.width; x++) {
+ dst[3] = 0xff;
+ dst += pixbuf_n_channels;
+ }
+ }
+ }
+
+ poppler_page_selection_region_free (region);
+}
+
+#endif /* HAVE_SPLASH */
+
+static GBool
+poppler_print_annot_cb (Annot *annot, void *user_data)
+{
+ if (annot->getFlags () & Annot::flagPrint)
+ return gTrue;
+ return (annot->getType() == Annot::typeWidget);
+}
+
+#if defined (HAVE_CAIRO)
+
+static void
+_poppler_page_render (PopplerPage *page,
+ cairo_t *cairo,
+ GBool printing)
+{
+ CairoOutputDev *output_dev;
+
+ g_return_if_fail (POPPLER_IS_PAGE (page));
+
+ output_dev = page->document->output_dev;
+ output_dev->setCairo (cairo);
+ output_dev->setPrinting (printing);
+
+ if (!printing)
+ output_dev->setTextPage (page->text);
+
+ /* NOTE: instead of passing -1 we should/could use cairo_clip_extents()
+ * to get a bounding box */
+ cairo_save (cairo);
+ page->page->displaySlice(output_dev,
+ 72.0, 72.0, 0,
+ gFalse, /* useMediaBox */
+ gTrue, /* Crop */
+ -1, -1,
+ -1, -1,
+ printing,
+ page->document->doc->getCatalog (),
+ NULL, NULL,
+ printing ? poppler_print_annot_cb : NULL, NULL);
+ cairo_restore (cairo);
+
+ output_dev->setCairo (NULL);
+ output_dev->setTextPage (NULL);
+}
+
+/**
+ * poppler_page_render:
+ * @page: the page to render from
+ * @cairo: cairo context to render to
+ *
+ * Render the page to the given cairo context. This function
+ * is for rendering a page that will be displayed. If you want
+ * to render a page that will be printed use
+ * poppler_page_render_for_printing() instead
+ **/
+void
+poppler_page_render (PopplerPage *page,
+ cairo_t *cairo)
+{
+ g_return_if_fail (POPPLER_IS_PAGE (page));
+
+ if (!page->text)
+ page->text = new TextPage(gFalse);
+
+ _poppler_page_render (page, cairo, gFalse);
+}
+
+/**
+ * poppler_page_render_for_printing:
+ * @page: the page to render from
+ * @cairo: cairo context to render to
+ *
+ * Render the page to the given cairo context for printing.
+ **/
+void
+poppler_page_render_for_printing (PopplerPage *page,
+ cairo_t *cairo)
+{
+ g_return_if_fail (POPPLER_IS_PAGE (page));
+
+ _poppler_page_render (page, cairo, gTrue);
+}
+
+static cairo_surface_t *
+create_surface_from_thumbnail_data (guchar *data,
+ gint width,
+ gint height,
+ gint rowstride)
+{
+ guchar *cairo_pixels;
+ gint cairo_stride;
+ cairo_surface_t *surface;
+ int j;
+
+ surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, width, height);
+ if (cairo_surface_status (surface))
+ return NULL;
+
+ cairo_pixels = cairo_image_surface_get_data (surface);
+ cairo_stride = cairo_image_surface_get_stride (surface);
+
+ for (j = height; j; j--) {
+ guchar *p = data;
+ guchar *q = cairo_pixels;
+ guchar *end = p + 3 * width;
+
+ while (p < end) {
+#if G_BYTE_ORDER == G_LITTLE_ENDIAN
+ q[0] = p[2];
+ q[1] = p[1];
+ q[2] = p[0];
+#else
+ q[1] = p[0];
+ q[2] = p[1];
+ q[3] = p[2];
+#endif
+ p += 3;
+ q += 4;
+ }
+
+ data += rowstride;
+ cairo_pixels += cairo_stride;
+ }
+
+ return surface;
+}
+
+
+/**
+ * poppler_page_get_thumbnail:
+ * @page: the #PopperPage to get the thumbnail for
+ *
+ * Get the embedded thumbnail for the specified page. If the document
+ * doesn't have an embedded thumbnail for the page, this function
+ * returns %NULL.
+ *
+ * Return value: the tumbnail as a cairo_surface_t or %NULL if the document
+ * doesn't have a thumbnail for this page.
+ **/
+cairo_surface_t *
+poppler_page_get_thumbnail (PopplerPage *page)
+{
+ unsigned char *data;
+ int width, height, rowstride;
+ cairo_surface_t *surface;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), FALSE);
+
+ if (!page->page->loadThumb (&data, &width, &height, &rowstride))
+ return NULL;
+
+ surface = create_surface_from_thumbnail_data (data, width, height, rowstride);
+ gfree (data);
+
+ return surface;
+}
+
+/**
+ * poppler_page_render_selection:
+ * @page: the #PopplerPage for which to render selection
+ * @cairo: cairo context to render to
+ * @selection: start and end point of selection as a rectangle
+ * @old_selection: previous selection
+ * @style: a #PopplerSelectionStyle
+ * @glyph_color: color to use for drawing glyphs
+ * @background_color: color to use for the selection background
+ *
+ * Render the selection specified by @selection for @page to
+ * the given cairo context. The selection will be rendered, using
+ * @glyph_color for the glyphs and @background_color for the selection
+ * background.
+ *
+ * If non-NULL, @old_selection specifies the selection that is already
+ * rendered to @cairo, in which case this function will (some day)
+ * only render the changed part of the selection.
+ **/
+void
+poppler_page_render_selection (PopplerPage *page,
+ cairo_t *cairo,
+ PopplerRectangle *selection,
+ PopplerRectangle *old_selection,
+ PopplerSelectionStyle style,
+ PopplerColor *glyph_color,
+ PopplerColor *background_color)
+{
+ CairoOutputDev *output_dev;
+ TextPage *text;
+ SelectionStyle selection_style = selectionStyleGlyph;
+ PDFRectangle pdf_selection(selection->x1, selection->y1,
+ selection->x2, selection->y2);
+
+ GfxColor gfx_background_color = {
+ {
+ background_color->red,
+ background_color->green,
+ background_color->blue
+ }
+ };
+ GfxColor gfx_glyph_color = {
+ {
+ glyph_color->red,
+ glyph_color->green,
+ glyph_color->blue
+ }
+ };
+
+ switch (style)
+ {
+ case POPPLER_SELECTION_GLYPH:
+ selection_style = selectionStyleGlyph;
+ break;
+ case POPPLER_SELECTION_WORD:
+ selection_style = selectionStyleWord;
+ break;
+ case POPPLER_SELECTION_LINE:
+ selection_style = selectionStyleLine;
+ break;
+ }
+
+ output_dev = page->document->output_dev;
+ output_dev->setCairo (cairo);
+
+ text = poppler_page_get_text_page (page);
+ text->drawSelection (output_dev, 1.0, 0,
+ &pdf_selection, selection_style,
+ &gfx_glyph_color, &gfx_background_color);
+
+ output_dev->setCairo (NULL);
+}
+
+#endif /* HAVE_CAIRO */
+
+#ifdef POPPLER_WITH_GDK
+static void
+_poppler_page_render_to_pixbuf (PopplerPage *page,
+ int src_x, int src_y,
+ int src_width, int src_height,
+ double scale,
+ int rotation,
+ GBool printing,
+ GdkPixbuf *pixbuf)
+{
+ OutputDevData data;
+
+ poppler_page_prepare_output_dev (page, scale, rotation, FALSE, &data);
+
+ page->page->displaySlice(page->document->output_dev,
+ 72.0 * scale, 72.0 * scale,
+ rotation,
+ gFalse, /* useMediaBox */
+ gTrue, /* Crop */
+ src_x, src_y,
+ src_width, src_height,
+ printing,
+ page->document->doc->getCatalog (),
+ NULL, NULL,
+ printing ? poppler_print_annot_cb : NULL, NULL);
+
+ poppler_page_copy_to_pixbuf (page, pixbuf, &data);
+}
+
+/**
+ * poppler_page_render_to_pixbuf:
+ * @page: the page to render from
+ * @src_x: x coordinate of upper left corner
+ * @src_y: y coordinate of upper left corner
+ * @src_width: width of rectangle to render
+ * @src_height: height of rectangle to render
+ * @scale: scale specified as pixels per point
+ * @rotation: rotate the document by the specified degree
+ * @pixbuf: pixbuf to render into
+ *
+ * First scale the document to match the specified pixels per point,
+ * then render the rectangle given by the upper left corner at
+ * (src_x, src_y) and src_width and src_height.
+ * This function is for rendering a page that will be displayed.
+ * If you want to render a page that will be printed use
+ * poppler_page_render_to_pixbuf_for_printing() instead
+ **/
+void
+poppler_page_render_to_pixbuf (PopplerPage *page,
+ int src_x, int src_y,
+ int src_width, int src_height,
+ double scale,
+ int rotation,
+ GdkPixbuf *pixbuf)
+{
+ g_return_if_fail (POPPLER_IS_PAGE (page));
+ g_return_if_fail (scale > 0.0);
+ g_return_if_fail (pixbuf != NULL);
+
+ _poppler_page_render_to_pixbuf (page, src_x, src_y,
+ src_width, src_height,
+ scale, rotation,
+ gFalse,
+ pixbuf);
+}
+
+/**
+ * poppler_page_render_to_pixbuf_for_printing:
+ * @page: the page to render from
+ * @src_x: x coordinate of upper left corner
+ * @src_y: y coordinate of upper left corner
+ * @src_width: width of rectangle to render
+ * @src_height: height of rectangle to render
+ * @scale: scale specified as pixels per point
+ * @rotation: rotate the document by the specified degree
+ * @pixbuf: pixbuf to render into
+ *
+ * First scale the document to match the specified pixels per point,
+ * then render the rectangle given by the upper left corner at
+ * (src_x, src_y) and src_width and src_height.
+ * This function is for rendering a page that will be printed.
+ **/
+void
+poppler_page_render_to_pixbuf_for_printing (PopplerPage *page,
+ int src_x, int src_y,
+ int src_width, int src_height,
+ double scale,
+ int rotation,
+ GdkPixbuf *pixbuf)
+{
+ g_return_if_fail (POPPLER_IS_PAGE (page));
+ g_return_if_fail (scale > 0.0);
+ g_return_if_fail (pixbuf != NULL);
+
+ _poppler_page_render_to_pixbuf (page, src_x, src_y,
+ src_width, src_height,
+ scale, rotation,
+ gTrue,
+ pixbuf);
+}
+
+/**
+ * poppler_page_get_thumbnail_pixbuf:
+ * @page: the #PopperPage to get the thumbnail for
+ *
+ * Get the embedded thumbnail for the specified page. If the document
+ * doesn't have an embedded thumbnail for the page, this function
+ * returns %NULL.
+ *
+ * Return value: the tumbnail as a #GdkPixbuf or %NULL if the document
+ * doesn't have a thumbnail for this page.
+ **/
+GdkPixbuf *
+poppler_page_get_thumbnail_pixbuf (PopplerPage *page)
+{
+ unsigned char *data;
+ int width, height, rowstride;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), FALSE);
+
+ if (!page->page->loadThumb (&data, &width, &height, &rowstride))
+ return NULL;
+
+ return gdk_pixbuf_new_from_data (data, GDK_COLORSPACE_RGB,
+ FALSE, 8, width, height, rowstride,
+ (GdkPixbufDestroyNotify)gfree, NULL);
+}
+
+/**
+ * poppler_page_render_selection_to_pixbuf:
+ * @page: the #PopplerPage for which to render selection
+ * @scale: scale specified as pixels per point
+ * @rotation: rotate the document by the specified degree
+ * @pixbuf: pixbuf to render to
+ * @selection: start and end point of selection as a rectangle
+ * @old_selection: previous selection
+ * @style: a #PopplerSelectionStyle
+ * @glyph_color: color to use for drawing glyphs
+ * @background_color: color to use for the selection background
+ *
+ * Render the selection specified by @selection for @page into
+ * @pixbuf. The selection will be rendered at @scale, using
+ * @glyph_color for the glyphs and @background_color for the selection
+ * background.
+ *
+ * If non-NULL, @old_selection specifies the selection that is already
+ * rendered in @pixbuf, in which case this function will (some day)
+ * only render the changed part of the selection.
+ **/
+void
+poppler_page_render_selection_to_pixbuf (PopplerPage *page,
+ gdouble scale,
+ int rotation,
+ GdkPixbuf *pixbuf,
+ PopplerRectangle *selection,
+ PopplerRectangle *old_selection,
+ PopplerSelectionStyle style,
+ GdkColor *glyph_color,
+ GdkColor *background_color)
+{
+ OutputDev *output_dev;
+ OutputDevData data;
+ SelectionStyle selection_style = selectionStyleGlyph;
+ PDFRectangle pdf_selection(selection->x1, selection->y1,
+ selection->x2, selection->y2);
+
+ GfxColor gfx_background_color = {
+ {
+ background_color->red,
+ background_color->green,
+ background_color->blue
+ }
+ };
+ GfxColor gfx_glyph_color = {
+ {
+ glyph_color->red,
+ glyph_color->green,
+ glyph_color->blue
+ }
+ };
+
+ switch (style)
+ {
+ case POPPLER_SELECTION_GLYPH:
+ selection_style = selectionStyleGlyph;
+ break;
+ case POPPLER_SELECTION_WORD:
+ selection_style = selectionStyleWord;
+ break;
+ case POPPLER_SELECTION_LINE:
+ selection_style = selectionStyleLine;
+ break;
+ }
+
+ output_dev = page->document->output_dev;
+
+ poppler_page_prepare_output_dev (page, scale, rotation, TRUE, &data);
+
+#if defined (HAVE_CAIRO)
+ TextPage *text;
+
+ text = poppler_page_get_text_page (page);
+ text->drawSelection (output_dev, scale, rotation,
+ &pdf_selection, selection_style,
+ &gfx_glyph_color, &gfx_background_color);
+#else
+ TextOutputDev *text_dev;
+
+ text_dev = poppler_page_get_text_output_dev (page);
+ text_dev->drawSelection (output_dev, scale, rotation,
+ &pdf_selection, selection_style,
+ &gfx_glyph_color, &gfx_background_color);
+ /* We'll need a function to destroy page->text_dev and page->gfx
+ * when the application wants to get rid of them.
+ *
+ * Two improvements: 1) make GfxFont refcounted and let TextPage and
+ * friends hold a reference to the GfxFonts they need so we can free
+ * up Gfx early. 2) use a TextPage directly when rendering the page
+ * so we don't have to use TextOutputDev and render a second
+ * time. */
+#endif
+
+ poppler_page_copy_to_pixbuf (page, pixbuf, &data);
+
+ poppler_page_set_selection_alpha (page, scale, pixbuf, style, selection);
+}
+
+#endif /* POPPLER_WITH_GDK */
+
+/**
+ * poppler_page_get_thumbnail_size:
+ * @page: A #PopplerPage
+ * @width: return location for width
+ * @height: return location for height
+ *
+ * Returns %TRUE if @page has a thumbnail associated with it. It also
+ * fills in @width and @height with the width and height of the
+ * thumbnail. The values of width and height are not changed if no
+ * appropriate thumbnail exists.
+ *
+ * Return value: %TRUE, if @page has a thumbnail associated with it.
+ **/
+gboolean
+poppler_page_get_thumbnail_size (PopplerPage *page,
+ int *width,
+ int *height)
+{
+ Object thumb;
+ Dict *dict;
+ gboolean retval = FALSE;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), FALSE);
+ g_return_val_if_fail (width != NULL, FALSE);
+ g_return_val_if_fail (height != NULL, FALSE);
+
+ page->page->getThumb (&thumb);
+ if (!thumb.isStream ())
+ {
+ thumb.free ();
+ return FALSE;
+ }
+
+ dict = thumb.streamGetDict();
+
+ /* Theoretically, this could succeed and you would still fail when
+ * loading the thumb */
+ if (dict->lookupInt ("Width", "W", width) &&
+ dict->lookupInt ("Height", "H", height))
+ retval = TRUE;
+
+ thumb.free ();
+
+ return retval;
+}
+
+/**
+ * poppler_page_get_selection_region:
+ * @page: a #PopplerPage
+ * @scale: scale specified as pixels per point
+ * @style: a #PopplerSelectionStyle
+ * @selection: start and end point of selection as a rectangle
+ *
+ * Returns a region containing the area that would be rendered by
+ * poppler_page_render_selection() or
+ * poppler_page_render_selection_to_pixbuf() as a #GList of
+ * #PopplerRectangle. The returned list must be freed with
+ * poppler_page_selection_region_free().
+ *
+ * Return value: a #GList of #PopplerRectangle
+ **/
+GList *
+poppler_page_get_selection_region (PopplerPage *page,
+ gdouble scale,
+ PopplerSelectionStyle style,
+ PopplerRectangle *selection)
+{
+ PDFRectangle poppler_selection;
+ SelectionStyle selection_style = selectionStyleGlyph;
+ GooList *list;
+ GList *region = NULL;
+ int i;
+
+ poppler_selection.x1 = selection->x1;
+ poppler_selection.y1 = selection->y1;
+ poppler_selection.x2 = selection->x2;
+ poppler_selection.y2 = selection->y2;
+
+ switch (style)
+ {
+ case POPPLER_SELECTION_GLYPH:
+ selection_style = selectionStyleGlyph;
+ break;
+ case POPPLER_SELECTION_WORD:
+ selection_style = selectionStyleWord;
+ break;
+ case POPPLER_SELECTION_LINE:
+ selection_style = selectionStyleLine;
+ break;
+ }
+
+#if defined (HAVE_CAIRO)
+ TextPage *text;
+
+ text = poppler_page_get_text_page (page);
+ list = text->getSelectionRegion(&poppler_selection,
+ selection_style, scale);
+#else
+ TextOutputDev *text_dev;
+
+ text_dev = poppler_page_get_text_output_dev (page);
+ list = text_dev->getSelectionRegion(&poppler_selection,
+ selection_style, scale);
+#endif
+
+ for (i = 0; i < list->getLength(); i++) {
+ PDFRectangle *selection_rect = (PDFRectangle *) list->get(i);
+ PopplerRectangle *rect;
+
+ rect = poppler_rectangle_new ();
+
+ rect->x1 = selection_rect->x1;
+ rect->y1 = selection_rect->y1;
+ rect->x2 = selection_rect->x2;
+ rect->y2 = selection_rect->y2;
+
+ region = g_list_prepend (region, rect);
+
+ delete selection_rect;
+ }
+
+ delete list;
+
+ return g_list_reverse (region);
+}
+
+void
+poppler_page_selection_region_free (GList *region)
+{
+ if (!region)
+ return;
+
+ g_list_foreach (region, (GFunc)poppler_rectangle_free, NULL);
+ g_list_free (region);
+}
+
+/**
+ * poppler_page_get_text:
+ * @page: a #PopplerPage
+ * @style: a #PopplerSelectionStyle
+ * @selection: the #PopplerRectangle including the text
+ *
+ * Retrieves the contents of the specified @selection as text.
+ *
+ * Return value: a pointer to the contents of the @selection
+ * as a string
+ **/
+char *
+poppler_page_get_text (PopplerPage *page,
+ PopplerSelectionStyle style,
+ PopplerRectangle *selection)
+{
+ GooString *sel_text;
+ double height;
+ char *result;
+ SelectionStyle selection_style = selectionStyleGlyph;
+ PDFRectangle pdf_selection;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), FALSE);
+ g_return_val_if_fail (selection != NULL, NULL);
+
+ poppler_page_get_size (page, NULL, &height);
+ pdf_selection.x1 = selection->x1;
+ pdf_selection.y1 = height - selection->y2;
+ pdf_selection.x2 = selection->x2;
+ pdf_selection.y2 = height - selection->y1;
+
+ switch (style)
+ {
+ case POPPLER_SELECTION_GLYPH:
+ selection_style = selectionStyleGlyph;
+ break;
+ case POPPLER_SELECTION_WORD:
+ selection_style = selectionStyleWord;
+ break;
+ case POPPLER_SELECTION_LINE:
+ selection_style = selectionStyleLine;
+ break;
+ }
+
+#if defined (HAVE_CAIRO)
+ TextPage *text;
+
+ text = poppler_page_get_text_page (page);
+ sel_text = text->getSelectionText (&pdf_selection, selection_style);
+#else
+ TextOutputDev *text_dev;
+
+ text_dev = poppler_page_get_text_output_dev (page);
+ sel_text = text_dev->getSelectionText (&pdf_selection, selection_style);
+#endif
+
+ result = g_strdup (sel_text->getCString ());
+ delete sel_text;
+
+ return result;
+}
+
+/**
+ * poppler_page_find_text:
+ * @page: a #PopplerPage
+ * @text: the text to search for (UTF-8 encoded)
+ *
+ * A #GList of rectangles for each occurance of the text on the page.
+ * The coordinates are in PDF points.
+ *
+ * Return value: a #GList of PopplerRectangle,
+ **/
+GList *
+poppler_page_find_text (PopplerPage *page,
+ const char *text)
+{
+ PopplerRectangle *match;
+ GList *matches;
+ double xMin, yMin, xMax, yMax;
+ gunichar *ucs4;
+ glong ucs4_len;
+ double height;
+#if defined (HAVE_CAIRO)
+ TextPage *text_dev;
+#else
+ TextOutputDev *text_dev;
+#endif
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), FALSE);
+ g_return_val_if_fail (text != NULL, FALSE);
+
+#if defined (HAVE_CAIRO)
+ text_dev = poppler_page_get_text_page (page);
+#else
+ text_dev = new TextOutputDev (NULL, gTrue, gFalse, gFalse);
+ page->page->display (text_dev, 72, 72, 0,
+ gFalse, gTrue, gFalse,
+ page->document->doc->getCatalog());
+#endif
+
+ ucs4 = g_utf8_to_ucs4_fast (text, -1, &ucs4_len);
+ poppler_page_get_size (page, NULL, &height);
+
+ matches = NULL;
+ xMin = 0;
+ yMin = 0;
+
+ while (text_dev->findText (ucs4, ucs4_len,
+ gFalse, gTrue, // startAtTop, stopAtBottom
+ gTrue, gFalse, // startAtLast, stopAtLast
+ gFalse, gFalse, // caseSensitive, backwards
+ &xMin, &yMin, &xMax, &yMax))
+ {
+ match = g_new (PopplerRectangle, 1);
+ match->x1 = xMin;
+ match->y1 = height - yMax;
+ match->x2 = xMax;
+ match->y2 = height - yMin;
+ matches = g_list_prepend (matches, match);
+ }
+
+#if !defined (HAVE_CAIRO)
+ delete text_dev;
+#endif
+
+ g_free (ucs4);
+
+ return g_list_reverse (matches);
+}
+
+#if defined (HAVE_CAIRO)
+
+static CairoImageOutputDev *
+poppler_page_get_image_output_dev (PopplerPage *page,
+ GBool (*imgDrawDeviceCbk)(int img_id, void *data),
+ void *imgDrawCbkData)
+{
+ CairoImageOutputDev *image_dev;
+ Gfx *gfx;
+
+ image_dev = new CairoImageOutputDev ();
+
+ if (imgDrawDeviceCbk) {
+ image_dev->setImageDrawDecideCbk (imgDrawDeviceCbk,
+ imgDrawCbkData);
+ }
+
+ gfx = page->page->createGfx(image_dev,
+ 72.0, 72.0, 0,
+ gFalse, /* useMediaBox */
+ gTrue, /* Crop */
+ -1, -1, -1, -1,
+ gFalse, /* printing */
+ page->document->doc->getCatalog (),
+ NULL, NULL, NULL, NULL);
+ page->page->display(gfx);
+ delete gfx;
+
+ return image_dev;
+}
+
+/**
+ * poppler_page_get_image_mapping:
+ * @page: A #PopplerPage
+ *
+ * Returns a list of #PopplerImageMapping items that map from a
+ * location on @page to an image of the page. This list must be freed
+ * with poppler_page_free_image_mapping() when done.
+ *
+ * Return value: A #GList of #PopplerImageMapping
+ **/
+GList *
+poppler_page_get_image_mapping (PopplerPage *page)
+{
+ GList *map_list = NULL;
+ CairoImageOutputDev *out;
+ gint i;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), NULL);
+
+ out = poppler_page_get_image_output_dev (page, NULL, NULL);
+
+ for (i = 0; i < out->getNumImages (); i++) {
+ PopplerImageMapping *mapping;
+ CairoImage *image;
+
+ image = out->getImage (i);
+
+ /* Create the mapping */
+ mapping = g_new (PopplerImageMapping, 1);
+
+ image->getRect (&(mapping->area.x1), &(mapping->area.y1),
+ &(mapping->area.x2), &(mapping->area.y2));
+ mapping->image_id = i;
+
+ mapping->area.x1 -= page->page->getCropBox()->x1;
+ mapping->area.x2 -= page->page->getCropBox()->x1;
+ mapping->area.y1 -= page->page->getCropBox()->y1;
+ mapping->area.y2 -= page->page->getCropBox()->y1;
+
+ map_list = g_list_prepend (map_list, mapping);
+ }
+
+ delete out;
+
+ return map_list;
+}
+
+static GBool
+image_draw_decide_cb (int image_id, void *data)
+{
+ return (image_id == GPOINTER_TO_INT (data));
+}
+
+/**
+ * poppler_page_get_image:
+ * @page: A #PopplerPage
+ * @image_id: The image identificator
+ *
+ * Returns a cairo surface for the image of the @page
+ *
+ * Return value: A cairo surface for the image
+ **/
+cairo_surface_t *
+poppler_page_get_image (PopplerPage *page,
+ gint image_id)
+{
+ CairoImageOutputDev *out;
+ cairo_surface_t *image;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), NULL);
+
+ out = poppler_page_get_image_output_dev (page,
+ image_draw_decide_cb,
+ GINT_TO_POINTER (image_id));
+
+ if (image_id >= out->getNumImages ()) {
+ delete out;
+
+ return NULL;
+ }
+
+ image = out->getImage (image_id)->getImage ();
+ if (!image) {
+ delete out;
+
+ return NULL;
+ }
+
+ cairo_surface_reference (image);
+ delete out;
+
+ return image;
+}
+
+/**
+ * poppler_page_free_image_mapping:
+ * @list: A list of #PopplerImageMapping<!-- -->s
+ *
+ * Frees a list of #PopplerImageMapping<!-- -->s allocated by
+ * poppler_page_get_image_mapping().
+ **/
+void
+poppler_page_free_image_mapping (GList *list)
+{
+ if (list == NULL)
+ return;
+
+ g_list_foreach (list, (GFunc)g_free, NULL);
+ g_list_free (list);
+}
+
+#else /* HAVE_CAIRO */
+
+GList *
+poppler_page_get_image_mapping (PopplerPage *page)
+{
+ return NULL;
+}
+
+void
+poppler_page_free_image_mapping (GList *list)
+{
+}
+
+#endif /* HAVE_CAIRO */
+
+/**
+ * poppler_page_render_to_ps:
+ * @page: a #PopplerPage
+ * @ps_file: the PopplerPSFile to render to
+ *
+ * Render the page on a postscript file
+ *
+ **/
+void
+poppler_page_render_to_ps (PopplerPage *page,
+ PopplerPSFile *ps_file)
+{
+ g_return_if_fail (POPPLER_IS_PAGE (page));
+ g_return_if_fail (ps_file != NULL);
+
+ if (!ps_file->out)
+ ps_file->out = new PSOutputDev (ps_file->filename,
+ ps_file->document->doc->getXRef(),
+ ps_file->document->doc->getCatalog(),
+ NULL,
+ ps_file->first_page, ps_file->last_page,
+ psModePS, (int)ps_file->paper_width,
+ (int)ps_file->paper_height, ps_file->duplex,
+ 0, 0, 0, 0, gFalse, gFalse);
+
+
+ ps_file->document->doc->displayPage (ps_file->out, page->index + 1, 72.0, 72.0,
+ 0, gFalse, gTrue, gFalse);
+}
+
+static void
+poppler_page_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ PopplerPage *page = POPPLER_PAGE (object);
+ GooString label;
+
+ switch (prop_id)
+ {
+ case PROP_LABEL:
+ page->document->doc->getCatalog ()->indexToLabel (page->index, &label);
+ g_value_take_string (value, _poppler_goo_string_to_utf8(&label));
+ break;
+ }
+}
+
+static void
+poppler_page_class_init (PopplerPageClass *klass)
+{
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+ GParamSpec *pspec;
+
+ gobject_class->finalize = poppler_page_finalize;
+ gobject_class->get_property = poppler_page_get_property;
+
+ pspec = g_param_spec_string ("label",
+ "Page Label",
+ "The label of the page",
+ NULL,
+ G_PARAM_READABLE);
+ g_object_class_install_property (G_OBJECT_CLASS (klass),
+ PROP_LABEL,
+ pspec);
+}
+
+static void
+poppler_page_init (PopplerPage *page)
+{
+}
+
+/**
+ * poppler_page_get_link_mapping:
+ * @page: A #PopplerPage
+ *
+ * Returns a list of #PopplerLinkMapping items that map from a
+ * location on @page to a #PopplerAction. This list must be freed
+ * with poppler_page_free_link_mapping() when done.
+ *
+ * Return value: A #GList of #PopplerLinkMapping
+ **/
+GList *
+poppler_page_get_link_mapping (PopplerPage *page)
+{
+ GList *map_list = NULL;
+ gint i;
+ Links *links;
+ Object obj;
+ double width, height;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), NULL);
+
+ links = new Links (page->page->getAnnots (&obj),
+ page->document->doc->getCatalog ()->getBaseURI ());
+ obj.free ();
+
+ if (links == NULL)
+ return NULL;
+
+ poppler_page_get_size (page, &width, &height);
+
+ for (i = 0; i < links->getNumLinks (); i++)
+ {
+ PopplerLinkMapping *mapping;
+ PopplerRectangle rect;
+ LinkAction *link_action;
+ Link *link;
+
+ link = links->getLink (i);
+ link_action = link->getAction ();
+
+ /* Create the mapping */
+ mapping = g_new (PopplerLinkMapping, 1);
+ mapping->action = _poppler_action_new (page->document, link_action, NULL);
+
+ link->getRect (&rect.x1, &rect.y1, &rect.x2, &rect.y2);
+
+ switch (page->page->getRotate ())
+ {
+ case 90:
+ mapping->area.x1 = rect.y1;
+ mapping->area.y1 = height - rect.x2;
+ mapping->area.x2 = mapping->area.x1 + (rect.y2 - rect.y1);
+ mapping->area.y2 = mapping->area.y1 + (rect.x2 - rect.x1);
+
+ break;
+ case 180:
+ mapping->area.x1 = width - rect.x2;
+ mapping->area.y1 = height - rect.y2;
+ mapping->area.x2 = mapping->area.x1 + (rect.x2 - rect.x1);
+ mapping->area.y2 = mapping->area.y1 + (rect.y2 - rect.y1);
+
+ break;
+ case 270:
+ mapping->area.x1 = width - rect.y2;
+ mapping->area.y1 = rect.x1;
+ mapping->area.x2 = mapping->area.x1 + (rect.y2 - rect.y1);
+ mapping->area.y2 = mapping->area.y1 + (rect.x2 - rect.x1);
+
+ break;
+ default:
+ mapping->area.x1 = rect.x1;
+ mapping->area.y1 = rect.y1;
+ mapping->area.x2 = rect.x2;
+ mapping->area.y2 = rect.y2;
+ }
+
+ mapping->area.x1 -= page->page->getCropBox()->x1;
+ mapping->area.x2 -= page->page->getCropBox()->x1;
+ mapping->area.y1 -= page->page->getCropBox()->y1;
+ mapping->area.y2 -= page->page->getCropBox()->y1;
+
+ map_list = g_list_prepend (map_list, mapping);
+ }
+
+ delete links;
+
+ return map_list;
+}
+
+static void
+poppler_mapping_free (PopplerLinkMapping *mapping)
+{
+ poppler_action_free (mapping->action);
+ g_free (mapping);
+}
+
+/**
+ * poppler_page_free_link_mapping:
+ * @list: A list of #PopplerLinkMapping<!-- -->s
+ *
+ * Frees a list of #PopplerLinkMapping<!-- -->s allocated by
+ * poppler_page_get_link_mapping(). It also frees the #PopplerAction<!-- -->s
+ * that each mapping contains, so if you want to keep them around, you need to
+ * copy them with poppler_action_copy().
+ **/
+void
+poppler_page_free_link_mapping (GList *list)
+{
+ if (list == NULL)
+ return;
+
+ g_list_foreach (list, (GFunc) (poppler_mapping_free), NULL);
+ g_list_free (list);
+}
+
+/**
+ * poppler_page_get_form_field_mapping:
+ * @page: A #PopplerPage
+ *
+ * Returns a list of #PopplerFormFieldMapping items that map from a
+ * location on @page to a form field. This list must be freed
+ * with poppler_page_free_form_field_mapping() when done.
+ *
+ * Return value: A #GList of #PopplerFormFieldMapping
+ **/
+GList *
+poppler_page_get_form_field_mapping (PopplerPage *page)
+{
+ GList *map_list = NULL;
+ FormPageWidgets *forms;
+ gint i;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), NULL);
+
+ forms = page->page->getPageWidgets ();
+ if (forms == NULL)
+ return NULL;
+
+ for (i = 0; i < forms->getNumWidgets (); i++) {
+ PopplerFormFieldMapping *mapping;
+ FormWidget *field;
+
+ mapping = poppler_form_field_mapping_new ();
+
+ field = forms->getWidget (i);
+
+ mapping->field = _poppler_form_field_new (page->document, field);
+ field->getRect (&(mapping->area.x1), &(mapping->area.y1),
+ &(mapping->area.x2), &(mapping->area.y2));
+
+ mapping->area.x1 -= page->page->getCropBox()->x1;
+ mapping->area.x2 -= page->page->getCropBox()->x1;
+ mapping->area.y1 -= page->page->getCropBox()->y1;
+ mapping->area.y2 -= page->page->getCropBox()->y1;
+
+ map_list = g_list_prepend (map_list, mapping);
+ }
+
+ return map_list;
+}
+
+/**
+ * poppler_page_free_form_field_mapping:
+ * @list: A list of #PopplerFormFieldMapping<!-- -->s
+ *
+ * Frees a list of #PopplerFormFieldMapping<!-- -->s allocated by
+ * poppler_page_get_form_field_mapping().
+ **/
+void
+poppler_page_free_form_field_mapping (GList *list)
+{
+ if (list == NULL)
+ return;
+
+ g_list_foreach (list, (GFunc) poppler_form_field_mapping_free, NULL);
+ g_list_free (list);
+}
+
+/**
+ * poppler_page_get_annot_mapping:
+ * @page: A #PopplerPage
+ *
+ * Returns a list of #PopplerAnnotMapping items that map from a location on
+ * @page to a #PopplerAnnot. This list must be freed with
+ * poppler_page_free_annot_mapping() when done.
+ *
+ * Return value: A #GList of #PopplerAnnotMapping
+ **/
+GList *
+poppler_page_get_annot_mapping (PopplerPage *page)
+{
+ GList *map_list = NULL;
+ double width, height;
+ gint i;
+
+ g_return_val_if_fail (POPPLER_IS_PAGE (page), NULL);
+
+ if (!page->annots)
+ page->annots = page->page->getAnnots (page->document->doc->getCatalog ());
+
+ if (!page->annots)
+ return NULL;
+
+ poppler_page_get_size (page, &width, &height);
+
+ for (i = 0; i < page->annots->getNumAnnots (); i++) {
+ PopplerAnnotMapping *mapping;
+ PopplerRectangle rect;
+ Annot *annot;
+ PDFRectangle *annot_rect;
+ gint rotation = 0;
+
+ annot = page->annots->getAnnot (i);
+
+ /* Create the mapping */
+ mapping = poppler_annot_mapping_new ();
+
+ switch (annot->getType ())
+ {
+ case Annot::typeText:
+ mapping->annot = _poppler_annot_text_new (annot);
+ break;
+ case Annot::typeFreeText:
+ mapping->annot = _poppler_annot_free_text_new (annot);
+ break;
+ default:
+ mapping->annot = _poppler_annot_new (annot);
+ break;
+ }
+
+ annot_rect = annot->getRect ();
+ rect.x1 = annot_rect->x1;
+ rect.y1 = annot_rect->y1;
+ rect.x2 = annot_rect->x2;
+ rect.y2 = annot_rect->y2;
+
+ if (! (annot->getFlags () & Annot::flagNoRotate))
+ rotation = page->page->getRotate ();
+
+ switch (rotation)
+ {
+ case 90:
+ mapping->area.x1 = rect.y1;
+ mapping->area.y1 = height - rect.x2;
+ mapping->area.x2 = mapping->area.x1 + (rect.y2 - rect.y1);
+ mapping->area.y2 = mapping->area.y1 + (rect.x2 - rect.x1);
+ break;
+ case 180:
+ mapping->area.x1 = width - rect.x2;
+ mapping->area.y1 = height - rect.y2;
+ mapping->area.x2 = mapping->area.x1 + (rect.x2 - rect.x1);
+ mapping->area.y2 = mapping->area.y1 + (rect.y2 - rect.y1);
+ break;
+ case 270:
+ mapping->area.x1 = width - rect.y2;
+ mapping->area.y1 = rect.x1;
+ mapping->area.x2 = mapping->area.x1 + (rect.y2 - rect.y1);
+ mapping->area.y2 = mapping->area.y1 + (rect.x2 - rect.x1);
+ break;
+ default:
+ mapping->area.x1 = rect.x1;
+ mapping->area.y1 = rect.y1;
+ mapping->area.x2 = rect.x2;
+ mapping->area.y2 = rect.y2;
+ }
+
+ mapping->area.x1 -= page->page->getCropBox()->x1;
+ mapping->area.x2 -= page->page->getCropBox()->x1;
+ mapping->area.y1 -= page->page->getCropBox()->y1;
+ mapping->area.y2 -= page->page->getCropBox()->y1;
+
+ map_list = g_list_prepend (map_list, mapping);
+ }
+
+ return g_list_reverse (map_list);
+}
+
+/**
+ * poppler_page_free_annot_mapping:
+ * @list: A list of #PopplerAnnotMapping<!-- -->s
+ *
+ * Frees a list of #PopplerAnnotMapping<!-- -->s allocated by
+ * poppler_page_get_annot_mapping(). It also frees the #PopplerAnnot<!-- -->s
+ * that each mapping contains, so if you want to keep them around, you need to
+ * copy them with poppler_annot_copy().
+ **/
+void
+poppler_page_free_annot_mapping (GList *list)
+{
+ if (!list)
+ return;
+
+ g_list_foreach (list, (GFunc)poppler_annot_mapping_free, NULL);
+ g_list_free (list);
+}
+
+/* PopplerRectangle type */
+
+POPPLER_DEFINE_BOXED_TYPE (PopplerRectangle, poppler_rectangle,
+ poppler_rectangle_copy,
+ poppler_rectangle_free)
+
+PopplerRectangle *
+poppler_rectangle_new (void)
+{
+ return g_new0 (PopplerRectangle, 1);
+}
+
+PopplerRectangle *
+poppler_rectangle_copy (PopplerRectangle *rectangle)
+{
+ PopplerRectangle *new_rectangle;
+
+ g_return_val_if_fail (rectangle != NULL, NULL);
+
+ new_rectangle = g_new (PopplerRectangle, 1);
+ *new_rectangle = *rectangle;
+
+ return new_rectangle;
+}
+
+void
+poppler_rectangle_free (PopplerRectangle *rectangle)
+{
+ g_free (rectangle);
+}
+
+/* PopplerColor type */
+POPPLER_DEFINE_BOXED_TYPE (PopplerColor, poppler_color, poppler_color_copy, poppler_color_free)
+
+PopplerColor *
+poppler_color_new (void)
+{
+ return (PopplerColor *) g_new0 (PopplerColor, 1);
+}
+
+PopplerColor *
+poppler_color_copy (PopplerColor *color)
+{
+ PopplerColor *new_color;
+
+ new_color = g_new (PopplerColor, 1);
+ *new_color = *color;
+
+ return new_color;
+}
+
+void
+poppler_color_free (PopplerColor *color)
+{
+ g_free (color);
+}
+
+/* PopplerLinkMapping type */
+POPPLER_DEFINE_BOXED_TYPE (PopplerLinkMapping, poppler_link_mapping,
+ poppler_link_mapping_copy,
+ poppler_link_mapping_free)
+
+PopplerLinkMapping *
+poppler_link_mapping_new (void)
+{
+ return (PopplerLinkMapping *) g_new0 (PopplerLinkMapping, 1);
+}
+
+PopplerLinkMapping *
+poppler_link_mapping_copy (PopplerLinkMapping *mapping)
+{
+ PopplerLinkMapping *new_mapping;
+
+ new_mapping = poppler_link_mapping_new ();
+
+ *new_mapping = *mapping;
+ if (new_mapping->action)
+ new_mapping->action = poppler_action_copy (new_mapping->action);
+
+ return new_mapping;
+}
+
+void
+poppler_link_mapping_free (PopplerLinkMapping *mapping)
+{
+ if (mapping->action)
+ poppler_action_free (mapping->action);
+
+ g_free (mapping);
+}
+
+/* Poppler Image mapping type */
+POPPLER_DEFINE_BOXED_TYPE (PopplerImageMapping, poppler_image_mapping,
+ poppler_image_mapping_copy,
+ poppler_image_mapping_free)
+
+PopplerImageMapping *
+poppler_image_mapping_new (void)
+{
+ return (PopplerImageMapping *) g_new0 (PopplerImageMapping, 1);
+}
+
+PopplerImageMapping *
+poppler_image_mapping_copy (PopplerImageMapping *mapping)
+{
+ PopplerImageMapping *new_mapping;
+
+ new_mapping = poppler_image_mapping_new ();
+
+ *new_mapping = *mapping;
+
+ return new_mapping;
+}
+
+void
+poppler_image_mapping_free (PopplerImageMapping *mapping)
+{
+ g_free (mapping);
+}
+
+/* Page Transition */
+POPPLER_DEFINE_BOXED_TYPE (PopplerPageTransition, poppler_page_transition,
+ poppler_page_transition_copy,
+ poppler_page_transition_free)
+
+PopplerPageTransition *
+poppler_page_transition_new (void)
+{
+ return (PopplerPageTransition *) g_new0 (PopplerPageTransition, 1);
+}
+
+PopplerPageTransition *
+poppler_page_transition_copy (PopplerPageTransition *transition)
+{
+ PopplerPageTransition *new_transition;
+
+ new_transition = poppler_page_transition_new ();
+ *new_transition = *transition;
+
+ return new_transition;
+}
+
+void
+poppler_page_transition_free (PopplerPageTransition *transition)
+{
+ g_free (transition);
+}
+
+/* Form Field Mapping Type */
+POPPLER_DEFINE_BOXED_TYPE (PopplerFormFieldMapping, poppler_form_field_mapping,
+ poppler_form_field_mapping_copy,
+ poppler_form_field_mapping_free)
+
+PopplerFormFieldMapping *
+poppler_form_field_mapping_new (void)
+{
+ return (PopplerFormFieldMapping *) g_new0 (PopplerFormFieldMapping, 1);
+}
+
+PopplerFormFieldMapping *
+poppler_form_field_mapping_copy (PopplerFormFieldMapping *mapping)
+{
+ PopplerFormFieldMapping *new_mapping;
+
+ new_mapping = poppler_form_field_mapping_new ();
+ *new_mapping = *mapping;
+
+ if (mapping->field)
+ new_mapping->field = (PopplerFormField *)g_object_ref (mapping->field);
+
+ return new_mapping;
+}
+
+void
+poppler_form_field_mapping_free (PopplerFormFieldMapping *mapping)
+{
+ if (!mapping)
+ return;
+
+ if (mapping->field)
+ g_object_unref (mapping->field);
+
+ g_free (mapping);
+}
+
+/* PopplerAnnot Mapping Type */
+POPPLER_DEFINE_BOXED_TYPE (PopplerAnnotMapping, poppler_annot_mapping,
+ poppler_annot_mapping_copy,
+ poppler_annot_mapping_free)
+
+PopplerAnnotMapping *
+poppler_annot_mapping_new (void)
+{
+ return (PopplerAnnotMapping *) g_new0 (PopplerAnnotMapping, 1);
+}
+
+PopplerAnnotMapping *
+poppler_annot_mapping_copy (PopplerAnnotMapping *mapping)
+{
+ PopplerAnnotMapping *new_mapping;
+
+ new_mapping = poppler_annot_mapping_new ();
+
+ *new_mapping = *mapping;
+ if (mapping->annot)
+ new_mapping->annot = (PopplerAnnot *) g_object_ref (mapping->annot);
+
+ return new_mapping;
+}
+
+void
+poppler_annot_mapping_free (PopplerAnnotMapping *mapping)
+{
+ if (!mapping)
+ return;
+
+ if (mapping->annot)
+ g_object_unref (mapping->annot);
+
+ g_free (mapping);
+}
+
+void
+poppler_page_get_crop_box (PopplerPage *page, PopplerRectangle *rect)
+{
+ PDFRectangle* cropBox = page->page->getCropBox ();
+
+ rect->x1 = cropBox->x1;
+ rect->x2 = cropBox->x2;
+ rect->y1 = cropBox->y1;
+ rect->y2 = cropBox->y2;
+}
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.h
new file mode 100644
index 00000000000..93510484e6c
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-page.h
@@ -0,0 +1,227 @@
+/* poppler-page.h: glib interface to poppler
+ * Copyright (C) 2004, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_PAGE_H__
+#define __POPPLER_PAGE_H__
+
+#include <glib-object.h>
+
+#include "poppler.h"
+
+#ifdef POPPLER_WITH_GDK
+#include <gdk/gdk.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#endif
+
+#ifdef POPPLER_HAS_CAIRO
+#include <cairo.h>
+#endif
+
+G_BEGIN_DECLS
+
+#define POPPLER_TYPE_PAGE (poppler_page_get_type ())
+#define POPPLER_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_PAGE, PopplerPage))
+#define POPPLER_IS_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), POPPLER_TYPE_PAGE))
+
+
+GType poppler_page_get_type (void) G_GNUC_CONST;
+
+#ifdef POPPLER_WITH_GDK
+void poppler_page_render_to_pixbuf (PopplerPage *page,
+ int src_x,
+ int src_y,
+ int src_width,
+ int src_height,
+ double scale,
+ int rotation,
+ GdkPixbuf *pixbuf);
+void poppler_page_render_to_pixbuf_for_printing (PopplerPage *page,
+ int src_x,
+ int src_y,
+ int src_width,
+ int src_height,
+ double scale,
+ int rotation,
+ GdkPixbuf *pixbuf);
+GdkPixbuf *poppler_page_get_thumbnail_pixbuf (PopplerPage *page);
+void poppler_page_render_selection_to_pixbuf (
+ PopplerPage *page,
+ gdouble scale,
+ int rotation,
+ GdkPixbuf *pixbuf,
+ PopplerRectangle *selection,
+ PopplerRectangle *old_selection,
+ PopplerSelectionStyle style,
+ GdkColor *glyph_color,
+ GdkColor *background_color);
+#endif /* POPPLER_WITH_GDK */
+
+#ifdef POPPLER_HAS_CAIRO
+void poppler_page_render (PopplerPage *page,
+ cairo_t *cairo);
+void poppler_page_render_for_printing (PopplerPage *page,
+ cairo_t *cairo);
+cairo_surface_t *poppler_page_get_thumbnail (PopplerPage *page);
+void poppler_page_render_selection (PopplerPage *page,
+ cairo_t *cairo,
+ PopplerRectangle *selection,
+ PopplerRectangle *old_selection,
+ PopplerSelectionStyle style,
+ PopplerColor *glyph_color,
+ PopplerColor *background_color);
+#endif /* POPPLER_HAS_CAIRO */
+
+void poppler_page_get_size (PopplerPage *page,
+ double *width,
+ double *height);
+int poppler_page_get_index (PopplerPage *page);
+double poppler_page_get_duration (PopplerPage *page);
+PopplerPageTransition *poppler_page_get_transition (PopplerPage *page);
+gboolean poppler_page_get_thumbnail_size (PopplerPage *page,
+ int *width,
+ int *height);
+GList *poppler_page_find_text (PopplerPage *page,
+ const char *text);
+void poppler_page_render_to_ps (PopplerPage *page,
+ PopplerPSFile *ps_file);
+char *poppler_page_get_text (PopplerPage *page,
+ PopplerSelectionStyle style,
+ PopplerRectangle *rect);
+GList *poppler_page_get_selection_region (PopplerPage *page,
+ gdouble scale,
+ PopplerSelectionStyle style,
+ PopplerRectangle *selection);
+void poppler_page_selection_region_free(GList *region);
+GList *poppler_page_get_link_mapping (PopplerPage *page);
+void poppler_page_free_link_mapping (GList *list);
+GList *poppler_page_get_image_mapping (PopplerPage *page);
+void poppler_page_free_image_mapping (GList *list);
+#ifdef POPPLER_HAS_CAIRO
+cairo_surface_t *poppler_page_get_image (PopplerPage *page,
+ gint image_id);
+#endif /* POPPLER_HAS_CAIRO */
+GList *poppler_page_get_form_field_mapping (PopplerPage *page);
+void poppler_page_free_form_field_mapping (GList *list);
+GList *poppler_page_get_annot_mapping (PopplerPage *page);
+void poppler_page_free_annot_mapping (GList *list);
+void poppler_page_get_crop_box (PopplerPage *page,
+ PopplerRectangle *rect);
+
+
+/* A rectangle on a page, with coordinates in PDF points. */
+#define POPPLER_TYPE_RECTANGLE (poppler_rectangle_get_type ())
+struct _PopplerRectangle
+{
+ gdouble x1;
+ gdouble y1;
+ gdouble x2;
+ gdouble y2;
+};
+
+GType poppler_rectangle_get_type (void) G_GNUC_CONST;
+PopplerRectangle *poppler_rectangle_new (void);
+PopplerRectangle *poppler_rectangle_copy (PopplerRectangle *rectangle);
+void poppler_rectangle_free (PopplerRectangle *rectangle);
+
+/* A color in RGB */
+#define POPPLER_TYPE_COLOR (poppler_color_get_type ())
+struct _PopplerColor
+{
+ guint16 red;
+ guint16 green;
+ guint16 blue;
+};
+
+GType poppler_color_get_type (void) G_GNUC_CONST;
+PopplerColor *poppler_color_new (void);
+PopplerColor *poppler_color_copy (PopplerColor *color);
+void poppler_color_free (PopplerColor *color);
+
+/* Mapping between areas on the current page and PopplerActions */
+#define POPPLER_TYPE_LINK_MAPPING (poppler_link_mapping_get_type ())
+struct _PopplerLinkMapping
+{
+ PopplerRectangle area;
+ PopplerAction *action;
+};
+
+GType poppler_link_mapping_get_type (void) G_GNUC_CONST;
+PopplerLinkMapping *poppler_link_mapping_new (void);
+PopplerLinkMapping *poppler_link_mapping_copy (PopplerLinkMapping *mapping);
+void poppler_link_mapping_free (PopplerLinkMapping *mapping);
+
+/* Page Transition */
+#define POPPLER_TYPE_PAGE_TRANSITION (poppler_page_transition_get_type ())
+struct _PopplerPageTransition
+{
+ PopplerPageTransitionType type;
+ PopplerPageTransitionAlignment alignment;
+ PopplerPageTransitionDirection direction;
+ gint duration;
+ gint angle;
+ gdouble scale;
+ gboolean rectangular;
+};
+
+GType poppler_page_transition_get_type (void) G_GNUC_CONST;
+PopplerPageTransition *poppler_page_transition_new (void);
+PopplerPageTransition *poppler_page_transition_copy (PopplerPageTransition *transition);
+void poppler_page_transition_free (PopplerPageTransition *transition);
+
+/* Mapping between areas on the current page and images */
+#define POPPLER_TYPE_IMAGE_MAPPING (poppler_image_mapping_get_type ())
+struct _PopplerImageMapping
+{
+ PopplerRectangle area;
+ gint image_id;
+};
+
+GType poppler_image_mapping_get_type (void) G_GNUC_CONST;
+PopplerImageMapping *poppler_image_mapping_new (void);
+PopplerImageMapping *poppler_image_mapping_copy (PopplerImageMapping *mapping);
+void poppler_image_mapping_free (PopplerImageMapping *mapping);
+
+/* Mapping between areas on the current page and form fields */
+#define POPPLER_TYPE_FORM_FIELD_MAPPING (poppler_form_field_mapping_get_type ())
+struct _PopplerFormFieldMapping
+{
+ PopplerRectangle area;
+ PopplerFormField *field;
+};
+
+GType poppler_form_field_mapping_get_type (void) G_GNUC_CONST;
+PopplerFormFieldMapping *poppler_form_field_mapping_new (void);
+PopplerFormFieldMapping *poppler_form_field_mapping_copy (PopplerFormFieldMapping *mapping);
+void poppler_form_field_mapping_free (PopplerFormFieldMapping *mapping);
+
+/* Mapping between areas on the current page and annots */
+#define POPPLER_TYPE_ANNOT_MAPPING (poppler_annot_mapping_get_type ())
+struct _PopplerAnnotMapping
+{
+ PopplerRectangle area;
+ PopplerAnnot *annot;
+};
+
+GType poppler_annot_mapping_get_type (void) G_GNUC_CONST;
+PopplerAnnotMapping *poppler_annot_mapping_new (void);
+PopplerAnnotMapping *poppler_annot_mapping_copy (PopplerAnnotMapping *mapping);
+void poppler_annot_mapping_free (PopplerAnnotMapping *mapping);
+
+G_END_DECLS
+
+#endif /* __POPPLER_PAGE_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-private.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-private.h
new file mode 100644
index 00000000000..e8ace142671
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler-private.h
@@ -0,0 +1,135 @@
+#ifndef __POPPLER_PRIVATE_H__
+#define __POPPLER_PRIVATE_H__
+
+#include <config.h>
+#include <PDFDoc.h>
+#include <PSOutputDev.h>
+#include <Link.h>
+#include <Form.h>
+#include <Gfx.h>
+#include <FontInfo.h>
+#include <TextOutputDev.h>
+#include <Catalog.h>
+#include <OptionalContent.h>
+
+#if defined (HAVE_CAIRO)
+#include <CairoOutputDev.h>
+#elif defined (HAVE_SPLASH)
+#include <SplashOutputDev.h>
+#endif
+
+struct _PopplerDocument
+{
+ GObject parent_instance;
+ PDFDoc *doc;
+
+ GList *layers;
+ GList *layers_rbgroups;
+#if defined (HAVE_CAIRO)
+ CairoOutputDev *output_dev;
+#elif defined (HAVE_SPLASH)
+ SplashOutputDev *output_dev;
+#endif
+};
+
+struct _PopplerPSFile
+{
+ GObject parent_instance;
+
+ PopplerDocument *document;
+ PSOutputDev *out;
+ char *filename;
+ int first_page;
+ int last_page;
+ double paper_width;
+ double paper_height;
+ gboolean duplex;
+};
+
+struct _PopplerFontInfo
+{
+ GObject parent_instance;
+ PopplerDocument *document;
+ FontInfoScanner *scanner;
+};
+
+struct _PopplerPage
+{
+ GObject parent_instance;
+ PopplerDocument *document;
+ Page *page;
+ int index;
+#if defined (HAVE_CAIRO)
+ TextPage *text;
+#else
+ TextOutputDev *text_dev;
+ Gfx *gfx;
+#endif
+ Annots *annots;
+};
+
+struct _PopplerFormField
+{
+ GObject parent_instance;
+ PopplerDocument *document;
+ FormWidget *widget;
+};
+
+typedef struct _Layer {
+ GList *kids;
+ gchar *label;
+ OptionalContentGroup *oc;
+} Layer;
+
+struct _PopplerLayer
+{
+ GObject parent_instance;
+ PopplerDocument *document;
+ Layer *layer;
+ GList *rbgroup;
+ gchar *title;
+};
+
+PopplerPage *_poppler_page_new (PopplerDocument *document,
+ Page *page,
+ int index);
+PopplerAction *_poppler_action_new (PopplerDocument *document,
+ LinkAction *link,
+ const gchar *title);
+PopplerLayer *_poppler_layer_new (PopplerDocument *document,
+ Layer *layer,
+ GList *rbgroup);
+PopplerDest *_poppler_dest_new_goto (PopplerDocument *document,
+ LinkDest *link_dest);
+PopplerFormField *_poppler_form_field_new (PopplerDocument *document,
+ FormWidget *field);
+PopplerAttachment *_poppler_attachment_new (PopplerDocument *document,
+ EmbFile *file);
+PopplerAnnot *_poppler_annot_new (Annot *annot);
+PopplerAnnot *_poppler_annot_text_new (Annot *annot);
+PopplerAnnot *_poppler_annot_free_text_new (Annot *annot);
+
+char *_poppler_goo_string_to_utf8(GooString *s);
+gboolean _poppler_convert_pdf_date_to_gtime (GooString *date,
+ time_t *gdate);
+
+/*
+ * A convenience macro for boxed type implementations, which defines a
+ * type_name_get_type() function registering the boxed type.
+ */
+#define POPPLER_DEFINE_BOXED_TYPE(TypeName, type_name, copy_func, free_func) \
+GType \
+type_name##_get_type (void) \
+{ \
+ static volatile gsize g_define_type_id__volatile = 0; \
+ if (g_once_init_enter (&g_define_type_id__volatile)) { \
+ GType g_define_type_id = \
+ g_boxed_type_register_static (g_intern_static_string (#TypeName), \
+ (GBoxedCopyFunc) copy_func, \
+ (GBoxedFreeFunc) free_func); \
+ g_once_init_leave (&g_define_type_id__volatile, g_define_type_id); \
+ } \
+ return g_define_type_id__volatile; \
+}
+
+#endif
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler.cc
new file mode 100644
index 00000000000..3c1d503e22f
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler.cc
@@ -0,0 +1,64 @@
+/* poppler.cc: glib wrapper for poppler
+ * Copyright (C) 2005, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#include <config.h>
+#include "poppler.h"
+
+GQuark poppler_error_quark (void)
+{
+ static GQuark q = 0;
+
+ if (q == 0)
+ q = g_quark_from_static_string ("poppler-quark");
+
+ return q;
+}
+
+/**
+ * poppler_get_backend:
+ *
+ * Returns the backend compiled into the poppler library.
+ *
+ * Return value: The backend used by poppler
+ **/
+PopplerBackend
+poppler_get_backend (void)
+{
+#if defined (HAVE_CAIRO)
+ return POPPLER_BACKEND_CAIRO;
+#elif defined (HAVE_SPLASH)
+ return POPPLER_BACKEND_SPLASH;
+#else
+ return POPPLER_BACKEND_UNKNOWN;
+#endif
+}
+
+static const char poppler_version[] = PACKAGE_VERSION;
+
+/**
+ * poppler_get_version:
+ *
+ * Returns the version of poppler in use. This result is not to be freed.
+ *
+ * Return value: the version of poppler.
+ **/
+const char *
+poppler_get_version (void)
+{
+ return poppler_version;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/poppler.h b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler.h
new file mode 100644
index 00000000000..b1a77307d9f
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/poppler.h
@@ -0,0 +1,130 @@
+/* poppler.h: glib interface to poppler
+ * Copyright (C) 2004, Red Hat, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+
+#ifndef __POPPLER_GLIB_H__
+#define __POPPLER_GLIB_H__
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+GQuark poppler_error_quark (void);
+
+#define POPPLER_ERROR poppler_error_quark ()
+
+typedef enum
+{
+ POPPLER_ERROR_INVALID,
+ POPPLER_ERROR_ENCRYPTED,
+ POPPLER_ERROR_OPEN_FILE,
+ POPPLER_ERROR_BAD_CATALOG,
+ POPPLER_ERROR_DAMAGED
+} PopplerError;
+
+typedef enum
+{
+ POPPLER_ORIENTATION_PORTRAIT,
+ POPPLER_ORIENTATION_LANDSCAPE,
+ POPPLER_ORIENTATION_UPSIDEDOWN,
+ POPPLER_ORIENTATION_SEASCAPE
+} PopplerOrientation;
+
+typedef enum
+{
+ POPPLER_PAGE_TRANSITION_REPLACE,
+ POPPLER_PAGE_TRANSITION_SPLIT,
+ POPPLER_PAGE_TRANSITION_BLINDS,
+ POPPLER_PAGE_TRANSITION_BOX,
+ POPPLER_PAGE_TRANSITION_WIPE,
+ POPPLER_PAGE_TRANSITION_DISSOLVE,
+ POPPLER_PAGE_TRANSITION_GLITTER,
+ POPPLER_PAGE_TRANSITION_FLY,
+ POPPLER_PAGE_TRANSITION_PUSH,
+ POPPLER_PAGE_TRANSITION_COVER,
+ POPPLER_PAGE_TRANSITION_UNCOVER,
+ POPPLER_PAGE_TRANSITION_FADE
+} PopplerPageTransitionType;
+
+typedef enum
+{
+ POPPLER_PAGE_TRANSITION_HORIZONTAL,
+ POPPLER_PAGE_TRANSITION_VERTICAL
+} PopplerPageTransitionAlignment;
+
+typedef enum
+{
+ POPPLER_PAGE_TRANSITION_INWARD,
+ POPPLER_PAGE_TRANSITION_OUTWARD
+} PopplerPageTransitionDirection;
+
+typedef enum
+{
+ POPPLER_SELECTION_GLYPH,
+ POPPLER_SELECTION_WORD,
+ POPPLER_SELECTION_LINE
+} PopplerSelectionStyle;
+
+typedef struct _PopplerDocument PopplerDocument;
+typedef struct _PopplerIndexIter PopplerIndexIter;
+typedef struct _PopplerFontsIter PopplerFontsIter;
+typedef struct _PopplerLayersIter PopplerLayersIter;
+typedef struct _PopplerRectangle PopplerRectangle;
+typedef struct _PopplerColor PopplerColor;
+typedef struct _PopplerLinkMapping PopplerLinkMapping;
+typedef struct _PopplerPageTransition PopplerPageTransition;
+typedef struct _PopplerImageMapping PopplerImageMapping;
+typedef struct _PopplerFormFieldMapping PopplerFormFieldMapping;
+typedef struct _PopplerAnnotMapping PopplerAnnotMapping;
+typedef struct _PopplerPage PopplerPage;
+typedef struct _PopplerFontInfo PopplerFontInfo;
+typedef struct _PopplerLayer PopplerLayer;
+typedef struct _PopplerPSFile PopplerPSFile;
+typedef union _PopplerAction PopplerAction;
+typedef struct _PopplerDest PopplerDest;
+typedef struct _PopplerFormField PopplerFormField;
+typedef struct _PopplerAttachment PopplerAttachment;
+typedef struct _PopplerAnnot PopplerAnnot;
+typedef struct _PopplerAnnotMarkup PopplerAnnotMarkup;
+typedef struct _PopplerAnnotText PopplerAnnotText;
+typedef struct _PopplerAnnotFreeText PopplerAnnotFreeText;
+typedef struct _PopplerAnnotCalloutLine PopplerAnnotCalloutLine;
+
+typedef enum
+{
+ POPPLER_BACKEND_UNKNOWN,
+ POPPLER_BACKEND_SPLASH,
+ POPPLER_BACKEND_CAIRO
+} PopplerBackend;
+
+PopplerBackend poppler_get_backend (void);
+const char * poppler_get_version (void);
+
+G_END_DECLS
+
+#include "poppler-features.h"
+#include "poppler-document.h"
+#include "poppler-page.h"
+#include "poppler-layer.h"
+#include "poppler-action.h"
+#include "poppler-form-field.h"
+#include "poppler-enums.h"
+#include "poppler-attachment.h"
+#include "poppler-annot.h"
+#include "poppler-date.h"
+
+#endif /* __POPPLER_GLIB_H__ */
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.am b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.am
new file mode 100644
index 00000000000..fc99ed12124
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.am
@@ -0,0 +1,88 @@
+## Process this file with automake to produce Makefile.in
+
+# We require automake 1.6 at least.
+AUTOMAKE_OPTIONS = 1.6
+
+# This is a blank Makefile.am for using gtk-doc.
+# Copy this to your project's API docs directory and modify the variables to
+# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
+# of using the various options.
+
+# The name of the module, e.g. 'glib'.
+DOC_MODULE=poppler
+
+# The top-level SGML file. You can change this if you want to.
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
+
+# The directory containing the source code. Relative to $(srcdir).
+# gtk-doc will search all .c & .h files beneath here for inline comments
+# documenting the functions and macros.
+# e.g. DOC_SOURCE_DIR=../../../gtk
+DOC_SOURCE_DIR=..
+
+# Extra options to pass to gtkdoc-scangobj. Not normally needed.
+SCANGOBJ_OPTIONS=
+
+# Extra options to supply to gtkdoc-scan.
+# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
+SCAN_OPTIONS=
+
+# Extra options to supply to gtkdoc-mkdb.
+# e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
+MKDB_OPTIONS=--sgml-mode --output-format=xml --source-suffixes=c,cc,h
+
+# Extra options to supply to gtkdoc-mktmpl
+# e.g. MKTMPL_OPTIONS=--only-section-tmpl
+MKTMPL_OPTIONS=
+
+# Extra options to supply to gtkdoc-fixref. Not normally needed.
+# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
+FIXXREF_OPTIONS=
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
+# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
+HFILE_GLOB=$(top_srcdir)/glib/*.h
+CFILE_GLOB=$(top_srcdir)/glib/*.cc
+
+# Header files to ignore when scanning.
+# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h
+IGNORE_HFILES=
+
+# Images to copy into HTML directory.
+# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
+HTML_IMAGES=
+
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
+# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
+content_files=
+
+# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
+# These files must be listed here *and* in content_files
+# e.g. expand_content_files=running.sgml
+expand_content_files=
+
+# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
+# Only needed if you are using gtkdoc-scangobj to dynamically query widget
+# signals and properties.
+# e.g. INCLUDES=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
+# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
+INCLUDES=-I$(top_srcdir)/glib -I$(top_builddir)/glib \
+ $(CAIRO_CFLAGS) \
+ $(POPPLER_GLIB_CFLAGS) \
+ $(GDK_CFLAGS) \
+ $(FREETYPE_CFLAGS)
+
+GTKDOC_LIBS=$(top_builddir)/poppler/libpoppler.la \
+ $(top_builddir)/glib/libpoppler-glib.la \
+ $(POPPLER_GLIB_LIBS) \
+ $(FREETYPE_LIBS) \
+ $(cairo_libs)
+
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+include $(top_srcdir)/gtk-doc.make
+
+# Other files to distribute
+# e.g. EXTRA_DIST += version.xml.in
+EXTRA_DIST +=
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.in b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.in
new file mode 100644
index 00000000000..55ce141742e
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/Makefile.in
@@ -0,0 +1,698 @@
+# Makefile.in generated by automake 1.11 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# -*- mode: makefile -*-
+
+####################################
+# Everything below here is generic #
+####################################
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+ $(top_srcdir)/gtk-doc.make
+subdir = glib/reference
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/acx_pthread.m4 \
+ $(top_srcdir)/m4/define-dir.m4 $(top_srcdir)/m4/gtk-doc.m4 \
+ $(top_srcdir)/m4/libjpeg.m4 $(top_srcdir)/m4/libpng.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/qt.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h \
+ $(top_builddir)/poppler/poppler-config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_GEN = $(am__v_GEN_$(V))
+am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
+am__v_GEN_0 = @echo " GEN " $@;
+AM_V_at = $(am__v_at_$(V))
+am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
+am__v_at_0 = @
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ABIWORD_CFLAGS = @ABIWORD_CFLAGS@
+ABIWORD_LIBS = @ABIWORD_LIBS@
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AS = @AS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CAIRO_CFLAGS = @CAIRO_CFLAGS@
+CAIRO_FEATURE = @CAIRO_FEATURE@
+CAIRO_LIBS = @CAIRO_LIBS@
+CAIRO_REQ = @CAIRO_REQ@
+CAIRO_VERSION = @CAIRO_VERSION@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@
+FONTCONFIG_LIBS = @FONTCONFIG_LIBS@
+FREETYPE_CFLAGS = @FREETYPE_CFLAGS@
+FREETYPE_CONFIG = @FREETYPE_CONFIG@
+FREETYPE_LIBS = @FREETYPE_LIBS@
+GDK_CFLAGS = @GDK_CFLAGS@
+GDK_FEATURE = @GDK_FEATURE@
+GDK_LIBS = @GDK_LIBS@
+GLIB_MKENUMS = @GLIB_MKENUMS@
+GREP = @GREP@
+GTKDOC_CHECK = @GTKDOC_CHECK@
+GTK_TEST_CFLAGS = @GTK_TEST_CFLAGS@
+GTK_TEST_LIBS = @GTK_TEST_LIBS@
+HTML_DIR = @HTML_DIR@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LCMS_CFLAGS = @LCMS_CFLAGS@
+LCMS_LIBS = @LCMS_LIBS@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBJPEG_LIBS = @LIBJPEG_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBOPENJPEG_LIBS = @LIBOPENJPEG_LIBS@
+LIBPNG_LIBS = @LIBPNG_LIBS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+MOCQT4 = @MOCQT4@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PC_REQUIRES = @PC_REQUIRES@
+PC_REQUIRES_PRIVATE = @PC_REQUIRES_PRIVATE@
+PKG_CONFIG = @PKG_CONFIG@
+POPPLER_DATADIR = @POPPLER_DATADIR@
+POPPLER_GLIB_CFLAGS = @POPPLER_GLIB_CFLAGS@
+POPPLER_GLIB_DISABLE_DEPRECATED = @POPPLER_GLIB_DISABLE_DEPRECATED@
+POPPLER_GLIB_DISABLE_SINGLE_INCLUDES = @POPPLER_GLIB_DISABLE_SINGLE_INCLUDES@
+POPPLER_GLIB_LIBS = @POPPLER_GLIB_LIBS@
+POPPLER_MAJOR_VERSION = @POPPLER_MAJOR_VERSION@
+POPPLER_MICRO_VERSION = @POPPLER_MICRO_VERSION@
+POPPLER_MINOR_VERSION = @POPPLER_MINOR_VERSION@
+POPPLER_QT4_CFLAGS = @POPPLER_QT4_CFLAGS@
+POPPLER_QT4_CXXFLAGS = @POPPLER_QT4_CXXFLAGS@
+POPPLER_QT4_LIBS = @POPPLER_QT4_LIBS@
+POPPLER_QT4_TEST_CFLAGS = @POPPLER_QT4_TEST_CFLAGS@
+POPPLER_QT4_TEST_LIBS = @POPPLER_QT4_TEST_LIBS@
+POPPLER_QT_CXXFLAGS = @POPPLER_QT_CXXFLAGS@
+POPPLER_QT_LIBS = @POPPLER_QT_LIBS@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+XMKMF = @XMKMF@
+X_CFLAGS = @X_CFLAGS@
+X_EXTRA_LIBS = @X_EXTRA_LIBS@
+X_LIBS = @X_LIBS@
+X_PRE_LIBS = @X_PRE_LIBS@
+ZLIB_LIBS = @ZLIB_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+acx_pthread_config = @acx_pthread_config@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+auto_import_flags = @auto_import_flags@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+create_shared_lib = @create_shared_lib@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+lt_ECHO = @lt_ECHO@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+win32_libs = @win32_libs@
+
+# We require automake 1.6 at least.
+AUTOMAKE_OPTIONS = 1.6
+
+# This is a blank Makefile.am for using gtk-doc.
+# Copy this to your project's API docs directory and modify the variables to
+# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
+# of using the various options.
+
+# The name of the module, e.g. 'glib'.
+DOC_MODULE = poppler
+
+# The top-level SGML file. You can change this if you want to.
+DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.sgml
+
+# The directory containing the source code. Relative to $(srcdir).
+# gtk-doc will search all .c & .h files beneath here for inline comments
+# documenting the functions and macros.
+# e.g. DOC_SOURCE_DIR=../../../gtk
+DOC_SOURCE_DIR = ..
+
+# Extra options to pass to gtkdoc-scangobj. Not normally needed.
+SCANGOBJ_OPTIONS =
+
+# Extra options to supply to gtkdoc-scan.
+# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED"
+SCAN_OPTIONS =
+
+# Extra options to supply to gtkdoc-mkdb.
+# e.g. MKDB_OPTIONS=--sgml-mode --output-format=xml
+MKDB_OPTIONS = --sgml-mode --output-format=xml --source-suffixes=c,cc,h
+
+# Extra options to supply to gtkdoc-mktmpl
+# e.g. MKTMPL_OPTIONS=--only-section-tmpl
+MKTMPL_OPTIONS =
+
+# Extra options to supply to gtkdoc-fixref. Not normally needed.
+# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
+FIXXREF_OPTIONS =
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h
+# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c
+HFILE_GLOB = $(top_srcdir)/glib/*.h
+CFILE_GLOB = $(top_srcdir)/glib/*.cc
+
+# Header files to ignore when scanning.
+# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h
+IGNORE_HFILES =
+
+# Images to copy into HTML directory.
+# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png
+HTML_IMAGES =
+
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
+# e.g. content_files=running.sgml building.sgml changes-2.0.sgml
+content_files =
+
+# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded
+# These files must be listed here *and* in content_files
+# e.g. expand_content_files=running.sgml
+expand_content_files =
+
+# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
+# Only needed if you are using gtkdoc-scangobj to dynamically query widget
+# signals and properties.
+# e.g. INCLUDES=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
+# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
+INCLUDES = -I$(top_srcdir)/glib -I$(top_builddir)/glib \
+ $(CAIRO_CFLAGS) \
+ $(POPPLER_GLIB_CFLAGS) \
+ $(GDK_CFLAGS) \
+ $(FREETYPE_CFLAGS)
+
+GTKDOC_LIBS = $(top_builddir)/poppler/libpoppler.la \
+ $(top_builddir)/glib/libpoppler-glib.la \
+ $(POPPLER_GLIB_LIBS) \
+ $(FREETYPE_LIBS) \
+ $(cairo_libs)
+
+@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
+@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS)
+@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN = sh -c
+@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute
+
+# We set GPATH here; this gives us semantics for GNU make
+# which are more like other make's VPATH, when it comes to
+# whether a source that is a target of one rule is then
+# searched for in VPATH/GPATH.
+#
+GPATH = $(srcdir)
+TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+
+# Other files to distribute
+# e.g. EXTRA_DIST += version.xml.in
+EXTRA_DIST = $(content_files) $(HTML_IMAGES) $(DOC_MAIN_SGML_FILE) \
+ $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
+DOC_STAMPS = scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
+ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
+
+SCANOBJ_FILES = \
+ $(DOC_MODULE).args \
+ $(DOC_MODULE).hierarchy \
+ $(DOC_MODULE).interfaces \
+ $(DOC_MODULE).prerequisites \
+ $(DOC_MODULE).signals
+
+REPORT_FILES = \
+ $(DOC_MODULE)-undocumented.txt \
+ $(DOC_MODULE)-undeclared.txt \
+ $(DOC_MODULE)-unused.txt
+
+CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign glib/reference/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign glib/reference/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
+check-am: all-am
+check: check-am
+all-am: Makefile all-local
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-local
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-data-local
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic \
+ maintainer-clean-local
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-local
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am all-local check check-am clean clean-generic \
+ clean-libtool clean-local dist-hook distclean \
+ distclean-generic distclean-libtool distclean-local distdir \
+ dvi dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-data-local install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic \
+ maintainer-clean-local mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-local
+
+
+@ENABLE_GTK_DOC_TRUE@all-local: html-build.stamp
+@ENABLE_GTK_DOC_FALSE@all-local:
+
+docs: html-build.stamp
+
+$(REPORT_FILES): sgml-build.stamp
+
+#### scan ####
+
+scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB)
+ @echo 'gtk-doc: Scanning header files'
+ @-chmod -R u+w $(srcdir)
+ cd $(srcdir) && \
+ gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
+ if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \
+ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
+ else \
+ cd $(srcdir) ; \
+ for i in $(SCANOBJ_FILES) ; do \
+ test -f $$i || touch $$i ; \
+ done \
+ fi
+ touch scan-build.stamp
+
+$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp
+ @true
+
+#### templates ####
+
+tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
+ @echo 'gtk-doc: Rebuilding template files'
+ @-chmod -R u+w $(srcdir)
+ cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS)
+ touch tmpl-build.stamp
+
+tmpl.stamp: tmpl-build.stamp
+ @true
+
+tmpl/*.sgml:
+ @true
+
+#### xml ####
+
+sgml-build.stamp: tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files)
+ @echo 'gtk-doc: Building XML'
+ @-chmod -R u+w $(srcdir)
+ cd $(srcdir) && \
+ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS)
+ touch sgml-build.stamp
+
+sgml.stamp: sgml-build.stamp
+ @true
+
+#### html ####
+
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+ @echo 'gtk-doc: Building HTML'
+ @-chmod -R u+w $(srcdir)
+ rm -rf $(srcdir)/html
+ mkdir $(srcdir)/html
+ mkhtml_options=""; \
+ gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \
+ if test "$(?)" = "0"; then \
+ mkhtml_options=--path="$(srcdir)"; \
+ fi
+ cd $(srcdir)/html && gtkdoc-mkhtml $(mkhtml_options) $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
+ test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
+ @echo 'gtk-doc: Fixing cross-references'
+ cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
+ touch html-build.stamp
+
+##############
+
+clean-local:
+ rm -f *~ *.bak
+ rm -rf .libs
+
+distclean-local:
+ cd $(srcdir) && \
+ rm -rf xml $(REPORT_FILES) \
+ $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
+
+maintainer-clean-local: clean
+ cd $(srcdir) && rm -rf xml html
+
+install-data-local:
+ installfiles=`echo $(srcdir)/html/*`; \
+ if test "$$installfiles" = '$(srcdir)/html/*'; \
+ then echo '-- Nothing to install' ; \
+ else \
+ if test -n "$(DOC_MODULE_VERSION)"; then \
+ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
+ else \
+ installdir="$(DESTDIR)$(TARGET_DIR)"; \
+ fi; \
+ $(mkinstalldirs) $${installdir} ; \
+ for i in $$installfiles; do \
+ echo '-- Installing '$$i ; \
+ $(INSTALL_DATA) $$i $${installdir}; \
+ done; \
+ if test -n "$(DOC_MODULE_VERSION)"; then \
+ mv -f $${installdir}/$(DOC_MODULE).devhelp2 \
+ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \
+ mv -f $${installdir}/$(DOC_MODULE).devhelp \
+ $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp; \
+ fi; \
+ ! which gtkdoc-rebase >/dev/null 2>&1 || \
+ gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir} ; \
+ fi
+
+uninstall-local:
+ if test -n "$(DOC_MODULE_VERSION)"; then \
+ installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \
+ else \
+ installdir="$(DESTDIR)$(TARGET_DIR)"; \
+ fi; \
+ rm -rf $${installdir}
+
+#
+# Require gtk-doc when making dist
+#
+@ENABLE_GTK_DOC_TRUE@dist-check-gtkdoc:
+@ENABLE_GTK_DOC_FALSE@dist-check-gtkdoc:
+@ENABLE_GTK_DOC_FALSE@ @echo "*** gtk-doc must be installed and enabled in order to make dist"
+@ENABLE_GTK_DOC_FALSE@ @false
+
+dist-hook: dist-check-gtkdoc dist-hook-local
+ mkdir $(distdir)/tmpl
+ mkdir $(distdir)/xml
+ mkdir $(distdir)/html
+ -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
+ -cp $(srcdir)/xml/*.xml $(distdir)/xml
+ cp $(srcdir)/html/* $(distdir)/html
+ -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/
+ -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/
+ cd $(distdir) && rm -f $(DISTCLEANFILES)
+ ! which gtkdoc-rebase >/dev/null 2>&1 || \
+ gtkdoc-rebase --online --relative --html-dir=$(distdir)/html
+
+.PHONY : dist-hook-local docs
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/ch01.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/ch01.html
new file mode 100644
index 00000000000..1a86988a39a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/ch01.html
@@ -0,0 +1,63 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Poppler</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="index.html" title="Poppler Reference Manual">
+<link rel="prev" href="index.html" title="Poppler Reference Manual">
+<link rel="next" href="poppler-poppler.html" title="poppler">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
+<td><a accesskey="p" href="index.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td> </td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="chapter" title="Poppler">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="id360229"></a>Poppler</h2></div></div></div>
+<div class="toc"><dl>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler.html">poppler</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-document.html">PopplerDocument</a></span><span class="refpurpose"> — Information about a document</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-page.html">PopplerPage</a></span><span class="refpurpose"> — Information about a page in a document</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-action.html">PopplerAction</a></span><span class="refpurpose"> — Action links</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-attachment.html">PopplerAttachment</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-form-field.html">PopplerFormField</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-enums.html">poppler-enums</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-annot.html">PopplerAnnot</a></span><span class="refpurpose"> — Annotations</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-layer.html">PopplerLayer</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-features.html">Version and Features Information</a></span><span class="refpurpose"> — Variables and functions to check the poppler version and features</span>
+</dt>
+</dl></div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/home.png b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/home.png
new file mode 100644
index 00000000000..17003611d9d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/home.png
Binary files differ
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.html
new file mode 100644
index 00000000000..405dbae4bd6
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.html
@@ -0,0 +1,59 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Poppler Reference Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="next" href="ch01.html" title="Poppler">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<div class="book" title="Poppler Reference Manual">
+<div class="titlepage">
+<div><div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">Poppler Reference Manual</p></th></tr></table></div></div>
+<hr>
+</div>
+<div class="toc"><dl>
+<dt><span class="chapter"><a href="ch01.html">Poppler</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler.html">poppler</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-document.html">PopplerDocument</a></span><span class="refpurpose"> — Information about a document</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-page.html">PopplerPage</a></span><span class="refpurpose"> — Information about a page in a document</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-action.html">PopplerAction</a></span><span class="refpurpose"> — Action links</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-attachment.html">PopplerAttachment</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-form-field.html">PopplerFormField</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-enums.html">poppler-enums</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-annot.html">PopplerAnnot</a></span><span class="refpurpose"> — Annotations</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-layer.html">PopplerLayer</a></span><span class="refpurpose"></span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="poppler-poppler-features.html">Version and Features Information</a></span><span class="refpurpose"> — Variables and functions to check the poppler version and features</span>
+</dt>
+</dl></dd>
+</dl></div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.sgml
new file mode 100644
index 00000000000..aabf172224a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/index.sgml
@@ -0,0 +1,309 @@
+<ANCHOR id="poppler-poppler" href="poppler/poppler-poppler.html">
+<ANCHOR id="poppler-poppler.synopsis" href="poppler/poppler-poppler.html#poppler-poppler.synopsis">
+<ANCHOR id="PopplerDocument" href="poppler/poppler-poppler.html#PopplerDocument">
+<ANCHOR id="PopplerPage" href="poppler/poppler-poppler.html#PopplerPage">
+<ANCHOR id="poppler-poppler.object-hierarchy" href="poppler/poppler-poppler.html#poppler-poppler.object-hierarchy">
+<ANCHOR id="poppler-poppler.properties" href="poppler/poppler-poppler.html#poppler-poppler.properties">
+<ANCHOR id="poppler-poppler.description" href="poppler/poppler-poppler.html#poppler-poppler.description">
+<ANCHOR id="poppler-poppler.details" href="poppler/poppler-poppler.html#poppler-poppler.details">
+<ANCHOR id="poppler-error-quark" href="poppler/poppler-poppler.html#poppler-error-quark">
+<ANCHOR id="POPPLER-ERROR--CAPS" href="poppler/poppler-poppler.html#POPPLER-ERROR--CAPS">
+<ANCHOR id="PopplerError" href="poppler/poppler-poppler.html#PopplerError">
+<ANCHOR id="PopplerOrientation" href="poppler/poppler-poppler.html#PopplerOrientation">
+<ANCHOR id="PopplerDocument-struct" href="poppler/poppler-poppler.html#PopplerDocument-struct">
+<ANCHOR id="PopplerIndexIter" href="poppler/poppler-poppler.html#PopplerIndexIter">
+<ANCHOR id="PopplerFontsIter" href="poppler/poppler-poppler.html#PopplerFontsIter">
+<ANCHOR id="PopplerRectangle" href="poppler/poppler-poppler.html#PopplerRectangle">
+<ANCHOR id="PopplerSelectionStyle" href="poppler/poppler-poppler.html#PopplerSelectionStyle">
+<ANCHOR id="PopplerPageTransitionType" href="poppler/poppler-poppler.html#PopplerPageTransitionType">
+<ANCHOR id="PopplerPageTransitionAlignment" href="poppler/poppler-poppler.html#PopplerPageTransitionAlignment">
+<ANCHOR id="PopplerPageTransitionDirection" href="poppler/poppler-poppler.html#PopplerPageTransitionDirection">
+<ANCHOR id="PopplerLinkMapping" href="poppler/poppler-poppler.html#PopplerLinkMapping">
+<ANCHOR id="PopplerPage-struct" href="poppler/poppler-poppler.html#PopplerPage-struct">
+<ANCHOR id="PopplerFontInfo" href="poppler/poppler-poppler.html#PopplerFontInfo">
+<ANCHOR id="PopplerPSFile" href="poppler/poppler-poppler.html#PopplerPSFile">
+<ANCHOR id="PopplerBackend" href="poppler/poppler-poppler.html#PopplerBackend">
+<ANCHOR id="poppler-get-backend" href="poppler/poppler-poppler.html#poppler-get-backend">
+<ANCHOR id="poppler-get-version" href="poppler/poppler-poppler.html#poppler-get-version">
+<ANCHOR id="poppler-poppler.property-details" href="poppler/poppler-poppler.html#poppler-poppler.property-details">
+<ANCHOR id="PopplerDocument--author" href="poppler/poppler-poppler.html#PopplerDocument--author">
+<ANCHOR id="PopplerDocument--creation-date" href="poppler/poppler-poppler.html#PopplerDocument--creation-date">
+<ANCHOR id="PopplerDocument--creator" href="poppler/poppler-poppler.html#PopplerDocument--creator">
+<ANCHOR id="PopplerDocument--format" href="poppler/poppler-poppler.html#PopplerDocument--format">
+<ANCHOR id="PopplerDocument--format-major" href="poppler/poppler-poppler.html#PopplerDocument--format-major">
+<ANCHOR id="PopplerDocument--format-minor" href="poppler/poppler-poppler.html#PopplerDocument--format-minor">
+<ANCHOR id="PopplerDocument--keywords" href="poppler/poppler-poppler.html#PopplerDocument--keywords">
+<ANCHOR id="PopplerDocument--linearized" href="poppler/poppler-poppler.html#PopplerDocument--linearized">
+<ANCHOR id="PopplerDocument--metadata" href="poppler/poppler-poppler.html#PopplerDocument--metadata">
+<ANCHOR id="PopplerDocument--mod-date" href="poppler/poppler-poppler.html#PopplerDocument--mod-date">
+<ANCHOR id="PopplerDocument--page-layout" href="poppler/poppler-poppler.html#PopplerDocument--page-layout">
+<ANCHOR id="PopplerDocument--page-mode" href="poppler/poppler-poppler.html#PopplerDocument--page-mode">
+<ANCHOR id="PopplerDocument--permissions" href="poppler/poppler-poppler.html#PopplerDocument--permissions">
+<ANCHOR id="PopplerDocument--producer" href="poppler/poppler-poppler.html#PopplerDocument--producer">
+<ANCHOR id="PopplerDocument--subject" href="poppler/poppler-poppler.html#PopplerDocument--subject">
+<ANCHOR id="PopplerDocument--title" href="poppler/poppler-poppler.html#PopplerDocument--title">
+<ANCHOR id="PopplerDocument--viewer-preferences" href="poppler/poppler-poppler.html#PopplerDocument--viewer-preferences">
+<ANCHOR id="PopplerPage--label" href="poppler/poppler-poppler.html#PopplerPage--label">
+<ANCHOR id="poppler-poppler-document" href="poppler/poppler-poppler-document.html">
+<ANCHOR id="poppler-poppler-document.synopsis" href="poppler/poppler-poppler-document.html#poppler-poppler-document.synopsis">
+<ANCHOR id="poppler-poppler-document.description" href="poppler/poppler-poppler-document.html#poppler-poppler-document.description">
+<ANCHOR id="poppler-poppler-document.details" href="poppler/poppler-poppler-document.html#poppler-poppler-document.details">
+<ANCHOR id="PopplerPageLayout" href="poppler/poppler-poppler-document.html#PopplerPageLayout">
+<ANCHOR id="PopplerPageMode" href="poppler/poppler-poppler-document.html#PopplerPageMode">
+<ANCHOR id="PopplerFontType" href="poppler/poppler-poppler-document.html#PopplerFontType">
+<ANCHOR id="PopplerViewerPreferences" href="poppler/poppler-poppler-document.html#PopplerViewerPreferences">
+<ANCHOR id="PopplerPermissions" href="poppler/poppler-poppler-document.html#PopplerPermissions">
+<ANCHOR id="poppler-document-new-from-file" href="poppler/poppler-poppler-document.html#poppler-document-new-from-file">
+<ANCHOR id="poppler-document-new-from-data" href="poppler/poppler-poppler-document.html#poppler-document-new-from-data">
+<ANCHOR id="poppler-document-save" href="poppler/poppler-poppler-document.html#poppler-document-save">
+<ANCHOR id="poppler-document-get-n-pages" href="poppler/poppler-poppler-document.html#poppler-document-get-n-pages">
+<ANCHOR id="poppler-document-get-page" href="poppler/poppler-poppler-document.html#poppler-document-get-page">
+<ANCHOR id="poppler-document-get-page-by-label" href="poppler/poppler-poppler-document.html#poppler-document-get-page-by-label">
+<ANCHOR id="poppler-document-find-dest" href="poppler/poppler-poppler-document.html#poppler-document-find-dest">
+<ANCHOR id="poppler-document-has-attachments" href="poppler/poppler-poppler-document.html#poppler-document-has-attachments">
+<ANCHOR id="poppler-document-get-attachments" href="poppler/poppler-poppler-document.html#poppler-document-get-attachments">
+<ANCHOR id="poppler-document-get-form-field" href="poppler/poppler-poppler-document.html#poppler-document-get-form-field">
+<ANCHOR id="poppler-index-iter-get-type" href="poppler/poppler-poppler-document.html#poppler-index-iter-get-type">
+<ANCHOR id="poppler-index-iter-new" href="poppler/poppler-poppler-document.html#poppler-index-iter-new">
+<ANCHOR id="poppler-index-iter-copy" href="poppler/poppler-poppler-document.html#poppler-index-iter-copy">
+<ANCHOR id="poppler-index-iter-free" href="poppler/poppler-poppler-document.html#poppler-index-iter-free">
+<ANCHOR id="poppler-index-iter-get-child" href="poppler/poppler-poppler-document.html#poppler-index-iter-get-child">
+<ANCHOR id="poppler-index-iter-is-open" href="poppler/poppler-poppler-document.html#poppler-index-iter-is-open">
+<ANCHOR id="poppler-index-iter-get-action" href="poppler/poppler-poppler-document.html#poppler-index-iter-get-action">
+<ANCHOR id="poppler-index-iter-next" href="poppler/poppler-poppler-document.html#poppler-index-iter-next">
+<ANCHOR id="poppler-font-info-new" href="poppler/poppler-poppler-document.html#poppler-font-info-new">
+<ANCHOR id="poppler-font-info-scan" href="poppler/poppler-poppler-document.html#poppler-font-info-scan">
+<ANCHOR id="poppler-font-info-free" href="poppler/poppler-poppler-document.html#poppler-font-info-free">
+<ANCHOR id="poppler-fonts-iter-get-type" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-get-type">
+<ANCHOR id="poppler-fonts-iter-copy" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-copy">
+<ANCHOR id="poppler-fonts-iter-free" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-free">
+<ANCHOR id="poppler-fonts-iter-get-name" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-get-name">
+<ANCHOR id="poppler-fonts-iter-get-full-name" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-get-full-name">
+<ANCHOR id="poppler-fonts-iter-get-font-type" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-get-font-type">
+<ANCHOR id="poppler-fonts-iter-is-embedded" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-is-embedded">
+<ANCHOR id="poppler-fonts-iter-is-subset" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-is-subset">
+<ANCHOR id="poppler-fonts-iter-next" href="poppler/poppler-poppler-document.html#poppler-fonts-iter-next">
+<ANCHOR id="poppler-ps-file-new" href="poppler/poppler-poppler-document.html#poppler-ps-file-new">
+<ANCHOR id="poppler-ps-file-set-paper-size" href="poppler/poppler-poppler-document.html#poppler-ps-file-set-paper-size">
+<ANCHOR id="poppler-ps-file-set-duplex" href="poppler/poppler-poppler-document.html#poppler-ps-file-set-duplex">
+<ANCHOR id="poppler-ps-file-free" href="poppler/poppler-poppler-document.html#poppler-ps-file-free">
+<ANCHOR id="poppler-poppler-page" href="poppler/poppler-poppler-page.html">
+<ANCHOR id="poppler-poppler-page.synopsis" href="poppler/poppler-poppler-page.html#poppler-poppler-page.synopsis">
+<ANCHOR id="poppler-poppler-page.description" href="poppler/poppler-poppler-page.html#poppler-poppler-page.description">
+<ANCHOR id="poppler-poppler-page.details" href="poppler/poppler-poppler-page.html#poppler-poppler-page.details">
+<ANCHOR id="poppler-page-render" href="poppler/poppler-poppler-page.html#poppler-page-render">
+<ANCHOR id="poppler-page-render-to-pixbuf" href="poppler/poppler-poppler-page.html#poppler-page-render-to-pixbuf">
+<ANCHOR id="poppler-page-get-size" href="poppler/poppler-poppler-page.html#poppler-page-get-size">
+<ANCHOR id="poppler-page-get-index" href="poppler/poppler-poppler-page.html#poppler-page-get-index">
+<ANCHOR id="poppler-page-get-thumbnail" href="poppler/poppler-poppler-page.html#poppler-page-get-thumbnail">
+<ANCHOR id="poppler-page-get-thumbnail-size" href="poppler/poppler-poppler-page.html#poppler-page-get-thumbnail-size">
+<ANCHOR id="poppler-page-render-to-ps" href="poppler/poppler-poppler-page.html#poppler-page-render-to-ps">
+<ANCHOR id="poppler-page-find-text" href="poppler/poppler-poppler-page.html#poppler-page-find-text">
+<ANCHOR id="poppler-page-get-text" href="poppler/poppler-poppler-page.html#poppler-page-get-text">
+<ANCHOR id="poppler-page-get-duration" href="poppler/poppler-poppler-page.html#poppler-page-get-duration">
+<ANCHOR id="poppler-page-get-transition" href="poppler/poppler-poppler-page.html#poppler-page-get-transition">
+<ANCHOR id="poppler-page-get-link-mapping" href="poppler/poppler-poppler-page.html#poppler-page-get-link-mapping">
+<ANCHOR id="poppler-page-free-link-mapping" href="poppler/poppler-poppler-page.html#poppler-page-free-link-mapping">
+<ANCHOR id="poppler-page-get-image-mapping" href="poppler/poppler-poppler-page.html#poppler-page-get-image-mapping">
+<ANCHOR id="poppler-page-free-image-mapping" href="poppler/poppler-poppler-page.html#poppler-page-free-image-mapping">
+<ANCHOR id="poppler-page-get-form-field-mapping" href="poppler/poppler-poppler-page.html#poppler-page-get-form-field-mapping">
+<ANCHOR id="poppler-page-free-form-field-mapping" href="poppler/poppler-poppler-page.html#poppler-page-free-form-field-mapping">
+<ANCHOR id="poppler-page-get-selection-region" href="poppler/poppler-poppler-page.html#poppler-page-get-selection-region">
+<ANCHOR id="poppler-page-render-selection" href="poppler/poppler-poppler-page.html#poppler-page-render-selection">
+<ANCHOR id="poppler-page-render-selection-to-pixbuf" href="poppler/poppler-poppler-page.html#poppler-page-render-selection-to-pixbuf">
+<ANCHOR id="POPPLER-TYPE-RECTANGLE--CAPS" href="poppler/poppler-poppler-page.html#POPPLER-TYPE-RECTANGLE--CAPS">
+<ANCHOR id="PopplerRectangle" href="poppler/poppler-poppler-page.html#PopplerRectangle">
+<ANCHOR id="poppler-rectangle-get-type" href="poppler/poppler-poppler-page.html#poppler-rectangle-get-type">
+<ANCHOR id="poppler-rectangle-new" href="poppler/poppler-poppler-page.html#poppler-rectangle-new">
+<ANCHOR id="poppler-rectangle-copy" href="poppler/poppler-poppler-page.html#poppler-rectangle-copy">
+<ANCHOR id="poppler-rectangle-free" href="poppler/poppler-poppler-page.html#poppler-rectangle-free">
+<ANCHOR id="POPPLER-TYPE-PAGE-TRANSITION--CAPS" href="poppler/poppler-poppler-page.html#POPPLER-TYPE-PAGE-TRANSITION--CAPS">
+<ANCHOR id="PopplerPageTransition" href="poppler/poppler-poppler-page.html#PopplerPageTransition">
+<ANCHOR id="poppler-page-transition-get-type" href="poppler/poppler-poppler-page.html#poppler-page-transition-get-type">
+<ANCHOR id="poppler-page-transition-new" href="poppler/poppler-poppler-page.html#poppler-page-transition-new">
+<ANCHOR id="poppler-page-transition-copy" href="poppler/poppler-poppler-page.html#poppler-page-transition-copy">
+<ANCHOR id="poppler-page-transition-free" href="poppler/poppler-poppler-page.html#poppler-page-transition-free">
+<ANCHOR id="POPPLER-TYPE-LINK-MAPPING--CAPS" href="poppler/poppler-poppler-page.html#POPPLER-TYPE-LINK-MAPPING--CAPS">
+<ANCHOR id="PopplerLinkMapping" href="poppler/poppler-poppler-page.html#PopplerLinkMapping">
+<ANCHOR id="poppler-link-mapping-get-type" href="poppler/poppler-poppler-page.html#poppler-link-mapping-get-type">
+<ANCHOR id="poppler-link-mapping-new" href="poppler/poppler-poppler-page.html#poppler-link-mapping-new">
+<ANCHOR id="poppler-link-mapping-copy" href="poppler/poppler-poppler-page.html#poppler-link-mapping-copy">
+<ANCHOR id="poppler-link-mapping-free" href="poppler/poppler-poppler-page.html#poppler-link-mapping-free">
+<ANCHOR id="POPPLER-TYPE-IMAGE-MAPPING--CAPS" href="poppler/poppler-poppler-page.html#POPPLER-TYPE-IMAGE-MAPPING--CAPS">
+<ANCHOR id="PopplerImageMapping" href="poppler/poppler-poppler-page.html#PopplerImageMapping">
+<ANCHOR id="poppler-image-mapping-get-type" href="poppler/poppler-poppler-page.html#poppler-image-mapping-get-type">
+<ANCHOR id="poppler-image-mapping-new" href="poppler/poppler-poppler-page.html#poppler-image-mapping-new">
+<ANCHOR id="poppler-image-mapping-copy" href="poppler/poppler-poppler-page.html#poppler-image-mapping-copy">
+<ANCHOR id="poppler-image-mapping-free" href="poppler/poppler-poppler-page.html#poppler-image-mapping-free">
+<ANCHOR id="POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS" href="poppler/poppler-poppler-page.html#POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS">
+<ANCHOR id="PopplerFormFieldMapping" href="poppler/poppler-poppler-page.html#PopplerFormFieldMapping">
+<ANCHOR id="poppler-form-field-mapping-get-type" href="poppler/poppler-poppler-page.html#poppler-form-field-mapping-get-type">
+<ANCHOR id="poppler-form-field-mapping-new" href="poppler/poppler-poppler-page.html#poppler-form-field-mapping-new">
+<ANCHOR id="poppler-form-field-mapping-copy" href="poppler/poppler-poppler-page.html#poppler-form-field-mapping-copy">
+<ANCHOR id="poppler-form-field-mapping-free" href="poppler/poppler-poppler-page.html#poppler-form-field-mapping-free">
+<ANCHOR id="poppler-poppler-action" href="poppler/poppler-poppler-action.html">
+<ANCHOR id="poppler-poppler-action.synopsis" href="poppler/poppler-poppler-action.html#poppler-poppler-action.synopsis">
+<ANCHOR id="poppler-poppler-action.description" href="poppler/poppler-poppler-action.html#poppler-poppler-action.description">
+<ANCHOR id="poppler-poppler-action.details" href="poppler/poppler-poppler-action.html#poppler-poppler-action.details">
+<ANCHOR id="PopplerActionType" href="poppler/poppler-poppler-action.html#PopplerActionType">
+<ANCHOR id="PopplerDestType" href="poppler/poppler-poppler-action.html#PopplerDestType">
+<ANCHOR id="PopplerActionAny" href="poppler/poppler-poppler-action.html#PopplerActionAny">
+<ANCHOR id="PopplerActionGotoDest" href="poppler/poppler-poppler-action.html#PopplerActionGotoDest">
+<ANCHOR id="PopplerActionGotoRemote" href="poppler/poppler-poppler-action.html#PopplerActionGotoRemote">
+<ANCHOR id="PopplerActionLaunch" href="poppler/poppler-poppler-action.html#PopplerActionLaunch">
+<ANCHOR id="PopplerActionUri" href="poppler/poppler-poppler-action.html#PopplerActionUri">
+<ANCHOR id="PopplerActionNamed" href="poppler/poppler-poppler-action.html#PopplerActionNamed">
+<ANCHOR id="PopplerActionMovie" href="poppler/poppler-poppler-action.html#PopplerActionMovie">
+<ANCHOR id="PopplerDest" href="poppler/poppler-poppler-action.html#PopplerDest">
+<ANCHOR id="PopplerAction" href="poppler/poppler-poppler-action.html#PopplerAction">
+<ANCHOR id="POPPLER-TYPE-ACTION--CAPS" href="poppler/poppler-poppler-action.html#POPPLER-TYPE-ACTION--CAPS">
+<ANCHOR id="POPPLER-ACTION--CAPS" href="poppler/poppler-poppler-action.html#POPPLER-ACTION--CAPS">
+<ANCHOR id="poppler-action-get-type" href="poppler/poppler-poppler-action.html#poppler-action-get-type">
+<ANCHOR id="poppler-action-copy" href="poppler/poppler-poppler-action.html#poppler-action-copy">
+<ANCHOR id="poppler-action-free" href="poppler/poppler-poppler-action.html#poppler-action-free">
+<ANCHOR id="POPPLER-TYPE-DEST--CAPS" href="poppler/poppler-poppler-action.html#POPPLER-TYPE-DEST--CAPS">
+<ANCHOR id="poppler-dest-get-type" href="poppler/poppler-poppler-action.html#poppler-dest-get-type">
+<ANCHOR id="poppler-dest-copy" href="poppler/poppler-poppler-action.html#poppler-dest-copy">
+<ANCHOR id="poppler-dest-free" href="poppler/poppler-poppler-action.html#poppler-dest-free">
+<ANCHOR id="poppler-poppler-attachment" href="poppler/poppler-poppler-attachment.html">
+<ANCHOR id="poppler-poppler-attachment.synopsis" href="poppler/poppler-poppler-attachment.html#poppler-poppler-attachment.synopsis">
+<ANCHOR id="PopplerAttachment" href="poppler/poppler-poppler-attachment.html#PopplerAttachment">
+<ANCHOR id="poppler-poppler-attachment.description" href="poppler/poppler-poppler-attachment.html#poppler-poppler-attachment.description">
+<ANCHOR id="poppler-poppler-attachment.details" href="poppler/poppler-poppler-attachment.html#poppler-poppler-attachment.details">
+<ANCHOR id="PopplerAttachment-struct" href="poppler/poppler-poppler-attachment.html#PopplerAttachment-struct">
+<ANCHOR id="poppler-attachment-save" href="poppler/poppler-poppler-attachment.html#poppler-attachment-save">
+<ANCHOR id="poppler-attachment-save-to-callback" href="poppler/poppler-poppler-attachment.html#poppler-attachment-save-to-callback">
+<ANCHOR id="PopplerAttachmentSaveFunc" href="poppler/poppler-poppler-attachment.html#PopplerAttachmentSaveFunc">
+<ANCHOR id="poppler-poppler-form-field" href="poppler/poppler-poppler-form-field.html">
+<ANCHOR id="poppler-poppler-form-field.synopsis" href="poppler/poppler-poppler-form-field.html#poppler-poppler-form-field.synopsis">
+<ANCHOR id="PopplerFormField" href="poppler/poppler-poppler-form-field.html#PopplerFormField">
+<ANCHOR id="poppler-poppler-form-field.object-hierarchy" href="poppler/poppler-poppler-form-field.html#poppler-poppler-form-field.object-hierarchy">
+<ANCHOR id="poppler-poppler-form-field.description" href="poppler/poppler-poppler-form-field.html#poppler-poppler-form-field.description">
+<ANCHOR id="poppler-poppler-form-field.details" href="poppler/poppler-poppler-form-field.html#poppler-poppler-form-field.details">
+<ANCHOR id="PopplerFormField-struct" href="poppler/poppler-poppler-form-field.html#PopplerFormField-struct">
+<ANCHOR id="PopplerFormButtonType" href="poppler/poppler-poppler-form-field.html#PopplerFormButtonType">
+<ANCHOR id="PopplerFormChoiceType" href="poppler/poppler-poppler-form-field.html#PopplerFormChoiceType">
+<ANCHOR id="PopplerFormFieldType" href="poppler/poppler-poppler-form-field.html#PopplerFormFieldType">
+<ANCHOR id="PopplerFormTextType" href="poppler/poppler-poppler-form-field.html#PopplerFormTextType">
+<ANCHOR id="poppler-form-field-get-id" href="poppler/poppler-poppler-form-field.html#poppler-form-field-get-id">
+<ANCHOR id="poppler-form-field-get-field-type" href="poppler/poppler-poppler-form-field.html#poppler-form-field-get-field-type">
+<ANCHOR id="poppler-form-field-is-read-only" href="poppler/poppler-poppler-form-field.html#poppler-form-field-is-read-only">
+<ANCHOR id="poppler-form-field-get-font-size" href="poppler/poppler-poppler-form-field.html#poppler-form-field-get-font-size">
+<ANCHOR id="poppler-form-field-button-get-button-type" href="poppler/poppler-poppler-form-field.html#poppler-form-field-button-get-button-type">
+<ANCHOR id="poppler-form-field-button-get-state" href="poppler/poppler-poppler-form-field.html#poppler-form-field-button-get-state">
+<ANCHOR id="poppler-form-field-button-set-state" href="poppler/poppler-poppler-form-field.html#poppler-form-field-button-set-state">
+<ANCHOR id="poppler-form-field-choice-can-select-multiple" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-can-select-multiple">
+<ANCHOR id="poppler-form-field-choice-commit-on-change" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-commit-on-change">
+<ANCHOR id="poppler-form-field-choice-do-spell-check" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-do-spell-check">
+<ANCHOR id="poppler-form-field-choice-get-choice-type" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-get-choice-type">
+<ANCHOR id="poppler-form-field-choice-get-item" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-get-item">
+<ANCHOR id="poppler-form-field-choice-get-n-items" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-get-n-items">
+<ANCHOR id="poppler-form-field-choice-get-text" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-get-text">
+<ANCHOR id="poppler-form-field-choice-is-editable" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-is-editable">
+<ANCHOR id="poppler-form-field-choice-is-item-selected" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-is-item-selected">
+<ANCHOR id="poppler-form-field-choice-select-item" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-select-item">
+<ANCHOR id="poppler-form-field-choice-set-text" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-set-text">
+<ANCHOR id="poppler-form-field-choice-toggle-item" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-toggle-item">
+<ANCHOR id="poppler-form-field-choice-unselect-all" href="poppler/poppler-poppler-form-field.html#poppler-form-field-choice-unselect-all">
+<ANCHOR id="poppler-form-field-text-do-scroll" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-do-scroll">
+<ANCHOR id="poppler-form-field-text-do-spell-check" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-do-spell-check">
+<ANCHOR id="poppler-form-field-text-get-max-len" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-get-max-len">
+<ANCHOR id="poppler-form-field-text-get-text" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-get-text">
+<ANCHOR id="poppler-form-field-text-get-text-type" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-get-text-type">
+<ANCHOR id="poppler-form-field-text-is-password" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-is-password">
+<ANCHOR id="poppler-form-field-text-is-rich-text" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-is-rich-text">
+<ANCHOR id="poppler-form-field-text-set-text" href="poppler/poppler-poppler-form-field.html#poppler-form-field-text-set-text">
+<ANCHOR id="poppler-poppler-enums" href="poppler/poppler-poppler-enums.html">
+<ANCHOR id="poppler-poppler-enums.synopsis" href="poppler/poppler-poppler-enums.html#poppler-poppler-enums.synopsis">
+<ANCHOR id="poppler-poppler-enums.description" href="poppler/poppler-poppler-enums.html#poppler-poppler-enums.description">
+<ANCHOR id="poppler-poppler-enums.details" href="poppler/poppler-poppler-enums.html#poppler-poppler-enums.details">
+<ANCHOR id="POPPLER-TYPE-ACTION-TYPE--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-ACTION-TYPE--CAPS">
+<ANCHOR id="poppler-action-type-get-type" href="poppler/poppler-poppler-enums.html#poppler-action-type-get-type">
+<ANCHOR id="POPPLER-TYPE-DEST-TYPE--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-DEST-TYPE--CAPS">
+<ANCHOR id="poppler-dest-type-get-type" href="poppler/poppler-poppler-enums.html#poppler-dest-type-get-type">
+<ANCHOR id="POPPLER-TYPE-PAGE-LAYOUT--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-PAGE-LAYOUT--CAPS">
+<ANCHOR id="poppler-page-layout-get-type" href="poppler/poppler-poppler-enums.html#poppler-page-layout-get-type">
+<ANCHOR id="POPPLER-TYPE-PAGE-MODE--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-PAGE-MODE--CAPS">
+<ANCHOR id="poppler-page-mode-get-type" href="poppler/poppler-poppler-enums.html#poppler-page-mode-get-type">
+<ANCHOR id="POPPLER-TYPE-FONT-TYPE--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-FONT-TYPE--CAPS">
+<ANCHOR id="poppler-font-type-get-type" href="poppler/poppler-poppler-enums.html#poppler-font-type-get-type">
+<ANCHOR id="POPPLER-TYPE-VIEWER-PREFERENCES--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-VIEWER-PREFERENCES--CAPS">
+<ANCHOR id="poppler-viewer-preferences-get-type" href="poppler/poppler-poppler-enums.html#poppler-viewer-preferences-get-type">
+<ANCHOR id="POPPLER-TYPE-PERMISSIONS--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-PERMISSIONS--CAPS">
+<ANCHOR id="poppler-permissions-get-type" href="poppler/poppler-poppler-enums.html#poppler-permissions-get-type">
+<ANCHOR id="POPPLER-TYPE-SELECTION-STYLE--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-SELECTION-STYLE--CAPS">
+<ANCHOR id="poppler-selection-style-get-type" href="poppler/poppler-poppler-enums.html#poppler-selection-style-get-type">
+<ANCHOR id="POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS">
+<ANCHOR id="poppler-page-transition-type-get-type" href="poppler/poppler-poppler-enums.html#poppler-page-transition-type-get-type">
+<ANCHOR id="POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS">
+<ANCHOR id="poppler-page-transition-alignment-get-type" href="poppler/poppler-poppler-enums.html#poppler-page-transition-alignment-get-type">
+<ANCHOR id="POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS">
+<ANCHOR id="poppler-page-transition-direction-get-type" href="poppler/poppler-poppler-enums.html#poppler-page-transition-direction-get-type">
+<ANCHOR id="POPPLER-TYPE-ERROR--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-ERROR--CAPS">
+<ANCHOR id="poppler-error-get-type" href="poppler/poppler-poppler-enums.html#poppler-error-get-type">
+<ANCHOR id="POPPLER-TYPE-ORIENTATION--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-ORIENTATION--CAPS">
+<ANCHOR id="poppler-orientation-get-type" href="poppler/poppler-poppler-enums.html#poppler-orientation-get-type">
+<ANCHOR id="POPPLER-TYPE-BACKEND--CAPS" href="poppler/poppler-poppler-enums.html#POPPLER-TYPE-BACKEND--CAPS">
+<ANCHOR id="poppler-backend-get-type" href="poppler/poppler-poppler-enums.html#poppler-backend-get-type">
+<ANCHOR id="poppler-poppler-annot" href="poppler/poppler-poppler-annot.html">
+<ANCHOR id="poppler-poppler-annot.synopsis" href="poppler/poppler-poppler-annot.html#poppler-poppler-annot.synopsis">
+<ANCHOR id="poppler-poppler-annot.description" href="poppler/poppler-poppler-annot.html#poppler-poppler-annot.description">
+<ANCHOR id="poppler-poppler-annot.details" href="poppler/poppler-poppler-annot.html#poppler-poppler-annot.details">
+<ANCHOR id="PopplerAnnot" href="poppler/poppler-poppler-annot.html#PopplerAnnot">
+<ANCHOR id="poppler-annot-callout-line-copy" href="poppler/poppler-poppler-annot.html#poppler-annot-callout-line-copy">
+<ANCHOR id="poppler-annot-callout-line-free" href="poppler/poppler-poppler-annot.html#poppler-annot-callout-line-free">
+<ANCHOR id="poppler-annot-callout-line-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-callout-line-get-type">
+<ANCHOR id="poppler-annot-callout-line-new" href="poppler/poppler-poppler-annot.html#poppler-annot-callout-line-new">
+<ANCHOR id="poppler-annot-external-data-type-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-external-data-type-get-type">
+<ANCHOR id="poppler-annot-flag-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-flag-get-type">
+<ANCHOR id="poppler-annot-free-text-get-callout-line" href="poppler/poppler-poppler-annot.html#poppler-annot-free-text-get-callout-line">
+<ANCHOR id="poppler-annot-free-text-get-quadding" href="poppler/poppler-poppler-annot.html#poppler-annot-free-text-get-quadding">
+<ANCHOR id="poppler-annot-free-text-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-free-text-get-type">
+<ANCHOR id="poppler-annot-free-text-quadding-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-free-text-quadding-get-type">
+<ANCHOR id="poppler-annot-get-annot-type" href="poppler/poppler-poppler-annot.html#poppler-annot-get-annot-type">
+<ANCHOR id="poppler-annot-get-color" href="poppler/poppler-poppler-annot.html#poppler-annot-get-color">
+<ANCHOR id="poppler-annot-get-contents" href="poppler/poppler-poppler-annot.html#poppler-annot-get-contents">
+<ANCHOR id="poppler-annot-get-flags" href="poppler/poppler-poppler-annot.html#poppler-annot-get-flags">
+<ANCHOR id="poppler-annot-get-modified" href="poppler/poppler-poppler-annot.html#poppler-annot-get-modified">
+<ANCHOR id="poppler-annot-get-name" href="poppler/poppler-poppler-annot.html#poppler-annot-get-name">
+<ANCHOR id="poppler-annot-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-get-type">
+<ANCHOR id="poppler-annot-mapping-copy" href="poppler/poppler-poppler-annot.html#poppler-annot-mapping-copy">
+<ANCHOR id="poppler-annot-mapping-free" href="poppler/poppler-poppler-annot.html#poppler-annot-mapping-free">
+<ANCHOR id="poppler-annot-mapping-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-mapping-get-type">
+<ANCHOR id="poppler-annot-mapping-new" href="poppler/poppler-poppler-annot.html#poppler-annot-mapping-new">
+<ANCHOR id="poppler-annot-markup-get-date" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-date">
+<ANCHOR id="poppler-annot-markup-get-external-data" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-external-data">
+<ANCHOR id="poppler-annot-markup-get-label" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-label">
+<ANCHOR id="poppler-annot-markup-get-opacity" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-opacity">
+<ANCHOR id="poppler-annot-markup-get-popup-is-open" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-popup-is-open">
+<ANCHOR id="poppler-annot-markup-get-reply-to" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-reply-to">
+<ANCHOR id="poppler-annot-markup-get-subject" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-subject">
+<ANCHOR id="poppler-annot-markup-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-get-type">
+<ANCHOR id="poppler-annot-markup-reply-type-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-markup-reply-type-get-type">
+<ANCHOR id="poppler-annot-text-get-icon" href="poppler/poppler-poppler-annot.html#poppler-annot-text-get-icon">
+<ANCHOR id="poppler-annot-text-get-is-open" href="poppler/poppler-poppler-annot.html#poppler-annot-text-get-is-open">
+<ANCHOR id="poppler-annot-text-get-state" href="poppler/poppler-poppler-annot.html#poppler-annot-text-get-state">
+<ANCHOR id="poppler-annot-text-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-text-get-type">
+<ANCHOR id="poppler-annot-text-state-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-text-state-get-type">
+<ANCHOR id="poppler-annot-type-get-type" href="poppler/poppler-poppler-annot.html#poppler-annot-type-get-type">
+<ANCHOR id="poppler-poppler-layer" href="poppler/poppler-poppler-layer.html">
+<ANCHOR id="poppler-poppler-layer.synopsis" href="poppler/poppler-poppler-layer.html#poppler-poppler-layer.synopsis">
+<ANCHOR id="poppler-poppler-layer.description" href="poppler/poppler-poppler-layer.html#poppler-poppler-layer.description">
+<ANCHOR id="poppler-poppler-layer.details" href="poppler/poppler-poppler-layer.html#poppler-poppler-layer.details">
+<ANCHOR id="poppler-layer-get-type" href="poppler/poppler-poppler-layer.html#poppler-layer-get-type">
+<ANCHOR id="poppler-layer-get-title" href="poppler/poppler-poppler-layer.html#poppler-layer-get-title">
+<ANCHOR id="poppler-layer-is-visible" href="poppler/poppler-poppler-layer.html#poppler-layer-is-visible">
+<ANCHOR id="poppler-layer-show" href="poppler/poppler-poppler-layer.html#poppler-layer-show">
+<ANCHOR id="poppler-layer-hide" href="poppler/poppler-poppler-layer.html#poppler-layer-hide">
+<ANCHOR id="poppler-layer-is-parent" href="poppler/poppler-poppler-layer.html#poppler-layer-is-parent">
+<ANCHOR id="poppler-layer-get-radio-button-group-id" href="poppler/poppler-poppler-layer.html#poppler-layer-get-radio-button-group-id">
+<ANCHOR id="poppler-poppler-features" href="poppler/poppler-poppler-features.html">
+<ANCHOR id="poppler-poppler-features.synopsis" href="poppler/poppler-poppler-features.html#poppler-poppler-features.synopsis">
+<ANCHOR id="poppler-poppler-features.description" href="poppler/poppler-poppler-features.html#poppler-poppler-features.description">
+<ANCHOR id="poppler-poppler-features.details" href="poppler/poppler-poppler-features.html#poppler-poppler-features.details">
+<ANCHOR id="POPPLER-HAS-CAIRO--CAPS" href="poppler/poppler-poppler-features.html#POPPLER-HAS-CAIRO--CAPS">
+<ANCHOR id="POPPLER-WITH-GDK--CAPS" href="poppler/poppler-poppler-features.html#POPPLER-WITH-GDK--CAPS">
+<ANCHOR id="POPPLER-MAJOR-VERSION--CAPS" href="poppler/poppler-poppler-features.html#POPPLER-MAJOR-VERSION--CAPS">
+<ANCHOR id="POPPLER-MINOR-VERSION--CAPS" href="poppler/poppler-poppler-features.html#POPPLER-MINOR-VERSION--CAPS">
+<ANCHOR id="POPPLER-MICRO-VERSION--CAPS" href="poppler/poppler-poppler-features.html#POPPLER-MICRO-VERSION--CAPS">
+<ANCHOR id="POPPLER-CHECK-VERSION--CAPS" href="poppler/poppler-poppler-features.html#POPPLER-CHECK-VERSION--CAPS">
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/left.png b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/left.png
new file mode 100644
index 00000000000..2d05b3d5b4a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/left.png
Binary files differ
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-action.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-action.html
new file mode 100644
index 00000000000..27f85f3920a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-action.html
@@ -0,0 +1,386 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PopplerAction</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-page.html" title="PopplerPage">
+<link rel="next" href="poppler-poppler-attachment.html" title="PopplerAttachment">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-page.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-attachment.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-action.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-action.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="PopplerAction">
+<a name="poppler-poppler-action"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-action.top_of_page"></a>PopplerAction</span></h2>
+<p>PopplerAction — Action links</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-action.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+enum <a class="link" href="poppler-poppler-action.html#PopplerActionType" title="enum PopplerActionType">PopplerActionType</a>;
+enum <a class="link" href="poppler-poppler-action.html#PopplerDestType" title="enum PopplerDestType">PopplerDestType</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerActionAny" title="PopplerActionAny">PopplerActionAny</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerActionGotoDest" title="PopplerActionGotoDest">PopplerActionGotoDest</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerActionGotoRemote" title="PopplerActionGotoRemote">PopplerActionGotoRemote</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerActionLaunch" title="PopplerActionLaunch">PopplerActionLaunch</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerActionUri" title="PopplerActionUri">PopplerActionUri</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerActionNamed" title="PopplerActionNamed">PopplerActionNamed</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerActionMovie" title="PopplerActionMovie">PopplerActionMovie</a>;
+ <a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a>;
+union <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a>;
+#define <a class="link" href="poppler-poppler-action.html#POPPLER-TYPE-ACTION--CAPS" title="POPPLER_TYPE_ACTION">POPPLER_TYPE_ACTION</a>
+#define <a class="link" href="poppler-poppler-action.html#POPPLER-ACTION--CAPS" title="POPPLER_ACTION()">POPPLER_ACTION</a> (obj)
+GType <a class="link" href="poppler-poppler-action.html#poppler-action-get-type" title="poppler_action_get_type ()">poppler_action_get_type</a> (void);
+<a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> * <a class="link" href="poppler-poppler-action.html#poppler-action-copy" title="poppler_action_copy ()">poppler_action_copy</a> (<a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> *action);
+void <a class="link" href="poppler-poppler-action.html#poppler-action-free" title="poppler_action_free ()">poppler_action_free</a> (<a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> *action);
+#define <a class="link" href="poppler-poppler-action.html#POPPLER-TYPE-DEST--CAPS" title="POPPLER_TYPE_DEST">POPPLER_TYPE_DEST</a>
+GType <a class="link" href="poppler-poppler-action.html#poppler-dest-get-type" title="poppler_dest_get_type ()">poppler_dest_get_type</a> (void);
+<a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> * <a class="link" href="poppler-poppler-action.html#poppler-dest-copy" title="poppler_dest_copy ()">poppler_dest_copy</a> (<a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> *dest);
+void <a class="link" href="poppler-poppler-action.html#poppler-dest-free" title="poppler_dest_free ()">poppler_dest_free</a> (<a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> *dest);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-action.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-action.details"></a><h2>Details</h2>
+<div class="refsect2" title="enum PopplerActionType">
+<a name="PopplerActionType"></a><h3>enum PopplerActionType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_ACTION_UNKNOWN, /* unknown action */
+ POPPLER_ACTION_NONE, /* no action specified */
+ POPPLER_ACTION_GOTO_DEST, /* go to destination */
+ POPPLER_ACTION_GOTO_REMOTE, /* go to destination in new file */
+ POPPLER_ACTION_LAUNCH, /* launch app (or open document) */
+ POPPLER_ACTION_URI, /* URI */
+ POPPLER_ACTION_NAMED, /* named action*/
+ POPPLER_ACTION_MOVIE /* movie action */
+} PopplerActionType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerDestType">
+<a name="PopplerDestType"></a><h3>enum PopplerDestType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_DEST_UNKNOWN,
+ POPPLER_DEST_XYZ,
+ POPPLER_DEST_FIT,
+ POPPLER_DEST_FITH,
+ POPPLER_DEST_FITV,
+ POPPLER_DEST_FITR,
+ POPPLER_DEST_FITB,
+ POPPLER_DEST_FITBH,
+ POPPLER_DEST_FITBV,
+ POPPLER_DEST_NAMED
+} PopplerDestType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerActionAny">
+<a name="PopplerActionAny"></a><h3>PopplerActionAny</h3>
+<pre class="programlisting">typedef struct {
+ PopplerActionType type;
+ gchar *title;
+} PopplerActionAny;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerActionGotoDest">
+<a name="PopplerActionGotoDest"></a><h3>PopplerActionGotoDest</h3>
+<pre class="programlisting">typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ PopplerDest *dest;
+} PopplerActionGotoDest;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerActionGotoRemote">
+<a name="PopplerActionGotoRemote"></a><h3>PopplerActionGotoRemote</h3>
+<pre class="programlisting">typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *file_name;
+ PopplerDest *dest;
+} PopplerActionGotoRemote;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerActionLaunch">
+<a name="PopplerActionLaunch"></a><h3>PopplerActionLaunch</h3>
+<pre class="programlisting">typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *file_name;
+ gchar *params;
+} PopplerActionLaunch;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerActionUri">
+<a name="PopplerActionUri"></a><h3>PopplerActionUri</h3>
+<pre class="programlisting">typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ char *uri;
+} PopplerActionUri;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerActionNamed">
+<a name="PopplerActionNamed"></a><h3>PopplerActionNamed</h3>
+<pre class="programlisting">typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *named_dest;
+} PopplerActionNamed;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerActionMovie">
+<a name="PopplerActionMovie"></a><h3>PopplerActionMovie</h3>
+<pre class="programlisting">typedef struct {
+ PopplerActionType type;
+ gchar *title;
+} PopplerActionMovie;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerDest">
+<a name="PopplerDest"></a><h3>PopplerDest</h3>
+<pre class="programlisting">typedef struct {
+ PopplerDestType type;
+
+ int page_num;
+ double left;
+ double bottom;
+ double right;
+ double top;
+ double zoom;
+ gchar *named_dest;
+ guint change_left : 1;
+ guint change_top : 1;
+ guint change_zoom : 1;
+} PopplerDest;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="union PopplerAction">
+<a name="PopplerAction"></a><h3>union PopplerAction</h3>
+<pre class="programlisting">union PopplerAction
+{
+ PopplerActionType type;
+ PopplerActionAny any;
+ PopplerActionGotoDest goto_dest;
+ PopplerActionGotoRemote goto_remote;
+ PopplerActionLaunch launch;
+ PopplerActionUri uri;
+ PopplerActionNamed named;
+ PopplerActionMovie movie;
+};
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_ACTION">
+<a name="POPPLER-TYPE-ACTION--CAPS"></a><h3>POPPLER_TYPE_ACTION</h3>
+<pre class="programlisting">#define POPPLER_TYPE_ACTION (poppler_action_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_ACTION()">
+<a name="POPPLER-ACTION--CAPS"></a><h3>POPPLER_ACTION()</h3>
+<pre class="programlisting">#define POPPLER_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ACTION, PopplerAction))
+</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>obj</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_action_get_type ()">
+<a name="poppler-action-get-type"></a><h3>poppler_action_get_type ()</h3>
+<pre class="programlisting">GType poppler_action_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_action_copy ()">
+<a name="poppler-action-copy"></a><h3>poppler_action_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> * poppler_action_copy (<a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> *action);</pre>
+<p>
+Copies <em class="parameter"><code>action</code></em>, creating an identical <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>action</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new action identical to <em class="parameter"><code>action</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_action_free ()">
+<a name="poppler-action-free"></a><h3>poppler_action_free ()</h3>
+<pre class="programlisting">void poppler_action_free (<a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> *action);</pre>
+<p>
+Frees <em class="parameter"><code>action</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>action</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_DEST">
+<a name="POPPLER-TYPE-DEST--CAPS"></a><h3>POPPLER_TYPE_DEST</h3>
+<pre class="programlisting">#define POPPLER_TYPE_DEST (poppler_dest_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_dest_get_type ()">
+<a name="poppler-dest-get-type"></a><h3>poppler_dest_get_type ()</h3>
+<pre class="programlisting">GType poppler_dest_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_dest_copy ()">
+<a name="poppler-dest-copy"></a><h3>poppler_dest_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> * poppler_dest_copy (<a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> *dest);</pre>
+<p>
+Copies <em class="parameter"><code>dest</code></em>, creating an identical <a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest"><span class="type">PopplerDest</span></a>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest"><span class="type">PopplerDest</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new destination identical to <em class="parameter"><code>dest</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_dest_free ()">
+<a name="poppler-dest-free"></a><h3>poppler_dest_free ()</h3>
+<pre class="programlisting">void poppler_dest_free (<a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> *dest);</pre>
+<p>
+Frees <em class="parameter"><code>dest</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest"><span class="type">PopplerDest</span></a>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-annot.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-annot.html
new file mode 100644
index 00000000000..4713634826d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-annot.html
@@ -0,0 +1,854 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PopplerAnnot</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-enums.html" title="poppler-enums">
+<link rel="next" href="poppler-poppler-layer.html" title="PopplerLayer">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-enums.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-layer.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-annot.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-annot.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="PopplerAnnot">
+<a name="poppler-poppler-annot"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-annot.top_of_page"></a>PopplerAnnot</span></h2>
+<p>PopplerAnnot — Annotations</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-annot.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+ <a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a>;
+PopplerAnnotCalloutLine * <a class="link" href="poppler-poppler-annot.html#poppler-annot-callout-line-copy" title="poppler_annot_callout_line_copy ()">poppler_annot_callout_line_copy</a>
+ (PopplerAnnotCalloutLine *callout);
+void <a class="link" href="poppler-poppler-annot.html#poppler-annot-callout-line-free" title="poppler_annot_callout_line_free ()">poppler_annot_callout_line_free</a> (PopplerAnnotCalloutLine *callout);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-callout-line-get-type" title="poppler_annot_callout_line_get_type ()">poppler_annot_callout_line_get_type</a> (void);
+PopplerAnnotCalloutLine * <a class="link" href="poppler-poppler-annot.html#poppler-annot-callout-line-new" title="poppler_annot_callout_line_new ()">poppler_annot_callout_line_new</a>
+ (void);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-external-data-type-get-type" title="poppler_annot_external_data_type_get_type ()">poppler_annot_external_data_type_get_type</a>
+ (void);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-flag-get-type" title="poppler_annot_flag_get_type ()">poppler_annot_flag_get_type</a> (void);
+PopplerAnnotCalloutLine * <a class="link" href="poppler-poppler-annot.html#poppler-annot-free-text-get-callout-line" title="poppler_annot_free_text_get_callout_line ()">poppler_annot_free_text_get_callout_line</a>
+ (PopplerAnnotFreeText *poppler_annot);
+PopplerAnnotFreeTextQuadding <a class="link" href="poppler-poppler-annot.html#poppler-annot-free-text-get-quadding" title="poppler_annot_free_text_get_quadding ()">poppler_annot_free_text_get_quadding</a>
+ (PopplerAnnotFreeText *poppler_annot);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-free-text-get-type" title="poppler_annot_free_text_get_type ()">poppler_annot_free_text_get_type</a> (void);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-free-text-quadding-get-type" title="poppler_annot_free_text_quadding_get_type ()">poppler_annot_free_text_quadding_get_type</a>
+ (void);
+PopplerAnnotType <a class="link" href="poppler-poppler-annot.html#poppler-annot-get-annot-type" title="poppler_annot_get_annot_type ()">poppler_annot_get_annot_type</a> (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);
+PopplerColor * <a class="link" href="poppler-poppler-annot.html#poppler-annot-get-color" title="poppler_annot_get_color ()">poppler_annot_get_color</a> (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);
+gchar * <a class="link" href="poppler-poppler-annot.html#poppler-annot-get-contents" title="poppler_annot_get_contents ()">poppler_annot_get_contents</a> (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);
+PopplerAnnotFlag <a class="link" href="poppler-poppler-annot.html#poppler-annot-get-flags" title="poppler_annot_get_flags ()">poppler_annot_get_flags</a> (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);
+gchar * <a class="link" href="poppler-poppler-annot.html#poppler-annot-get-modified" title="poppler_annot_get_modified ()">poppler_annot_get_modified</a> (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);
+gchar * <a class="link" href="poppler-poppler-annot.html#poppler-annot-get-name" title="poppler_annot_get_name ()">poppler_annot_get_name</a> (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-get-type" title="poppler_annot_get_type ()">poppler_annot_get_type</a> (void);
+PopplerAnnotMapping * <a class="link" href="poppler-poppler-annot.html#poppler-annot-mapping-copy" title="poppler_annot_mapping_copy ()">poppler_annot_mapping_copy</a> (PopplerAnnotMapping *mapping);
+void <a class="link" href="poppler-poppler-annot.html#poppler-annot-mapping-free" title="poppler_annot_mapping_free ()">poppler_annot_mapping_free</a> (PopplerAnnotMapping *mapping);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-mapping-get-type" title="poppler_annot_mapping_get_type ()">poppler_annot_mapping_get_type</a> (void);
+PopplerAnnotMapping * <a class="link" href="poppler-poppler-annot.html#poppler-annot-mapping-new" title="poppler_annot_mapping_new ()">poppler_annot_mapping_new</a> (void);
+GDate * <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-date" title="poppler_annot_markup_get_date ()">poppler_annot_markup_get_date</a> (PopplerAnnotMarkup *poppler_annot);
+PopplerAnnotExternalDataType <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-external-data" title="poppler_annot_markup_get_external_data ()">poppler_annot_markup_get_external_data</a>
+ (PopplerAnnotMarkup *poppler_annot);
+gchar * <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-label" title="poppler_annot_markup_get_label ()">poppler_annot_markup_get_label</a> (PopplerAnnotMarkup *poppler_annot);
+gdouble <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-opacity" title="poppler_annot_markup_get_opacity ()">poppler_annot_markup_get_opacity</a> (PopplerAnnotMarkup *poppler_annot);
+gboolean <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-popup-is-open" title="poppler_annot_markup_get_popup_is_open ()">poppler_annot_markup_get_popup_is_open</a>
+ (PopplerAnnotMarkup *poppler_annot);
+PopplerAnnotMarkupReplyType <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-reply-to" title="poppler_annot_markup_get_reply_to ()">poppler_annot_markup_get_reply_to</a>
+ (PopplerAnnotMarkup *poppler_annot);
+gchar * <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-subject" title="poppler_annot_markup_get_subject ()">poppler_annot_markup_get_subject</a> (PopplerAnnotMarkup *poppler_annot);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-get-type" title="poppler_annot_markup_get_type ()">poppler_annot_markup_get_type</a> (void);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-markup-reply-type-get-type" title="poppler_annot_markup_reply_type_get_type ()">poppler_annot_markup_reply_type_get_type</a>
+ (void);
+gchar * <a class="link" href="poppler-poppler-annot.html#poppler-annot-text-get-icon" title="poppler_annot_text_get_icon ()">poppler_annot_text_get_icon</a> (PopplerAnnotText *poppler_annot);
+gboolean <a class="link" href="poppler-poppler-annot.html#poppler-annot-text-get-is-open" title="poppler_annot_text_get_is_open ()">poppler_annot_text_get_is_open</a> (PopplerAnnotText *poppler_annot);
+PopplerAnnotTextState <a class="link" href="poppler-poppler-annot.html#poppler-annot-text-get-state" title="poppler_annot_text_get_state ()">poppler_annot_text_get_state</a> (PopplerAnnotText *poppler_annot);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-text-get-type" title="poppler_annot_text_get_type ()">poppler_annot_text_get_type</a> (void);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-text-state-get-type" title="poppler_annot_text_state_get_type ()">poppler_annot_text_state_get_type</a> (void);
+GType <a class="link" href="poppler-poppler-annot.html#poppler-annot-type-get-type" title="poppler_annot_type_get_type ()">poppler_annot_type_get_type</a> (void);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-annot.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-annot.details"></a><h2>Details</h2>
+<div class="refsect2" title="PopplerAnnot">
+<a name="PopplerAnnot"></a><h3>PopplerAnnot</h3>
+<pre class="programlisting">typedef struct _PopplerAnnot PopplerAnnot;</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_callout_line_copy ()">
+<a name="poppler-annot-callout-line-copy"></a><h3>poppler_annot_callout_line_copy ()</h3>
+<pre class="programlisting">PopplerAnnotCalloutLine * poppler_annot_callout_line_copy
+ (PopplerAnnotCalloutLine *callout);</pre>
+<p>
+It does copy <em class="parameter"><code>callout</code></em> to a new <span class="type">PopplerAnnotCalloutLine</span>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>callout</code></em> :</span></p></td>
+<td> the <span class="type">PopplerAnnotCalloutline</span> to be copied.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated <span class="type">PopplerAnnotCalloutLine</span> as exact copy of
+ <em class="parameter"><code>callout</code></em>, NULL in other case. It must be freed when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_callout_line_free ()">
+<a name="poppler-annot-callout-line-free"></a><h3>poppler_annot_callout_line_free ()</h3>
+<pre class="programlisting">void poppler_annot_callout_line_free (PopplerAnnotCalloutLine *callout);</pre>
+<p>
+Frees the memory used by <span class="type">PopplerAnnotCalloutLine</span>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>callout</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotCalloutLine</span>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_callout_line_get_type ()">
+<a name="poppler-annot-callout-line-get-type"></a><h3>poppler_annot_callout_line_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_callout_line_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_callout_line_new ()">
+<a name="poppler-annot-callout-line-new"></a><h3>poppler_annot_callout_line_new ()</h3>
+<pre class="programlisting">PopplerAnnotCalloutLine * poppler_annot_callout_line_new
+ (void);</pre>
+<p>
+Creates a new empty <span class="type">PopplerAnnotCalloutLine</span>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated <span class="type">PopplerAnnotCalloutLine</span>, NULL in other case.
+ It must be freed when done.
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_external_data_type_get_type ()">
+<a name="poppler-annot-external-data-type-get-type"></a><h3>poppler_annot_external_data_type_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_external_data_type_get_type
+ (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_flag_get_type ()">
+<a name="poppler-annot-flag-get-type"></a><h3>poppler_annot_flag_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_flag_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_free_text_get_callout_line ()">
+<a name="poppler-annot-free-text-get-callout-line"></a><h3>poppler_annot_free_text_get_callout_line ()</h3>
+<pre class="programlisting">PopplerAnnotCalloutLine * poppler_annot_free_text_get_callout_line
+ (PopplerAnnotFreeText *poppler_annot);</pre>
+<p>
+Retrieves a <span class="type">PopplerCalloutLine</span> of four or six numbers specifying a callout
+line attached to the <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotFreeText</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated <span class="type">PopplerCalloutLine</span> if the annot has a callout
+ line, NULL in other case. It must be freed with <code class="function">g_free()</code> when
+ done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_free_text_get_quadding ()">
+<a name="poppler-annot-free-text-get-quadding"></a><h3>poppler_annot_free_text_get_quadding ()</h3>
+<pre class="programlisting">PopplerAnnotFreeTextQuadding poppler_annot_free_text_get_quadding
+ (PopplerAnnotFreeText *poppler_annot);</pre>
+<p>
+Retrieves the justification of the text of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotFreeText</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <span class="type">PopplerAnnotFreeTextQuadding</span> of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_free_text_get_type ()">
+<a name="poppler-annot-free-text-get-type"></a><h3>poppler_annot_free_text_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_free_text_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_free_text_quadding_get_type ()">
+<a name="poppler-annot-free-text-quadding-get-type"></a><h3>poppler_annot_free_text_quadding_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_free_text_quadding_get_type
+ (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_get_annot_type ()">
+<a name="poppler-annot-get-annot-type"></a><h3>poppler_annot_get_annot_type ()</h3>
+<pre class="programlisting">PopplerAnnotType poppler_annot_get_annot_type (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);</pre>
+<p>
+Gets the type of <em class="parameter"><code>poppler_annot</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot"><span class="type">PopplerAnnot</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <span class="type">PopplerAnnotType</span> of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_get_color ()">
+<a name="poppler-annot-get-color"></a><h3>poppler_annot_get_color ()</h3>
+<pre class="programlisting">PopplerColor * poppler_annot_get_color (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);</pre>
+<p>
+Retrieves the color of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot"><span class="type">PopplerAnnot</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated <span class="type">PopplerColor</span> with the color values of
+ <em class="parameter"><code>poppler_annot</code></em>, or <code class="literal">NULL</code>. It must be freed with <code class="function">g_free()</code> when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_get_contents ()">
+<a name="poppler-annot-get-contents"></a><h3>poppler_annot_get_contents ()</h3>
+<pre class="programlisting">gchar * poppler_annot_get_contents (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);</pre>
+<p>
+Retrieves the contents of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot"><span class="type">PopplerAnnot</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated string with the contents of <em class="parameter"><code>poppler_annot</code></em>. It
+ must be freed with <code class="function">g_free()</code> when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_get_flags ()">
+<a name="poppler-annot-get-flags"></a><h3>poppler_annot_get_flags ()</h3>
+<pre class="programlisting">PopplerAnnotFlag poppler_annot_get_flags (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);</pre>
+<p>
+Retrieves the flag field specifying various characteristics of the
+<em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot"><span class="type">PopplerAnnot</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the flag field of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_get_modified ()">
+<a name="poppler-annot-get-modified"></a><h3>poppler_annot_get_modified ()</h3>
+<pre class="programlisting">gchar * poppler_annot_get_modified (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);</pre>
+<p>
+Retrieves the last modification data of <em class="parameter"><code>poppler_annot</code></em>. The returned
+string will be either a PDF format date or a text string.
+See also #<code class="function">poppler_date_parse()</code></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot"><span class="type">PopplerAnnot</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated string with the last modification data of
+ <em class="parameter"><code>poppler_annot</code></em>. It must be freed with <code class="function">g_free()</code> when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_get_name ()">
+<a name="poppler-annot-get-name"></a><h3>poppler_annot_get_name ()</h3>
+<pre class="programlisting">gchar * poppler_annot_get_name (<a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot">PopplerAnnot</a> *poppler_annot);</pre>
+<p>
+Retrieves the name of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-annot.html#PopplerAnnot" title="PopplerAnnot"><span class="type">PopplerAnnot</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated string with the name of <em class="parameter"><code>poppler_annot</code></em>. It must
+ be freed with <code class="function">g_free()</code> when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_get_type ()">
+<a name="poppler-annot-get-type"></a><h3>poppler_annot_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_mapping_copy ()">
+<a name="poppler-annot-mapping-copy"></a><h3>poppler_annot_mapping_copy ()</h3>
+<pre class="programlisting">PopplerAnnotMapping * poppler_annot_mapping_copy (PopplerAnnotMapping *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_mapping_free ()">
+<a name="poppler-annot-mapping-free"></a><h3>poppler_annot_mapping_free ()</h3>
+<pre class="programlisting">void poppler_annot_mapping_free (PopplerAnnotMapping *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_mapping_get_type ()">
+<a name="poppler-annot-mapping-get-type"></a><h3>poppler_annot_mapping_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_mapping_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_mapping_new ()">
+<a name="poppler-annot-mapping-new"></a><h3>poppler_annot_mapping_new ()</h3>
+<pre class="programlisting">PopplerAnnotMapping * poppler_annot_mapping_new (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_date ()">
+<a name="poppler-annot-markup-get-date"></a><h3>poppler_annot_markup_get_date ()</h3>
+<pre class="programlisting">GDate * poppler_annot_markup_get_date (PopplerAnnotMarkup *poppler_annot);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_external_data ()">
+<a name="poppler-annot-markup-get-external-data"></a><h3>poppler_annot_markup_get_external_data ()</h3>
+<pre class="programlisting">PopplerAnnotExternalDataType poppler_annot_markup_get_external_data
+ (PopplerAnnotMarkup *poppler_annot);</pre>
+<p>
+Gets the external data type of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotMarkup</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <span class="type">PopplerAnnotExternalDataType</span> of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_label ()">
+<a name="poppler-annot-markup-get-label"></a><h3>poppler_annot_markup_get_label ()</h3>
+<pre class="programlisting">gchar * poppler_annot_markup_get_label (PopplerAnnotMarkup *poppler_annot);</pre>
+<p>
+Retrieves the label text of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotMarkup</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the label text of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_opacity ()">
+<a name="poppler-annot-markup-get-opacity"></a><h3>poppler_annot_markup_get_opacity ()</h3>
+<pre class="programlisting">gdouble poppler_annot_markup_get_opacity (PopplerAnnotMarkup *poppler_annot);</pre>
+<p>
+Retrieves the opacity value of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotMarkup</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the opacity value of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_popup_is_open ()">
+<a name="poppler-annot-markup-get-popup-is-open"></a><h3>poppler_annot_markup_get_popup_is_open ()</h3>
+<pre class="programlisting">gboolean poppler_annot_markup_get_popup_is_open
+ (PopplerAnnotMarkup *poppler_annot);</pre>
+<p>
+Retrieves the state of the popup annot related to <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotMarkup</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the state of <em class="parameter"><code>poppler_annot</code></em>. <code class="literal">TRUE</code> if it's open, <code class="literal">FALSE</code> in
+ other case.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_reply_to ()">
+<a name="poppler-annot-markup-get-reply-to"></a><h3>poppler_annot_markup_get_reply_to ()</h3>
+<pre class="programlisting">PopplerAnnotMarkupReplyType poppler_annot_markup_get_reply_to
+ (PopplerAnnotMarkup *poppler_annot);</pre>
+<p>
+Gets the reply type of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotMarkup</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <span class="type">PopplerAnnotMarkupReplyType</span> of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_subject ()">
+<a name="poppler-annot-markup-get-subject"></a><h3>poppler_annot_markup_get_subject ()</h3>
+<pre class="programlisting">gchar * poppler_annot_markup_get_subject (PopplerAnnotMarkup *poppler_annot);</pre>
+<p>
+Retrives the subject text of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotMarkup</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the subject text of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_get_type ()">
+<a name="poppler-annot-markup-get-type"></a><h3>poppler_annot_markup_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_markup_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_markup_reply_type_get_type ()">
+<a name="poppler-annot-markup-reply-type-get-type"></a><h3>poppler_annot_markup_reply_type_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_markup_reply_type_get_type
+ (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_text_get_icon ()">
+<a name="poppler-annot-text-get-icon"></a><h3>poppler_annot_text_get_icon ()</h3>
+<pre class="programlisting">gchar * poppler_annot_text_get_icon (PopplerAnnotText *poppler_annot);</pre>
+<p>
+Gets the icon type of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotText</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <span class="type">PopplerAnnotTextIcon</span> of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_text_get_is_open ()">
+<a name="poppler-annot-text-get-is-open"></a><h3>poppler_annot_text_get_is_open ()</h3>
+<pre class="programlisting">gboolean poppler_annot_text_get_is_open (PopplerAnnotText *poppler_annot);</pre>
+<p>
+Retrieves the state of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotText</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the state of <em class="parameter"><code>poppler_annot</code></em>. <code class="literal">TRUE</code> if it's open, <code class="literal">FALSE</code> in
+ other case.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_text_get_state ()">
+<a name="poppler-annot-text-get-state"></a><h3>poppler_annot_text_get_state ()</h3>
+<pre class="programlisting">PopplerAnnotTextState poppler_annot_text_get_state (PopplerAnnotText *poppler_annot);</pre>
+<p>
+Retrieves the state of <em class="parameter"><code>poppler_annot</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>poppler_annot</code></em> :</span></p></td>
+<td> a <span class="type">PopplerAnnotText</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <span class="type">PopplerAnnotTextState</span> of <em class="parameter"><code>poppler_annot</code></em>.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_text_get_type ()">
+<a name="poppler-annot-text-get-type"></a><h3>poppler_annot_text_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_text_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_text_state_get_type ()">
+<a name="poppler-annot-text-state-get-type"></a><h3>poppler_annot_text_state_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_text_state_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_annot_type_get_type ()">
+<a name="poppler-annot-type-get-type"></a><h3>poppler_annot_type_get_type ()</h3>
+<pre class="programlisting">GType poppler_annot_type_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-attachment.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-attachment.html
new file mode 100644
index 00000000000..25346664097
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-attachment.html
@@ -0,0 +1,205 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PopplerAttachment</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-action.html" title="PopplerAction">
+<link rel="next" href="poppler-poppler-form-field.html" title="PopplerFormField">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-action.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-form-field.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-attachment.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-attachment.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="PopplerAttachment">
+<a name="poppler-poppler-attachment"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-attachment.top_of_page"></a>PopplerAttachment</span></h2>
+<p>PopplerAttachment</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-attachment.synopsis"></a><h2>Synopsis</h2>
+<a name="PopplerAttachment"></a><pre class="synopsis">
+ <a class="link" href="poppler-poppler-attachment.html#PopplerAttachment-struct" title="PopplerAttachment">PopplerAttachment</a>;
+gboolean <a class="link" href="poppler-poppler-attachment.html#poppler-attachment-save" title="poppler_attachment_save ()">poppler_attachment_save</a> (<a class="link" href="poppler-poppler-attachment.html#PopplerAttachment">PopplerAttachment</a> *attachment,
+ const char *filename,
+ GError **error);
+gboolean <a class="link" href="poppler-poppler-attachment.html#poppler-attachment-save-to-callback" title="poppler_attachment_save_to_callback ()">poppler_attachment_save_to_callback</a> (<a class="link" href="poppler-poppler-attachment.html#PopplerAttachment">PopplerAttachment</a> *attachment,
+ <a class="link" href="poppler-poppler-attachment.html#PopplerAttachmentSaveFunc" title="PopplerAttachmentSaveFunc ()">PopplerAttachmentSaveFunc</a> save_func,
+ gpointer user_data,
+ GError **error);
+gboolean (<a class="link" href="poppler-poppler-attachment.html#PopplerAttachmentSaveFunc" title="PopplerAttachmentSaveFunc ()">*PopplerAttachmentSaveFunc</a>) (const gchar *buf,
+ gsize count,
+ gpointer data,
+ GError **error);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-attachment.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-attachment.details"></a><h2>Details</h2>
+<div class="refsect2" title="PopplerAttachment">
+<a name="PopplerAttachment-struct"></a><h3>PopplerAttachment</h3>
+<pre class="programlisting">typedef struct _PopplerAttachment PopplerAttachment;</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_attachment_save ()">
+<a name="poppler-attachment-save"></a><h3>poppler_attachment_save ()</h3>
+<pre class="programlisting">gboolean poppler_attachment_save (<a class="link" href="poppler-poppler-attachment.html#PopplerAttachment">PopplerAttachment</a> *attachment,
+ const char *filename,
+ GError **error);</pre>
+<p>
+Saves <em class="parameter"><code>attachment</code></em> to a file indicated by <em class="parameter"><code>filename</code></em>. If <em class="parameter"><code>error</code></em> is set, <code class="literal">FALSE</code>
+will be returned. Possible errors include those in the <span class="type">G_FILE_ERROR</span> domain
+and whatever the save function generates.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>attachment</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler-attachment.html#PopplerAttachment"><span class="type">PopplerAttachment</span></a>.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>filename</code></em> :</span></p></td>
+<td> name of file to save
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td> return location for error, or <code class="literal">NULL</code>.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code>, if the file successfully saved
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_attachment_save_to_callback ()">
+<a name="poppler-attachment-save-to-callback"></a><h3>poppler_attachment_save_to_callback ()</h3>
+<pre class="programlisting">gboolean poppler_attachment_save_to_callback (<a class="link" href="poppler-poppler-attachment.html#PopplerAttachment">PopplerAttachment</a> *attachment,
+ <a class="link" href="poppler-poppler-attachment.html#PopplerAttachmentSaveFunc" title="PopplerAttachmentSaveFunc ()">PopplerAttachmentSaveFunc</a> save_func,
+ gpointer user_data,
+ GError **error);</pre>
+<p>
+Saves <em class="parameter"><code>attachment</code></em> by feeding the produced data to <em class="parameter"><code>save_func</code></em>. Can be used
+when you want to store the attachment to something other than a file, such as
+an in-memory buffer or a socket. If <em class="parameter"><code>error</code></em> is set, <code class="literal">FALSE</code> will be
+returned. Possible errors include those in the <span class="type">G_FILE_ERROR</span> domain and
+whatever the save function generates.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>attachment</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler-attachment.html#PopplerAttachment"><span class="type">PopplerAttachment</span></a>.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>save_func</code></em> :</span></p></td>
+<td> a function that is called to save each block of data that the save routine generates.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
+<td> user data to pass to the save function.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td> return location for error, or <code class="literal">NULL</code>.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code>, if the save successfully completed
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="PopplerAttachmentSaveFunc ()">
+<a name="PopplerAttachmentSaveFunc"></a><h3>PopplerAttachmentSaveFunc ()</h3>
+<pre class="programlisting">gboolean (*PopplerAttachmentSaveFunc) (const gchar *buf,
+ gsize count,
+ gpointer data,
+ GError **error);</pre>
+<p>
+Specifies the type of the function passed to
+<a class="link" href="poppler-poppler-attachment.html#poppler-attachment-save-to-callback" title="poppler_attachment_save_to_callback ()"><code class="function">poppler_attachment_save_to_callback()</code></a>. It is called once for each block of
+bytes that is "written" by <a class="link" href="poppler-poppler-attachment.html#poppler-attachment-save-to-callback" title="poppler_attachment_save_to_callback ()"><code class="function">poppler_attachment_save_to_callback()</code></a>. If
+successful it should return <code class="literal">TRUE</code>. If an error occurs it should set
+<em class="parameter"><code>error</code></em> and return <code class="literal">FALSE</code>, in which case <a class="link" href="poppler-poppler-attachment.html#poppler-attachment-save-to-callback" title="poppler_attachment_save_to_callback ()"><code class="function">poppler_attachment_save_to_callback()</code></a>
+will fail with the same error.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>buf</code></em> :</span></p></td>
+<td>buffer containing bytes to be written.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>count</code></em> :</span></p></td>
+<td>number of bytes in <em class="parameter"><code>buf</code></em>.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
+<td>A location to return an error.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td>user data passed to <a class="link" href="poppler-poppler-attachment.html#poppler-attachment-save-to-callback" title="poppler_attachment_save_to_callback ()"><code class="function">poppler_attachment_save_to_callback()</code></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>%TRUE if successful, <code class="literal">FALSE</code> (with <em class="parameter"><code>error</code></em> set) if failed.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-document.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-document.html
new file mode 100644
index 00000000000..38ca0d4fa59
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-document.html
@@ -0,0 +1,1122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PopplerDocument</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler.html" title="poppler">
+<link rel="next" href="poppler-poppler-page.html" title="PopplerPage">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-page.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-document.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-document.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="PopplerDocument">
+<a name="poppler-poppler-document"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-document.top_of_page"></a>PopplerDocument</span></h2>
+<p>PopplerDocument — Information about a document</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-document.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+enum <a class="link" href="poppler-poppler-document.html#PopplerPageLayout" title="enum PopplerPageLayout">PopplerPageLayout</a>;
+enum <a class="link" href="poppler-poppler-document.html#PopplerPageMode" title="enum PopplerPageMode">PopplerPageMode</a>;
+enum <a class="link" href="poppler-poppler-document.html#PopplerFontType" title="enum PopplerFontType">PopplerFontType</a>;
+enum <a class="link" href="poppler-poppler-document.html#PopplerViewerPreferences" title="enum PopplerViewerPreferences">PopplerViewerPreferences</a>;
+enum <a class="link" href="poppler-poppler-document.html#PopplerPermissions" title="enum PopplerPermissions">PopplerPermissions</a>;
+<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> * <a class="link" href="poppler-poppler-document.html#poppler-document-new-from-file" title="poppler_document_new_from_file ()">poppler_document_new_from_file</a> (const char *uri,
+ const char *password,
+ GError **error);
+<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> * <a class="link" href="poppler-poppler-document.html#poppler-document-new-from-data" title="poppler_document_new_from_data ()">poppler_document_new_from_data</a> (char *data,
+ int length,
+ const char *password,
+ GError **error);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-document-save" title="poppler_document_save ()">poppler_document_save</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const char *uri,
+ GError **error);
+int <a class="link" href="poppler-poppler-document.html#poppler-document-get-n-pages" title="poppler_document_get_n_pages ()">poppler_document_get_n_pages</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);
+<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> * <a class="link" href="poppler-poppler-document.html#poppler-document-get-page" title="poppler_document_get_page ()">poppler_document_get_page</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ int index);
+<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> * <a class="link" href="poppler-poppler-document.html#poppler-document-get-page-by-label" title="poppler_document_get_page_by_label ()">poppler_document_get_page_by_label</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const char *label);
+<a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> * <a class="link" href="poppler-poppler-document.html#poppler-document-find-dest" title="poppler_document_find_dest ()">poppler_document_find_dest</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const gchar *link_name);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-document-has-attachments" title="poppler_document_has_attachments ()">poppler_document_has_attachments</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);
+GList * <a class="link" href="poppler-poppler-document.html#poppler-document-get-attachments" title="poppler_document_get_attachments ()">poppler_document_get_attachments</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);
+<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> * <a class="link" href="poppler-poppler-document.html#poppler-document-get-form-field" title="poppler_document_get_form_field ()">poppler_document_get_form_field</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ gint id);
+GType <a class="link" href="poppler-poppler-document.html#poppler-index-iter-get-type" title="poppler_index_iter_get_type ()">poppler_index_iter_get_type</a> (void);
+<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> * <a class="link" href="poppler-poppler-document.html#poppler-index-iter-new" title="poppler_index_iter_new ()">poppler_index_iter_new</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);
+<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> * <a class="link" href="poppler-poppler-document.html#poppler-index-iter-copy" title="poppler_index_iter_copy ()">poppler_index_iter_copy</a> (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);
+void <a class="link" href="poppler-poppler-document.html#poppler-index-iter-free" title="poppler_index_iter_free ()">poppler_index_iter_free</a> (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);
+<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> * <a class="link" href="poppler-poppler-document.html#poppler-index-iter-get-child" title="poppler_index_iter_get_child ()">poppler_index_iter_get_child</a> (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *parent);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-index-iter-is-open" title="poppler_index_iter_is_open ()">poppler_index_iter_is_open</a> (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);
+<a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> * <a class="link" href="poppler-poppler-document.html#poppler-index-iter-get-action" title="poppler_index_iter_get_action ()">poppler_index_iter_get_action</a> (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-index-iter-next" title="poppler_index_iter_next ()">poppler_index_iter_next</a> (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);
+<a class="link" href="poppler-poppler.html#PopplerFontInfo" title="PopplerFontInfo">PopplerFontInfo</a> * <a class="link" href="poppler-poppler-document.html#poppler-font-info-new" title="poppler_font_info_new ()">poppler_font_info_new</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-font-info-scan" title="poppler_font_info_scan ()">poppler_font_info_scan</a> (<a class="link" href="poppler-poppler.html#PopplerFontInfo" title="PopplerFontInfo">PopplerFontInfo</a> *font_info,
+ int n_pages,
+ <a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> **iter);
+void <a class="link" href="poppler-poppler-document.html#poppler-font-info-free" title="poppler_font_info_free ()">poppler_font_info_free</a> (<a class="link" href="poppler-poppler.html#PopplerFontInfo" title="PopplerFontInfo">PopplerFontInfo</a> *font_info);
+GType <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-get-type" title="poppler_fonts_iter_get_type ()">poppler_fonts_iter_get_type</a> (void);
+<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> * <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-copy" title="poppler_fonts_iter_copy ()">poppler_fonts_iter_copy</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+void <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-free" title="poppler_fonts_iter_free ()">poppler_fonts_iter_free</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+const char * <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-get-name" title="poppler_fonts_iter_get_name ()">poppler_fonts_iter_get_name</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+const char * <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-get-full-name" title="poppler_fonts_iter_get_full_name ()">poppler_fonts_iter_get_full_name</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+<a class="link" href="poppler-poppler-document.html#PopplerFontType" title="enum PopplerFontType">PopplerFontType</a> <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-get-font-type" title="poppler_fonts_iter_get_font_type ()">poppler_fonts_iter_get_font_type</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-is-embedded" title="poppler_fonts_iter_is_embedded ()">poppler_fonts_iter_is_embedded</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-is-subset" title="poppler_fonts_iter_is_subset ()">poppler_fonts_iter_is_subset</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+gboolean <a class="link" href="poppler-poppler-document.html#poppler-fonts-iter-next" title="poppler_fonts_iter_next ()">poppler_fonts_iter_next</a> (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);
+<a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> * <a class="link" href="poppler-poppler-document.html#poppler-ps-file-new" title="poppler_ps_file_new ()">poppler_ps_file_new</a> (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const char *filename,
+ int first_page,
+ int n_pages);
+void <a class="link" href="poppler-poppler-document.html#poppler-ps-file-set-paper-size" title="poppler_ps_file_set_paper_size ()">poppler_ps_file_set_paper_size</a> (<a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file,
+ double width,
+ double height);
+void <a class="link" href="poppler-poppler-document.html#poppler-ps-file-set-duplex" title="poppler_ps_file_set_duplex ()">poppler_ps_file_set_duplex</a> (<a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file,
+ gboolean duplex);
+void <a class="link" href="poppler-poppler-document.html#poppler-ps-file-free" title="poppler_ps_file_free ()">poppler_ps_file_free</a> (<a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-document.description"></a><h2>Description</h2>
+<p>
+The <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a> is an object used to refer to a main document.
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-document.details"></a><h2>Details</h2>
+<div class="refsect2" title="enum PopplerPageLayout">
+<a name="PopplerPageLayout"></a><h3>enum PopplerPageLayout</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_PAGE_LAYOUT_UNSET,
+ POPPLER_PAGE_LAYOUT_SINGLE_PAGE,
+ POPPLER_PAGE_LAYOUT_ONE_COLUMN,
+ POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT,
+ POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT,
+ POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT,
+ POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT
+} PopplerPageLayout;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerPageMode">
+<a name="PopplerPageMode"></a><h3>enum PopplerPageMode</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_PAGE_MODE_UNSET,
+ POPPLER_PAGE_MODE_NONE,
+ POPPLER_PAGE_MODE_USE_OUTLINES,
+ POPPLER_PAGE_MODE_USE_THUMBS,
+ POPPLER_PAGE_MODE_FULL_SCREEN,
+ POPPLER_PAGE_MODE_USE_OC,
+ POPPLER_PAGE_MODE_USE_ATTACHMENTS
+} PopplerPageMode;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerFontType">
+<a name="PopplerFontType"></a><h3>enum PopplerFontType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_FONT_TYPE_UNKNOWN,
+ POPPLER_FONT_TYPE_TYPE1,
+ POPPLER_FONT_TYPE_TYPE1C,
+ POPPLER_FONT_TYPE_TYPE1COT,
+ POPPLER_FONT_TYPE_TYPE3,
+ POPPLER_FONT_TYPE_TRUETYPE,
+ POPPLER_FONT_TYPE_TRUETYPEOT,
+ POPPLER_FONT_TYPE_CID_TYPE0,
+ POPPLER_FONT_TYPE_CID_TYPE0C,
+ POPPLER_FONT_TYPE_CID_TYPE0COT,
+ POPPLER_FONT_TYPE_CID_TYPE2,
+ POPPLER_FONT_TYPE_CID_TYPE2OT
+} PopplerFontType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerViewerPreferences">
+<a name="PopplerViewerPreferences"></a><h3>enum PopplerViewerPreferences</h3>
+<pre class="programlisting">typedef enum /*&lt; flags &gt;*/
+{
+ POPPLER_VIEWER_PREFERENCES_UNSET = 0,
+ POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR = 1 &lt;&lt; 0,
+ POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR = 1 &lt;&lt; 1,
+ POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI = 1 &lt;&lt; 2,
+ POPPLER_VIEWER_PREFERENCES_FIT_WINDOW = 1 &lt;&lt; 3,
+ POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW = 1 &lt;&lt; 4,
+ POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE = 1 &lt;&lt; 5,
+ POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL = 1 &lt;&lt; 6
+} PopplerViewerPreferences;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerPermissions">
+<a name="PopplerPermissions"></a><h3>enum PopplerPermissions</h3>
+<pre class="programlisting">typedef enum /*&lt; flags &gt;*/
+{
+ POPPLER_PERMISSIONS_OK_TO_PRINT = 1 &lt;&lt; 0,
+ POPPLER_PERMISSIONS_OK_TO_MODIFY = 1 &lt;&lt; 1,
+ POPPLER_PERMISSIONS_OK_TO_COPY = 1 &lt;&lt; 2,
+ POPPLER_PERMISSIONS_OK_TO_ADD_NOTES = 1 &lt;&lt; 3,
+ POPPLER_PERMISSIONS_OK_TO_FILL_FORM = 1 &lt;&lt; 4,
+ POPPLER_PERMISSIONS_FULL = (POPPLER_PERMISSIONS_OK_TO_PRINT | POPPLER_PERMISSIONS_OK_TO_MODIFY | POPPLER_PERMISSIONS_OK_TO_COPY | POPPLER_PERMISSIONS_OK_TO_ADD_NOTES | POPPLER_PERMISSIONS_OK_TO_FILL_FORM)
+
+} PopplerPermissions;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_new_from_file ()">
+<a name="poppler-document-new-from-file"></a><h3>poppler_document_new_from_file ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> * poppler_document_new_from_file (const char *uri,
+ const char *password,
+ GError **error);</pre>
+<p>
+Creates a new <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>. If <code class="literal">NULL</code> is returned, then <em class="parameter"><code>error</code></em> will be
+set. Possible errors include those in the <a class="link" href="poppler-poppler.html#POPPLER-ERROR--CAPS" title="POPPLER_ERROR"><span class="type">POPPLER_ERROR</span></a> and <span class="type">G_FILE_ERROR</span>
+domains.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
+<td> uri of the file to load
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>password</code></em> :</span></p></td>
+<td> password to unlock the file with, or <code class="literal">NULL</code>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td> Return location for an error, or <code class="literal">NULL</code>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> A newly created <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>, or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_new_from_data ()">
+<a name="poppler-document-new-from-data"></a><h3>poppler_document_new_from_data ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> * poppler_document_new_from_data (char *data,
+ int length,
+ const char *password,
+ GError **error);</pre>
+<p>
+Creates a new <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>. If <code class="literal">NULL</code> is returned, then <em class="parameter"><code>error</code></em> will be
+set. Possible errors include those in the <a class="link" href="poppler-poppler.html#POPPLER-ERROR--CAPS" title="POPPLER_ERROR"><span class="type">POPPLER_ERROR</span></a> and <span class="type">G_FILE_ERROR</span>
+domains.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
+<td> the pdf data contained in a char array
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
+<td> the length of <span class="type">data</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>password</code></em> :</span></p></td>
+<td> password to unlock the file with, or <code class="literal">NULL</code>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td> Return location for an error, or <code class="literal">NULL</code>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> A newly created <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>, or <code class="literal">NULL</code>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_save ()">
+<a name="poppler-document-save"></a><h3>poppler_document_save ()</h3>
+<pre class="programlisting">gboolean poppler_document_save (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const char *uri,
+ GError **error);</pre>
+<p>
+Saves <em class="parameter"><code>document</code></em>. Any change made in the document such as
+form fields filled by the user will be saved.
+If <em class="parameter"><code>error</code></em> is set, <code class="literal">FALSE</code> will be returned. Possible errors
+include those in the <span class="type">G_FILE_ERROR</span> domain.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
+<td> uri of file to save
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
+<td> return location for an error, or <code class="literal">NULL</code>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code>, if the document was successfully saved
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_get_n_pages ()">
+<a name="poppler-document-get-n-pages"></a><h3>poppler_document_get_n_pages ()</h3>
+<pre class="programlisting">int poppler_document_get_n_pages (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);</pre>
+<p>
+Returns the number of pages in a loaded document.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> Number of pages
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_get_page ()">
+<a name="poppler-document-get-page"></a><h3>poppler_document_get_page ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> * poppler_document_get_page (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ int index);</pre>
+<p>
+Returns the <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a> indexed at <em class="parameter"><code>index</code></em>. This object is owned by the
+caller.
+</p>
+<p>
+<a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>s are indexed starting at 0.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td> a page index
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> The <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a> at <em class="parameter"><code>index</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_get_page_by_label ()">
+<a name="poppler-document-get-page-by-label"></a><h3>poppler_document_get_page_by_label ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> * poppler_document_get_page_by_label (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const char *label);</pre>
+<p>
+Returns the <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a> reference by <em class="parameter"><code>label</code></em>. This object is owned by the
+caller. <em class="parameter"><code>label</code></em> is a human-readable string representation of the page number,
+and can be document specific. Typically, it is a value such as "iii" or "3".
+</p>
+<p>
+By default, "1" refers to the first page.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>label</code></em> :</span></p></td>
+<td> a page label
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> The <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a> referenced by <em class="parameter"><code>label</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_find_dest ()">
+<a name="poppler-document-find-dest"></a><h3>poppler_document_find_dest ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest">PopplerDest</a> * poppler_document_find_dest (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const gchar *link_name);</pre>
+<p>
+Finds named destination <em class="parameter"><code>link_name</code></em> in <em class="parameter"><code>document</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>link_name</code></em> :</span></p></td>
+<td> a named destination
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> The <a class="link" href="poppler-poppler-action.html#PopplerDest" title="PopplerDest"><span class="type">PopplerDest</span></a> destination or <code class="literal">NULL</code> if
+<em class="parameter"><code>link_name</code></em> is not a destination. Returned value must
+be freed with <a class="link" href="poppler-poppler-action.html#poppler-dest-free" title="poppler_dest_free ()"><span class="type">poppler_dest_free</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_has_attachments ()">
+<a name="poppler-document-has-attachments"></a><h3>poppler_document_has_attachments ()</h3>
+<pre class="programlisting">gboolean poppler_document_has_attachments (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);</pre>
+<p>
+Returns <code class="literal">TRUE</code> of <em class="parameter"><code>document</code></em> has any attachments.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code>, if <em class="parameter"><code>document</code></em> has attachments.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_get_attachments ()">
+<a name="poppler-document-get-attachments"></a><h3>poppler_document_get_attachments ()</h3>
+<pre class="programlisting">GList * poppler_document_get_attachments (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);</pre>
+<p>
+Returns a <span class="type">GList</span> containing <a class="link" href="poppler-poppler-attachment.html#PopplerAttachment"><span class="type">PopplerAttachment</span></a>s. These attachments
+are unowned, and must be unreffed, and the list must be freed with
+<code class="function">g_list_free()</code>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a list of available attachments.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_document_get_form_field ()">
+<a name="poppler-document-get-form-field"></a><h3>poppler_document_get_form_field ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> * poppler_document_get_form_field (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ gint id);</pre>
+<p>
+Returns the <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a> for the given <em class="parameter"><code>id</code></em>. It must be freed with
+<code class="function">g_object_unref()</code></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>id</code></em> :</span></p></td>
+<td> an id of a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a> or NULL if not found
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_get_type ()">
+<a name="poppler-index-iter-get-type"></a><h3>poppler_index_iter_get_type ()</h3>
+<pre class="programlisting">GType poppler_index_iter_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_new ()">
+<a name="poppler-index-iter-new"></a><h3>poppler_index_iter_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> * poppler_index_iter_new (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);</pre>
+<p>
+Returns the root <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a> for <em class="parameter"><code>document</code></em>, or <code class="literal">NULL</code>. This must be
+freed with <a class="link" href="poppler-poppler-document.html#poppler-index-iter-free" title="poppler_index_iter_free ()"><code class="function">poppler_index_iter_free()</code></a>.
+</p>
+<p>
+Certain documents have an index associated with them. This index can be used
+to help the user navigate the document, and is similar to a table of
+contents. Each node in the index will contain a <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a> that can be
+displayed to the user — typically a <span class="type">POPPLER_ACTION_GOTO_DEST</span> or a
+<span class="type">POPPLER_ACTION_URI</span>.
+</p>
+<p>
+Here is a simple example of some code that walks the full index:
+</p>
+<p>
+</p>
+<div class="informalexample"><pre class="programlisting">
+static void
+walk_index (PopplerIndexIter *iter)
+{
+ do
+ {
+ /* Get the the action and do something with it */
+ PopplerIndexIter *child = poppler_index_iter_get_child (iter);
+ if (child)
+ walk_index (child);
+ poppler_index_iter_free (child);
+ }
+ while (poppler_index_iter_next (iter));
+}
+...
+{
+ iter = poppler_index_iter_new (document);
+ walk_index (iter);
+ poppler_index_iter_free (iter);
+}
+</pre></div>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_copy ()">
+<a name="poppler-index-iter-copy"></a><h3>poppler_index_iter_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> * poppler_index_iter_copy (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);</pre>
+<p>
+Creates a new <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a> as a copy of <em class="parameter"><code>iter</code></em>. This must be freed with
+<a class="link" href="poppler-poppler-document.html#poppler-index-iter-free" title="poppler_index_iter_free ()"><code class="function">poppler_index_iter_free()</code></a>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_free ()">
+<a name="poppler-index-iter-free"></a><h3>poppler_index_iter_free ()</h3>
+<pre class="programlisting">void poppler_index_iter_free (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);</pre>
+<p>
+Frees <em class="parameter"><code>iter</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_get_child ()">
+<a name="poppler-index-iter-get-child"></a><h3>poppler_index_iter_get_child ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> * poppler_index_iter_get_child (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *parent);</pre>
+<p>
+Returns a newly created child of <em class="parameter"><code>parent</code></em>, or <code class="literal">NULL</code> if the iter has no child.
+See <a class="link" href="poppler-poppler-document.html#poppler-index-iter-new" title="poppler_index_iter_new ()"><code class="function">poppler_index_iter_new()</code></a> for more information on this function.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_is_open ()">
+<a name="poppler-index-iter-is-open"></a><h3>poppler_index_iter_is_open ()</h3>
+<pre class="programlisting">gboolean poppler_index_iter_is_open (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);</pre>
+<p>
+Returns whether this node should be expanded by default to the user. The
+document can provide a hint as to how the document's index should be expanded
+initially.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code>, if the document wants <em class="parameter"><code>iter</code></em> to be expanded
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_get_action ()">
+<a name="poppler-index-iter-get-action"></a><h3>poppler_index_iter_get_action ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction">PopplerAction</a> * poppler_index_iter_get_action (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);</pre>
+<p>
+Returns the <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a> associated with <em class="parameter"><code>iter</code></em>. It must be freed with
+<a class="link" href="poppler-poppler-action.html#poppler-action-free" title="poppler_action_free ()"><code class="function">poppler_action_free()</code></a>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_index_iter_next ()">
+<a name="poppler-index-iter-next"></a><h3>poppler_index_iter_next ()</h3>
+<pre class="programlisting">gboolean poppler_index_iter_next (<a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a> *iter);</pre>
+<p>
+Sets <em class="parameter"><code>iter</code></em> to point to the next action at the current level, if valid. See
+<a class="link" href="poppler-poppler-document.html#poppler-index-iter-new" title="poppler_index_iter_new ()"><code class="function">poppler_index_iter_new()</code></a> for more information.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter"><span class="type">PopplerIndexIter</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code>, if <em class="parameter"><code>iter</code></em> was set to the next action
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_font_info_new ()">
+<a name="poppler-font-info-new"></a><h3>poppler_font_info_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerFontInfo" title="PopplerFontInfo">PopplerFontInfo</a> * poppler_font_info_new (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_font_info_scan ()">
+<a name="poppler-font-info-scan"></a><h3>poppler_font_info_scan ()</h3>
+<pre class="programlisting">gboolean poppler_font_info_scan (<a class="link" href="poppler-poppler.html#PopplerFontInfo" title="PopplerFontInfo">PopplerFontInfo</a> *font_info,
+ int n_pages,
+ <a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> **iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>font_info</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n_pages</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_font_info_free ()">
+<a name="poppler-font-info-free"></a><h3>poppler_font_info_free ()</h3>
+<pre class="programlisting">void poppler_font_info_free (<a class="link" href="poppler-poppler.html#PopplerFontInfo" title="PopplerFontInfo">PopplerFontInfo</a> *font_info);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>font_info</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_get_type ()">
+<a name="poppler-fonts-iter-get-type"></a><h3>poppler_fonts_iter_get_type ()</h3>
+<pre class="programlisting">GType poppler_fonts_iter_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_copy ()">
+<a name="poppler-fonts-iter-copy"></a><h3>poppler_fonts_iter_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> * poppler_fonts_iter_copy (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_free ()">
+<a name="poppler-fonts-iter-free"></a><h3>poppler_fonts_iter_free ()</h3>
+<pre class="programlisting">void poppler_fonts_iter_free (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_get_name ()">
+<a name="poppler-fonts-iter-get-name"></a><h3>poppler_fonts_iter_get_name ()</h3>
+<pre class="programlisting">const char * poppler_fonts_iter_get_name (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_get_full_name ()">
+<a name="poppler-fonts-iter-get-full-name"></a><h3>poppler_fonts_iter_get_full_name ()</h3>
+<pre class="programlisting">const char * poppler_fonts_iter_get_full_name (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_get_font_type ()">
+<a name="poppler-fonts-iter-get-font-type"></a><h3>poppler_fonts_iter_get_font_type ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-document.html#PopplerFontType" title="enum PopplerFontType">PopplerFontType</a> poppler_fonts_iter_get_font_type (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_is_embedded ()">
+<a name="poppler-fonts-iter-is-embedded"></a><h3>poppler_fonts_iter_is_embedded ()</h3>
+<pre class="programlisting">gboolean poppler_fonts_iter_is_embedded (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_is_subset ()">
+<a name="poppler-fonts-iter-is-subset"></a><h3>poppler_fonts_iter_is_subset ()</h3>
+<pre class="programlisting">gboolean poppler_fonts_iter_is_subset (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_fonts_iter_next ()">
+<a name="poppler-fonts-iter-next"></a><h3>poppler_fonts_iter_next ()</h3>
+<pre class="programlisting">gboolean poppler_fonts_iter_next (<a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a> *iter);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>iter</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_ps_file_new ()">
+<a name="poppler-ps-file-new"></a><h3>poppler_ps_file_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> * poppler_ps_file_new (<a class="link" href="poppler-poppler.html#PopplerDocument">PopplerDocument</a> *document,
+ const char *filename,
+ int first_page,
+ int n_pages);</pre>
+<p>
+Create a new postscript file to render to</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>document</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerDocument"><span class="type">PopplerDocument</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>filename</code></em> :</span></p></td>
+<td> the path of the output filename
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>first_page</code></em> :</span></p></td>
+<td> the first page to print
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>n_pages</code></em> :</span></p></td>
+<td> the number of pages to print
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a PopplerPSFile
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_ps_file_set_paper_size ()">
+<a name="poppler-ps-file-set-paper-size"></a><h3>poppler_ps_file_set_paper_size ()</h3>
+<pre class="programlisting">void poppler_ps_file_set_paper_size (<a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file,
+ double width,
+ double height);</pre>
+<p>
+Set the output paper size. These values will end up in the
+DocumentMedia, the BoundingBox DSC comments and other places in the
+generated PostScript.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ps_file</code></em> :</span></p></td>
+<td> a PopplerPSFile which was not yet printed to.
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
+<td> the paper width in 1/72 inch
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
+<td> the paper height in 1/72 inch
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_ps_file_set_duplex ()">
+<a name="poppler-ps-file-set-duplex"></a><h3>poppler_ps_file_set_duplex ()</h3>
+<pre class="programlisting">void poppler_ps_file_set_duplex (<a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file,
+ gboolean duplex);</pre>
+<p>
+Enable or disable Duplex printing.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ps_file</code></em> :</span></p></td>
+<td> a PopplerPSFile which was not yet printed to
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>duplex</code></em> :</span></p></td>
+<td> whether to force duplex printing (on printers which support this)
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_ps_file_free ()">
+<a name="poppler-ps-file-free"></a><h3>poppler_ps_file_free ()</h3>
+<pre class="programlisting">void poppler_ps_file_free (<a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file);</pre>
+<p>
+Frees <em class="parameter"><code>ps_file</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>ps_file</code></em> :</span></p></td>
+<td> a PopplerPSFile
+</td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-enums.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-enums.html
new file mode 100644
index 00000000000..ad430af2675
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-enums.html
@@ -0,0 +1,412 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>poppler-enums</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-form-field.html" title="PopplerFormField">
+<link rel="next" href="poppler-poppler-annot.html" title="PopplerAnnot">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-form-field.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-annot.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-enums.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-enums.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="poppler-enums">
+<a name="poppler-poppler-enums"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-enums.top_of_page"></a>poppler-enums</span></h2>
+<p>poppler-enums</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-enums.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-ACTION-TYPE--CAPS" title="POPPLER_TYPE_ACTION_TYPE">POPPLER_TYPE_ACTION_TYPE</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-action-type-get-type" title="poppler_action_type_get_type ()">poppler_action_type_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-DEST-TYPE--CAPS" title="POPPLER_TYPE_DEST_TYPE">POPPLER_TYPE_DEST_TYPE</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-dest-type-get-type" title="poppler_dest_type_get_type ()">poppler_dest_type_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-LAYOUT--CAPS" title="POPPLER_TYPE_PAGE_LAYOUT">POPPLER_TYPE_PAGE_LAYOUT</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-page-layout-get-type" title="poppler_page_layout_get_type ()">poppler_page_layout_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-MODE--CAPS" title="POPPLER_TYPE_PAGE_MODE">POPPLER_TYPE_PAGE_MODE</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-page-mode-get-type" title="poppler_page_mode_get_type ()">poppler_page_mode_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-FONT-TYPE--CAPS" title="POPPLER_TYPE_FONT_TYPE">POPPLER_TYPE_FONT_TYPE</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-font-type-get-type" title="poppler_font_type_get_type ()">poppler_font_type_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-VIEWER-PREFERENCES--CAPS" title="POPPLER_TYPE_VIEWER_PREFERENCES">POPPLER_TYPE_VIEWER_PREFERENCES</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-viewer-preferences-get-type" title="poppler_viewer_preferences_get_type ()">poppler_viewer_preferences_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-PERMISSIONS--CAPS" title="POPPLER_TYPE_PERMISSIONS">POPPLER_TYPE_PERMISSIONS</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-permissions-get-type" title="poppler_permissions_get_type ()">poppler_permissions_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-SELECTION-STYLE--CAPS" title="POPPLER_TYPE_SELECTION_STYLE">POPPLER_TYPE_SELECTION_STYLE</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-selection-style-get-type" title="poppler_selection_style_get_type ()">poppler_selection_style_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS" title="POPPLER_TYPE_PAGE_TRANSITION_TYPE">POPPLER_TYPE_PAGE_TRANSITION_TYPE</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-page-transition-type-get-type" title="poppler_page_transition_type_get_type ()">poppler_page_transition_type_get_type</a>
+ (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS" title="POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT">POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-page-transition-alignment-get-type" title="poppler_page_transition_alignment_get_type ()">poppler_page_transition_alignment_get_type</a>
+ (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS" title="POPPLER_TYPE_PAGE_TRANSITION_DIRECTION">POPPLER_TYPE_PAGE_TRANSITION_DIRECTION</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-page-transition-direction-get-type" title="poppler_page_transition_direction_get_type ()">poppler_page_transition_direction_get_type</a>
+ (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-ERROR--CAPS" title="POPPLER_TYPE_ERROR">POPPLER_TYPE_ERROR</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-error-get-type" title="poppler_error_get_type ()">poppler_error_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-ORIENTATION--CAPS" title="POPPLER_TYPE_ORIENTATION">POPPLER_TYPE_ORIENTATION</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-orientation-get-type" title="poppler_orientation_get_type ()">poppler_orientation_get_type</a> (void);
+#define <a class="link" href="poppler-poppler-enums.html#POPPLER-TYPE-BACKEND--CAPS" title="POPPLER_TYPE_BACKEND">POPPLER_TYPE_BACKEND</a>
+GType <a class="link" href="poppler-poppler-enums.html#poppler-backend-get-type" title="poppler_backend_get_type ()">poppler_backend_get_type</a> (void);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-enums.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-enums.details"></a><h2>Details</h2>
+<div class="refsect2" title="POPPLER_TYPE_ACTION_TYPE">
+<a name="POPPLER-TYPE-ACTION-TYPE--CAPS"></a><h3>POPPLER_TYPE_ACTION_TYPE</h3>
+<pre class="programlisting">#define POPPLER_TYPE_ACTION_TYPE (poppler_action_type_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_action_type_get_type ()">
+<a name="poppler-action-type-get-type"></a><h3>poppler_action_type_get_type ()</h3>
+<pre class="programlisting">GType poppler_action_type_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_DEST_TYPE">
+<a name="POPPLER-TYPE-DEST-TYPE--CAPS"></a><h3>POPPLER_TYPE_DEST_TYPE</h3>
+<pre class="programlisting">#define POPPLER_TYPE_DEST_TYPE (poppler_dest_type_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_dest_type_get_type ()">
+<a name="poppler-dest-type-get-type"></a><h3>poppler_dest_type_get_type ()</h3>
+<pre class="programlisting">GType poppler_dest_type_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_PAGE_LAYOUT">
+<a name="POPPLER-TYPE-PAGE-LAYOUT--CAPS"></a><h3>POPPLER_TYPE_PAGE_LAYOUT</h3>
+<pre class="programlisting">#define POPPLER_TYPE_PAGE_LAYOUT (poppler_page_layout_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_layout_get_type ()">
+<a name="poppler-page-layout-get-type"></a><h3>poppler_page_layout_get_type ()</h3>
+<pre class="programlisting">GType poppler_page_layout_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_PAGE_MODE">
+<a name="POPPLER-TYPE-PAGE-MODE--CAPS"></a><h3>POPPLER_TYPE_PAGE_MODE</h3>
+<pre class="programlisting">#define POPPLER_TYPE_PAGE_MODE (poppler_page_mode_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_mode_get_type ()">
+<a name="poppler-page-mode-get-type"></a><h3>poppler_page_mode_get_type ()</h3>
+<pre class="programlisting">GType poppler_page_mode_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_FONT_TYPE">
+<a name="POPPLER-TYPE-FONT-TYPE--CAPS"></a><h3>POPPLER_TYPE_FONT_TYPE</h3>
+<pre class="programlisting">#define POPPLER_TYPE_FONT_TYPE (poppler_font_type_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_font_type_get_type ()">
+<a name="poppler-font-type-get-type"></a><h3>poppler_font_type_get_type ()</h3>
+<pre class="programlisting">GType poppler_font_type_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_VIEWER_PREFERENCES">
+<a name="POPPLER-TYPE-VIEWER-PREFERENCES--CAPS"></a><h3>POPPLER_TYPE_VIEWER_PREFERENCES</h3>
+<pre class="programlisting">#define POPPLER_TYPE_VIEWER_PREFERENCES (poppler_viewer_preferences_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_viewer_preferences_get_type ()">
+<a name="poppler-viewer-preferences-get-type"></a><h3>poppler_viewer_preferences_get_type ()</h3>
+<pre class="programlisting">GType poppler_viewer_preferences_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_PERMISSIONS">
+<a name="POPPLER-TYPE-PERMISSIONS--CAPS"></a><h3>POPPLER_TYPE_PERMISSIONS</h3>
+<pre class="programlisting">#define POPPLER_TYPE_PERMISSIONS (poppler_permissions_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_permissions_get_type ()">
+<a name="poppler-permissions-get-type"></a><h3>poppler_permissions_get_type ()</h3>
+<pre class="programlisting">GType poppler_permissions_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_SELECTION_STYLE">
+<a name="POPPLER-TYPE-SELECTION-STYLE--CAPS"></a><h3>POPPLER_TYPE_SELECTION_STYLE</h3>
+<pre class="programlisting">#define POPPLER_TYPE_SELECTION_STYLE (poppler_selection_style_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_selection_style_get_type ()">
+<a name="poppler-selection-style-get-type"></a><h3>poppler_selection_style_get_type ()</h3>
+<pre class="programlisting">GType poppler_selection_style_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_PAGE_TRANSITION_TYPE">
+<a name="POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS"></a><h3>POPPLER_TYPE_PAGE_TRANSITION_TYPE</h3>
+<pre class="programlisting">#define POPPLER_TYPE_PAGE_TRANSITION_TYPE (poppler_page_transition_type_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_transition_type_get_type ()">
+<a name="poppler-page-transition-type-get-type"></a><h3>poppler_page_transition_type_get_type ()</h3>
+<pre class="programlisting">GType poppler_page_transition_type_get_type
+ (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT">
+<a name="POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS"></a><h3>POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT</h3>
+<pre class="programlisting">#define POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT (poppler_page_transition_alignment_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_transition_alignment_get_type ()">
+<a name="poppler-page-transition-alignment-get-type"></a><h3>poppler_page_transition_alignment_get_type ()</h3>
+<pre class="programlisting">GType poppler_page_transition_alignment_get_type
+ (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_PAGE_TRANSITION_DIRECTION">
+<a name="POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS"></a><h3>POPPLER_TYPE_PAGE_TRANSITION_DIRECTION</h3>
+<pre class="programlisting">#define POPPLER_TYPE_PAGE_TRANSITION_DIRECTION (poppler_page_transition_direction_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_transition_direction_get_type ()">
+<a name="poppler-page-transition-direction-get-type"></a><h3>poppler_page_transition_direction_get_type ()</h3>
+<pre class="programlisting">GType poppler_page_transition_direction_get_type
+ (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_ERROR">
+<a name="POPPLER-TYPE-ERROR--CAPS"></a><h3>POPPLER_TYPE_ERROR</h3>
+<pre class="programlisting">#define POPPLER_TYPE_ERROR (poppler_error_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_error_get_type ()">
+<a name="poppler-error-get-type"></a><h3>poppler_error_get_type ()</h3>
+<pre class="programlisting">GType poppler_error_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_ORIENTATION">
+<a name="POPPLER-TYPE-ORIENTATION--CAPS"></a><h3>POPPLER_TYPE_ORIENTATION</h3>
+<pre class="programlisting">#define POPPLER_TYPE_ORIENTATION (poppler_orientation_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_orientation_get_type ()">
+<a name="poppler-orientation-get-type"></a><h3>poppler_orientation_get_type ()</h3>
+<pre class="programlisting">GType poppler_orientation_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_BACKEND">
+<a name="POPPLER-TYPE-BACKEND--CAPS"></a><h3>POPPLER_TYPE_BACKEND</h3>
+<pre class="programlisting">#define POPPLER_TYPE_BACKEND (poppler_backend_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_backend_get_type ()">
+<a name="poppler-backend-get-type"></a><h3>poppler_backend_get_type ()</h3>
+<pre class="programlisting">GType poppler_backend_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-features.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-features.html
new file mode 100644
index 00000000000..26266a7b595
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-features.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>Version and Features Information</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-layer.html" title="PopplerLayer">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-layer.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td> </td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-features.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-features.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="Version and Features Information">
+<a name="poppler-poppler-features"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-features.top_of_page"></a>Version and Features Information</span></h2>
+<p>Version and Features Information — Variables and functions to check the poppler version and features</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-features.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+#define <a class="link" href="poppler-poppler-features.html#POPPLER-HAS-CAIRO--CAPS" title="POPPLER_HAS_CAIRO">POPPLER_HAS_CAIRO</a>
+#define <a class="link" href="poppler-poppler-features.html#POPPLER-WITH-GDK--CAPS" title="POPPLER_WITH_GDK">POPPLER_WITH_GDK</a>
+#define <a class="link" href="poppler-poppler-features.html#POPPLER-MAJOR-VERSION--CAPS" title="POPPLER_MAJOR_VERSION">POPPLER_MAJOR_VERSION</a>
+#define <a class="link" href="poppler-poppler-features.html#POPPLER-MINOR-VERSION--CAPS" title="POPPLER_MINOR_VERSION">POPPLER_MINOR_VERSION</a>
+#define <a class="link" href="poppler-poppler-features.html#POPPLER-MICRO-VERSION--CAPS" title="POPPLER_MICRO_VERSION">POPPLER_MICRO_VERSION</a>
+#define <a class="link" href="poppler-poppler-features.html#POPPLER-CHECK-VERSION--CAPS" title="POPPLER_CHECK_VERSION()">POPPLER_CHECK_VERSION</a> (major,minor,micro)
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-features.description"></a><h2>Description</h2>
+<p>
+Poppler provides version information, and information about features
+enabled at compile time. This is primarily useful in configure checks
+for builds that have a configure script, or for allowing code to optionally
+depend but not require a specific poppler version.
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-features.details"></a><h2>Details</h2>
+<div class="refsect2" title="POPPLER_HAS_CAIRO">
+<a name="POPPLER-HAS-CAIRO--CAPS"></a><h3>POPPLER_HAS_CAIRO</h3>
+<pre class="programlisting">#define POPPLER_HAS_CAIRO 1
+</pre>
+<p>
+Defined if poppler was compiled with cairo support.
+</p>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_WITH_GDK">
+<a name="POPPLER-WITH-GDK--CAPS"></a><h3>POPPLER_WITH_GDK</h3>
+<pre class="programlisting">#define POPPLER_WITH_GDK 1
+</pre>
+<p>
+Defined if poppler was compiled with GDK support.
+</p>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_MAJOR_VERSION">
+<a name="POPPLER-MAJOR-VERSION--CAPS"></a><h3>POPPLER_MAJOR_VERSION</h3>
+<pre class="programlisting">#define POPPLER_MAJOR_VERSION (0)
+</pre>
+<p>
+The major version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 0.)
+</p>
+Since: 0.11</div>
+<hr>
+<div class="refsect2" title="POPPLER_MINOR_VERSION">
+<a name="POPPLER-MINOR-VERSION--CAPS"></a><h3>POPPLER_MINOR_VERSION</h3>
+<pre class="programlisting">#define POPPLER_MINOR_VERSION (12)
+</pre>
+<p>
+</p>
+The major version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 1.)
+Since: 0.11</div>
+<hr>
+<div class="refsect2" title="POPPLER_MICRO_VERSION">
+<a name="POPPLER-MICRO-VERSION--CAPS"></a><h3>POPPLER_MICRO_VERSION</h3>
+<pre class="programlisting">#define POPPLER_MICRO_VERSION (4)
+</pre>
+<p>
+The micro version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 2.)
+</p>
+Since: 0.11</div>
+<hr>
+<div class="refsect2" title="POPPLER_CHECK_VERSION()">
+<a name="POPPLER-CHECK-VERSION--CAPS"></a><h3>POPPLER_CHECK_VERSION()</h3>
+<pre class="programlisting">#define POPPLER_CHECK_VERSION(major,minor,micro)</pre>
+<p>
+Returns <code class="literal">TRUE</code> if the version of the poppler header files is the same
+as or newer than the passed-in version.
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>major</code></em> :</span></p></td>
+<td>major version (e.g. 0 for version 0.1.2)
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>minor</code></em> :</span></p></td>
+<td>minor version (e.g. 1 for version 0.1.2)
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>micro</code></em> :</span></p></td>
+<td>micro version (e.g. 2 for version 0.1.2)
+Since: 0.11
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-form-field.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-form-field.html
new file mode 100644
index 00000000000..52b4cbe2fba
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-form-field.html
@@ -0,0 +1,871 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PopplerFormField</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-attachment.html" title="PopplerAttachment">
+<link rel="next" href="poppler-poppler-enums.html" title="poppler-enums">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-attachment.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-enums.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-form-field.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-form-field.description" class="shortcut">Description</a>
+  | 
+ <a href="#poppler-poppler-form-field.object-hierarchy" class="shortcut">Object Hierarchy</a>
+</td></tr>
+</table>
+<div class="refentry" title="PopplerFormField">
+<a name="poppler-poppler-form-field"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-form-field.top_of_page"></a>PopplerFormField</span></h2>
+<p>PopplerFormField</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-form-field.synopsis"></a><h2>Synopsis</h2>
+<a name="PopplerFormField"></a><pre class="synopsis">
+ <a class="link" href="poppler-poppler-form-field.html#PopplerFormField-struct" title="PopplerFormField">PopplerFormField</a>;
+enum <a class="link" href="poppler-poppler-form-field.html#PopplerFormButtonType" title="enum PopplerFormButtonType">PopplerFormButtonType</a>;
+enum <a class="link" href="poppler-poppler-form-field.html#PopplerFormChoiceType" title="enum PopplerFormChoiceType">PopplerFormChoiceType</a>;
+enum <a class="link" href="poppler-poppler-form-field.html#PopplerFormFieldType" title="enum PopplerFormFieldType">PopplerFormFieldType</a>;
+enum <a class="link" href="poppler-poppler-form-field.html#PopplerFormTextType" title="enum PopplerFormTextType">PopplerFormTextType</a>;
+gint <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-get-id" title="poppler_form_field_get_id ()">poppler_form_field_get_id</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+<a class="link" href="poppler-poppler-form-field.html#PopplerFormFieldType" title="enum PopplerFormFieldType">PopplerFormFieldType</a> <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-get-field-type" title="poppler_form_field_get_field_type ()">poppler_form_field_get_field_type</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-is-read-only" title="poppler_form_field_is_read_only ()">poppler_form_field_is_read_only</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gdouble <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-get-font-size" title="poppler_form_field_get_font_size ()">poppler_form_field_get_font_size</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+<a class="link" href="poppler-poppler-form-field.html#PopplerFormButtonType" title="enum PopplerFormButtonType">PopplerFormButtonType</a> <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-button-get-button-type" title="poppler_form_field_button_get_button_type ()">poppler_form_field_button_get_button_type</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-button-get-state" title="poppler_form_field_button_get_state ()">poppler_form_field_button_get_state</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+void <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-button-set-state" title="poppler_form_field_button_set_state ()">poppler_form_field_button_set_state</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gboolean state);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-can-select-multiple" title="poppler_form_field_choice_can_select_multiple ()">poppler_form_field_choice_can_select_multiple</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-commit-on-change" title="poppler_form_field_choice_commit_on_change ()">poppler_form_field_choice_commit_on_change</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-do-spell-check" title="poppler_form_field_choice_do_spell_check ()">poppler_form_field_choice_do_spell_check</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+<a class="link" href="poppler-poppler-form-field.html#PopplerFormChoiceType" title="enum PopplerFormChoiceType">PopplerFormChoiceType</a> <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-get-choice-type" title="poppler_form_field_choice_get_choice_type ()">poppler_form_field_choice_get_choice_type</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gchar * <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-get-item" title="poppler_form_field_choice_get_item ()">poppler_form_field_choice_get_item</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);
+gint <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-get-n-items" title="poppler_form_field_choice_get_n_items ()">poppler_form_field_choice_get_n_items</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gchar * <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-get-text" title="poppler_form_field_choice_get_text ()">poppler_form_field_choice_get_text</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-is-editable" title="poppler_form_field_choice_is_editable ()">poppler_form_field_choice_is_editable</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-is-item-selected" title="poppler_form_field_choice_is_item_selected ()">poppler_form_field_choice_is_item_selected</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);
+void <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-select-item" title="poppler_form_field_choice_select_item ()">poppler_form_field_choice_select_item</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);
+void <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-set-text" title="poppler_form_field_choice_set_text ()">poppler_form_field_choice_set_text</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ const gchar *text);
+void <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-toggle-item" title="poppler_form_field_choice_toggle_item ()">poppler_form_field_choice_toggle_item</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);
+void <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-choice-unselect-all" title="poppler_form_field_choice_unselect_all ()">poppler_form_field_choice_unselect_all</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-do-scroll" title="poppler_form_field_text_do_scroll ()">poppler_form_field_text_do_scroll</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-do-spell-check" title="poppler_form_field_text_do_spell_check ()">poppler_form_field_text_do_spell_check</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gint <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-get-max-len" title="poppler_form_field_text_get_max_len ()">poppler_form_field_text_get_max_len</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gchar * <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-get-text" title="poppler_form_field_text_get_text ()">poppler_form_field_text_get_text</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+<a class="link" href="poppler-poppler-form-field.html#PopplerFormTextType" title="enum PopplerFormTextType">PopplerFormTextType</a> <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-get-text-type" title="poppler_form_field_text_get_text_type ()">poppler_form_field_text_get_text_type</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-is-password" title="poppler_form_field_text_is_password ()">poppler_form_field_text_is_password</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+gboolean <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-is-rich-text" title="poppler_form_field_text_is_rich_text ()">poppler_form_field_text_is_rich_text</a>
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);
+void <a class="link" href="poppler-poppler-form-field.html#poppler-form-field-text-set-text" title="poppler_form_field_text_set_text ()">poppler_form_field_text_set_text</a> (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ const gchar *text);
+</pre>
+</div>
+<div class="refsect1" title="Object Hierarchy">
+<a name="poppler-poppler-form-field.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="synopsis">
+ GObject
+ +----PopplerFormField
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-form-field.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-form-field.details"></a><h2>Details</h2>
+<div class="refsect2" title="PopplerFormField">
+<a name="PopplerFormField-struct"></a><h3>PopplerFormField</h3>
+<pre class="programlisting">typedef struct _PopplerFormField PopplerFormField;</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerFormButtonType">
+<a name="PopplerFormButtonType"></a><h3>enum PopplerFormButtonType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_FORM_BUTTON_PUSH,
+ POPPLER_FORM_BUTTON_CHECK,
+ POPPLER_FORM_BUTTON_RADIO
+} PopplerFormButtonType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerFormChoiceType">
+<a name="PopplerFormChoiceType"></a><h3>enum PopplerFormChoiceType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_FORM_CHOICE_COMBO,
+ POPPLER_FORM_CHOICE_LIST
+} PopplerFormChoiceType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerFormFieldType">
+<a name="PopplerFormFieldType"></a><h3>enum PopplerFormFieldType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_FORM_FIELD_UNKNOWN,
+ POPPLER_FORM_FIELD_BUTTON,
+ POPPLER_FORM_FIELD_TEXT,
+ POPPLER_FORM_FIELD_CHOICE,
+ POPPLER_FORM_FIELD_SIGNATURE
+} PopplerFormFieldType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerFormTextType">
+<a name="PopplerFormTextType"></a><h3>enum PopplerFormTextType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_FORM_TEXT_NORMAL,
+ POPPLER_FORM_TEXT_MULTILINE,
+ POPPLER_FORM_TEXT_FILE_SELECT
+} PopplerFormTextType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_get_id ()">
+<a name="poppler-form-field-get-id"></a><h3>poppler_form_field_get_id ()</h3>
+<pre class="programlisting">gint poppler_form_field_get_id (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Gets the id of <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the id of <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_get_field_type ()">
+<a name="poppler-form-field-get-field-type"></a><h3>poppler_form_field_get_field_type ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-form-field.html#PopplerFormFieldType" title="enum PopplerFormFieldType">PopplerFormFieldType</a> poppler_form_field_get_field_type (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Gets the type of <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <a class="link" href="poppler-poppler-form-field.html#PopplerFormFieldType" title="enum PopplerFormFieldType"><span class="type">PopplerFormFieldType</span></a> of <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_is_read_only ()">
+<a name="poppler-form-field-is-read-only"></a><h3>poppler_form_field_is_read_only ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_is_read_only (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Checks whether <em class="parameter"><code>field</code></em> is read only</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if <em class="parameter"><code>field</code></em> is read only
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_get_font_size ()">
+<a name="poppler-form-field-get-font-size"></a><h3>poppler_form_field_get_font_size ()</h3>
+<pre class="programlisting">gdouble poppler_form_field_get_font_size (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Gets the font size of <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the font size of <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_button_get_button_type ()">
+<a name="poppler-form-field-button-get-button-type"></a><h3>poppler_form_field_button_get_button_type ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-form-field.html#PopplerFormButtonType" title="enum PopplerFormButtonType">PopplerFormButtonType</a> poppler_form_field_button_get_button_type
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Gets the button type of <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <a class="link" href="poppler-poppler-form-field.html#PopplerFormButtonType" title="enum PopplerFormButtonType"><span class="type">PopplerFormButtonType</span></a> of <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_button_get_state ()">
+<a name="poppler-form-field-button-get-state"></a><h3>poppler_form_field_button_get_state ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_button_get_state (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Queries a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a> and returns its current state. Returns <code class="literal">TRUE</code> if
+<em class="parameter"><code>field</code></em> is pressed in and <code class="literal">FALSE</code> if it is raised.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> current state of <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_button_set_state ()">
+<a name="poppler-form-field-button-set-state"></a><h3>poppler_form_field_button_set_state ()</h3>
+<pre class="programlisting">void poppler_form_field_button_set_state (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gboolean state);</pre>
+<p>
+Sets the status of <em class="parameter"><code>field</code></em>. Set to <code class="literal">TRUE</code> if you want the <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+to be 'pressed in', and <code class="literal">FALSE</code> to raise it.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>state</code></em> :</span></p></td>
+<td> <code class="literal">TRUE</code> or <code class="literal">FALSE</code>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_can_select_multiple ()">
+<a name="poppler-form-field-choice-can-select-multiple"></a><h3>poppler_form_field_choice_can_select_multiple ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_choice_can_select_multiple
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Checks whether <em class="parameter"><code>field</code></em> allows multiple choices to be selected</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if <em class="parameter"><code>field</code></em> allows multiple choices to be selected
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_commit_on_change ()">
+<a name="poppler-form-field-choice-commit-on-change"></a><h3>poppler_form_field_choice_commit_on_change ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_choice_commit_on_change
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_do_spell_check ()">
+<a name="poppler-form-field-choice-do-spell-check"></a><h3>poppler_form_field_choice_do_spell_check ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_choice_do_spell_check
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Checks whether spell checking should be done for the contents of <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if spell checking should be done for <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_get_choice_type ()">
+<a name="poppler-form-field-choice-get-choice-type"></a><h3>poppler_form_field_choice_get_choice_type ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-form-field.html#PopplerFormChoiceType" title="enum PopplerFormChoiceType">PopplerFormChoiceType</a> poppler_form_field_choice_get_choice_type
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Gets the choice type of <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <a class="link" href="poppler-poppler-form-field.html#PopplerFormChoiceType" title="enum PopplerFormChoiceType"><span class="type">PopplerFormChoiceType</span></a> of <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_get_item ()">
+<a name="poppler-form-field-choice-get-item"></a><h3>poppler_form_field_choice_get_item ()</h3>
+<pre class="programlisting">gchar * poppler_form_field_choice_get_item (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);</pre>
+<p>
+Returns the contents of the item on <em class="parameter"><code>field</code></em> at the given index</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td> the index of the item
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated string. It must be freed with <code class="function">g_free()</code> when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_get_n_items ()">
+<a name="poppler-form-field-choice-get-n-items"></a><h3>poppler_form_field_choice_get_n_items ()</h3>
+<pre class="programlisting">gint poppler_form_field_choice_get_n_items
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Returns the number of items on <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the number of items on <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_get_text ()">
+<a name="poppler-form-field-choice-get-text"></a><h3>poppler_form_field_choice_get_text ()</h3>
+<pre class="programlisting">gchar * poppler_form_field_choice_get_text (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Retrieves the contents of <em class="parameter"><code>field</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated string. It must be freed with <code class="function">g_free()</code> when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_is_editable ()">
+<a name="poppler-form-field-choice-is-editable"></a><h3>poppler_form_field_choice_is_editable ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_choice_is_editable
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Checks whether <em class="parameter"><code>field</code></em> is editable</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if <em class="parameter"><code>field</code></em> is editable
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_is_item_selected ()">
+<a name="poppler-form-field-choice-is-item-selected"></a><h3>poppler_form_field_choice_is_item_selected ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_choice_is_item_selected
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);</pre>
+<p>
+Checks whether the item at the given index on <em class="parameter"><code>field</code></em> is currently selected</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td> the index of the item
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if item at <em class="parameter"><code>index</code></em> is currently selected
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_select_item ()">
+<a name="poppler-form-field-choice-select-item"></a><h3>poppler_form_field_choice_select_item ()</h3>
+<pre class="programlisting">void poppler_form_field_choice_select_item
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);</pre>
+<p>
+Selects the item at the given index on <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td> the index of the item
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_set_text ()">
+<a name="poppler-form-field-choice-set-text"></a><h3>poppler_form_field_choice_set_text ()</h3>
+<pre class="programlisting">void poppler_form_field_choice_set_text (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ const gchar *text);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_toggle_item ()">
+<a name="poppler-form-field-choice-toggle-item"></a><h3>poppler_form_field_choice_toggle_item ()</h3>
+<pre class="programlisting">void poppler_form_field_choice_toggle_item
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ gint index);</pre>
+<p>
+Sets the text in <em class="parameter"><code>field</code></em> to the given value, replacing the current contents</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_choice_unselect_all ()">
+<a name="poppler-form-field-choice-unselect-all"></a><h3>poppler_form_field_choice_unselect_all ()</h3>
+<pre class="programlisting">void poppler_form_field_choice_unselect_all
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Unselects all the items on <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_do_scroll ()">
+<a name="poppler-form-field-text-do-scroll"></a><h3>poppler_form_field_text_do_scroll ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_text_do_scroll (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_do_spell_check ()">
+<a name="poppler-form-field-text-do-spell-check"></a><h3>poppler_form_field_text_do_spell_check ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_text_do_spell_check
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Checks whether spell checking should be done for the contents of <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if spell checking should be done for <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_get_max_len ()">
+<a name="poppler-form-field-text-get-max-len"></a><h3>poppler_form_field_text_get_max_len ()</h3>
+<pre class="programlisting">gint poppler_form_field_text_get_max_len (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Retrieves the maximum allowed length of the text in <em class="parameter"><code>field</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the maximum allowed number of characters in <em class="parameter"><code>field</code></em>, or -1 if there is no maximum.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_get_text ()">
+<a name="poppler-form-field-text-get-text"></a><h3>poppler_form_field_text_get_text ()</h3>
+<pre class="programlisting">gchar * poppler_form_field_text_get_text (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Retrieves the contents of <em class="parameter"><code>field</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a new allocated string. It must be freed with <code class="function">g_free()</code> when done.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_get_text_type ()">
+<a name="poppler-form-field-text-get-text-type"></a><h3>poppler_form_field_text_get_text_type ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-form-field.html#PopplerFormTextType" title="enum PopplerFormTextType">PopplerFormTextType</a> poppler_form_field_text_get_text_type
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Gets the text type of <em class="parameter"><code>field</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <a class="link" href="poppler-poppler-form-field.html#PopplerFormTextType" title="enum PopplerFormTextType"><span class="type">PopplerFormTextType</span></a> of <em class="parameter"><code>field</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_is_password ()">
+<a name="poppler-form-field-text-is-password"></a><h3>poppler_form_field_text_is_password ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_text_is_password (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Checks whether content of <em class="parameter"><code>field</code></em> is a password and it must be hidden</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if the content of <em class="parameter"><code>field</code></em> is a password
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_is_rich_text ()">
+<a name="poppler-form-field-text-is-rich-text"></a><h3>poppler_form_field_text_is_rich_text ()</h3>
+<pre class="programlisting">gboolean poppler_form_field_text_is_rich_text
+ (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field);</pre>
+<p>
+Checks whether the contents of <em class="parameter"><code>field</code></em> are rich text</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if the contents of <em class="parameter"><code>field</code></em> are rich text
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_text_set_text ()">
+<a name="poppler-form-field-text-set-text"></a><h3>poppler_form_field_text_set_text ()</h3>
+<pre class="programlisting">void poppler_form_field_text_set_text (<a class="link" href="poppler-poppler-form-field.html#PopplerFormField">PopplerFormField</a> *field,
+ const gchar *text);</pre>
+<p>
+Sets the text in <em class="parameter"><code>field</code></em> to the given value, replacing the current contents.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-form-field.html#PopplerFormField"><span class="type">PopplerFormField</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
+<td> the new text
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-layer.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-layer.html
new file mode 100644
index 00000000000..dbfff4938cc
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-layer.html
@@ -0,0 +1,214 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PopplerLayer</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-annot.html" title="PopplerAnnot">
+<link rel="next" href="poppler-poppler-features.html" title="Version and Features Information">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-annot.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-features.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-layer.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-layer.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="PopplerLayer">
+<a name="poppler-poppler-layer"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-layer.top_of_page"></a>PopplerLayer</span></h2>
+<p>PopplerLayer</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-layer.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+GType <a class="link" href="poppler-poppler-layer.html#poppler-layer-get-type" title="poppler_layer_get_type ()">poppler_layer_get_type</a> (void);
+const gchar * <a class="link" href="poppler-poppler-layer.html#poppler-layer-get-title" title="poppler_layer_get_title ()">poppler_layer_get_title</a> (PopplerLayer *layer);
+gboolean <a class="link" href="poppler-poppler-layer.html#poppler-layer-is-visible" title="poppler_layer_is_visible ()">poppler_layer_is_visible</a> (PopplerLayer *layer);
+void <a class="link" href="poppler-poppler-layer.html#poppler-layer-show" title="poppler_layer_show ()">poppler_layer_show</a> (PopplerLayer *layer);
+void <a class="link" href="poppler-poppler-layer.html#poppler-layer-hide" title="poppler_layer_hide ()">poppler_layer_hide</a> (PopplerLayer *layer);
+gboolean <a class="link" href="poppler-poppler-layer.html#poppler-layer-is-parent" title="poppler_layer_is_parent ()">poppler_layer_is_parent</a> (PopplerLayer *layer);
+gint <a class="link" href="poppler-poppler-layer.html#poppler-layer-get-radio-button-group-id" title="poppler_layer_get_radio_button_group_id ()">poppler_layer_get_radio_button_group_id</a>
+ (PopplerLayer *layer);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-layer.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-layer.details"></a><h2>Details</h2>
+<div class="refsect2" title="poppler_layer_get_type ()">
+<a name="poppler-layer-get-type"></a><h3>poppler_layer_get_type ()</h3>
+<pre class="programlisting">GType poppler_layer_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_layer_get_title ()">
+<a name="poppler-layer-get-title"></a><h3>poppler_layer_get_title ()</h3>
+<pre class="programlisting">const gchar * poppler_layer_get_title (PopplerLayer *layer);</pre>
+<p>
+Returns the name of the layer suitable for
+presentation as a title in a viewer's GUI</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>layer</code></em> :</span></p></td>
+<td> a <span class="type">PopplerLayer</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a string containing the title of the layer
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_layer_is_visible ()">
+<a name="poppler-layer-is-visible"></a><h3>poppler_layer_is_visible ()</h3>
+<pre class="programlisting">gboolean poppler_layer_is_visible (PopplerLayer *layer);</pre>
+<p>
+Returns whether <em class="parameter"><code>layer</code></em> is visible</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>layer</code></em> :</span></p></td>
+<td> a <span class="type">PopplerLayer</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if <em class="parameter"><code>layer</code></em> is visible
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_layer_show ()">
+<a name="poppler-layer-show"></a><h3>poppler_layer_show ()</h3>
+<pre class="programlisting">void poppler_layer_show (PopplerLayer *layer);</pre>
+<p>
+Shows <em class="parameter"><code>layer</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>layer</code></em> :</span></p></td>
+<td> a <span class="type">PopplerLayer</span>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_layer_hide ()">
+<a name="poppler-layer-hide"></a><h3>poppler_layer_hide ()</h3>
+<pre class="programlisting">void poppler_layer_hide (PopplerLayer *layer);</pre>
+<p>
+Hides <em class="parameter"><code>layer</code></em>. If <em class="parameter"><code>layer</code></em> is the parent of other nested layers,
+such layers will be also hidden and will be blocked until <em class="parameter"><code>layer</code></em>
+is shown again</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>layer</code></em> :</span></p></td>
+<td> a <span class="type">PopplerLayer</span>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_layer_is_parent ()">
+<a name="poppler-layer-is-parent"></a><h3>poppler_layer_is_parent ()</h3>
+<pre class="programlisting">gboolean poppler_layer_is_parent (PopplerLayer *layer);</pre>
+<p>
+Returns whether <em class="parameter"><code>layer</code></em> is parent of other nested layers.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>layer</code></em> :</span></p></td>
+<td> a <span class="type">PopplerLayer</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code> if <em class="parameter"><code>layer</code></em> is a parent layer
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_layer_get_radio_button_group_id ()">
+<a name="poppler-layer-get-radio-button-group-id"></a><h3>poppler_layer_get_radio_button_group_id ()</h3>
+<pre class="programlisting">gint poppler_layer_get_radio_button_group_id
+ (PopplerLayer *layer);</pre>
+<p>
+Returns the numeric ID the radio button group associated with <em class="parameter"><code>layer</code></em>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>layer</code></em> :</span></p></td>
+<td> a <span class="type">PopplerLayer</span>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the ID of the radio button group associated with <em class="parameter"><code>layer</code></em>,
+or 0 if the layer is not associated to any radio button group
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-page.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-page.html
new file mode 100644
index 00000000000..bd565278b4f
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler-page.html
@@ -0,0 +1,1258 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>PopplerPage</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="poppler-poppler-document.html" title="PopplerDocument">
+<link rel="next" href="poppler-poppler-action.html" title="PopplerAction">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="poppler-poppler-document.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-action.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler-page.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler-page.description" class="shortcut">Description</a>
+</td></tr>
+</table>
+<div class="refentry" title="PopplerPage">
+<a name="poppler-poppler-page"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler-page.top_of_page"></a>PopplerPage</span></h2>
+<p>PopplerPage — Information about a page in a document</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler-page.synopsis"></a><h2>Synopsis</h2>
+<pre class="synopsis">
+void <a class="link" href="poppler-poppler-page.html#poppler-page-render" title="poppler_page_render ()">poppler_page_render</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ cairo_t *cairo);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-render-to-pixbuf" title="poppler_page_render_to_pixbuf ()">poppler_page_render_to_pixbuf</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ int src_x,
+ int src_y,
+ int src_width,
+ int src_height,
+ double scale,
+ int rotation,
+ GdkPixbuf *pixbuf);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-get-size" title="poppler_page_get_size ()">poppler_page_get_size</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ double *width,
+ double *height);
+int <a class="link" href="poppler-poppler-page.html#poppler-page-get-index" title="poppler_page_get_index ()">poppler_page_get_index</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);
+cairo_surface_t * <a class="link" href="poppler-poppler-page.html#poppler-page-get-thumbnail" title="poppler_page_get_thumbnail ()">poppler_page_get_thumbnail</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);
+gboolean <a class="link" href="poppler-poppler-page.html#poppler-page-get-thumbnail-size" title="poppler_page_get_thumbnail_size ()">poppler_page_get_thumbnail_size</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ int *width,
+ int *height);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-render-to-ps" title="poppler_page_render_to_ps ()">poppler_page_render_to_ps</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ <a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file);
+GList * <a class="link" href="poppler-poppler-page.html#poppler-page-find-text" title="poppler_page_find_text ()">poppler_page_find_text</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ const char *text);
+char * <a class="link" href="poppler-poppler-page.html#poppler-page-get-text" title="poppler_page_get_text ()">poppler_page_get_text</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *rect);
+double <a class="link" href="poppler-poppler-page.html#poppler-page-get-duration" title="poppler_page_get_duration ()">poppler_page_get_duration</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);
+<a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> * <a class="link" href="poppler-poppler-page.html#poppler-page-get-transition" title="poppler_page_get_transition ()">poppler_page_get_transition</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);
+GList * <a class="link" href="poppler-poppler-page.html#poppler-page-get-link-mapping" title="poppler_page_get_link_mapping ()">poppler_page_get_link_mapping</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-free-link-mapping" title="poppler_page_free_link_mapping ()">poppler_page_free_link_mapping</a> (GList *list);
+GList * <a class="link" href="poppler-poppler-page.html#poppler-page-get-image-mapping" title="poppler_page_get_image_mapping ()">poppler_page_get_image_mapping</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-free-image-mapping" title="poppler_page_free_image_mapping ()">poppler_page_free_image_mapping</a> (GList *list);
+GList * <a class="link" href="poppler-poppler-page.html#poppler-page-get-form-field-mapping" title="poppler_page_get_form_field_mapping ()">poppler_page_get_form_field_mapping</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-free-form-field-mapping" title="poppler_page_free_form_field_mapping ()">poppler_page_free_form_field_mapping</a>
+ (GList *list);
+GList * <a class="link" href="poppler-poppler-page.html#poppler-page-get-selection-region" title="poppler_page_get_selection_region ()">poppler_page_get_selection_region</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ gdouble scale,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *selection);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-render-selection" title="poppler_page_render_selection ()">poppler_page_render_selection</a> (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ cairo_t *cairo,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *selection,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *old_selection,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ PopplerColor *glyph_color,
+ PopplerColor *background_color);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-render-selection-to-pixbuf" title="poppler_page_render_selection_to_pixbuf ()">poppler_page_render_selection_to_pixbuf</a>
+ (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ gdouble scale,
+ int rotation,
+ GdkPixbuf *pixbuf,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *selection,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *old_selection,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ GdkColor *glyph_color,
+ GdkColor *background_color);
+#define <a class="link" href="poppler-poppler-page.html#POPPLER-TYPE-RECTANGLE--CAPS" title="POPPLER_TYPE_RECTANGLE">POPPLER_TYPE_RECTANGLE</a>
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a>;
+GType <a class="link" href="poppler-poppler-page.html#poppler-rectangle-get-type" title="poppler_rectangle_get_type ()">poppler_rectangle_get_type</a> (void);
+<a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> * <a class="link" href="poppler-poppler-page.html#poppler-rectangle-new" title="poppler_rectangle_new ()">poppler_rectangle_new</a> (void);
+<a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> * <a class="link" href="poppler-poppler-page.html#poppler-rectangle-copy" title="poppler_rectangle_copy ()">poppler_rectangle_copy</a> (<a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *rectangle);
+void <a class="link" href="poppler-poppler-page.html#poppler-rectangle-free" title="poppler_rectangle_free ()">poppler_rectangle_free</a> (<a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *rectangle);
+#define <a class="link" href="poppler-poppler-page.html#POPPLER-TYPE-PAGE-TRANSITION--CAPS" title="POPPLER_TYPE_PAGE_TRANSITION">POPPLER_TYPE_PAGE_TRANSITION</a>
+ <a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a>;
+GType <a class="link" href="poppler-poppler-page.html#poppler-page-transition-get-type" title="poppler_page_transition_get_type ()">poppler_page_transition_get_type</a> (void);
+<a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> * <a class="link" href="poppler-poppler-page.html#poppler-page-transition-new" title="poppler_page_transition_new ()">poppler_page_transition_new</a> (void);
+<a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> * <a class="link" href="poppler-poppler-page.html#poppler-page-transition-copy" title="poppler_page_transition_copy ()">poppler_page_transition_copy</a> (<a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> *transition);
+void <a class="link" href="poppler-poppler-page.html#poppler-page-transition-free" title="poppler_page_transition_free ()">poppler_page_transition_free</a> (<a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> *transition);
+#define <a class="link" href="poppler-poppler-page.html#POPPLER-TYPE-LINK-MAPPING--CAPS" title="POPPLER_TYPE_LINK_MAPPING">POPPLER_TYPE_LINK_MAPPING</a>
+ <a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a>;
+GType <a class="link" href="poppler-poppler-page.html#poppler-link-mapping-get-type" title="poppler_link_mapping_get_type ()">poppler_link_mapping_get_type</a> (void);
+<a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> * <a class="link" href="poppler-poppler-page.html#poppler-link-mapping-new" title="poppler_link_mapping_new ()">poppler_link_mapping_new</a> (void);
+<a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> * <a class="link" href="poppler-poppler-page.html#poppler-link-mapping-copy" title="poppler_link_mapping_copy ()">poppler_link_mapping_copy</a> (<a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> *mapping);
+void <a class="link" href="poppler-poppler-page.html#poppler-link-mapping-free" title="poppler_link_mapping_free ()">poppler_link_mapping_free</a> (<a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> *mapping);
+#define <a class="link" href="poppler-poppler-page.html#POPPLER-TYPE-IMAGE-MAPPING--CAPS" title="POPPLER_TYPE_IMAGE_MAPPING">POPPLER_TYPE_IMAGE_MAPPING</a>
+ <a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a>;
+GType <a class="link" href="poppler-poppler-page.html#poppler-image-mapping-get-type" title="poppler_image_mapping_get_type ()">poppler_image_mapping_get_type</a> (void);
+<a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> * <a class="link" href="poppler-poppler-page.html#poppler-image-mapping-new" title="poppler_image_mapping_new ()">poppler_image_mapping_new</a> (void);
+<a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> * <a class="link" href="poppler-poppler-page.html#poppler-image-mapping-copy" title="poppler_image_mapping_copy ()">poppler_image_mapping_copy</a> (<a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> *mapping);
+void <a class="link" href="poppler-poppler-page.html#poppler-image-mapping-free" title="poppler_image_mapping_free ()">poppler_image_mapping_free</a> (<a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> *mapping);
+#define <a class="link" href="poppler-poppler-page.html#POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS" title="POPPLER_TYPE_FORM_FIELD_MAPPING">POPPLER_TYPE_FORM_FIELD_MAPPING</a>
+ <a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a>;
+GType <a class="link" href="poppler-poppler-page.html#poppler-form-field-mapping-get-type" title="poppler_form_field_mapping_get_type ()">poppler_form_field_mapping_get_type</a> (void);
+<a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> * <a class="link" href="poppler-poppler-page.html#poppler-form-field-mapping-new" title="poppler_form_field_mapping_new ()">poppler_form_field_mapping_new</a>
+ (void);
+<a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> * <a class="link" href="poppler-poppler-page.html#poppler-form-field-mapping-copy" title="poppler_form_field_mapping_copy ()">poppler_form_field_mapping_copy</a>
+ (<a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> *mapping);
+void <a class="link" href="poppler-poppler-page.html#poppler-form-field-mapping-free" title="poppler_form_field_mapping_free ()">poppler_form_field_mapping_free</a> (<a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> *mapping);
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler-page.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler-page.details"></a><h2>Details</h2>
+<div class="refsect2" title="poppler_page_render ()">
+<a name="poppler-page-render"></a><h3>poppler_page_render ()</h3>
+<pre class="programlisting">void poppler_page_render (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ cairo_t *cairo);</pre>
+<p>
+Render the page to the given cairo context. This function
+is for rendering a page that will be displayed. If you want
+to render a page that will be printed use
+<code class="function">poppler_page_render_for_printing()</code> instead</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> the page to render from
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>cairo</code></em> :</span></p></td>
+<td> cairo context to render to
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_render_to_pixbuf ()">
+<a name="poppler-page-render-to-pixbuf"></a><h3>poppler_page_render_to_pixbuf ()</h3>
+<pre class="programlisting">void poppler_page_render_to_pixbuf (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ int src_x,
+ int src_y,
+ int src_width,
+ int src_height,
+ double scale,
+ int rotation,
+ GdkPixbuf *pixbuf);</pre>
+<p>
+First scale the document to match the specified pixels per point,
+then render the rectangle given by the upper left corner at
+(src_x, src_y) and src_width and src_height.
+This function is for rendering a page that will be displayed.
+If you want to render a page that will be printed use
+<code class="function">poppler_page_render_to_pixbuf_for_printing()</code> instead</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> the page to render from
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>src_x</code></em> :</span></p></td>
+<td> x coordinate of upper left corner
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>src_y</code></em> :</span></p></td>
+<td> y coordinate of upper left corner
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>src_width</code></em> :</span></p></td>
+<td> width of rectangle to render
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>src_height</code></em> :</span></p></td>
+<td> height of rectangle to render
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
+<td> scale specified as pixels per point
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>rotation</code></em> :</span></p></td>
+<td> rotate the document by the specified degree
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>pixbuf</code></em> :</span></p></td>
+<td> pixbuf to render into
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_size ()">
+<a name="poppler-page-get-size"></a><h3>poppler_page_get_size ()</h3>
+<pre class="programlisting">void poppler_page_get_size (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ double *width,
+ double *height);</pre>
+<p>
+Gets the size of <em class="parameter"><code>page</code></em> at the current scale and rotation.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
+<td> return location for the width of <em class="parameter"><code>page</code></em>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
+<td> return location for the height of <em class="parameter"><code>page</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_index ()">
+<a name="poppler-page-get-index"></a><h3>poppler_page_get_index ()</h3>
+<pre class="programlisting">int poppler_page_get_index (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);</pre>
+<p>
+Returns the index of <em class="parameter"><code>page</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> index value of <em class="parameter"><code>page</code></em>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_thumbnail ()">
+<a name="poppler-page-get-thumbnail"></a><h3>poppler_page_get_thumbnail ()</h3>
+<pre class="programlisting">cairo_surface_t * poppler_page_get_thumbnail (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);</pre>
+<p>
+Get the embedded thumbnail for the specified page. If the document
+doesn't have an embedded thumbnail for the page, this function
+returns <code class="literal">NULL</code>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> the <span class="type">PopperPage</span> to get the thumbnail for
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the tumbnail as a cairo_surface_t or <code class="literal">NULL</code> if the document
+doesn't have a thumbnail for this page.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_thumbnail_size ()">
+<a name="poppler-page-get-thumbnail-size"></a><h3>poppler_page_get_thumbnail_size ()</h3>
+<pre class="programlisting">gboolean poppler_page_get_thumbnail_size (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ int *width,
+ int *height);</pre>
+<p>
+Returns <code class="literal">TRUE</code> if <em class="parameter"><code>page</code></em> has a thumbnail associated with it. It also
+fills in <em class="parameter"><code>width</code></em> and <em class="parameter"><code>height</code></em> with the width and height of the
+thumbnail. The values of width and height are not changed if no
+appropriate thumbnail exists.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>width</code></em> :</span></p></td>
+<td> return location for width
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>height</code></em> :</span></p></td>
+<td> return location for height
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> <code class="literal">TRUE</code>, if <em class="parameter"><code>page</code></em> has a thumbnail associated with it.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_render_to_ps ()">
+<a name="poppler-page-render-to-ps"></a><h3>poppler_page_render_to_ps ()</h3>
+<pre class="programlisting">void poppler_page_render_to_ps (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ <a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a> *ps_file);</pre>
+<p>
+Render the page on a postscript file</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ps_file</code></em> :</span></p></td>
+<td> the PopplerPSFile to render to
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_find_text ()">
+<a name="poppler-page-find-text"></a><h3>poppler_page_find_text ()</h3>
+<pre class="programlisting">GList * poppler_page_find_text (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ const char *text);</pre>
+<p>
+A <span class="type">GList</span> of rectangles for each occurance of the text on the page.
+The coordinates are in PDF points.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td>
+<td> the text to search for (UTF-8 encoded)
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a <span class="type">GList</span> of PopplerRectangle,
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_text ()">
+<a name="poppler-page-get-text"></a><h3>poppler_page_get_text ()</h3>
+<pre class="programlisting">char * poppler_page_get_text (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *rect);</pre>
+<p>
+Retrieves the contents of the specified <em class="parameter"><code>selection</code></em> as text.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>style</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle"><span class="type">PopplerSelectionStyle</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>rect</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a pointer to the contents of the <em class="parameter"><code>selection</code></em>
+ as a string
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_duration ()">
+<a name="poppler-page-get-duration"></a><h3>poppler_page_get_duration ()</h3>
+<pre class="programlisting">double poppler_page_get_duration (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);</pre>
+<p>
+Returns the duration of <em class="parameter"><code>page</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> duration in seconds of <em class="parameter"><code>page</code></em> or -1.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_transition ()">
+<a name="poppler-page-get-transition"></a><h3>poppler_page_get_transition ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> * poppler_page_get_transition (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);</pre>
+<p>
+Returns the transition effect of <em class="parameter"><code>page</code></em></p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition"><span class="type">PopplerPageTransition</span></a> or NULL.
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_link_mapping ()">
+<a name="poppler-page-get-link-mapping"></a><h3>poppler_page_get_link_mapping ()</h3>
+<pre class="programlisting">GList * poppler_page_get_link_mapping (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);</pre>
+<p>
+Returns a list of <a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping"><span class="type">PopplerLinkMapping</span></a> items that map from a
+location on <em class="parameter"><code>page</code></em> to a <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a>. This list must be freed
+with <a class="link" href="poppler-poppler-page.html#poppler-page-free-link-mapping" title="poppler_page_free_link_mapping ()"><code class="function">poppler_page_free_link_mapping()</code></a> when done.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> A <span class="type">GList</span> of <a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping"><span class="type">PopplerLinkMapping</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_free_link_mapping ()">
+<a name="poppler-page-free-link-mapping"></a><h3>poppler_page_free_link_mapping ()</h3>
+<pre class="programlisting">void poppler_page_free_link_mapping (GList *list);</pre>
+<p>
+Frees a list of <a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping"><span class="type">PopplerLinkMapping</span></a>s allocated by
+<a class="link" href="poppler-poppler-page.html#poppler-page-get-link-mapping" title="poppler_page_get_link_mapping ()"><code class="function">poppler_page_get_link_mapping()</code></a>. It also frees the <a class="link" href="poppler-poppler-action.html#PopplerAction" title="union PopplerAction"><span class="type">PopplerAction</span></a>s
+that each mapping contains, so if you want to keep them around, you need to
+copy them with <a class="link" href="poppler-poppler-action.html#poppler-action-copy" title="poppler_action_copy ()"><code class="function">poppler_action_copy()</code></a>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td> A list of <a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping"><span class="type">PopplerLinkMapping</span></a>s
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_image_mapping ()">
+<a name="poppler-page-get-image-mapping"></a><h3>poppler_page_get_image_mapping ()</h3>
+<pre class="programlisting">GList * poppler_page_get_image_mapping (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);</pre>
+<p>
+Returns a list of <a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping"><span class="type">PopplerImageMapping</span></a> items that map from a
+location on <em class="parameter"><code>page</code></em> to an image of the page. This list must be freed
+with <a class="link" href="poppler-poppler-page.html#poppler-page-free-image-mapping" title="poppler_page_free_image_mapping ()"><code class="function">poppler_page_free_image_mapping()</code></a> when done.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> A <span class="type">GList</span> of <a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping"><span class="type">PopplerImageMapping</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_free_image_mapping ()">
+<a name="poppler-page-free-image-mapping"></a><h3>poppler_page_free_image_mapping ()</h3>
+<pre class="programlisting">void poppler_page_free_image_mapping (GList *list);</pre>
+<p>
+Frees a list of <a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping"><span class="type">PopplerImageMapping</span></a>s allocated by
+<a class="link" href="poppler-poppler-page.html#poppler-page-get-image-mapping" title="poppler_page_get_image_mapping ()"><code class="function">poppler_page_get_image_mapping()</code></a>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td> A list of <a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping"><span class="type">PopplerImageMapping</span></a>s
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_form_field_mapping ()">
+<a name="poppler-page-get-form-field-mapping"></a><h3>poppler_page_get_form_field_mapping ()</h3>
+<pre class="programlisting">GList * poppler_page_get_form_field_mapping (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page);</pre>
+<p>
+Returns a list of <a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping"><span class="type">PopplerFormFieldMapping</span></a> items that map from a
+location on <em class="parameter"><code>page</code></em> to a form field. This list must be freed
+with <a class="link" href="poppler-poppler-page.html#poppler-page-free-form-field-mapping" title="poppler_page_free_form_field_mapping ()"><code class="function">poppler_page_free_form_field_mapping()</code></a> when done.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> A <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> A <span class="type">GList</span> of <a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping"><span class="type">PopplerFormFieldMapping</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_free_form_field_mapping ()">
+<a name="poppler-page-free-form-field-mapping"></a><h3>poppler_page_free_form_field_mapping ()</h3>
+<pre class="programlisting">void poppler_page_free_form_field_mapping
+ (GList *list);</pre>
+<p>
+Frees a list of <a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping"><span class="type">PopplerFormFieldMapping</span></a>s allocated by
+<a class="link" href="poppler-poppler-page.html#poppler-page-get-form-field-mapping" title="poppler_page_get_form_field_mapping ()"><code class="function">poppler_page_get_form_field_mapping()</code></a>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>list</code></em> :</span></p></td>
+<td> A list of <a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping"><span class="type">PopplerFormFieldMapping</span></a>s
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_get_selection_region ()">
+<a name="poppler-page-get-selection-region"></a><h3>poppler_page_get_selection_region ()</h3>
+<pre class="programlisting">GList * poppler_page_get_selection_region (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ gdouble scale,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *selection);</pre>
+<p>
+Returns a region containing the area that would be rendered by
+<a class="link" href="poppler-poppler-page.html#poppler-page-render-selection" title="poppler_page_render_selection ()"><code class="function">poppler_page_render_selection()</code></a> or
+<a class="link" href="poppler-poppler-page.html#poppler-page-render-selection-to-pixbuf" title="poppler_page_render_selection_to_pixbuf ()"><code class="function">poppler_page_render_selection_to_pixbuf()</code></a> as a <span class="type">GList</span> of
+<a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle"><span class="type">PopplerRectangle</span></a>. The returned list must be freed with
+<code class="function">poppler_page_selection_region_free()</code>.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
+<td> scale specified as pixels per point
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>style</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle"><span class="type">PopplerSelectionStyle</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>selection</code></em> :</span></p></td>
+<td> start and end point of selection as a rectangle
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> a <span class="type">GList</span> of <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle"><span class="type">PopplerRectangle</span></a>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_render_selection ()">
+<a name="poppler-page-render-selection"></a><h3>poppler_page_render_selection ()</h3>
+<pre class="programlisting">void poppler_page_render_selection (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ cairo_t *cairo,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *selection,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *old_selection,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ PopplerColor *glyph_color,
+ PopplerColor *background_color);</pre>
+<p>
+Render the selection specified by <em class="parameter"><code>selection</code></em> for <em class="parameter"><code>page</code></em> to
+the given cairo context. The selection will be rendered, using
+<em class="parameter"><code>glyph_color</code></em> for the glyphs and <em class="parameter"><code>background_color</code></em> for the selection
+background.
+</p>
+<p>
+If non-NULL, <em class="parameter"><code>old_selection</code></em> specifies the selection that is already
+rendered to <em class="parameter"><code>cairo</code></em>, in which case this function will (some day)
+only render the changed part of the selection.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> the <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a> for which to render selection
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>cairo</code></em> :</span></p></td>
+<td> cairo context to render to
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>selection</code></em> :</span></p></td>
+<td> start and end point of selection as a rectangle
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>old_selection</code></em> :</span></p></td>
+<td> previous selection
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>style</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle"><span class="type">PopplerSelectionStyle</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>glyph_color</code></em> :</span></p></td>
+<td> color to use for drawing glyphs
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>background_color</code></em> :</span></p></td>
+<td> color to use for the selection background
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_render_selection_to_pixbuf ()">
+<a name="poppler-page-render-selection-to-pixbuf"></a><h3>poppler_page_render_selection_to_pixbuf ()</h3>
+<pre class="programlisting">void poppler_page_render_selection_to_pixbuf
+ (<a class="link" href="poppler-poppler.html#PopplerPage">PopplerPage</a> *page,
+ gdouble scale,
+ int rotation,
+ GdkPixbuf *pixbuf,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *selection,
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *old_selection,
+ <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a> style,
+ GdkColor *glyph_color,
+ GdkColor *background_color);</pre>
+<p>
+Render the selection specified by <em class="parameter"><code>selection</code></em> for <em class="parameter"><code>page</code></em> into
+<em class="parameter"><code>pixbuf</code></em>. The selection will be rendered at <em class="parameter"><code>scale</code></em>, using
+<em class="parameter"><code>glyph_color</code></em> for the glyphs and <em class="parameter"><code>background_color</code></em> for the selection
+background.
+</p>
+<p>
+If non-NULL, <em class="parameter"><code>old_selection</code></em> specifies the selection that is already
+rendered in <em class="parameter"><code>pixbuf</code></em>, in which case this function will (some day)
+only render the changed part of the selection.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>page</code></em> :</span></p></td>
+<td> the <a class="link" href="poppler-poppler.html#PopplerPage"><span class="type">PopplerPage</span></a> for which to render selection
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>scale</code></em> :</span></p></td>
+<td> scale specified as pixels per point
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>rotation</code></em> :</span></p></td>
+<td> rotate the document by the specified degree
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>pixbuf</code></em> :</span></p></td>
+<td> pixbuf to render to
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>selection</code></em> :</span></p></td>
+<td> start and end point of selection as a rectangle
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>old_selection</code></em> :</span></p></td>
+<td> previous selection
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>style</code></em> :</span></p></td>
+<td> a <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle"><span class="type">PopplerSelectionStyle</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>glyph_color</code></em> :</span></p></td>
+<td> color to use for drawing glyphs
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>background_color</code></em> :</span></p></td>
+<td> color to use for the selection background
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_RECTANGLE">
+<a name="POPPLER-TYPE-RECTANGLE--CAPS"></a><h3>POPPLER_TYPE_RECTANGLE</h3>
+<pre class="programlisting">#define POPPLER_TYPE_RECTANGLE (poppler_rectangle_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerRectangle">
+<a name="PopplerRectangle"></a><h3>PopplerRectangle</h3>
+<pre class="programlisting">typedef struct {
+ gdouble x1;
+ gdouble y1;
+ gdouble x2;
+ gdouble y2;
+} PopplerRectangle;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_rectangle_get_type ()">
+<a name="poppler-rectangle-get-type"></a><h3>poppler_rectangle_get_type ()</h3>
+<pre class="programlisting">GType poppler_rectangle_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_rectangle_new ()">
+<a name="poppler-rectangle-new"></a><h3>poppler_rectangle_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> * poppler_rectangle_new (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_rectangle_copy ()">
+<a name="poppler-rectangle-copy"></a><h3>poppler_rectangle_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> * poppler_rectangle_copy (<a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *rectangle);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>rectangle</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_rectangle_free ()">
+<a name="poppler-rectangle-free"></a><h3>poppler_rectangle_free ()</h3>
+<pre class="programlisting">void poppler_rectangle_free (<a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a> *rectangle);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>rectangle</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_PAGE_TRANSITION">
+<a name="POPPLER-TYPE-PAGE-TRANSITION--CAPS"></a><h3>POPPLER_TYPE_PAGE_TRANSITION</h3>
+<pre class="programlisting">#define POPPLER_TYPE_PAGE_TRANSITION (poppler_page_transition_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerPageTransition">
+<a name="PopplerPageTransition"></a><h3>PopplerPageTransition</h3>
+<pre class="programlisting">typedef struct {
+ PopplerPageTransitionType type;
+ PopplerPageTransitionAlignment alignment;
+ PopplerPageTransitionDirection direction;
+ gint duration;
+ gint angle;
+ gdouble scale;
+ gboolean rectangular;
+} PopplerPageTransition;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_transition_get_type ()">
+<a name="poppler-page-transition-get-type"></a><h3>poppler_page_transition_get_type ()</h3>
+<pre class="programlisting">GType poppler_page_transition_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_transition_new ()">
+<a name="poppler-page-transition-new"></a><h3>poppler_page_transition_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> * poppler_page_transition_new (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_transition_copy ()">
+<a name="poppler-page-transition-copy"></a><h3>poppler_page_transition_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> * poppler_page_transition_copy (<a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> *transition);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_page_transition_free ()">
+<a name="poppler-page-transition-free"></a><h3>poppler_page_transition_free ()</h3>
+<pre class="programlisting">void poppler_page_transition_free (<a class="link" href="poppler-poppler-page.html#PopplerPageTransition" title="PopplerPageTransition">PopplerPageTransition</a> *transition);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_LINK_MAPPING">
+<a name="POPPLER-TYPE-LINK-MAPPING--CAPS"></a><h3>POPPLER_TYPE_LINK_MAPPING</h3>
+<pre class="programlisting">#define POPPLER_TYPE_LINK_MAPPING (poppler_link_mapping_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerLinkMapping">
+<a name="PopplerLinkMapping"></a><h3>PopplerLinkMapping</h3>
+<pre class="programlisting">typedef struct {
+ PopplerRectangle area;
+ PopplerAction *action;
+} PopplerLinkMapping;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_link_mapping_get_type ()">
+<a name="poppler-link-mapping-get-type"></a><h3>poppler_link_mapping_get_type ()</h3>
+<pre class="programlisting">GType poppler_link_mapping_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_link_mapping_new ()">
+<a name="poppler-link-mapping-new"></a><h3>poppler_link_mapping_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> * poppler_link_mapping_new (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_link_mapping_copy ()">
+<a name="poppler-link-mapping-copy"></a><h3>poppler_link_mapping_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> * poppler_link_mapping_copy (<a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_link_mapping_free ()">
+<a name="poppler-link-mapping-free"></a><h3>poppler_link_mapping_free ()</h3>
+<pre class="programlisting">void poppler_link_mapping_free (<a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a> *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_IMAGE_MAPPING">
+<a name="POPPLER-TYPE-IMAGE-MAPPING--CAPS"></a><h3>POPPLER_TYPE_IMAGE_MAPPING</h3>
+<pre class="programlisting">#define POPPLER_TYPE_IMAGE_MAPPING (poppler_image_mapping_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerImageMapping">
+<a name="PopplerImageMapping"></a><h3>PopplerImageMapping</h3>
+<pre class="programlisting">typedef struct {
+ PopplerRectangle area;
+ gint image_id;
+} PopplerImageMapping;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_image_mapping_get_type ()">
+<a name="poppler-image-mapping-get-type"></a><h3>poppler_image_mapping_get_type ()</h3>
+<pre class="programlisting">GType poppler_image_mapping_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_image_mapping_new ()">
+<a name="poppler-image-mapping-new"></a><h3>poppler_image_mapping_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> * poppler_image_mapping_new (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_image_mapping_copy ()">
+<a name="poppler-image-mapping-copy"></a><h3>poppler_image_mapping_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> * poppler_image_mapping_copy (<a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_image_mapping_free ()">
+<a name="poppler-image-mapping-free"></a><h3>poppler_image_mapping_free ()</h3>
+<pre class="programlisting">void poppler_image_mapping_free (<a class="link" href="poppler-poppler-page.html#PopplerImageMapping" title="PopplerImageMapping">PopplerImageMapping</a> *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_TYPE_FORM_FIELD_MAPPING">
+<a name="POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS"></a><h3>POPPLER_TYPE_FORM_FIELD_MAPPING</h3>
+<pre class="programlisting">#define POPPLER_TYPE_FORM_FIELD_MAPPING (poppler_form_field_mapping_get_type ())
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerFormFieldMapping">
+<a name="PopplerFormFieldMapping"></a><h3>PopplerFormFieldMapping</h3>
+<pre class="programlisting">typedef struct {
+ PopplerRectangle area;
+ PopplerFormField *field;
+} PopplerFormFieldMapping;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_mapping_get_type ()">
+<a name="poppler-form-field-mapping-get-type"></a><h3>poppler_form_field_mapping_get_type ()</h3>
+<pre class="programlisting">GType poppler_form_field_mapping_get_type (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_mapping_new ()">
+<a name="poppler-form-field-mapping-new"></a><h3>poppler_form_field_mapping_new ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> * poppler_form_field_mapping_new
+ (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_mapping_copy ()">
+<a name="poppler-form-field-mapping-copy"></a><h3>poppler_form_field_mapping_copy ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> * poppler_form_field_mapping_copy
+ (<a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_form_field_mapping_free ()">
+<a name="poppler-form-field-mapping-free"></a><h3>poppler_form_field_mapping_free ()</h3>
+<pre class="programlisting">void poppler_form_field_mapping_free (<a class="link" href="poppler-poppler-page.html#PopplerFormFieldMapping" title="PopplerFormFieldMapping">PopplerFormFieldMapping</a> *mapping);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><em class="parameter"><code>mapping</code></em> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler.html b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler.html
new file mode 100644
index 00000000000..4878a272010
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler-poppler.html
@@ -0,0 +1,483 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>poppler</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.75.1">
+<link rel="home" href="index.html" title="Poppler Reference Manual">
+<link rel="up" href="ch01.html" title="Poppler">
+<link rel="prev" href="ch01.html" title="Poppler">
+<link rel="next" href="poppler-poppler-document.html" title="PopplerDocument">
+<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<link rel="chapter" href="ch01.html" title="Poppler">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
+<tr valign="middle">
+<td><a accesskey="p" href="ch01.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
+<td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
+<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
+<th width="100%" align="center">Poppler Reference Manual</th>
+<td><a accesskey="n" href="poppler-poppler-document.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
+</tr>
+<tr><td colspan="5" class="shortcuts">
+<a href="#poppler-poppler.synopsis" class="shortcut">Top</a>
+  | 
+ <a href="#poppler-poppler.description" class="shortcut">Description</a>
+  | 
+ <a href="#poppler-poppler.object-hierarchy" class="shortcut">Object Hierarchy</a>
+  | 
+ <a href="#poppler-poppler.properties" class="shortcut">Properties</a>
+</td></tr>
+</table>
+<div class="refentry" title="poppler">
+<a name="poppler-poppler"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="poppler-poppler.top_of_page"></a>poppler</span></h2>
+<p>poppler</p>
+</td>
+<td valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsynopsisdiv" title="Synopsis">
+<a name="poppler-poppler.synopsis"></a><h2>Synopsis</h2>
+<a name="PopplerDocument"></a><a name="PopplerPage"></a><pre class="synopsis">
+GQuark <a class="link" href="poppler-poppler.html#poppler-error-quark" title="poppler_error_quark ()">poppler_error_quark</a> (void);
+#define <a class="link" href="poppler-poppler.html#POPPLER-ERROR--CAPS" title="POPPLER_ERROR">POPPLER_ERROR</a>
+enum <a class="link" href="poppler-poppler.html#PopplerError" title="enum PopplerError">PopplerError</a>;
+enum <a class="link" href="poppler-poppler.html#PopplerOrientation" title="enum PopplerOrientation">PopplerOrientation</a>;
+ <a class="link" href="poppler-poppler.html#PopplerDocument-struct" title="PopplerDocument">PopplerDocument</a>;
+ <a class="link" href="poppler-poppler.html#PopplerIndexIter" title="PopplerIndexIter">PopplerIndexIter</a>;
+ <a class="link" href="poppler-poppler.html#PopplerFontsIter" title="PopplerFontsIter">PopplerFontsIter</a>;
+ <a class="link" href="poppler-poppler.html#PopplerRectangle" title="PopplerRectangle">PopplerRectangle</a>;
+enum <a class="link" href="poppler-poppler.html#PopplerSelectionStyle" title="enum PopplerSelectionStyle">PopplerSelectionStyle</a>;
+enum <a class="link" href="poppler-poppler.html#PopplerPageTransitionType" title="enum PopplerPageTransitionType">PopplerPageTransitionType</a>;
+enum <a class="link" href="poppler-poppler.html#PopplerPageTransitionAlignment" title="enum PopplerPageTransitionAlignment">PopplerPageTransitionAlignment</a>;
+enum <a class="link" href="poppler-poppler.html#PopplerPageTransitionDirection" title="enum PopplerPageTransitionDirection">PopplerPageTransitionDirection</a>;
+ <a class="link" href="poppler-poppler.html#PopplerLinkMapping" title="PopplerLinkMapping">PopplerLinkMapping</a>;
+ <a class="link" href="poppler-poppler.html#PopplerPage-struct" title="PopplerPage">PopplerPage</a>;
+ <a class="link" href="poppler-poppler.html#PopplerFontInfo" title="PopplerFontInfo">PopplerFontInfo</a>;
+ <a class="link" href="poppler-poppler.html#PopplerPSFile" title="PopplerPSFile">PopplerPSFile</a>;
+enum <a class="link" href="poppler-poppler.html#PopplerBackend" title="enum PopplerBackend">PopplerBackend</a>;
+<a class="link" href="poppler-poppler.html#PopplerBackend" title="enum PopplerBackend">PopplerBackend</a> <a class="link" href="poppler-poppler.html#poppler-get-backend" title="poppler_get_backend ()">poppler_get_backend</a> (void);
+const char * <a class="link" href="poppler-poppler.html#poppler-get-version" title="poppler_get_version ()">poppler_get_version</a> (void);
+</pre>
+</div>
+<div class="refsect1" title="Object Hierarchy">
+<a name="poppler-poppler.object-hierarchy"></a><h2>Object Hierarchy</h2>
+<pre class="synopsis">
+ GObject
+ +----PopplerDocument
+</pre>
+<pre class="synopsis">
+ GObject
+ +----PopplerPage
+</pre>
+</div>
+<div class="refsect1" title="Properties">
+<a name="poppler-poppler.properties"></a><h2>Properties</h2>
+<pre class="synopsis">
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--author" title='The "author" property'>author</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--creation-date" title='The "creation-date" property'>creation-date</a>" gint : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--creator" title='The "creator" property'>creator</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--format" title='The "format" property'>format</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--format-major" title='The "format-major" property'>format-major</a>" guint : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--format-minor" title='The "format-minor" property'>format-minor</a>" guint : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--keywords" title='The "keywords" property'>keywords</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--linearized" title='The "linearized" property'>linearized</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--metadata" title='The "metadata" property'>metadata</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--mod-date" title='The "mod-date" property'>mod-date</a>" gint : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--page-layout" title='The "page-layout" property'>page-layout</a>" <a class="link" href="poppler-poppler-document.html#PopplerPageLayout" title="enum PopplerPageLayout">PopplerPageLayout</a> : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--page-mode" title='The "page-mode" property'>page-mode</a>" <a class="link" href="poppler-poppler-document.html#PopplerPageMode" title="enum PopplerPageMode">PopplerPageMode</a> : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--permissions" title='The "permissions" property'>permissions</a>" <a class="link" href="poppler-poppler-document.html#PopplerPermissions" title="enum PopplerPermissions">PopplerPermissions</a> : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--producer" title='The "producer" property'>producer</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--subject" title='The "subject" property'>subject</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--title" title='The "title" property'>title</a>" gchar* : Read
+ "<a class="link" href="poppler-poppler.html#PopplerDocument--viewer-preferences" title='The "viewer-preferences" property'>viewer-preferences</a>" <a class="link" href="poppler-poppler-document.html#PopplerViewerPreferences" title="enum PopplerViewerPreferences">PopplerViewerPreferences</a> : Read
+ "<a class="link" href="poppler-poppler.html#PopplerPage--label" title='The "label" property'>label</a>" gchar* : Read
+</pre>
+</div>
+<div class="refsect1" title="Description">
+<a name="poppler-poppler.description"></a><h2>Description</h2>
+<p>
+</p>
+</div>
+<div class="refsect1" title="Details">
+<a name="poppler-poppler.details"></a><h2>Details</h2>
+<div class="refsect2" title="poppler_error_quark ()">
+<a name="poppler-error-quark"></a><h3>poppler_error_quark ()</h3>
+<pre class="programlisting">GQuark poppler_error_quark (void);</pre>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td>
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="POPPLER_ERROR">
+<a name="POPPLER-ERROR--CAPS"></a><h3>POPPLER_ERROR</h3>
+<pre class="programlisting">#define POPPLER_ERROR poppler_error_quark ()
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerError">
+<a name="PopplerError"></a><h3>enum PopplerError</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_ERROR_INVALID,
+ POPPLER_ERROR_ENCRYPTED,
+ POPPLER_ERROR_OPEN_FILE,
+ POPPLER_ERROR_BAD_CATALOG,
+ POPPLER_ERROR_DAMAGED
+} PopplerError;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerOrientation">
+<a name="PopplerOrientation"></a><h3>enum PopplerOrientation</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_ORIENTATION_PORTRAIT,
+ POPPLER_ORIENTATION_LANDSCAPE,
+ POPPLER_ORIENTATION_UPSIDEDOWN,
+ POPPLER_ORIENTATION_SEASCAPE
+} PopplerOrientation;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerDocument">
+<a name="PopplerDocument-struct"></a><h3>PopplerDocument</h3>
+<pre class="programlisting">typedef struct _PopplerDocument PopplerDocument;</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerIndexIter">
+<a name="PopplerIndexIter"></a><h3>PopplerIndexIter</h3>
+<pre class="programlisting">typedef struct _PopplerIndexIter PopplerIndexIter;</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerFontsIter">
+<a name="PopplerFontsIter"></a><h3>PopplerFontsIter</h3>
+<pre class="programlisting">typedef struct _PopplerFontsIter PopplerFontsIter;</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerRectangle">
+<a name="PopplerRectangle"></a><h3>PopplerRectangle</h3>
+<pre class="programlisting">typedef struct {
+ gdouble x1;
+ gdouble y1;
+ gdouble x2;
+ gdouble y2;
+} PopplerRectangle;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerSelectionStyle">
+<a name="PopplerSelectionStyle"></a><h3>enum PopplerSelectionStyle</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_SELECTION_GLYPH,
+ POPPLER_SELECTION_WORD,
+ POPPLER_SELECTION_LINE
+} PopplerSelectionStyle;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerPageTransitionType">
+<a name="PopplerPageTransitionType"></a><h3>enum PopplerPageTransitionType</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_PAGE_TRANSITION_REPLACE,
+ POPPLER_PAGE_TRANSITION_SPLIT,
+ POPPLER_PAGE_TRANSITION_BLINDS,
+ POPPLER_PAGE_TRANSITION_BOX,
+ POPPLER_PAGE_TRANSITION_WIPE,
+ POPPLER_PAGE_TRANSITION_DISSOLVE,
+ POPPLER_PAGE_TRANSITION_GLITTER,
+ POPPLER_PAGE_TRANSITION_FLY,
+ POPPLER_PAGE_TRANSITION_PUSH,
+ POPPLER_PAGE_TRANSITION_COVER,
+ POPPLER_PAGE_TRANSITION_UNCOVER,
+ POPPLER_PAGE_TRANSITION_FADE
+} PopplerPageTransitionType;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerPageTransitionAlignment">
+<a name="PopplerPageTransitionAlignment"></a><h3>enum PopplerPageTransitionAlignment</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_PAGE_TRANSITION_HORIZONTAL,
+ POPPLER_PAGE_TRANSITION_VERTICAL
+} PopplerPageTransitionAlignment;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerPageTransitionDirection">
+<a name="PopplerPageTransitionDirection"></a><h3>enum PopplerPageTransitionDirection</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_PAGE_TRANSITION_INWARD,
+ POPPLER_PAGE_TRANSITION_OUTWARD
+} PopplerPageTransitionDirection;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerLinkMapping">
+<a name="PopplerLinkMapping"></a><h3>PopplerLinkMapping</h3>
+<pre class="programlisting">typedef struct {
+ PopplerRectangle area;
+ PopplerAction *action;
+} PopplerLinkMapping;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerPage">
+<a name="PopplerPage-struct"></a><h3>PopplerPage</h3>
+<pre class="programlisting">typedef struct _PopplerPage PopplerPage;</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerFontInfo">
+<a name="PopplerFontInfo"></a><h3>PopplerFontInfo</h3>
+<pre class="programlisting">typedef struct {
+ GObject parent_instance;
+ PopplerDocument *document;
+ FontInfoScanner *scanner;
+} PopplerFontInfo;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="PopplerPSFile">
+<a name="PopplerPSFile"></a><h3>PopplerPSFile</h3>
+<pre class="programlisting">typedef struct {
+ GObject parent_instance;
+
+ PopplerDocument *document;
+ PSOutputDev *out;
+ char *filename;
+ int first_page;
+ int last_page;
+ double paper_width;
+ double paper_height;
+ gboolean duplex;
+} PopplerPSFile;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="enum PopplerBackend">
+<a name="PopplerBackend"></a><h3>enum PopplerBackend</h3>
+<pre class="programlisting">typedef enum
+{
+ POPPLER_BACKEND_UNKNOWN,
+ POPPLER_BACKEND_SPLASH,
+ POPPLER_BACKEND_CAIRO
+} PopplerBackend;
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2" title="poppler_get_backend ()">
+<a name="poppler-get-backend"></a><h3>poppler_get_backend ()</h3>
+<pre class="programlisting"><a class="link" href="poppler-poppler.html#PopplerBackend" title="enum PopplerBackend">PopplerBackend</a> poppler_get_backend (void);</pre>
+<p>
+Returns the backend compiled into the poppler library.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> The backend used by poppler
+</td>
+</tr></tbody>
+</table></div>
+</div>
+<hr>
+<div class="refsect2" title="poppler_get_version ()">
+<a name="poppler-get-version"></a><h3>poppler_get_version ()</h3>
+<pre class="programlisting">const char * poppler_get_version (void);</pre>
+<p>
+Returns the version of poppler in use. This result is not to be freed.</p>
+<p>
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody><tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
+<td> the version of poppler.
+</td>
+</tr></tbody>
+</table></div>
+</div>
+</div>
+<div class="refsect1" title="Property Details">
+<a name="poppler-poppler.property-details"></a><h2>Property Details</h2>
+<div class="refsect2" title='The "author" property'>
+<a name="PopplerDocument--author"></a><h3>The <code class="literal">"author"</code> property</h3>
+<pre class="programlisting"> "author" gchar* : Read</pre>
+<p>The author of the document.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "creation-date" property'>
+<a name="PopplerDocument--creation-date"></a><h3>The <code class="literal">"creation-date"</code> property</h3>
+<pre class="programlisting"> "creation-date" gint : Read</pre>
+<p>The date and time the document was created.</p>
+<p>Allowed values: &gt;= 0</p>
+<p>Default value: 0</p>
+</div>
+<hr>
+<div class="refsect2" title='The "creator" property'>
+<a name="PopplerDocument--creator"></a><h3>The <code class="literal">"creator"</code> property</h3>
+<pre class="programlisting"> "creator" gchar* : Read</pre>
+<p>The software that created the document.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "format" property'>
+<a name="PopplerDocument--format"></a><h3>The <code class="literal">"format"</code> property</h3>
+<pre class="programlisting"> "format" gchar* : Read</pre>
+<p>The PDF version of the document.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "format-major" property'>
+<a name="PopplerDocument--format-major"></a><h3>The <code class="literal">"format-major"</code> property</h3>
+<pre class="programlisting"> "format-major" guint : Read</pre>
+<p>The PDF major version number of the document.</p>
+<p>Default value: 1</p>
+</div>
+<hr>
+<div class="refsect2" title='The "format-minor" property'>
+<a name="PopplerDocument--format-minor"></a><h3>The <code class="literal">"format-minor"</code> property</h3>
+<pre class="programlisting"> "format-minor" guint : Read</pre>
+<p>The PDF minor version number of the document.</p>
+<p>Default value: 0</p>
+</div>
+<hr>
+<div class="refsect2" title='The "keywords" property'>
+<a name="PopplerDocument--keywords"></a><h3>The <code class="literal">"keywords"</code> property</h3>
+<pre class="programlisting"> "keywords" gchar* : Read</pre>
+<p>Keywords.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "linearized" property'>
+<a name="PopplerDocument--linearized"></a><h3>The <code class="literal">"linearized"</code> property</h3>
+<pre class="programlisting"> "linearized" gchar* : Read</pre>
+<p>Is the document optimized for web viewing?.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "metadata" property'>
+<a name="PopplerDocument--metadata"></a><h3>The <code class="literal">"metadata"</code> property</h3>
+<pre class="programlisting"> "metadata" gchar* : Read</pre>
+<p>Embedded XML metadata.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "mod-date" property'>
+<a name="PopplerDocument--mod-date"></a><h3>The <code class="literal">"mod-date"</code> property</h3>
+<pre class="programlisting"> "mod-date" gint : Read</pre>
+<p>The date and time the document was modified.</p>
+<p>Allowed values: &gt;= 0</p>
+<p>Default value: 0</p>
+</div>
+<hr>
+<div class="refsect2" title='The "page-layout" property'>
+<a name="PopplerDocument--page-layout"></a><h3>The <code class="literal">"page-layout"</code> property</h3>
+<pre class="programlisting"> "page-layout" <a class="link" href="poppler-poppler-document.html#PopplerPageLayout" title="enum PopplerPageLayout">PopplerPageLayout</a> : Read</pre>
+<p>Initial Page Layout.</p>
+<p>Default value: POPPLER_PAGE_LAYOUT_UNSET</p>
+</div>
+<hr>
+<div class="refsect2" title='The "page-mode" property'>
+<a name="PopplerDocument--page-mode"></a><h3>The <code class="literal">"page-mode"</code> property</h3>
+<pre class="programlisting"> "page-mode" <a class="link" href="poppler-poppler-document.html#PopplerPageMode" title="enum PopplerPageMode">PopplerPageMode</a> : Read</pre>
+<p>Page Mode.</p>
+<p>Default value: POPPLER_PAGE_MODE_UNSET</p>
+</div>
+<hr>
+<div class="refsect2" title='The "permissions" property'>
+<a name="PopplerDocument--permissions"></a><h3>The <code class="literal">"permissions"</code> property</h3>
+<pre class="programlisting"> "permissions" <a class="link" href="poppler-poppler-document.html#PopplerPermissions" title="enum PopplerPermissions">PopplerPermissions</a> : Read</pre>
+<p>Permissions.</p>
+<p>Default value: POPPLER_PERMISSIONS_OK_TO_PRINT|POPPLER_PERMISSIONS_OK_TO_MODIFY|POPPLER_PERMISSIONS_OK_TO_COPY|POPPLER_PERMISSIONS_OK_TO_ADD_NOTES|POPPLER_PERMISSIONS_OK_TO_FILL_FORM</p>
+</div>
+<hr>
+<div class="refsect2" title='The "producer" property'>
+<a name="PopplerDocument--producer"></a><h3>The <code class="literal">"producer"</code> property</h3>
+<pre class="programlisting"> "producer" gchar* : Read</pre>
+<p>The software that converted the document.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "subject" property'>
+<a name="PopplerDocument--subject"></a><h3>The <code class="literal">"subject"</code> property</h3>
+<pre class="programlisting"> "subject" gchar* : Read</pre>
+<p>Subjects the document touches.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "title" property'>
+<a name="PopplerDocument--title"></a><h3>The <code class="literal">"title"</code> property</h3>
+<pre class="programlisting"> "title" gchar* : Read</pre>
+<p>The title of the document.</p>
+<p>Default value: NULL</p>
+</div>
+<hr>
+<div class="refsect2" title='The "viewer-preferences" property'>
+<a name="PopplerDocument--viewer-preferences"></a><h3>The <code class="literal">"viewer-preferences"</code> property</h3>
+<pre class="programlisting"> "viewer-preferences" <a class="link" href="poppler-poppler-document.html#PopplerViewerPreferences" title="enum PopplerViewerPreferences">PopplerViewerPreferences</a> : Read</pre>
+<p>Viewer Preferences.</p>
+</div>
+<hr>
+<div class="refsect2" title='The "label" property'>
+<a name="PopplerPage--label"></a><h3>The <code class="literal">"label"</code> property</h3>
+<pre class="programlisting"> "label" gchar* : Read</pre>
+<p>The label of the page.</p>
+<p>Default value: NULL</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>
+ Generated by GTK-Doc V1.11</div>
+</body>
+</html>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp
new file mode 100644
index 00000000000..352257c08a1
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp
@@ -0,0 +1,281 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
+<book xmlns="http://www.devhelp.net/book" title="Poppler Reference Manual" link="index.html" author="" name="poppler">
+ <chapters>
+ <sub name="Poppler" link="ch01.html">
+ <sub name="poppler" link="poppler-poppler.html"/>
+ <sub name="PopplerDocument" link="poppler-poppler-document.html"/>
+ <sub name="PopplerPage" link="poppler-poppler-page.html"/>
+ <sub name="PopplerAction" link="poppler-poppler-action.html"/>
+ <sub name="PopplerAttachment" link="poppler-poppler-attachment.html"/>
+ <sub name="PopplerFormField" link="poppler-poppler-form-field.html"/>
+ <sub name="poppler-enums" link="poppler-poppler-enums.html"/>
+ <sub name="PopplerAnnot" link="poppler-poppler-annot.html"/>
+ <sub name="PopplerLayer" link="poppler-poppler-layer.html"/>
+ <sub name="Version and Features Information" link="poppler-poppler-features.html"/>
+ </sub>
+ </chapters>
+ <functions>
+ <function name="poppler_error_quark ()" link="poppler-poppler.html#poppler-error-quark"/>
+ <function name="POPPLER_ERROR" link="poppler-poppler.html#POPPLER-ERROR--CAPS"/>
+ <function name="enum PopplerError" link="poppler-poppler.html#PopplerError"/>
+ <function name="enum PopplerOrientation" link="poppler-poppler.html#PopplerOrientation"/>
+ <function name="PopplerDocument" link="poppler-poppler.html#PopplerDocument-struct"/>
+ <function name="PopplerIndexIter" link="poppler-poppler.html#PopplerIndexIter"/>
+ <function name="PopplerFontsIter" link="poppler-poppler.html#PopplerFontsIter"/>
+ <function name="PopplerRectangle" link="poppler-poppler.html#PopplerRectangle"/>
+ <function name="enum PopplerSelectionStyle" link="poppler-poppler.html#PopplerSelectionStyle"/>
+ <function name="enum PopplerPageTransitionType" link="poppler-poppler.html#PopplerPageTransitionType"/>
+ <function name="enum PopplerPageTransitionAlignment" link="poppler-poppler.html#PopplerPageTransitionAlignment"/>
+ <function name="enum PopplerPageTransitionDirection" link="poppler-poppler.html#PopplerPageTransitionDirection"/>
+ <function name="PopplerLinkMapping" link="poppler-poppler.html#PopplerLinkMapping"/>
+ <function name="PopplerPage" link="poppler-poppler.html#PopplerPage-struct"/>
+ <function name="PopplerFontInfo" link="poppler-poppler.html#PopplerFontInfo"/>
+ <function name="PopplerPSFile" link="poppler-poppler.html#PopplerPSFile"/>
+ <function name="enum PopplerBackend" link="poppler-poppler.html#PopplerBackend"/>
+ <function name="poppler_get_backend ()" link="poppler-poppler.html#poppler-get-backend"/>
+ <function name="poppler_get_version ()" link="poppler-poppler.html#poppler-get-version"/>
+ <function name="The &quot;author&quot; property" link="poppler-poppler.html#PopplerDocument--author"/>
+ <function name="The &quot;creation-date&quot; property" link="poppler-poppler.html#PopplerDocument--creation-date"/>
+ <function name="The &quot;creator&quot; property" link="poppler-poppler.html#PopplerDocument--creator"/>
+ <function name="The &quot;format&quot; property" link="poppler-poppler.html#PopplerDocument--format"/>
+ <function name="The &quot;format-major&quot; property" link="poppler-poppler.html#PopplerDocument--format-major"/>
+ <function name="The &quot;format-minor&quot; property" link="poppler-poppler.html#PopplerDocument--format-minor"/>
+ <function name="The &quot;keywords&quot; property" link="poppler-poppler.html#PopplerDocument--keywords"/>
+ <function name="The &quot;linearized&quot; property" link="poppler-poppler.html#PopplerDocument--linearized"/>
+ <function name="The &quot;metadata&quot; property" link="poppler-poppler.html#PopplerDocument--metadata"/>
+ <function name="The &quot;mod-date&quot; property" link="poppler-poppler.html#PopplerDocument--mod-date"/>
+ <function name="The &quot;page-layout&quot; property" link="poppler-poppler.html#PopplerDocument--page-layout"/>
+ <function name="The &quot;page-mode&quot; property" link="poppler-poppler.html#PopplerDocument--page-mode"/>
+ <function name="The &quot;permissions&quot; property" link="poppler-poppler.html#PopplerDocument--permissions"/>
+ <function name="The &quot;producer&quot; property" link="poppler-poppler.html#PopplerDocument--producer"/>
+ <function name="The &quot;subject&quot; property" link="poppler-poppler.html#PopplerDocument--subject"/>
+ <function name="The &quot;title&quot; property" link="poppler-poppler.html#PopplerDocument--title"/>
+ <function name="The &quot;viewer-preferences&quot; property" link="poppler-poppler.html#PopplerDocument--viewer-preferences"/>
+ <function name="The &quot;label&quot; property" link="poppler-poppler.html#PopplerPage--label"/>
+ <function name="enum PopplerPageLayout" link="poppler-poppler-document.html#PopplerPageLayout"/>
+ <function name="enum PopplerPageMode" link="poppler-poppler-document.html#PopplerPageMode"/>
+ <function name="enum PopplerFontType" link="poppler-poppler-document.html#PopplerFontType"/>
+ <function name="enum PopplerViewerPreferences" link="poppler-poppler-document.html#PopplerViewerPreferences"/>
+ <function name="enum PopplerPermissions" link="poppler-poppler-document.html#PopplerPermissions"/>
+ <function name="poppler_document_new_from_file ()" link="poppler-poppler-document.html#poppler-document-new-from-file"/>
+ <function name="poppler_document_new_from_data ()" link="poppler-poppler-document.html#poppler-document-new-from-data"/>
+ <function name="poppler_document_save ()" link="poppler-poppler-document.html#poppler-document-save"/>
+ <function name="poppler_document_get_n_pages ()" link="poppler-poppler-document.html#poppler-document-get-n-pages"/>
+ <function name="poppler_document_get_page ()" link="poppler-poppler-document.html#poppler-document-get-page"/>
+ <function name="poppler_document_get_page_by_label ()" link="poppler-poppler-document.html#poppler-document-get-page-by-label"/>
+ <function name="poppler_document_find_dest ()" link="poppler-poppler-document.html#poppler-document-find-dest"/>
+ <function name="poppler_document_has_attachments ()" link="poppler-poppler-document.html#poppler-document-has-attachments"/>
+ <function name="poppler_document_get_attachments ()" link="poppler-poppler-document.html#poppler-document-get-attachments"/>
+ <function name="poppler_document_get_form_field ()" link="poppler-poppler-document.html#poppler-document-get-form-field"/>
+ <function name="poppler_index_iter_get_type ()" link="poppler-poppler-document.html#poppler-index-iter-get-type"/>
+ <function name="poppler_index_iter_new ()" link="poppler-poppler-document.html#poppler-index-iter-new"/>
+ <function name="poppler_index_iter_copy ()" link="poppler-poppler-document.html#poppler-index-iter-copy"/>
+ <function name="poppler_index_iter_free ()" link="poppler-poppler-document.html#poppler-index-iter-free"/>
+ <function name="poppler_index_iter_get_child ()" link="poppler-poppler-document.html#poppler-index-iter-get-child"/>
+ <function name="poppler_index_iter_is_open ()" link="poppler-poppler-document.html#poppler-index-iter-is-open"/>
+ <function name="poppler_index_iter_get_action ()" link="poppler-poppler-document.html#poppler-index-iter-get-action"/>
+ <function name="poppler_index_iter_next ()" link="poppler-poppler-document.html#poppler-index-iter-next"/>
+ <function name="poppler_font_info_new ()" link="poppler-poppler-document.html#poppler-font-info-new"/>
+ <function name="poppler_font_info_scan ()" link="poppler-poppler-document.html#poppler-font-info-scan"/>
+ <function name="poppler_font_info_free ()" link="poppler-poppler-document.html#poppler-font-info-free"/>
+ <function name="poppler_fonts_iter_get_type ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-type"/>
+ <function name="poppler_fonts_iter_copy ()" link="poppler-poppler-document.html#poppler-fonts-iter-copy"/>
+ <function name="poppler_fonts_iter_free ()" link="poppler-poppler-document.html#poppler-fonts-iter-free"/>
+ <function name="poppler_fonts_iter_get_name ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-name"/>
+ <function name="poppler_fonts_iter_get_full_name ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-full-name"/>
+ <function name="poppler_fonts_iter_get_font_type ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-font-type"/>
+ <function name="poppler_fonts_iter_is_embedded ()" link="poppler-poppler-document.html#poppler-fonts-iter-is-embedded"/>
+ <function name="poppler_fonts_iter_is_subset ()" link="poppler-poppler-document.html#poppler-fonts-iter-is-subset"/>
+ <function name="poppler_fonts_iter_next ()" link="poppler-poppler-document.html#poppler-fonts-iter-next"/>
+ <function name="poppler_ps_file_new ()" link="poppler-poppler-document.html#poppler-ps-file-new"/>
+ <function name="poppler_ps_file_set_paper_size ()" link="poppler-poppler-document.html#poppler-ps-file-set-paper-size"/>
+ <function name="poppler_ps_file_set_duplex ()" link="poppler-poppler-document.html#poppler-ps-file-set-duplex"/>
+ <function name="poppler_ps_file_free ()" link="poppler-poppler-document.html#poppler-ps-file-free"/>
+ <function name="poppler_page_render ()" link="poppler-poppler-page.html#poppler-page-render"/>
+ <function name="poppler_page_render_to_pixbuf ()" link="poppler-poppler-page.html#poppler-page-render-to-pixbuf"/>
+ <function name="poppler_page_get_size ()" link="poppler-poppler-page.html#poppler-page-get-size"/>
+ <function name="poppler_page_get_index ()" link="poppler-poppler-page.html#poppler-page-get-index"/>
+ <function name="poppler_page_get_thumbnail ()" link="poppler-poppler-page.html#poppler-page-get-thumbnail"/>
+ <function name="poppler_page_get_thumbnail_size ()" link="poppler-poppler-page.html#poppler-page-get-thumbnail-size"/>
+ <function name="poppler_page_render_to_ps ()" link="poppler-poppler-page.html#poppler-page-render-to-ps"/>
+ <function name="poppler_page_find_text ()" link="poppler-poppler-page.html#poppler-page-find-text"/>
+ <function name="poppler_page_get_text ()" link="poppler-poppler-page.html#poppler-page-get-text"/>
+ <function name="poppler_page_get_duration ()" link="poppler-poppler-page.html#poppler-page-get-duration"/>
+ <function name="poppler_page_get_transition ()" link="poppler-poppler-page.html#poppler-page-get-transition"/>
+ <function name="poppler_page_get_link_mapping ()" link="poppler-poppler-page.html#poppler-page-get-link-mapping"/>
+ <function name="poppler_page_free_link_mapping ()" link="poppler-poppler-page.html#poppler-page-free-link-mapping"/>
+ <function name="poppler_page_get_image_mapping ()" link="poppler-poppler-page.html#poppler-page-get-image-mapping"/>
+ <function name="poppler_page_free_image_mapping ()" link="poppler-poppler-page.html#poppler-page-free-image-mapping"/>
+ <function name="poppler_page_get_form_field_mapping ()" link="poppler-poppler-page.html#poppler-page-get-form-field-mapping"/>
+ <function name="poppler_page_free_form_field_mapping ()" link="poppler-poppler-page.html#poppler-page-free-form-field-mapping"/>
+ <function name="poppler_page_get_selection_region ()" link="poppler-poppler-page.html#poppler-page-get-selection-region"/>
+ <function name="poppler_page_render_selection ()" link="poppler-poppler-page.html#poppler-page-render-selection"/>
+ <function name="poppler_page_render_selection_to_pixbuf ()" link="poppler-poppler-page.html#poppler-page-render-selection-to-pixbuf"/>
+ <function name="POPPLER_TYPE_RECTANGLE" link="poppler-poppler-page.html#POPPLER-TYPE-RECTANGLE--CAPS"/>
+ <function name="PopplerRectangle" link="poppler-poppler-page.html#PopplerRectangle"/>
+ <function name="poppler_rectangle_get_type ()" link="poppler-poppler-page.html#poppler-rectangle-get-type"/>
+ <function name="poppler_rectangle_new ()" link="poppler-poppler-page.html#poppler-rectangle-new"/>
+ <function name="poppler_rectangle_copy ()" link="poppler-poppler-page.html#poppler-rectangle-copy"/>
+ <function name="poppler_rectangle_free ()" link="poppler-poppler-page.html#poppler-rectangle-free"/>
+ <function name="POPPLER_TYPE_PAGE_TRANSITION" link="poppler-poppler-page.html#POPPLER-TYPE-PAGE-TRANSITION--CAPS"/>
+ <function name="PopplerPageTransition" link="poppler-poppler-page.html#PopplerPageTransition"/>
+ <function name="poppler_page_transition_get_type ()" link="poppler-poppler-page.html#poppler-page-transition-get-type"/>
+ <function name="poppler_page_transition_new ()" link="poppler-poppler-page.html#poppler-page-transition-new"/>
+ <function name="poppler_page_transition_copy ()" link="poppler-poppler-page.html#poppler-page-transition-copy"/>
+ <function name="poppler_page_transition_free ()" link="poppler-poppler-page.html#poppler-page-transition-free"/>
+ <function name="POPPLER_TYPE_LINK_MAPPING" link="poppler-poppler-page.html#POPPLER-TYPE-LINK-MAPPING--CAPS"/>
+ <function name="PopplerLinkMapping" link="poppler-poppler-page.html#PopplerLinkMapping"/>
+ <function name="poppler_link_mapping_get_type ()" link="poppler-poppler-page.html#poppler-link-mapping-get-type"/>
+ <function name="poppler_link_mapping_new ()" link="poppler-poppler-page.html#poppler-link-mapping-new"/>
+ <function name="poppler_link_mapping_copy ()" link="poppler-poppler-page.html#poppler-link-mapping-copy"/>
+ <function name="poppler_link_mapping_free ()" link="poppler-poppler-page.html#poppler-link-mapping-free"/>
+ <function name="POPPLER_TYPE_IMAGE_MAPPING" link="poppler-poppler-page.html#POPPLER-TYPE-IMAGE-MAPPING--CAPS"/>
+ <function name="PopplerImageMapping" link="poppler-poppler-page.html#PopplerImageMapping"/>
+ <function name="poppler_image_mapping_get_type ()" link="poppler-poppler-page.html#poppler-image-mapping-get-type"/>
+ <function name="poppler_image_mapping_new ()" link="poppler-poppler-page.html#poppler-image-mapping-new"/>
+ <function name="poppler_image_mapping_copy ()" link="poppler-poppler-page.html#poppler-image-mapping-copy"/>
+ <function name="poppler_image_mapping_free ()" link="poppler-poppler-page.html#poppler-image-mapping-free"/>
+ <function name="POPPLER_TYPE_FORM_FIELD_MAPPING" link="poppler-poppler-page.html#POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS"/>
+ <function name="PopplerFormFieldMapping" link="poppler-poppler-page.html#PopplerFormFieldMapping"/>
+ <function name="poppler_form_field_mapping_get_type ()" link="poppler-poppler-page.html#poppler-form-field-mapping-get-type"/>
+ <function name="poppler_form_field_mapping_new ()" link="poppler-poppler-page.html#poppler-form-field-mapping-new"/>
+ <function name="poppler_form_field_mapping_copy ()" link="poppler-poppler-page.html#poppler-form-field-mapping-copy"/>
+ <function name="poppler_form_field_mapping_free ()" link="poppler-poppler-page.html#poppler-form-field-mapping-free"/>
+ <function name="enum PopplerActionType" link="poppler-poppler-action.html#PopplerActionType"/>
+ <function name="enum PopplerDestType" link="poppler-poppler-action.html#PopplerDestType"/>
+ <function name="PopplerActionAny" link="poppler-poppler-action.html#PopplerActionAny"/>
+ <function name="PopplerActionGotoDest" link="poppler-poppler-action.html#PopplerActionGotoDest"/>
+ <function name="PopplerActionGotoRemote" link="poppler-poppler-action.html#PopplerActionGotoRemote"/>
+ <function name="PopplerActionLaunch" link="poppler-poppler-action.html#PopplerActionLaunch"/>
+ <function name="PopplerActionUri" link="poppler-poppler-action.html#PopplerActionUri"/>
+ <function name="PopplerActionNamed" link="poppler-poppler-action.html#PopplerActionNamed"/>
+ <function name="PopplerActionMovie" link="poppler-poppler-action.html#PopplerActionMovie"/>
+ <function name="PopplerDest" link="poppler-poppler-action.html#PopplerDest"/>
+ <function name="union PopplerAction" link="poppler-poppler-action.html#PopplerAction"/>
+ <function name="POPPLER_TYPE_ACTION" link="poppler-poppler-action.html#POPPLER-TYPE-ACTION--CAPS"/>
+ <function name="POPPLER_ACTION()" link="poppler-poppler-action.html#POPPLER-ACTION--CAPS"/>
+ <function name="poppler_action_get_type ()" link="poppler-poppler-action.html#poppler-action-get-type"/>
+ <function name="poppler_action_copy ()" link="poppler-poppler-action.html#poppler-action-copy"/>
+ <function name="poppler_action_free ()" link="poppler-poppler-action.html#poppler-action-free"/>
+ <function name="POPPLER_TYPE_DEST" link="poppler-poppler-action.html#POPPLER-TYPE-DEST--CAPS"/>
+ <function name="poppler_dest_get_type ()" link="poppler-poppler-action.html#poppler-dest-get-type"/>
+ <function name="poppler_dest_copy ()" link="poppler-poppler-action.html#poppler-dest-copy"/>
+ <function name="poppler_dest_free ()" link="poppler-poppler-action.html#poppler-dest-free"/>
+ <function name="PopplerAttachment" link="poppler-poppler-attachment.html#PopplerAttachment-struct"/>
+ <function name="poppler_attachment_save ()" link="poppler-poppler-attachment.html#poppler-attachment-save"/>
+ <function name="poppler_attachment_save_to_callback ()" link="poppler-poppler-attachment.html#poppler-attachment-save-to-callback"/>
+ <function name="PopplerAttachmentSaveFunc ()" link="poppler-poppler-attachment.html#PopplerAttachmentSaveFunc"/>
+ <function name="PopplerFormField" link="poppler-poppler-form-field.html#PopplerFormField-struct"/>
+ <function name="enum PopplerFormButtonType" link="poppler-poppler-form-field.html#PopplerFormButtonType"/>
+ <function name="enum PopplerFormChoiceType" link="poppler-poppler-form-field.html#PopplerFormChoiceType"/>
+ <function name="enum PopplerFormFieldType" link="poppler-poppler-form-field.html#PopplerFormFieldType"/>
+ <function name="enum PopplerFormTextType" link="poppler-poppler-form-field.html#PopplerFormTextType"/>
+ <function name="poppler_form_field_get_id ()" link="poppler-poppler-form-field.html#poppler-form-field-get-id"/>
+ <function name="poppler_form_field_get_field_type ()" link="poppler-poppler-form-field.html#poppler-form-field-get-field-type"/>
+ <function name="poppler_form_field_is_read_only ()" link="poppler-poppler-form-field.html#poppler-form-field-is-read-only"/>
+ <function name="poppler_form_field_get_font_size ()" link="poppler-poppler-form-field.html#poppler-form-field-get-font-size"/>
+ <function name="poppler_form_field_button_get_button_type ()" link="poppler-poppler-form-field.html#poppler-form-field-button-get-button-type"/>
+ <function name="poppler_form_field_button_get_state ()" link="poppler-poppler-form-field.html#poppler-form-field-button-get-state"/>
+ <function name="poppler_form_field_button_set_state ()" link="poppler-poppler-form-field.html#poppler-form-field-button-set-state"/>
+ <function name="poppler_form_field_choice_can_select_multiple ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-can-select-multiple"/>
+ <function name="poppler_form_field_choice_commit_on_change ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-commit-on-change"/>
+ <function name="poppler_form_field_choice_do_spell_check ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-do-spell-check"/>
+ <function name="poppler_form_field_choice_get_choice_type ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-choice-type"/>
+ <function name="poppler_form_field_choice_get_item ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-item"/>
+ <function name="poppler_form_field_choice_get_n_items ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-n-items"/>
+ <function name="poppler_form_field_choice_get_text ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-text"/>
+ <function name="poppler_form_field_choice_is_editable ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-is-editable"/>
+ <function name="poppler_form_field_choice_is_item_selected ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-is-item-selected"/>
+ <function name="poppler_form_field_choice_select_item ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-select-item"/>
+ <function name="poppler_form_field_choice_set_text ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-set-text"/>
+ <function name="poppler_form_field_choice_toggle_item ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-toggle-item"/>
+ <function name="poppler_form_field_choice_unselect_all ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-unselect-all"/>
+ <function name="poppler_form_field_text_do_scroll ()" link="poppler-poppler-form-field.html#poppler-form-field-text-do-scroll"/>
+ <function name="poppler_form_field_text_do_spell_check ()" link="poppler-poppler-form-field.html#poppler-form-field-text-do-spell-check"/>
+ <function name="poppler_form_field_text_get_max_len ()" link="poppler-poppler-form-field.html#poppler-form-field-text-get-max-len"/>
+ <function name="poppler_form_field_text_get_text ()" link="poppler-poppler-form-field.html#poppler-form-field-text-get-text"/>
+ <function name="poppler_form_field_text_get_text_type ()" link="poppler-poppler-form-field.html#poppler-form-field-text-get-text-type"/>
+ <function name="poppler_form_field_text_is_password ()" link="poppler-poppler-form-field.html#poppler-form-field-text-is-password"/>
+ <function name="poppler_form_field_text_is_rich_text ()" link="poppler-poppler-form-field.html#poppler-form-field-text-is-rich-text"/>
+ <function name="poppler_form_field_text_set_text ()" link="poppler-poppler-form-field.html#poppler-form-field-text-set-text"/>
+ <function name="POPPLER_TYPE_ACTION_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-ACTION-TYPE--CAPS"/>
+ <function name="poppler_action_type_get_type ()" link="poppler-poppler-enums.html#poppler-action-type-get-type"/>
+ <function name="POPPLER_TYPE_DEST_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-DEST-TYPE--CAPS"/>
+ <function name="poppler_dest_type_get_type ()" link="poppler-poppler-enums.html#poppler-dest-type-get-type"/>
+ <function name="POPPLER_TYPE_PAGE_LAYOUT" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-LAYOUT--CAPS"/>
+ <function name="poppler_page_layout_get_type ()" link="poppler-poppler-enums.html#poppler-page-layout-get-type"/>
+ <function name="POPPLER_TYPE_PAGE_MODE" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-MODE--CAPS"/>
+ <function name="poppler_page_mode_get_type ()" link="poppler-poppler-enums.html#poppler-page-mode-get-type"/>
+ <function name="POPPLER_TYPE_FONT_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-FONT-TYPE--CAPS"/>
+ <function name="poppler_font_type_get_type ()" link="poppler-poppler-enums.html#poppler-font-type-get-type"/>
+ <function name="POPPLER_TYPE_VIEWER_PREFERENCES" link="poppler-poppler-enums.html#POPPLER-TYPE-VIEWER-PREFERENCES--CAPS"/>
+ <function name="poppler_viewer_preferences_get_type ()" link="poppler-poppler-enums.html#poppler-viewer-preferences-get-type"/>
+ <function name="POPPLER_TYPE_PERMISSIONS" link="poppler-poppler-enums.html#POPPLER-TYPE-PERMISSIONS--CAPS"/>
+ <function name="poppler_permissions_get_type ()" link="poppler-poppler-enums.html#poppler-permissions-get-type"/>
+ <function name="POPPLER_TYPE_SELECTION_STYLE" link="poppler-poppler-enums.html#POPPLER-TYPE-SELECTION-STYLE--CAPS"/>
+ <function name="poppler_selection_style_get_type ()" link="poppler-poppler-enums.html#poppler-selection-style-get-type"/>
+ <function name="POPPLER_TYPE_PAGE_TRANSITION_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS"/>
+ <function name="poppler_page_transition_type_get_type ()" link="poppler-poppler-enums.html#poppler-page-transition-type-get-type"/>
+ <function name="POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS"/>
+ <function name="poppler_page_transition_alignment_get_type ()" link="poppler-poppler-enums.html#poppler-page-transition-alignment-get-type"/>
+ <function name="POPPLER_TYPE_PAGE_TRANSITION_DIRECTION" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS"/>
+ <function name="poppler_page_transition_direction_get_type ()" link="poppler-poppler-enums.html#poppler-page-transition-direction-get-type"/>
+ <function name="POPPLER_TYPE_ERROR" link="poppler-poppler-enums.html#POPPLER-TYPE-ERROR--CAPS"/>
+ <function name="poppler_error_get_type ()" link="poppler-poppler-enums.html#poppler-error-get-type"/>
+ <function name="POPPLER_TYPE_ORIENTATION" link="poppler-poppler-enums.html#POPPLER-TYPE-ORIENTATION--CAPS"/>
+ <function name="poppler_orientation_get_type ()" link="poppler-poppler-enums.html#poppler-orientation-get-type"/>
+ <function name="POPPLER_TYPE_BACKEND" link="poppler-poppler-enums.html#POPPLER-TYPE-BACKEND--CAPS"/>
+ <function name="poppler_backend_get_type ()" link="poppler-poppler-enums.html#poppler-backend-get-type"/>
+ <function name="PopplerAnnot" link="poppler-poppler-annot.html#PopplerAnnot"/>
+ <function name="poppler_annot_callout_line_copy ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-copy"/>
+ <function name="poppler_annot_callout_line_free ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-free"/>
+ <function name="poppler_annot_callout_line_get_type ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-get-type"/>
+ <function name="poppler_annot_callout_line_new ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-new"/>
+ <function name="poppler_annot_external_data_type_get_type ()" link="poppler-poppler-annot.html#poppler-annot-external-data-type-get-type"/>
+ <function name="poppler_annot_flag_get_type ()" link="poppler-poppler-annot.html#poppler-annot-flag-get-type"/>
+ <function name="poppler_annot_free_text_get_callout_line ()" link="poppler-poppler-annot.html#poppler-annot-free-text-get-callout-line"/>
+ <function name="poppler_annot_free_text_get_quadding ()" link="poppler-poppler-annot.html#poppler-annot-free-text-get-quadding"/>
+ <function name="poppler_annot_free_text_get_type ()" link="poppler-poppler-annot.html#poppler-annot-free-text-get-type"/>
+ <function name="poppler_annot_free_text_quadding_get_type ()" link="poppler-poppler-annot.html#poppler-annot-free-text-quadding-get-type"/>
+ <function name="poppler_annot_get_annot_type ()" link="poppler-poppler-annot.html#poppler-annot-get-annot-type"/>
+ <function name="poppler_annot_get_color ()" link="poppler-poppler-annot.html#poppler-annot-get-color"/>
+ <function name="poppler_annot_get_contents ()" link="poppler-poppler-annot.html#poppler-annot-get-contents"/>
+ <function name="poppler_annot_get_flags ()" link="poppler-poppler-annot.html#poppler-annot-get-flags"/>
+ <function name="poppler_annot_get_modified ()" link="poppler-poppler-annot.html#poppler-annot-get-modified"/>
+ <function name="poppler_annot_get_name ()" link="poppler-poppler-annot.html#poppler-annot-get-name"/>
+ <function name="poppler_annot_get_type ()" link="poppler-poppler-annot.html#poppler-annot-get-type"/>
+ <function name="poppler_annot_mapping_copy ()" link="poppler-poppler-annot.html#poppler-annot-mapping-copy"/>
+ <function name="poppler_annot_mapping_free ()" link="poppler-poppler-annot.html#poppler-annot-mapping-free"/>
+ <function name="poppler_annot_mapping_get_type ()" link="poppler-poppler-annot.html#poppler-annot-mapping-get-type"/>
+ <function name="poppler_annot_mapping_new ()" link="poppler-poppler-annot.html#poppler-annot-mapping-new"/>
+ <function name="poppler_annot_markup_get_date ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-date"/>
+ <function name="poppler_annot_markup_get_external_data ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-external-data"/>
+ <function name="poppler_annot_markup_get_label ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-label"/>
+ <function name="poppler_annot_markup_get_opacity ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-opacity"/>
+ <function name="poppler_annot_markup_get_popup_is_open ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-popup-is-open"/>
+ <function name="poppler_annot_markup_get_reply_to ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-reply-to"/>
+ <function name="poppler_annot_markup_get_subject ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-subject"/>
+ <function name="poppler_annot_markup_get_type ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-type"/>
+ <function name="poppler_annot_markup_reply_type_get_type ()" link="poppler-poppler-annot.html#poppler-annot-markup-reply-type-get-type"/>
+ <function name="poppler_annot_text_get_icon ()" link="poppler-poppler-annot.html#poppler-annot-text-get-icon"/>
+ <function name="poppler_annot_text_get_is_open ()" link="poppler-poppler-annot.html#poppler-annot-text-get-is-open"/>
+ <function name="poppler_annot_text_get_state ()" link="poppler-poppler-annot.html#poppler-annot-text-get-state"/>
+ <function name="poppler_annot_text_get_type ()" link="poppler-poppler-annot.html#poppler-annot-text-get-type"/>
+ <function name="poppler_annot_text_state_get_type ()" link="poppler-poppler-annot.html#poppler-annot-text-state-get-type"/>
+ <function name="poppler_annot_type_get_type ()" link="poppler-poppler-annot.html#poppler-annot-type-get-type"/>
+ <function name="poppler_layer_get_type ()" link="poppler-poppler-layer.html#poppler-layer-get-type"/>
+ <function name="poppler_layer_get_title ()" link="poppler-poppler-layer.html#poppler-layer-get-title"/>
+ <function name="poppler_layer_is_visible ()" link="poppler-poppler-layer.html#poppler-layer-is-visible"/>
+ <function name="poppler_layer_show ()" link="poppler-poppler-layer.html#poppler-layer-show"/>
+ <function name="poppler_layer_hide ()" link="poppler-poppler-layer.html#poppler-layer-hide"/>
+ <function name="poppler_layer_is_parent ()" link="poppler-poppler-layer.html#poppler-layer-is-parent"/>
+ <function name="poppler_layer_get_radio_button_group_id ()" link="poppler-poppler-layer.html#poppler-layer-get-radio-button-group-id"/>
+ <function name="POPPLER_HAS_CAIRO" link="poppler-poppler-features.html#POPPLER-HAS-CAIRO--CAPS"/>
+ <function name="POPPLER_WITH_GDK" link="poppler-poppler-features.html#POPPLER-WITH-GDK--CAPS"/>
+ <function name="POPPLER_MAJOR_VERSION" link="poppler-poppler-features.html#POPPLER-MAJOR-VERSION--CAPS"/>
+ <function name="POPPLER_MINOR_VERSION" link="poppler-poppler-features.html#POPPLER-MINOR-VERSION--CAPS"/>
+ <function name="POPPLER_MICRO_VERSION" link="poppler-poppler-features.html#POPPLER-MICRO-VERSION--CAPS"/>
+ <function name="POPPLER_CHECK_VERSION()" link="poppler-poppler-features.html#POPPLER-CHECK-VERSION--CAPS"/>
+ </functions>
+</book>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp2 b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp2
new file mode 100644
index 00000000000..59f8efbb0a8
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/poppler.devhelp2
@@ -0,0 +1,281 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE book PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
+<book xmlns="http://www.devhelp.net/book" title="Poppler Reference Manual" link="index.html" author="" name="poppler" version="2" language="c">
+ <chapters>
+ <sub name="Poppler" link="ch01.html">
+ <sub name="poppler" link="poppler-poppler.html"/>
+ <sub name="PopplerDocument" link="poppler-poppler-document.html"/>
+ <sub name="PopplerPage" link="poppler-poppler-page.html"/>
+ <sub name="PopplerAction" link="poppler-poppler-action.html"/>
+ <sub name="PopplerAttachment" link="poppler-poppler-attachment.html"/>
+ <sub name="PopplerFormField" link="poppler-poppler-form-field.html"/>
+ <sub name="poppler-enums" link="poppler-poppler-enums.html"/>
+ <sub name="PopplerAnnot" link="poppler-poppler-annot.html"/>
+ <sub name="PopplerLayer" link="poppler-poppler-layer.html"/>
+ <sub name="Version and Features Information" link="poppler-poppler-features.html"/>
+ </sub>
+ </chapters>
+ <functions>
+ <keyword type="function" name="poppler_error_quark ()" link="poppler-poppler.html#poppler-error-quark"/>
+ <keyword type="macro" name="POPPLER_ERROR" link="poppler-poppler.html#POPPLER-ERROR--CAPS"/>
+ <keyword type="enum" name="enum PopplerError" link="poppler-poppler.html#PopplerError"/>
+ <keyword type="enum" name="enum PopplerOrientation" link="poppler-poppler.html#PopplerOrientation"/>
+ <keyword type="struct" name="PopplerDocument" link="poppler-poppler.html#PopplerDocument-struct"/>
+ <keyword type="struct" name="PopplerIndexIter" link="poppler-poppler.html#PopplerIndexIter"/>
+ <keyword type="struct" name="PopplerFontsIter" link="poppler-poppler.html#PopplerFontsIter"/>
+ <keyword type="struct" name="PopplerRectangle" link="poppler-poppler.html#PopplerRectangle"/>
+ <keyword type="enum" name="enum PopplerSelectionStyle" link="poppler-poppler.html#PopplerSelectionStyle"/>
+ <keyword type="enum" name="enum PopplerPageTransitionType" link="poppler-poppler.html#PopplerPageTransitionType"/>
+ <keyword type="enum" name="enum PopplerPageTransitionAlignment" link="poppler-poppler.html#PopplerPageTransitionAlignment"/>
+ <keyword type="enum" name="enum PopplerPageTransitionDirection" link="poppler-poppler.html#PopplerPageTransitionDirection"/>
+ <keyword type="struct" name="PopplerLinkMapping" link="poppler-poppler.html#PopplerLinkMapping"/>
+ <keyword type="struct" name="PopplerPage" link="poppler-poppler.html#PopplerPage-struct"/>
+ <keyword type="struct" name="PopplerFontInfo" link="poppler-poppler.html#PopplerFontInfo"/>
+ <keyword type="struct" name="PopplerPSFile" link="poppler-poppler.html#PopplerPSFile"/>
+ <keyword type="enum" name="enum PopplerBackend" link="poppler-poppler.html#PopplerBackend"/>
+ <keyword type="function" name="poppler_get_backend ()" link="poppler-poppler.html#poppler-get-backend"/>
+ <keyword type="function" name="poppler_get_version ()" link="poppler-poppler.html#poppler-get-version"/>
+ <keyword type="property" name="The &quot;author&quot; property" link="poppler-poppler.html#PopplerDocument--author"/>
+ <keyword type="property" name="The &quot;creation-date&quot; property" link="poppler-poppler.html#PopplerDocument--creation-date"/>
+ <keyword type="property" name="The &quot;creator&quot; property" link="poppler-poppler.html#PopplerDocument--creator"/>
+ <keyword type="property" name="The &quot;format&quot; property" link="poppler-poppler.html#PopplerDocument--format"/>
+ <keyword type="property" name="The &quot;format-major&quot; property" link="poppler-poppler.html#PopplerDocument--format-major"/>
+ <keyword type="property" name="The &quot;format-minor&quot; property" link="poppler-poppler.html#PopplerDocument--format-minor"/>
+ <keyword type="property" name="The &quot;keywords&quot; property" link="poppler-poppler.html#PopplerDocument--keywords"/>
+ <keyword type="property" name="The &quot;linearized&quot; property" link="poppler-poppler.html#PopplerDocument--linearized"/>
+ <keyword type="property" name="The &quot;metadata&quot; property" link="poppler-poppler.html#PopplerDocument--metadata"/>
+ <keyword type="property" name="The &quot;mod-date&quot; property" link="poppler-poppler.html#PopplerDocument--mod-date"/>
+ <keyword type="property" name="The &quot;page-layout&quot; property" link="poppler-poppler.html#PopplerDocument--page-layout"/>
+ <keyword type="property" name="The &quot;page-mode&quot; property" link="poppler-poppler.html#PopplerDocument--page-mode"/>
+ <keyword type="property" name="The &quot;permissions&quot; property" link="poppler-poppler.html#PopplerDocument--permissions"/>
+ <keyword type="property" name="The &quot;producer&quot; property" link="poppler-poppler.html#PopplerDocument--producer"/>
+ <keyword type="property" name="The &quot;subject&quot; property" link="poppler-poppler.html#PopplerDocument--subject"/>
+ <keyword type="property" name="The &quot;title&quot; property" link="poppler-poppler.html#PopplerDocument--title"/>
+ <keyword type="property" name="The &quot;viewer-preferences&quot; property" link="poppler-poppler.html#PopplerDocument--viewer-preferences"/>
+ <keyword type="property" name="The &quot;label&quot; property" link="poppler-poppler.html#PopplerPage--label"/>
+ <keyword type="enum" name="enum PopplerPageLayout" link="poppler-poppler-document.html#PopplerPageLayout"/>
+ <keyword type="enum" name="enum PopplerPageMode" link="poppler-poppler-document.html#PopplerPageMode"/>
+ <keyword type="enum" name="enum PopplerFontType" link="poppler-poppler-document.html#PopplerFontType"/>
+ <keyword type="enum" name="enum PopplerViewerPreferences" link="poppler-poppler-document.html#PopplerViewerPreferences"/>
+ <keyword type="enum" name="enum PopplerPermissions" link="poppler-poppler-document.html#PopplerPermissions"/>
+ <keyword type="function" name="poppler_document_new_from_file ()" link="poppler-poppler-document.html#poppler-document-new-from-file"/>
+ <keyword type="function" name="poppler_document_new_from_data ()" link="poppler-poppler-document.html#poppler-document-new-from-data"/>
+ <keyword type="function" name="poppler_document_save ()" link="poppler-poppler-document.html#poppler-document-save"/>
+ <keyword type="function" name="poppler_document_get_n_pages ()" link="poppler-poppler-document.html#poppler-document-get-n-pages"/>
+ <keyword type="function" name="poppler_document_get_page ()" link="poppler-poppler-document.html#poppler-document-get-page"/>
+ <keyword type="function" name="poppler_document_get_page_by_label ()" link="poppler-poppler-document.html#poppler-document-get-page-by-label"/>
+ <keyword type="function" name="poppler_document_find_dest ()" link="poppler-poppler-document.html#poppler-document-find-dest"/>
+ <keyword type="function" name="poppler_document_has_attachments ()" link="poppler-poppler-document.html#poppler-document-has-attachments"/>
+ <keyword type="function" name="poppler_document_get_attachments ()" link="poppler-poppler-document.html#poppler-document-get-attachments"/>
+ <keyword type="function" name="poppler_document_get_form_field ()" link="poppler-poppler-document.html#poppler-document-get-form-field"/>
+ <keyword type="function" name="poppler_index_iter_get_type ()" link="poppler-poppler-document.html#poppler-index-iter-get-type"/>
+ <keyword type="function" name="poppler_index_iter_new ()" link="poppler-poppler-document.html#poppler-index-iter-new"/>
+ <keyword type="function" name="poppler_index_iter_copy ()" link="poppler-poppler-document.html#poppler-index-iter-copy"/>
+ <keyword type="function" name="poppler_index_iter_free ()" link="poppler-poppler-document.html#poppler-index-iter-free"/>
+ <keyword type="function" name="poppler_index_iter_get_child ()" link="poppler-poppler-document.html#poppler-index-iter-get-child"/>
+ <keyword type="function" name="poppler_index_iter_is_open ()" link="poppler-poppler-document.html#poppler-index-iter-is-open"/>
+ <keyword type="function" name="poppler_index_iter_get_action ()" link="poppler-poppler-document.html#poppler-index-iter-get-action"/>
+ <keyword type="function" name="poppler_index_iter_next ()" link="poppler-poppler-document.html#poppler-index-iter-next"/>
+ <keyword type="function" name="poppler_font_info_new ()" link="poppler-poppler-document.html#poppler-font-info-new"/>
+ <keyword type="function" name="poppler_font_info_scan ()" link="poppler-poppler-document.html#poppler-font-info-scan"/>
+ <keyword type="function" name="poppler_font_info_free ()" link="poppler-poppler-document.html#poppler-font-info-free"/>
+ <keyword type="function" name="poppler_fonts_iter_get_type ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-type"/>
+ <keyword type="function" name="poppler_fonts_iter_copy ()" link="poppler-poppler-document.html#poppler-fonts-iter-copy"/>
+ <keyword type="function" name="poppler_fonts_iter_free ()" link="poppler-poppler-document.html#poppler-fonts-iter-free"/>
+ <keyword type="function" name="poppler_fonts_iter_get_name ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-name"/>
+ <keyword type="function" name="poppler_fonts_iter_get_full_name ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-full-name"/>
+ <keyword type="function" name="poppler_fonts_iter_get_font_type ()" link="poppler-poppler-document.html#poppler-fonts-iter-get-font-type"/>
+ <keyword type="function" name="poppler_fonts_iter_is_embedded ()" link="poppler-poppler-document.html#poppler-fonts-iter-is-embedded"/>
+ <keyword type="function" name="poppler_fonts_iter_is_subset ()" link="poppler-poppler-document.html#poppler-fonts-iter-is-subset"/>
+ <keyword type="function" name="poppler_fonts_iter_next ()" link="poppler-poppler-document.html#poppler-fonts-iter-next"/>
+ <keyword type="function" name="poppler_ps_file_new ()" link="poppler-poppler-document.html#poppler-ps-file-new"/>
+ <keyword type="function" name="poppler_ps_file_set_paper_size ()" link="poppler-poppler-document.html#poppler-ps-file-set-paper-size"/>
+ <keyword type="function" name="poppler_ps_file_set_duplex ()" link="poppler-poppler-document.html#poppler-ps-file-set-duplex"/>
+ <keyword type="function" name="poppler_ps_file_free ()" link="poppler-poppler-document.html#poppler-ps-file-free"/>
+ <keyword type="function" name="poppler_page_render ()" link="poppler-poppler-page.html#poppler-page-render"/>
+ <keyword type="function" name="poppler_page_render_to_pixbuf ()" link="poppler-poppler-page.html#poppler-page-render-to-pixbuf"/>
+ <keyword type="function" name="poppler_page_get_size ()" link="poppler-poppler-page.html#poppler-page-get-size"/>
+ <keyword type="function" name="poppler_page_get_index ()" link="poppler-poppler-page.html#poppler-page-get-index"/>
+ <keyword type="function" name="poppler_page_get_thumbnail ()" link="poppler-poppler-page.html#poppler-page-get-thumbnail"/>
+ <keyword type="function" name="poppler_page_get_thumbnail_size ()" link="poppler-poppler-page.html#poppler-page-get-thumbnail-size"/>
+ <keyword type="function" name="poppler_page_render_to_ps ()" link="poppler-poppler-page.html#poppler-page-render-to-ps"/>
+ <keyword type="function" name="poppler_page_find_text ()" link="poppler-poppler-page.html#poppler-page-find-text"/>
+ <keyword type="function" name="poppler_page_get_text ()" link="poppler-poppler-page.html#poppler-page-get-text"/>
+ <keyword type="function" name="poppler_page_get_duration ()" link="poppler-poppler-page.html#poppler-page-get-duration"/>
+ <keyword type="function" name="poppler_page_get_transition ()" link="poppler-poppler-page.html#poppler-page-get-transition"/>
+ <keyword type="function" name="poppler_page_get_link_mapping ()" link="poppler-poppler-page.html#poppler-page-get-link-mapping"/>
+ <keyword type="function" name="poppler_page_free_link_mapping ()" link="poppler-poppler-page.html#poppler-page-free-link-mapping"/>
+ <keyword type="function" name="poppler_page_get_image_mapping ()" link="poppler-poppler-page.html#poppler-page-get-image-mapping"/>
+ <keyword type="function" name="poppler_page_free_image_mapping ()" link="poppler-poppler-page.html#poppler-page-free-image-mapping"/>
+ <keyword type="function" name="poppler_page_get_form_field_mapping ()" link="poppler-poppler-page.html#poppler-page-get-form-field-mapping"/>
+ <keyword type="function" name="poppler_page_free_form_field_mapping ()" link="poppler-poppler-page.html#poppler-page-free-form-field-mapping"/>
+ <keyword type="function" name="poppler_page_get_selection_region ()" link="poppler-poppler-page.html#poppler-page-get-selection-region"/>
+ <keyword type="function" name="poppler_page_render_selection ()" link="poppler-poppler-page.html#poppler-page-render-selection"/>
+ <keyword type="function" name="poppler_page_render_selection_to_pixbuf ()" link="poppler-poppler-page.html#poppler-page-render-selection-to-pixbuf"/>
+ <keyword type="macro" name="POPPLER_TYPE_RECTANGLE" link="poppler-poppler-page.html#POPPLER-TYPE-RECTANGLE--CAPS"/>
+ <keyword type="struct" name="PopplerRectangle" link="poppler-poppler-page.html#PopplerRectangle"/>
+ <keyword type="function" name="poppler_rectangle_get_type ()" link="poppler-poppler-page.html#poppler-rectangle-get-type"/>
+ <keyword type="function" name="poppler_rectangle_new ()" link="poppler-poppler-page.html#poppler-rectangle-new"/>
+ <keyword type="function" name="poppler_rectangle_copy ()" link="poppler-poppler-page.html#poppler-rectangle-copy"/>
+ <keyword type="function" name="poppler_rectangle_free ()" link="poppler-poppler-page.html#poppler-rectangle-free"/>
+ <keyword type="macro" name="POPPLER_TYPE_PAGE_TRANSITION" link="poppler-poppler-page.html#POPPLER-TYPE-PAGE-TRANSITION--CAPS"/>
+ <keyword type="struct" name="PopplerPageTransition" link="poppler-poppler-page.html#PopplerPageTransition"/>
+ <keyword type="function" name="poppler_page_transition_get_type ()" link="poppler-poppler-page.html#poppler-page-transition-get-type"/>
+ <keyword type="function" name="poppler_page_transition_new ()" link="poppler-poppler-page.html#poppler-page-transition-new"/>
+ <keyword type="function" name="poppler_page_transition_copy ()" link="poppler-poppler-page.html#poppler-page-transition-copy"/>
+ <keyword type="function" name="poppler_page_transition_free ()" link="poppler-poppler-page.html#poppler-page-transition-free"/>
+ <keyword type="macro" name="POPPLER_TYPE_LINK_MAPPING" link="poppler-poppler-page.html#POPPLER-TYPE-LINK-MAPPING--CAPS"/>
+ <keyword type="struct" name="PopplerLinkMapping" link="poppler-poppler-page.html#PopplerLinkMapping"/>
+ <keyword type="function" name="poppler_link_mapping_get_type ()" link="poppler-poppler-page.html#poppler-link-mapping-get-type"/>
+ <keyword type="function" name="poppler_link_mapping_new ()" link="poppler-poppler-page.html#poppler-link-mapping-new"/>
+ <keyword type="function" name="poppler_link_mapping_copy ()" link="poppler-poppler-page.html#poppler-link-mapping-copy"/>
+ <keyword type="function" name="poppler_link_mapping_free ()" link="poppler-poppler-page.html#poppler-link-mapping-free"/>
+ <keyword type="macro" name="POPPLER_TYPE_IMAGE_MAPPING" link="poppler-poppler-page.html#POPPLER-TYPE-IMAGE-MAPPING--CAPS"/>
+ <keyword type="struct" name="PopplerImageMapping" link="poppler-poppler-page.html#PopplerImageMapping"/>
+ <keyword type="function" name="poppler_image_mapping_get_type ()" link="poppler-poppler-page.html#poppler-image-mapping-get-type"/>
+ <keyword type="function" name="poppler_image_mapping_new ()" link="poppler-poppler-page.html#poppler-image-mapping-new"/>
+ <keyword type="function" name="poppler_image_mapping_copy ()" link="poppler-poppler-page.html#poppler-image-mapping-copy"/>
+ <keyword type="function" name="poppler_image_mapping_free ()" link="poppler-poppler-page.html#poppler-image-mapping-free"/>
+ <keyword type="macro" name="POPPLER_TYPE_FORM_FIELD_MAPPING" link="poppler-poppler-page.html#POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS"/>
+ <keyword type="struct" name="PopplerFormFieldMapping" link="poppler-poppler-page.html#PopplerFormFieldMapping"/>
+ <keyword type="function" name="poppler_form_field_mapping_get_type ()" link="poppler-poppler-page.html#poppler-form-field-mapping-get-type"/>
+ <keyword type="function" name="poppler_form_field_mapping_new ()" link="poppler-poppler-page.html#poppler-form-field-mapping-new"/>
+ <keyword type="function" name="poppler_form_field_mapping_copy ()" link="poppler-poppler-page.html#poppler-form-field-mapping-copy"/>
+ <keyword type="function" name="poppler_form_field_mapping_free ()" link="poppler-poppler-page.html#poppler-form-field-mapping-free"/>
+ <keyword type="enum" name="enum PopplerActionType" link="poppler-poppler-action.html#PopplerActionType"/>
+ <keyword type="enum" name="enum PopplerDestType" link="poppler-poppler-action.html#PopplerDestType"/>
+ <keyword type="struct" name="PopplerActionAny" link="poppler-poppler-action.html#PopplerActionAny"/>
+ <keyword type="struct" name="PopplerActionGotoDest" link="poppler-poppler-action.html#PopplerActionGotoDest"/>
+ <keyword type="struct" name="PopplerActionGotoRemote" link="poppler-poppler-action.html#PopplerActionGotoRemote"/>
+ <keyword type="struct" name="PopplerActionLaunch" link="poppler-poppler-action.html#PopplerActionLaunch"/>
+ <keyword type="struct" name="PopplerActionUri" link="poppler-poppler-action.html#PopplerActionUri"/>
+ <keyword type="struct" name="PopplerActionNamed" link="poppler-poppler-action.html#PopplerActionNamed"/>
+ <keyword type="struct" name="PopplerActionMovie" link="poppler-poppler-action.html#PopplerActionMovie"/>
+ <keyword type="struct" name="PopplerDest" link="poppler-poppler-action.html#PopplerDest"/>
+ <keyword type="union" name="union PopplerAction" link="poppler-poppler-action.html#PopplerAction"/>
+ <keyword type="macro" name="POPPLER_TYPE_ACTION" link="poppler-poppler-action.html#POPPLER-TYPE-ACTION--CAPS"/>
+ <keyword type="macro" name="POPPLER_ACTION()" link="poppler-poppler-action.html#POPPLER-ACTION--CAPS"/>
+ <keyword type="function" name="poppler_action_get_type ()" link="poppler-poppler-action.html#poppler-action-get-type"/>
+ <keyword type="function" name="poppler_action_copy ()" link="poppler-poppler-action.html#poppler-action-copy"/>
+ <keyword type="function" name="poppler_action_free ()" link="poppler-poppler-action.html#poppler-action-free"/>
+ <keyword type="macro" name="POPPLER_TYPE_DEST" link="poppler-poppler-action.html#POPPLER-TYPE-DEST--CAPS"/>
+ <keyword type="function" name="poppler_dest_get_type ()" link="poppler-poppler-action.html#poppler-dest-get-type"/>
+ <keyword type="function" name="poppler_dest_copy ()" link="poppler-poppler-action.html#poppler-dest-copy"/>
+ <keyword type="function" name="poppler_dest_free ()" link="poppler-poppler-action.html#poppler-dest-free"/>
+ <keyword type="struct" name="PopplerAttachment" link="poppler-poppler-attachment.html#PopplerAttachment-struct"/>
+ <keyword type="function" name="poppler_attachment_save ()" link="poppler-poppler-attachment.html#poppler-attachment-save"/>
+ <keyword type="function" name="poppler_attachment_save_to_callback ()" link="poppler-poppler-attachment.html#poppler-attachment-save-to-callback"/>
+ <keyword type="function" name="PopplerAttachmentSaveFunc ()" link="poppler-poppler-attachment.html#PopplerAttachmentSaveFunc"/>
+ <keyword type="struct" name="PopplerFormField" link="poppler-poppler-form-field.html#PopplerFormField-struct"/>
+ <keyword type="enum" name="enum PopplerFormButtonType" link="poppler-poppler-form-field.html#PopplerFormButtonType"/>
+ <keyword type="enum" name="enum PopplerFormChoiceType" link="poppler-poppler-form-field.html#PopplerFormChoiceType"/>
+ <keyword type="enum" name="enum PopplerFormFieldType" link="poppler-poppler-form-field.html#PopplerFormFieldType"/>
+ <keyword type="enum" name="enum PopplerFormTextType" link="poppler-poppler-form-field.html#PopplerFormTextType"/>
+ <keyword type="function" name="poppler_form_field_get_id ()" link="poppler-poppler-form-field.html#poppler-form-field-get-id"/>
+ <keyword type="function" name="poppler_form_field_get_field_type ()" link="poppler-poppler-form-field.html#poppler-form-field-get-field-type"/>
+ <keyword type="function" name="poppler_form_field_is_read_only ()" link="poppler-poppler-form-field.html#poppler-form-field-is-read-only"/>
+ <keyword type="function" name="poppler_form_field_get_font_size ()" link="poppler-poppler-form-field.html#poppler-form-field-get-font-size"/>
+ <keyword type="function" name="poppler_form_field_button_get_button_type ()" link="poppler-poppler-form-field.html#poppler-form-field-button-get-button-type"/>
+ <keyword type="function" name="poppler_form_field_button_get_state ()" link="poppler-poppler-form-field.html#poppler-form-field-button-get-state"/>
+ <keyword type="function" name="poppler_form_field_button_set_state ()" link="poppler-poppler-form-field.html#poppler-form-field-button-set-state"/>
+ <keyword type="function" name="poppler_form_field_choice_can_select_multiple ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-can-select-multiple"/>
+ <keyword type="function" name="poppler_form_field_choice_commit_on_change ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-commit-on-change"/>
+ <keyword type="function" name="poppler_form_field_choice_do_spell_check ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-do-spell-check"/>
+ <keyword type="function" name="poppler_form_field_choice_get_choice_type ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-choice-type"/>
+ <keyword type="function" name="poppler_form_field_choice_get_item ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-item"/>
+ <keyword type="function" name="poppler_form_field_choice_get_n_items ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-n-items"/>
+ <keyword type="function" name="poppler_form_field_choice_get_text ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-get-text"/>
+ <keyword type="function" name="poppler_form_field_choice_is_editable ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-is-editable"/>
+ <keyword type="function" name="poppler_form_field_choice_is_item_selected ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-is-item-selected"/>
+ <keyword type="function" name="poppler_form_field_choice_select_item ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-select-item"/>
+ <keyword type="function" name="poppler_form_field_choice_set_text ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-set-text"/>
+ <keyword type="function" name="poppler_form_field_choice_toggle_item ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-toggle-item"/>
+ <keyword type="function" name="poppler_form_field_choice_unselect_all ()" link="poppler-poppler-form-field.html#poppler-form-field-choice-unselect-all"/>
+ <keyword type="function" name="poppler_form_field_text_do_scroll ()" link="poppler-poppler-form-field.html#poppler-form-field-text-do-scroll"/>
+ <keyword type="function" name="poppler_form_field_text_do_spell_check ()" link="poppler-poppler-form-field.html#poppler-form-field-text-do-spell-check"/>
+ <keyword type="function" name="poppler_form_field_text_get_max_len ()" link="poppler-poppler-form-field.html#poppler-form-field-text-get-max-len"/>
+ <keyword type="function" name="poppler_form_field_text_get_text ()" link="poppler-poppler-form-field.html#poppler-form-field-text-get-text"/>
+ <keyword type="function" name="poppler_form_field_text_get_text_type ()" link="poppler-poppler-form-field.html#poppler-form-field-text-get-text-type"/>
+ <keyword type="function" name="poppler_form_field_text_is_password ()" link="poppler-poppler-form-field.html#poppler-form-field-text-is-password"/>
+ <keyword type="function" name="poppler_form_field_text_is_rich_text ()" link="poppler-poppler-form-field.html#poppler-form-field-text-is-rich-text"/>
+ <keyword type="function" name="poppler_form_field_text_set_text ()" link="poppler-poppler-form-field.html#poppler-form-field-text-set-text"/>
+ <keyword type="macro" name="POPPLER_TYPE_ACTION_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-ACTION-TYPE--CAPS"/>
+ <keyword type="function" name="poppler_action_type_get_type ()" link="poppler-poppler-enums.html#poppler-action-type-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_DEST_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-DEST-TYPE--CAPS"/>
+ <keyword type="function" name="poppler_dest_type_get_type ()" link="poppler-poppler-enums.html#poppler-dest-type-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_PAGE_LAYOUT" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-LAYOUT--CAPS"/>
+ <keyword type="function" name="poppler_page_layout_get_type ()" link="poppler-poppler-enums.html#poppler-page-layout-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_PAGE_MODE" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-MODE--CAPS"/>
+ <keyword type="function" name="poppler_page_mode_get_type ()" link="poppler-poppler-enums.html#poppler-page-mode-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_FONT_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-FONT-TYPE--CAPS"/>
+ <keyword type="function" name="poppler_font_type_get_type ()" link="poppler-poppler-enums.html#poppler-font-type-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_VIEWER_PREFERENCES" link="poppler-poppler-enums.html#POPPLER-TYPE-VIEWER-PREFERENCES--CAPS"/>
+ <keyword type="function" name="poppler_viewer_preferences_get_type ()" link="poppler-poppler-enums.html#poppler-viewer-preferences-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_PERMISSIONS" link="poppler-poppler-enums.html#POPPLER-TYPE-PERMISSIONS--CAPS"/>
+ <keyword type="function" name="poppler_permissions_get_type ()" link="poppler-poppler-enums.html#poppler-permissions-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_SELECTION_STYLE" link="poppler-poppler-enums.html#POPPLER-TYPE-SELECTION-STYLE--CAPS"/>
+ <keyword type="function" name="poppler_selection_style_get_type ()" link="poppler-poppler-enums.html#poppler-selection-style-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_PAGE_TRANSITION_TYPE" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS"/>
+ <keyword type="function" name="poppler_page_transition_type_get_type ()" link="poppler-poppler-enums.html#poppler-page-transition-type-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS"/>
+ <keyword type="function" name="poppler_page_transition_alignment_get_type ()" link="poppler-poppler-enums.html#poppler-page-transition-alignment-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_PAGE_TRANSITION_DIRECTION" link="poppler-poppler-enums.html#POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS"/>
+ <keyword type="function" name="poppler_page_transition_direction_get_type ()" link="poppler-poppler-enums.html#poppler-page-transition-direction-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_ERROR" link="poppler-poppler-enums.html#POPPLER-TYPE-ERROR--CAPS"/>
+ <keyword type="function" name="poppler_error_get_type ()" link="poppler-poppler-enums.html#poppler-error-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_ORIENTATION" link="poppler-poppler-enums.html#POPPLER-TYPE-ORIENTATION--CAPS"/>
+ <keyword type="function" name="poppler_orientation_get_type ()" link="poppler-poppler-enums.html#poppler-orientation-get-type"/>
+ <keyword type="macro" name="POPPLER_TYPE_BACKEND" link="poppler-poppler-enums.html#POPPLER-TYPE-BACKEND--CAPS"/>
+ <keyword type="function" name="poppler_backend_get_type ()" link="poppler-poppler-enums.html#poppler-backend-get-type"/>
+ <keyword type="struct" name="PopplerAnnot" link="poppler-poppler-annot.html#PopplerAnnot"/>
+ <keyword type="function" name="poppler_annot_callout_line_copy ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-copy"/>
+ <keyword type="function" name="poppler_annot_callout_line_free ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-free"/>
+ <keyword type="function" name="poppler_annot_callout_line_get_type ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-get-type"/>
+ <keyword type="function" name="poppler_annot_callout_line_new ()" link="poppler-poppler-annot.html#poppler-annot-callout-line-new"/>
+ <keyword type="function" name="poppler_annot_external_data_type_get_type ()" link="poppler-poppler-annot.html#poppler-annot-external-data-type-get-type"/>
+ <keyword type="function" name="poppler_annot_flag_get_type ()" link="poppler-poppler-annot.html#poppler-annot-flag-get-type"/>
+ <keyword type="function" name="poppler_annot_free_text_get_callout_line ()" link="poppler-poppler-annot.html#poppler-annot-free-text-get-callout-line"/>
+ <keyword type="function" name="poppler_annot_free_text_get_quadding ()" link="poppler-poppler-annot.html#poppler-annot-free-text-get-quadding"/>
+ <keyword type="function" name="poppler_annot_free_text_get_type ()" link="poppler-poppler-annot.html#poppler-annot-free-text-get-type"/>
+ <keyword type="function" name="poppler_annot_free_text_quadding_get_type ()" link="poppler-poppler-annot.html#poppler-annot-free-text-quadding-get-type"/>
+ <keyword type="function" name="poppler_annot_get_annot_type ()" link="poppler-poppler-annot.html#poppler-annot-get-annot-type"/>
+ <keyword type="function" name="poppler_annot_get_color ()" link="poppler-poppler-annot.html#poppler-annot-get-color"/>
+ <keyword type="function" name="poppler_annot_get_contents ()" link="poppler-poppler-annot.html#poppler-annot-get-contents"/>
+ <keyword type="function" name="poppler_annot_get_flags ()" link="poppler-poppler-annot.html#poppler-annot-get-flags"/>
+ <keyword type="function" name="poppler_annot_get_modified ()" link="poppler-poppler-annot.html#poppler-annot-get-modified"/>
+ <keyword type="function" name="poppler_annot_get_name ()" link="poppler-poppler-annot.html#poppler-annot-get-name"/>
+ <keyword type="function" name="poppler_annot_get_type ()" link="poppler-poppler-annot.html#poppler-annot-get-type"/>
+ <keyword type="function" name="poppler_annot_mapping_copy ()" link="poppler-poppler-annot.html#poppler-annot-mapping-copy"/>
+ <keyword type="function" name="poppler_annot_mapping_free ()" link="poppler-poppler-annot.html#poppler-annot-mapping-free"/>
+ <keyword type="function" name="poppler_annot_mapping_get_type ()" link="poppler-poppler-annot.html#poppler-annot-mapping-get-type"/>
+ <keyword type="function" name="poppler_annot_mapping_new ()" link="poppler-poppler-annot.html#poppler-annot-mapping-new"/>
+ <keyword type="function" name="poppler_annot_markup_get_date ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-date"/>
+ <keyword type="function" name="poppler_annot_markup_get_external_data ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-external-data"/>
+ <keyword type="function" name="poppler_annot_markup_get_label ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-label"/>
+ <keyword type="function" name="poppler_annot_markup_get_opacity ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-opacity"/>
+ <keyword type="function" name="poppler_annot_markup_get_popup_is_open ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-popup-is-open"/>
+ <keyword type="function" name="poppler_annot_markup_get_reply_to ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-reply-to"/>
+ <keyword type="function" name="poppler_annot_markup_get_subject ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-subject"/>
+ <keyword type="function" name="poppler_annot_markup_get_type ()" link="poppler-poppler-annot.html#poppler-annot-markup-get-type"/>
+ <keyword type="function" name="poppler_annot_markup_reply_type_get_type ()" link="poppler-poppler-annot.html#poppler-annot-markup-reply-type-get-type"/>
+ <keyword type="function" name="poppler_annot_text_get_icon ()" link="poppler-poppler-annot.html#poppler-annot-text-get-icon"/>
+ <keyword type="function" name="poppler_annot_text_get_is_open ()" link="poppler-poppler-annot.html#poppler-annot-text-get-is-open"/>
+ <keyword type="function" name="poppler_annot_text_get_state ()" link="poppler-poppler-annot.html#poppler-annot-text-get-state"/>
+ <keyword type="function" name="poppler_annot_text_get_type ()" link="poppler-poppler-annot.html#poppler-annot-text-get-type"/>
+ <keyword type="function" name="poppler_annot_text_state_get_type ()" link="poppler-poppler-annot.html#poppler-annot-text-state-get-type"/>
+ <keyword type="function" name="poppler_annot_type_get_type ()" link="poppler-poppler-annot.html#poppler-annot-type-get-type"/>
+ <keyword type="function" name="poppler_layer_get_type ()" link="poppler-poppler-layer.html#poppler-layer-get-type"/>
+ <keyword type="function" name="poppler_layer_get_title ()" link="poppler-poppler-layer.html#poppler-layer-get-title"/>
+ <keyword type="function" name="poppler_layer_is_visible ()" link="poppler-poppler-layer.html#poppler-layer-is-visible"/>
+ <keyword type="function" name="poppler_layer_show ()" link="poppler-poppler-layer.html#poppler-layer-show"/>
+ <keyword type="function" name="poppler_layer_hide ()" link="poppler-poppler-layer.html#poppler-layer-hide"/>
+ <keyword type="function" name="poppler_layer_is_parent ()" link="poppler-poppler-layer.html#poppler-layer-is-parent"/>
+ <keyword type="function" name="poppler_layer_get_radio_button_group_id ()" link="poppler-poppler-layer.html#poppler-layer-get-radio-button-group-id"/>
+ <keyword type="macro" name="POPPLER_HAS_CAIRO" link="poppler-poppler-features.html#POPPLER-HAS-CAIRO--CAPS"/>
+ <keyword type="macro" name="POPPLER_WITH_GDK" link="poppler-poppler-features.html#POPPLER-WITH-GDK--CAPS"/>
+ <keyword type="macro" name="POPPLER_MAJOR_VERSION" link="poppler-poppler-features.html#POPPLER-MAJOR-VERSION--CAPS"/>
+ <keyword type="macro" name="POPPLER_MINOR_VERSION" link="poppler-poppler-features.html#POPPLER-MINOR-VERSION--CAPS"/>
+ <keyword type="macro" name="POPPLER_MICRO_VERSION" link="poppler-poppler-features.html#POPPLER-MICRO-VERSION--CAPS"/>
+ <keyword type="macro" name="POPPLER_CHECK_VERSION()" link="poppler-poppler-features.html#POPPLER-CHECK-VERSION--CAPS"/>
+ </functions>
+</book>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/right.png b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/right.png
new file mode 100644
index 00000000000..92832e3a456
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/right.png
Binary files differ
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/style.css b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/style.css
new file mode 100644
index 00000000000..bb44c280939
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/style.css
@@ -0,0 +1,167 @@
+.synopsis, .classsynopsis
+{
+ background: #eeeeee;
+ border: solid 1px #aaaaaa;
+ padding: 0.5em;
+}
+.programlisting
+{
+ background: #eeeeff;
+ border: solid 1px #aaaaff;
+ padding: 0.5em;
+}
+.variablelist
+{
+ padding: 4px;
+ margin-left: 3em;
+}
+.variablelist td:first-child
+{
+ vertical-align: top;
+}
+
+/* this is needed so that the local anchors are displayed below the naviagtion */
+@media screen {
+ sup a.footnote
+ {
+ position: relative;
+ top: 0em ! important;
+ }
+ div.refnamediv a[name], div.refsect1 a[name]
+ {
+ position: relative;
+ top: -4.5em;
+ }
+ table.navigation#top
+ {
+ background: #ffeeee;
+ border: solid 1px #ffaaaa;
+ margin-top: 0;
+ margin-bottom: 0;
+ position: fixed;
+ top: 0;
+ left: 0;
+ height: 2em;
+ z-index: 1;
+ }
+ .navigation a
+ {
+ color: #770000;
+ }
+ .navigation a:visited
+ {
+ color: #550000;
+ }
+ td.shortcuts
+ {
+ color: #770000;
+ font-size: 80%;
+ white-space: nowrap;
+ }
+ div.refentry, div.chapter, div.reference, div.part, div.book, div.glossary, div.sect1, div.appendix, div.preface
+ {
+ position: relative;
+ top: 3em;
+ z-index: 0;
+ }
+ div.glossary, div.index
+ {
+ position: relative;
+ top: 2em;
+ z-index: 0;
+ }
+ div.refnamediv
+ {
+ margin-top: 2em;
+ }
+ body
+ {
+ padding-bottom: 20em;
+ }
+}
+@media print {
+ table.navigation {
+ visibility: collapse;
+ display: none;
+ }
+ div.titlepage table.navigation {
+ visibility: visible;
+ display: table;
+ background: #ffeeee;
+ border: solid 1px #ffaaaa;
+ margin-top: 0;
+ margin-bottom: 0;
+ top: 0;
+ left: 0;
+ height: 2em;
+ }
+}
+
+.navigation .title
+{
+ font-size: 200%;
+}
+
+
+div.gallery-float
+{
+ float: left;
+ padding: 10px;
+}
+div.gallery-float img
+{
+ border-style: none;
+}
+div.gallery-spacer
+{
+ clear: both;
+}
+a
+{
+ text-decoration: none;
+}
+a:hover
+{
+ text-decoration: underline;
+ color: #FF0000;
+}
+
+div.table table
+{
+ border-collapse: collapse;
+ border-spacing: 0px;
+ border-style: solid;
+ border-color: #777777;
+ border-width: 1px;
+}
+
+div.table table td, div.table table th
+{
+ border-style: solid;
+ border-color: #777777;
+ border-width: 1px;
+ padding: 3px;
+ vertical-align: top;
+}
+
+div.table table th
+{
+ background-color: #eeeeee;
+}
+
+hr
+{
+ color: #777777;
+ background: #777777;
+ border: 0;
+ height: 1px;
+ clear: both;
+}
+
+.footer
+{
+ padding-top: 3.5em;
+ color: #777777;
+ text-align: center;
+ font-size: 80%;
+}
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/up.png b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/up.png
new file mode 100644
index 00000000000..85b3e2a2755
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/html/up.png
Binary files differ
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-docs.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-docs.sgml
new file mode 100644
index 00000000000..33dc2c4710d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-docs.sgml
@@ -0,0 +1,22 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
+ <bookinfo>
+ <title>Poppler Reference Manual</title>
+ </bookinfo>
+
+ <chapter>
+ <title>Poppler</title>
+ <xi:include href="xml/poppler.xml"/>
+ <xi:include href="xml/poppler-document.xml"/>
+ <xi:include href="xml/poppler-page.xml"/>
+ <xi:include href="xml/poppler-action.xml"/>
+ <xi:include href="xml/poppler-attachment.xml"/>
+ <xi:include href="xml/poppler-form-field.xml"/>
+ <xi:include href="xml/poppler-enums.xml"/>
+ <xi:include href="xml/poppler-annot.xml"/>
+ <xi:include href="xml/poppler-layer.xml"/>
+ <xi:include href="xml/poppler-features.xml"/>
+ </chapter>
+</book>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-overrides.txt b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-overrides.txt
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-overrides.txt
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-sections.txt b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-sections.txt
new file mode 100644
index 00000000000..070fdc9d6b8
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler-sections.txt
@@ -0,0 +1,320 @@
+<SECTION>
+<FILE>poppler-page</FILE>
+poppler_page_render
+poppler_page_render_to_pixbuf
+poppler_page_get_size
+poppler_page_get_index
+poppler_page_get_thumbnail
+poppler_page_get_thumbnail_size
+poppler_page_render_to_ps
+poppler_page_find_text
+poppler_page_get_text
+poppler_page_get_duration
+poppler_page_get_transition
+poppler_page_get_link_mapping
+poppler_page_free_link_mapping
+poppler_page_get_image_mapping
+poppler_page_free_image_mapping
+poppler_page_get_form_field_mapping
+poppler_page_free_form_field_mapping
+poppler_page_get_selection_region
+poppler_page_render_selection
+poppler_page_render_selection_to_pixbuf
+POPPLER_TYPE_RECTANGLE
+PopplerRectangle
+poppler_rectangle_get_type
+poppler_rectangle_new
+poppler_rectangle_copy
+poppler_rectangle_free
+POPPLER_TYPE_PAGE_TRANSITION
+PopplerPageTransition
+poppler_page_transition_get_type
+poppler_page_transition_new
+poppler_page_transition_copy
+poppler_page_transition_free
+POPPLER_TYPE_LINK_MAPPING
+PopplerLinkMapping
+poppler_link_mapping_get_type
+poppler_link_mapping_new
+poppler_link_mapping_copy
+poppler_link_mapping_free
+POPPLER_TYPE_IMAGE_MAPPING
+PopplerImageMapping
+poppler_image_mapping_get_type
+poppler_image_mapping_new
+poppler_image_mapping_copy
+poppler_image_mapping_free
+POPPLER_TYPE_FORM_FIELD_MAPPING
+PopplerFormFieldMapping
+poppler_form_field_mapping_get_type
+poppler_form_field_mapping_new
+poppler_form_field_mapping_copy
+poppler_form_field_mapping_free
+<SUBSECTION Standard>
+POPPLER_PAGE
+POPPLER_IS_PAGE
+POPPLER_TYPE_PAGE
+poppler_page_get_type
+</SECTION>
+
+<SECTION>
+<FILE>poppler-document</FILE>
+PopplerPageLayout
+PopplerPageMode
+PopplerFontType
+PopplerViewerPreferences
+PopplerPermissions
+poppler_document_new_from_file
+poppler_document_new_from_data
+poppler_document_save
+poppler_document_get_n_pages
+poppler_document_get_page
+poppler_document_get_page_by_label
+poppler_document_find_dest
+poppler_document_has_attachments
+poppler_document_get_attachments
+poppler_document_get_form_field
+poppler_index_iter_get_type
+poppler_index_iter_new
+poppler_index_iter_copy
+poppler_index_iter_free
+poppler_index_iter_get_child
+poppler_index_iter_is_open
+poppler_index_iter_get_action
+poppler_index_iter_next
+poppler_font_info_new
+poppler_font_info_scan
+poppler_font_info_free
+poppler_fonts_iter_get_type
+poppler_fonts_iter_copy
+poppler_fonts_iter_free
+poppler_fonts_iter_get_name
+poppler_fonts_iter_get_full_name
+poppler_fonts_iter_get_font_type
+poppler_fonts_iter_is_embedded
+poppler_fonts_iter_is_subset
+poppler_fonts_iter_next
+poppler_ps_file_new
+poppler_ps_file_set_paper_size
+poppler_ps_file_set_duplex
+poppler_ps_file_free
+<SUBSECTION Standard>
+POPPLER_DOCUMENT
+POPPLER_IS_DOCUMENT
+POPPLER_TYPE_DOCUMENT
+poppler_document_get_type
+</SECTION>
+
+<SECTION>
+<FILE>poppler-action</FILE>
+PopplerActionType
+PopplerDestType
+PopplerActionAny
+PopplerActionGotoDest
+PopplerActionGotoRemote
+PopplerActionLaunch
+PopplerActionUri
+PopplerActionNamed
+PopplerActionMovie
+PopplerDest
+PopplerAction
+POPPLER_TYPE_ACTION
+POPPLER_ACTION
+poppler_action_get_type
+poppler_action_copy
+poppler_action_free
+POPPLER_TYPE_DEST
+poppler_dest_get_type
+poppler_dest_copy
+poppler_dest_free
+</SECTION>
+
+<SECTION>
+<FILE>poppler-attachment</FILE>
+PopplerAttachment
+poppler_attachment_save
+poppler_attachment_save_to_callback
+PopplerAttachmentSaveFunc
+<SUBSECTION Standard>
+POPPLER_ATTACHMENT
+POPPLER_IS_ATTACHMENT
+POPPLER_TYPE_ATTACHMENT
+poppler_attachment_get_type
+</SECTION>
+</SECTION>
+
+<SECTION>
+<FILE>poppler-form-field</FILE>
+PopplerFormField
+PopplerFormButtonType
+PopplerFormChoiceType
+PopplerFormFieldType
+PopplerFormTextType
+poppler_form_field_get_id
+poppler_form_field_get_field_type
+poppler_form_field_is_read_only
+poppler_form_field_get_font_size
+poppler_form_field_button_get_button_type
+poppler_form_field_button_get_state
+poppler_form_field_button_set_state
+poppler_form_field_choice_can_select_multiple
+poppler_form_field_choice_commit_on_change
+poppler_form_field_choice_do_spell_check
+poppler_form_field_choice_get_choice_type
+poppler_form_field_choice_get_item
+poppler_form_field_choice_get_n_items
+poppler_form_field_choice_get_text
+poppler_form_field_choice_is_editable
+poppler_form_field_choice_is_item_selected
+poppler_form_field_choice_select_item
+poppler_form_field_choice_set_text
+poppler_form_field_choice_toggle_item
+poppler_form_field_choice_unselect_all
+poppler_form_field_text_do_scroll
+poppler_form_field_text_do_spell_check
+poppler_form_field_text_get_max_len
+poppler_form_field_text_get_text
+poppler_form_field_text_get_text_type
+poppler_form_field_text_is_password
+poppler_form_field_text_is_rich_text
+poppler_form_field_text_set_text
+
+<SUBSECTION Standard>
+POPPLER_FORM_FIELD
+POPPLER_IS_FORM_FIELD
+POPPLER_TYPE_FORM_FIELD
+poppler_form_field_get_type
+</SECTION>
+
+<SECTION>
+<FILE>poppler-enums</FILE>
+POPPLER_TYPE_ACTION_TYPE
+poppler_action_type_get_type
+POPPLER_TYPE_DEST_TYPE
+poppler_dest_type_get_type
+POPPLER_TYPE_PAGE_LAYOUT
+poppler_page_layout_get_type
+POPPLER_TYPE_PAGE_MODE
+poppler_page_mode_get_type
+POPPLER_TYPE_FONT_TYPE
+poppler_font_type_get_type
+POPPLER_TYPE_VIEWER_PREFERENCES
+poppler_viewer_preferences_get_type
+POPPLER_TYPE_PERMISSIONS
+poppler_permissions_get_type
+POPPLER_TYPE_SELECTION_STYLE
+poppler_selection_style_get_type
+POPPLER_TYPE_PAGE_TRANSITION_TYPE
+poppler_page_transition_type_get_type
+POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT
+poppler_page_transition_alignment_get_type
+POPPLER_TYPE_PAGE_TRANSITION_DIRECTION
+poppler_page_transition_direction_get_type
+POPPLER_TYPE_ERROR
+poppler_error_get_type
+POPPLER_TYPE_ORIENTATION
+poppler_orientation_get_type
+POPPLER_TYPE_BACKEND
+poppler_backend_get_type
+</SECTION>
+
+<SECTION>
+<FILE>poppler</FILE>
+poppler_error_quark
+POPPLER_ERROR
+PopplerError
+PopplerOrientation
+PopplerDocument
+PopplerIndexIter
+PopplerFontsIter
+PopplerRectangle
+PopplerSelectionStyle
+PopplerPageTransitionType
+PopplerPageTransitionAlignment
+PopplerPageTransitionDirection
+PopplerLinkMapping
+PopplerPage
+PopplerFontInfo
+PopplerPSFile
+PopplerBackend
+poppler_get_backend
+poppler_get_version
+</SECTION>
+
+<SECTION>
+<FILE>poppler-private</FILE>
+PopplerDocument
+PopplerPSFile
+PopplerFontInfo
+PopplerPage
+</SECTION>
+
+<SECTION>
+<FILE>stamp-poppler-enums</FILE>
+</SECTION>
+
+<SECTION>
+<FILE>poppler-annot</FILE>
+PopplerAnnot
+poppler_annot_callout_line_copy
+poppler_annot_callout_line_free
+poppler_annot_callout_line_get_type
+poppler_annot_callout_line_new
+poppler_annot_external_data_type_get_type
+poppler_annot_flag_get_type
+poppler_annot_free_text_get_callout_line
+poppler_annot_free_text_get_quadding
+poppler_annot_free_text_get_type
+poppler_annot_free_text_quadding_get_type
+poppler_annot_get_annot_type
+poppler_annot_get_color
+poppler_annot_get_contents
+poppler_annot_get_flags
+poppler_annot_get_id
+poppler_annot_get_modified
+poppler_annot_get_name
+poppler_annot_get_type
+poppler_annot_mapping_copy
+poppler_annot_mapping_free
+poppler_annot_mapping_get_type
+poppler_annot_mapping_new
+poppler_annot_markup_get_date
+poppler_annot_markup_get_external_data
+poppler_annot_markup_get_label
+poppler_annot_markup_get_opacity
+poppler_annot_markup_get_popup_is_open
+poppler_annot_markup_get_reply_to
+poppler_annot_markup_get_subject
+poppler_annot_markup_get_type
+poppler_annot_markup_reply_type_get_type
+poppler_annot_movie_get_movie
+poppler_annot_movie_get_title
+poppler_annot_movie_get_type
+poppler_annot_text_get_icon
+poppler_annot_text_get_is_open
+poppler_annot_text_get_state
+poppler_annot_text_get_type
+poppler_annot_text_state_get_type
+poppler_annot_type_get_type
+</SECTION>
+
+<SECTION>
+<FILE>poppler-layer</FILE>
+poppler_layer_get_type
+poppler_layer_get_title
+poppler_layer_is_visible
+poppler_layer_show
+poppler_layer_hide
+poppler_layer_is_parent
+poppler_layer_get_radio_button_group_id
+</SECTION>
+
+<SECTION>
+<FILE>poppler-features</FILE>
+POPPLER_HAS_CAIRO
+POPPLER_WITH_GDK
+POPPLER_MAJOR_VERSION
+POPPLER_MINOR_VERSION
+POPPLER_MICRO_VERSION
+POPPLER_CHECK_VERSION
+</SECTION>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler.types b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler.types
new file mode 100644
index 00000000000..4e4bc33be4e
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/poppler.types
@@ -0,0 +1,6 @@
+#include <poppler.h>
+
+poppler_document_get_type
+poppler_page_get_type
+poppler_attachment_get_type
+poppler_form_field_get_type
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-action.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-action.sgml
new file mode 100644
index 00000000000..f484bdedfea
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-action.sgml
@@ -0,0 +1,207 @@
+<!-- ##### SECTION Title ##### -->
+PopplerAction
+
+<!-- ##### SECTION Short_Description ##### -->
+Action links
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### ENUM PopplerActionType ##### -->
+<para>
+
+</para>
+
+@POPPLER_ACTION_UNKNOWN:
+@POPPLER_ACTION_NONE:
+@POPPLER_ACTION_GOTO_DEST:
+@POPPLER_ACTION_GOTO_REMOTE:
+@POPPLER_ACTION_LAUNCH:
+@POPPLER_ACTION_URI:
+@POPPLER_ACTION_NAMED:
+@POPPLER_ACTION_MOVIE:
+
+<!-- ##### ENUM PopplerDestType ##### -->
+<para>
+
+</para>
+
+@POPPLER_DEST_UNKNOWN:
+@POPPLER_DEST_XYZ:
+@POPPLER_DEST_FIT:
+@POPPLER_DEST_FITH:
+@POPPLER_DEST_FITV:
+@POPPLER_DEST_FITR:
+@POPPLER_DEST_FITB:
+@POPPLER_DEST_FITBH:
+@POPPLER_DEST_FITBV:
+@POPPLER_DEST_NAMED:
+
+<!-- ##### STRUCT PopplerActionAny ##### -->
+<para>
+
+</para>
+
+@type:
+@title:
+
+<!-- ##### STRUCT PopplerActionGotoDest ##### -->
+<para>
+
+</para>
+
+@type:
+@title:
+@dest:
+
+<!-- ##### STRUCT PopplerActionGotoRemote ##### -->
+<para>
+
+</para>
+
+@type:
+@title:
+@file_name:
+@dest:
+
+<!-- ##### STRUCT PopplerActionLaunch ##### -->
+<para>
+
+</para>
+
+@type:
+@title:
+@file_name:
+@params:
+
+<!-- ##### STRUCT PopplerActionUri ##### -->
+<para>
+
+</para>
+
+@type:
+@title:
+@uri:
+
+<!-- ##### STRUCT PopplerActionNamed ##### -->
+<para>
+
+</para>
+
+@type:
+@title:
+@named_dest:
+
+<!-- ##### STRUCT PopplerActionMovie ##### -->
+<para>
+
+</para>
+
+@type:
+@title:
+
+<!-- ##### STRUCT PopplerDest ##### -->
+<para>
+
+</para>
+
+@type:
+@page_num:
+@left:
+@bottom:
+@right:
+@top:
+@zoom:
+@named_dest:
+@change_left:
+@change_top:
+@change_zoom:
+
+<!-- ##### UNION PopplerAction ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### MACRO POPPLER_TYPE_ACTION ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO POPPLER_ACTION ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### FUNCTION poppler_action_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_action_copy ##### -->
+<para>
+
+</para>
+
+@action:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_action_free ##### -->
+<para>
+
+</para>
+
+@action:
+
+
+<!-- ##### MACRO POPPLER_TYPE_DEST ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_dest_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_dest_copy ##### -->
+<para>
+
+</para>
+
+@dest:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_dest_free ##### -->
+<para>
+
+</para>
+
+@dest:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-annot.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-annot.sgml
new file mode 100644
index 00000000000..e7abcf7846b
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-annot.sgml
@@ -0,0 +1,333 @@
+<!-- ##### SECTION Title ##### -->
+PopplerAnnot
+
+<!-- ##### SECTION Short_Description ##### -->
+Annotations
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT PopplerAnnot ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION poppler_annot_callout_line_copy ##### -->
+<para>
+
+</para>
+
+@callout:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_callout_line_free ##### -->
+<para>
+
+</para>
+
+@callout:
+
+
+<!-- ##### FUNCTION poppler_annot_callout_line_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_callout_line_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_external_data_type_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_flag_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_free_text_get_callout_line ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_free_text_get_quadding ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_free_text_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_free_text_quadding_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_get_annot_type ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_get_color ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_get_contents ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_get_flags ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_get_modified ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_get_name ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_mapping_copy ##### -->
+<para>
+
+</para>
+
+@mapping:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_mapping_free ##### -->
+<para>
+
+</para>
+
+@mapping:
+
+
+<!-- ##### FUNCTION poppler_annot_mapping_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_mapping_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_date ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_external_data ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_label ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_opacity ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_popup_is_open ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_reply_to ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_subject ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_markup_reply_type_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_text_get_icon ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_text_get_is_open ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_text_get_state ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_text_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_text_state_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_annot_type_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml
new file mode 100644
index 00000000000..81dae971b7d
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml
@@ -0,0 +1,65 @@
+<!-- ##### SECTION Title ##### -->
+PopplerAttachment
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT PopplerAttachment ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION poppler_attachment_save ##### -->
+<para>
+
+</para>
+
+@attachment:
+@filename:
+@error:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_attachment_save_to_callback ##### -->
+<para>
+
+</para>
+
+@attachment:
+@save_func:
+@user_data:
+@error:
+@Returns:
+
+
+<!-- ##### USER_FUNCTION PopplerAttachmentSaveFunc ##### -->
+<para>
+Specifies the type of the function passed to
+poppler_attachment_save_to_callback(). It is called once for each block of
+bytes that is "written" by poppler_attachment_save_to_callback(). If
+successful it should return %TRUE. If an error occurs it should set
+@error and return %FALSE, in which case poppler_attachment_save_to_callback()
+will fail with the same error.
+</para>
+
+@buf: buffer containing bytes to be written.
+@count: number of bytes in @buf.
+@data: A location to return an error.
+@error: user data passed to poppler_attachment_save_to_callback()
+@Returns: %TRUE if successful, %FALSE (with @error set) if failed.
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml.sgml
new file mode 100644
index 00000000000..89c27889931
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-attachment.sgml.sgml
@@ -0,0 +1,67 @@
+<!-- ##### SECTION Title ##### -->
+poppler-attachment.sgml
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT PopplerAttachment ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION poppler_attachment_save ##### -->
+<para>
+
+</para>
+
+@attachment:
+@filename:
+@error:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_attachment_save_to_callback ##### -->
+<para>
+
+</para>
+
+@attachment:
+@save_func:
+@user_data:
+@error:
+@Returns:
+
+
+<!-- ##### USER_FUNCTION PopplerAttachmentSaveFunc ##### -->
+<para>
+Specifies the type of the function passed to
+poppler_attachment_save_to_callback(). It is called once for each block of
+bytes that is "written" by poppler_attachment_save_to_callback(). If
+successful it should return %TRUE. If an error occurs it should set
+@error and return %FALSE, in which case poppler_attachment_save_to_callback()
+will fail with the same error.
+</para>
+
+@buf: buffer containing bytes to be written.
+@count: number of bytes in @buf.
+@data: A location to return an error.
+@error: user data passed to poppler_attachment_save_to_callback()
+@Returns: %TRUE if successful, %FALSE (with @error set) if failed.
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-document.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-document.sgml
new file mode 100644
index 00000000000..a8ef11e8bcd
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-document.sgml
@@ -0,0 +1,405 @@
+<!-- ##### SECTION Title ##### -->
+PopplerDocument
+
+<!-- ##### SECTION Short_Description ##### -->
+Information about a document
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+The #PopplerDocument is an object used to refer to a main document.
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### ENUM PopplerPageLayout ##### -->
+<para>
+
+</para>
+
+@POPPLER_PAGE_LAYOUT_UNSET:
+@POPPLER_PAGE_LAYOUT_SINGLE_PAGE:
+@POPPLER_PAGE_LAYOUT_ONE_COLUMN:
+@POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT:
+@POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT:
+@POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT:
+@POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT:
+
+<!-- ##### ENUM PopplerPageMode ##### -->
+<para>
+
+</para>
+
+@POPPLER_PAGE_MODE_UNSET:
+@POPPLER_PAGE_MODE_NONE:
+@POPPLER_PAGE_MODE_USE_OUTLINES:
+@POPPLER_PAGE_MODE_USE_THUMBS:
+@POPPLER_PAGE_MODE_FULL_SCREEN:
+@POPPLER_PAGE_MODE_USE_OC:
+@POPPLER_PAGE_MODE_USE_ATTACHMENTS:
+
+<!-- ##### ENUM PopplerFontType ##### -->
+<para>
+
+</para>
+
+@POPPLER_FONT_TYPE_UNKNOWN:
+@POPPLER_FONT_TYPE_TYPE1:
+@POPPLER_FONT_TYPE_TYPE1C:
+@POPPLER_FONT_TYPE_TYPE1COT:
+@POPPLER_FONT_TYPE_TYPE3:
+@POPPLER_FONT_TYPE_TRUETYPE:
+@POPPLER_FONT_TYPE_TRUETYPEOT:
+@POPPLER_FONT_TYPE_CID_TYPE0:
+@POPPLER_FONT_TYPE_CID_TYPE0C:
+@POPPLER_FONT_TYPE_CID_TYPE0COT:
+@POPPLER_FONT_TYPE_CID_TYPE2:
+@POPPLER_FONT_TYPE_CID_TYPE2OT:
+
+<!-- ##### ENUM PopplerViewerPreferences ##### -->
+<para>
+
+</para>
+
+@POPPLER_VIEWER_PREFERENCES_UNSET:
+@POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR:
+@POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR:
+@POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI:
+@POPPLER_VIEWER_PREFERENCES_FIT_WINDOW:
+@POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW:
+@POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE:
+@POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL:
+
+<!-- ##### ENUM PopplerPermissions ##### -->
+<para>
+
+</para>
+
+@POPPLER_PERMISSIONS_OK_TO_PRINT:
+@POPPLER_PERMISSIONS_OK_TO_MODIFY:
+@POPPLER_PERMISSIONS_OK_TO_COPY:
+@POPPLER_PERMISSIONS_OK_TO_ADD_NOTES:
+@POPPLER_PERMISSIONS_OK_TO_FILL_FORM:
+@POPPLER_PERMISSIONS_FULL:
+
+<!-- ##### FUNCTION poppler_document_new_from_file ##### -->
+<para>
+
+</para>
+
+@uri:
+@password:
+@error:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_new_from_data ##### -->
+<para>
+
+</para>
+
+@data:
+@length:
+@password:
+@error:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_save ##### -->
+<para>
+
+</para>
+
+@document:
+@uri:
+@error:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_get_n_pages ##### -->
+<para>
+
+</para>
+
+@document:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_get_page ##### -->
+<para>
+
+</para>
+
+@document:
+@index:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_get_page_by_label ##### -->
+<para>
+
+</para>
+
+@document:
+@label:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_find_dest ##### -->
+<para>
+
+</para>
+
+@document:
+@link_name:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_has_attachments ##### -->
+<para>
+
+</para>
+
+@document:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_get_attachments ##### -->
+<para>
+
+</para>
+
+@document:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_document_get_form_field ##### -->
+<para>
+
+</para>
+
+@document:
+@id:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_index_iter_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_index_iter_new ##### -->
+<para>
+
+</para>
+
+@document:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_index_iter_copy ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_index_iter_free ##### -->
+<para>
+
+</para>
+
+@iter:
+
+
+<!-- ##### FUNCTION poppler_index_iter_get_child ##### -->
+<para>
+
+</para>
+
+@parent:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_index_iter_is_open ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_index_iter_get_action ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_index_iter_next ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_font_info_new ##### -->
+<para>
+
+</para>
+
+@document:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_font_info_scan ##### -->
+<para>
+
+</para>
+
+@font_info:
+@n_pages:
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_font_info_free ##### -->
+<para>
+
+</para>
+
+@font_info:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_copy ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_free ##### -->
+<para>
+
+</para>
+
+@iter:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_get_name ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_get_full_name ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_get_font_type ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_is_embedded ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_is_subset ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_fonts_iter_next ##### -->
+<para>
+
+</para>
+
+@iter:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_ps_file_new ##### -->
+<para>
+
+</para>
+
+@document:
+@filename:
+@first_page:
+@n_pages:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_ps_file_set_paper_size ##### -->
+<para>
+
+</para>
+
+@ps_file:
+@width:
+@height:
+
+
+<!-- ##### FUNCTION poppler_ps_file_set_duplex ##### -->
+<para>
+
+</para>
+
+@ps_file:
+@duplex:
+
+
+<!-- ##### FUNCTION poppler_ps_file_free ##### -->
+<para>
+
+</para>
+
+@ps_file:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-enums.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-enums.sgml
new file mode 100644
index 00000000000..b7841d70661
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-enums.sgml
@@ -0,0 +1,229 @@
+<!-- ##### SECTION Title ##### -->
+poppler-enums
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### MACRO POPPLER_TYPE_ACTION_TYPE ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_action_type_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_DEST_TYPE ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_dest_type_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_PAGE_LAYOUT ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_page_layout_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_PAGE_MODE ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_page_mode_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_FONT_TYPE ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_font_type_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_VIEWER_PREFERENCES ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_viewer_preferences_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_PERMISSIONS ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_permissions_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_SELECTION_STYLE ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_selection_style_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_PAGE_TRANSITION_TYPE ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_page_transition_type_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_page_transition_alignment_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_PAGE_TRANSITION_DIRECTION ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_page_transition_direction_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_ERROR ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_error_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_ORIENTATION ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_orientation_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_TYPE_BACKEND ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION poppler_backend_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-features.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-features.sgml
new file mode 100644
index 00000000000..22f90b0638b
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-features.sgml
@@ -0,0 +1,80 @@
+<!-- ##### SECTION Title ##### -->
+Version and Features Information
+
+<!-- ##### SECTION Short_Description ##### -->
+Variables and functions to check the poppler version and features
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+Poppler provides version information, and information about features
+enabled at compile time. This is primarily useful in configure checks
+for builds that have a configure script, or for allowing code to optionally
+depend but not require a specific poppler version.
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### MACRO POPPLER_HAS_CAIRO ##### -->
+<para>
+Defined if poppler was compiled with cairo support.
+</para>
+
+
+
+<!-- ##### MACRO POPPLER_WITH_GDK ##### -->
+<para>
+Defined if poppler was compiled with GDK support.
+</para>
+
+
+
+<!-- ##### MACRO POPPLER_MAJOR_VERSION ##### -->
+<para>
+The major version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 0.)
+</para>
+
+Since: 0.11
+
+
+
+<!-- ##### MACRO POPPLER_MINOR_VERSION ##### -->
+<para>
+
+</para>
+The major version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 1.)
+
+Since: 0.11
+
+
+
+<!-- ##### MACRO POPPLER_MICRO_VERSION ##### -->
+<para>
+The micro version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 2.)
+</para>
+
+Since: 0.11
+
+
+
+<!-- ##### MACRO POPPLER_CHECK_VERSION ##### -->
+<para>
+Returns %TRUE if the version of the poppler header files is the same
+as or newer than the passed-in version.
+</para>
+
+@major: major version (e.g. 0 for version 0.1.2)
+@minor: minor version (e.g. 1 for version 0.1.2)
+@micro: micro version (e.g. 2 for version 0.1.2)
+
+Since: 0.11
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-form-field.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-form-field.sgml
new file mode 100644
index 00000000000..38d0e9d2491
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-form-field.sgml
@@ -0,0 +1,315 @@
+<!-- ##### SECTION Title ##### -->
+PopplerFormField
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT PopplerFormField ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ENUM PopplerFormButtonType ##### -->
+<para>
+
+</para>
+
+@POPPLER_FORM_BUTTON_PUSH:
+@POPPLER_FORM_BUTTON_CHECK:
+@POPPLER_FORM_BUTTON_RADIO:
+
+<!-- ##### ENUM PopplerFormChoiceType ##### -->
+<para>
+
+</para>
+
+@POPPLER_FORM_CHOICE_COMBO:
+@POPPLER_FORM_CHOICE_LIST:
+
+<!-- ##### ENUM PopplerFormFieldType ##### -->
+<para>
+
+</para>
+
+@POPPLER_FORM_FIELD_UNKNOWN:
+@POPPLER_FORM_FIELD_BUTTON:
+@POPPLER_FORM_FIELD_TEXT:
+@POPPLER_FORM_FIELD_CHOICE:
+@POPPLER_FORM_FIELD_SIGNATURE:
+
+<!-- ##### ENUM PopplerFormTextType ##### -->
+<para>
+
+</para>
+
+@POPPLER_FORM_TEXT_NORMAL:
+@POPPLER_FORM_TEXT_MULTILINE:
+@POPPLER_FORM_TEXT_FILE_SELECT:
+
+<!-- ##### FUNCTION poppler_form_field_get_id ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_get_field_type ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_is_read_only ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_get_font_size ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_button_get_button_type ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_button_get_state ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_button_set_state ##### -->
+<para>
+
+</para>
+
+@field:
+@state:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_can_select_multiple ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_commit_on_change ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_do_spell_check ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_get_choice_type ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_get_item ##### -->
+<para>
+
+</para>
+
+@field:
+@index:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_get_n_items ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_get_text ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_is_editable ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_is_item_selected ##### -->
+<para>
+
+</para>
+
+@field:
+@index:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_select_item ##### -->
+<para>
+
+</para>
+
+@field:
+@index:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_set_text ##### -->
+<para>
+
+</para>
+
+@field:
+@text:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_toggle_item ##### -->
+<para>
+
+</para>
+
+@field:
+@index:
+
+
+<!-- ##### FUNCTION poppler_form_field_choice_unselect_all ##### -->
+<para>
+
+</para>
+
+@field:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_do_scroll ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_do_spell_check ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_get_max_len ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_get_text ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_get_text_type ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_is_password ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_is_rich_text ##### -->
+<para>
+
+</para>
+
+@field:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_text_set_text ##### -->
+<para>
+
+</para>
+
+@field:
+@text:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-layer.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-layer.sgml
new file mode 100644
index 00000000000..a2fe01c94ce
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-layer.sgml
@@ -0,0 +1,79 @@
+<!-- ##### SECTION Title ##### -->
+PopplerLayer
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### FUNCTION poppler_layer_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_layer_get_title ##### -->
+<para>
+
+</para>
+
+@layer:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_layer_is_visible ##### -->
+<para>
+
+</para>
+
+@layer:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_layer_show ##### -->
+<para>
+
+</para>
+
+@layer:
+
+
+<!-- ##### FUNCTION poppler_layer_hide ##### -->
+<para>
+
+</para>
+
+@layer:
+
+
+<!-- ##### FUNCTION poppler_layer_is_parent ##### -->
+<para>
+
+</para>
+
+@layer:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_layer_get_radio_button_group_id ##### -->
+<para>
+
+</para>
+
+@layer:
+@Returns:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-page.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-page.sgml
new file mode 100644
index 00000000000..a86293b55c8
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-page.sgml
@@ -0,0 +1,470 @@
+<!-- ##### SECTION Title ##### -->
+PopplerPage
+
+<!-- ##### SECTION Short_Description ##### -->
+Information about a page in a document
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### FUNCTION poppler_page_render ##### -->
+<para>
+
+</para>
+
+@page:
+@cairo:
+
+
+<!-- ##### FUNCTION poppler_page_render_to_pixbuf ##### -->
+<para>
+
+</para>
+
+@page:
+@src_x:
+@src_y:
+@src_width:
+@src_height:
+@scale:
+@rotation:
+@pixbuf:
+
+
+<!-- ##### FUNCTION poppler_page_get_size ##### -->
+<para>
+
+</para>
+
+@page:
+@width:
+@height:
+
+
+<!-- ##### FUNCTION poppler_page_get_index ##### -->
+<para>
+
+</para>
+
+@page:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_get_thumbnail ##### -->
+<para>
+
+</para>
+
+@page:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_get_thumbnail_size ##### -->
+<para>
+
+</para>
+
+@page:
+@width:
+@height:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_render_to_ps ##### -->
+<para>
+
+</para>
+
+@page:
+@ps_file:
+
+
+<!-- ##### FUNCTION poppler_page_find_text ##### -->
+<para>
+
+</para>
+
+@page:
+@text:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_get_text ##### -->
+<para>
+
+</para>
+
+@page:
+@style:
+@rect:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_get_duration ##### -->
+<para>
+
+</para>
+
+@page:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_get_transition ##### -->
+<para>
+
+</para>
+
+@page:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_get_link_mapping ##### -->
+<para>
+
+</para>
+
+@page:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_free_link_mapping ##### -->
+<para>
+
+</para>
+
+@list:
+
+
+<!-- ##### FUNCTION poppler_page_get_image_mapping ##### -->
+<para>
+
+</para>
+
+@page:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_free_image_mapping ##### -->
+<para>
+
+</para>
+
+@list:
+
+
+<!-- ##### FUNCTION poppler_page_get_form_field_mapping ##### -->
+<para>
+
+</para>
+
+@page:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_free_form_field_mapping ##### -->
+<para>
+
+</para>
+
+@list:
+
+
+<!-- ##### FUNCTION poppler_page_get_selection_region ##### -->
+<para>
+
+</para>
+
+@page:
+@scale:
+@style:
+@selection:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_render_selection ##### -->
+<para>
+
+</para>
+
+@page:
+@cairo:
+@selection:
+@old_selection:
+@style:
+@glyph_color:
+@background_color:
+
+
+<!-- ##### FUNCTION poppler_page_render_selection_to_pixbuf ##### -->
+<para>
+
+</para>
+
+@page:
+@scale:
+@rotation:
+@pixbuf:
+@selection:
+@old_selection:
+@style:
+@glyph_color:
+@background_color:
+
+
+<!-- ##### MACRO POPPLER_TYPE_RECTANGLE ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### STRUCT PopplerRectangle ##### -->
+<para>
+
+</para>
+
+@x1:
+@y1:
+@x2:
+@y2:
+
+<!-- ##### FUNCTION poppler_rectangle_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_rectangle_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_rectangle_copy ##### -->
+<para>
+
+</para>
+
+@rectangle:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_rectangle_free ##### -->
+<para>
+
+</para>
+
+@rectangle:
+
+
+<!-- ##### MACRO POPPLER_TYPE_PAGE_TRANSITION ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### STRUCT PopplerPageTransition ##### -->
+<para>
+
+</para>
+
+@type:
+@alignment:
+@direction:
+@duration:
+@angle:
+@scale:
+@rectangular:
+
+<!-- ##### FUNCTION poppler_page_transition_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_transition_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_transition_copy ##### -->
+<para>
+
+</para>
+
+@transition:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_page_transition_free ##### -->
+<para>
+
+</para>
+
+@transition:
+
+
+<!-- ##### MACRO POPPLER_TYPE_LINK_MAPPING ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### STRUCT PopplerLinkMapping ##### -->
+<para>
+
+</para>
+
+@area:
+@action:
+
+<!-- ##### FUNCTION poppler_link_mapping_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_link_mapping_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_link_mapping_copy ##### -->
+<para>
+
+</para>
+
+@mapping:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_link_mapping_free ##### -->
+<para>
+
+</para>
+
+@mapping:
+
+
+<!-- ##### MACRO POPPLER_TYPE_IMAGE_MAPPING ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### STRUCT PopplerImageMapping ##### -->
+<para>
+
+</para>
+
+@area:
+@image_id:
+
+<!-- ##### FUNCTION poppler_image_mapping_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_image_mapping_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_image_mapping_copy ##### -->
+<para>
+
+</para>
+
+@mapping:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_image_mapping_free ##### -->
+<para>
+
+</para>
+
+@mapping:
+
+
+<!-- ##### MACRO POPPLER_TYPE_FORM_FIELD_MAPPING ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### STRUCT PopplerFormFieldMapping ##### -->
+<para>
+
+</para>
+
+@area:
+@field:
+
+<!-- ##### FUNCTION poppler_form_field_mapping_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_mapping_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_mapping_copy ##### -->
+<para>
+
+</para>
+
+@mapping:
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_form_field_mapping_free ##### -->
+<para>
+
+</para>
+
+@mapping:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-private.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-private.sgml
new file mode 100644
index 00000000000..fb167da7141
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-private.sgml
@@ -0,0 +1,145 @@
+<!-- ##### SECTION Title ##### -->
+poppler-private
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### STRUCT PopplerDocument ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG PopplerDocument:author ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:creation-date ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:creator ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:format ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:format-major ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:format-minor ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:keywords ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:linearized ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:metadata ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:mod-date ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:page-layout ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:page-mode ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:permissions ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:producer ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:subject ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:title ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:viewer-preferences ##### -->
+<para>
+
+</para>
+
+<!-- ##### STRUCT PopplerPSFile ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@document:
+@out:
+@filename:
+@first_page:
+@last_page:
+@paper_width:
+@paper_height:
+@duplex:
+
+<!-- ##### STRUCT PopplerFontInfo ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@document:
+@scanner:
+
+<!-- ##### STRUCT PopplerPage ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG PopplerPage:label ##### -->
+<para>
+
+</para>
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-unused.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-unused.sgml
new file mode 100644
index 00000000000..de01a0629c1
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler-unused.sgml
@@ -0,0 +1,31 @@
+<!-- ##### FUNCTION poppler_annot_get_id ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+<!-- ##### FUNCTION poppler_annot_movie_get_movie ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+<!-- ##### FUNCTION poppler_annot_movie_get_title ##### -->
+<para>
+
+</para>
+
+@poppler_annot:
+@Returns:
+
+<!-- ##### FUNCTION poppler_annot_movie_get_type ##### -->
+<para>
+
+</para>
+
+@Returns:
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler.sgml
new file mode 100644
index 00000000000..b399249d08c
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/poppler.sgml
@@ -0,0 +1,279 @@
+<!-- ##### SECTION Title ##### -->
+poppler
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
+<!-- ##### FUNCTION poppler_error_quark ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### MACRO POPPLER_ERROR ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### ENUM PopplerError ##### -->
+<para>
+
+</para>
+
+@POPPLER_ERROR_INVALID:
+@POPPLER_ERROR_ENCRYPTED:
+@POPPLER_ERROR_OPEN_FILE:
+@POPPLER_ERROR_BAD_CATALOG:
+@POPPLER_ERROR_DAMAGED:
+
+<!-- ##### ENUM PopplerOrientation ##### -->
+<para>
+
+</para>
+
+@POPPLER_ORIENTATION_PORTRAIT:
+@POPPLER_ORIENTATION_LANDSCAPE:
+@POPPLER_ORIENTATION_UPSIDEDOWN:
+@POPPLER_ORIENTATION_SEASCAPE:
+
+<!-- ##### STRUCT PopplerDocument ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG PopplerDocument:author ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:creation-date ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:creator ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:format ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:format-major ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:format-minor ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:keywords ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:linearized ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:metadata ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:mod-date ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:page-layout ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:page-mode ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:permissions ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:producer ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:subject ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:title ##### -->
+<para>
+
+</para>
+
+<!-- ##### ARG PopplerDocument:viewer-preferences ##### -->
+<para>
+
+</para>
+
+<!-- ##### STRUCT PopplerIndexIter ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT PopplerFontsIter ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### STRUCT PopplerRectangle ##### -->
+<para>
+
+</para>
+
+@x1:
+@y1:
+@x2:
+@y2:
+
+<!-- ##### ENUM PopplerSelectionStyle ##### -->
+<para>
+
+</para>
+
+@POPPLER_SELECTION_GLYPH:
+@POPPLER_SELECTION_WORD:
+@POPPLER_SELECTION_LINE:
+
+<!-- ##### ENUM PopplerPageTransitionType ##### -->
+<para>
+
+</para>
+
+@POPPLER_PAGE_TRANSITION_REPLACE:
+@POPPLER_PAGE_TRANSITION_SPLIT:
+@POPPLER_PAGE_TRANSITION_BLINDS:
+@POPPLER_PAGE_TRANSITION_BOX:
+@POPPLER_PAGE_TRANSITION_WIPE:
+@POPPLER_PAGE_TRANSITION_DISSOLVE:
+@POPPLER_PAGE_TRANSITION_GLITTER:
+@POPPLER_PAGE_TRANSITION_FLY:
+@POPPLER_PAGE_TRANSITION_PUSH:
+@POPPLER_PAGE_TRANSITION_COVER:
+@POPPLER_PAGE_TRANSITION_UNCOVER:
+@POPPLER_PAGE_TRANSITION_FADE:
+
+<!-- ##### ENUM PopplerPageTransitionAlignment ##### -->
+<para>
+
+</para>
+
+@POPPLER_PAGE_TRANSITION_HORIZONTAL:
+@POPPLER_PAGE_TRANSITION_VERTICAL:
+
+<!-- ##### ENUM PopplerPageTransitionDirection ##### -->
+<para>
+
+</para>
+
+@POPPLER_PAGE_TRANSITION_INWARD:
+@POPPLER_PAGE_TRANSITION_OUTWARD:
+
+<!-- ##### STRUCT PopplerLinkMapping ##### -->
+<para>
+
+</para>
+
+@area:
+@action:
+
+<!-- ##### STRUCT PopplerPage ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG PopplerPage:label ##### -->
+<para>
+
+</para>
+
+<!-- ##### STRUCT PopplerFontInfo ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@document:
+@scanner:
+
+<!-- ##### STRUCT PopplerPSFile ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@document:
+@out:
+@filename:
+@first_page:
+@last_page:
+@paper_width:
+@paper_height:
+@duplex:
+
+<!-- ##### ENUM PopplerBackend ##### -->
+<para>
+
+</para>
+
+@POPPLER_BACKEND_UNKNOWN:
+@POPPLER_BACKEND_SPLASH:
+@POPPLER_BACKEND_CAIRO:
+
+<!-- ##### FUNCTION poppler_get_backend ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION poppler_get_version ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/stamp-poppler-enums.sgml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/stamp-poppler-enums.sgml
new file mode 100644
index 00000000000..44a3c108aad
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/tmpl/stamp-poppler-enums.sgml
@@ -0,0 +1,19 @@
+<!-- ##### SECTION Title ##### -->
+stamp-poppler-enums
+
+<!-- ##### SECTION Short_Description ##### -->
+
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### SECTION Stability_Level ##### -->
+
+
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-deprecated.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-deprecated.xml
new file mode 100644
index 00000000000..113283526a9
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-deprecated.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0"?>
+<!DOCTYPE indexdiv PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<indexdiv>
+</indexdiv>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-full.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-full.xml
new file mode 100644
index 00000000000..4a0e8e54a70
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/api-index-full.xml
@@ -0,0 +1,266 @@
+<?xml version="1.0"?>
+<!DOCTYPE indexdiv PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<indexdiv>
+<indexdiv><title>P</title>
+<indexentry><primaryie linkends="PopplerAction"><link linkend="PopplerAction">PopplerAction</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionAny"><link linkend="PopplerActionAny">PopplerActionAny</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionGotoDest"><link linkend="PopplerActionGotoDest">PopplerActionGotoDest</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionGotoRemote"><link linkend="PopplerActionGotoRemote">PopplerActionGotoRemote</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionLaunch"><link linkend="PopplerActionLaunch">PopplerActionLaunch</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionMovie"><link linkend="PopplerActionMovie">PopplerActionMovie</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionNamed"><link linkend="PopplerActionNamed">PopplerActionNamed</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionType"><link linkend="PopplerActionType">PopplerActionType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerActionUri"><link linkend="PopplerActionUri">PopplerActionUri</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerAnnot"><link linkend="PopplerAnnot">PopplerAnnot</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerAttachment-struct"><link linkend="PopplerAttachment">PopplerAttachment</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerAttachmentSaveFunc"><link linkend="PopplerAttachmentSaveFunc">PopplerAttachmentSaveFunc</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerBackend"><link linkend="PopplerBackend">PopplerBackend</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDest"><link linkend="PopplerDest">PopplerDest</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDestType"><link linkend="PopplerDestType">PopplerDestType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument-struct"><link linkend="PopplerDocument">PopplerDocument</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--author"><link linkend="PopplerDocument--author">PopplerDocument:author</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--creation-date"><link linkend="PopplerDocument--creation-date">PopplerDocument:creation-date</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--creator"><link linkend="PopplerDocument--creator">PopplerDocument:creator</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--format"><link linkend="PopplerDocument--format">PopplerDocument:format</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--format-major"><link linkend="PopplerDocument--format-major">PopplerDocument:format-major</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--format-minor"><link linkend="PopplerDocument--format-minor">PopplerDocument:format-minor</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--keywords"><link linkend="PopplerDocument--keywords">PopplerDocument:keywords</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--linearized"><link linkend="PopplerDocument--linearized">PopplerDocument:linearized</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--metadata"><link linkend="PopplerDocument--metadata">PopplerDocument:metadata</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--mod-date"><link linkend="PopplerDocument--mod-date">PopplerDocument:mod-date</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--page-layout"><link linkend="PopplerDocument--page-layout">PopplerDocument:page-layout</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--page-mode"><link linkend="PopplerDocument--page-mode">PopplerDocument:page-mode</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--permissions"><link linkend="PopplerDocument--permissions">PopplerDocument:permissions</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--producer"><link linkend="PopplerDocument--producer">PopplerDocument:producer</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--subject"><link linkend="PopplerDocument--subject">PopplerDocument:subject</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--title"><link linkend="PopplerDocument--title">PopplerDocument:title</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerDocument--viewer-preferences"><link linkend="PopplerDocument--viewer-preferences">PopplerDocument:viewer-preferences</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerError"><link linkend="PopplerError">PopplerError</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFontInfo"><link linkend="PopplerFontInfo">PopplerFontInfo</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFontsIter"><link linkend="PopplerFontsIter">PopplerFontsIter</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFontType"><link linkend="PopplerFontType">PopplerFontType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFormButtonType"><link linkend="PopplerFormButtonType">PopplerFormButtonType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFormChoiceType"><link linkend="PopplerFormChoiceType">PopplerFormChoiceType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFormField-struct"><link linkend="PopplerFormField">PopplerFormField</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFormFieldMapping"><link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFormFieldType"><link linkend="PopplerFormFieldType">PopplerFormFieldType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerFormTextType"><link linkend="PopplerFormTextType">PopplerFormTextType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerImageMapping"><link linkend="PopplerImageMapping">PopplerImageMapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerIndexIter"><link linkend="PopplerIndexIter">PopplerIndexIter</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerLinkMapping"><link linkend="PopplerLinkMapping">PopplerLinkMapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerOrientation"><link linkend="PopplerOrientation">PopplerOrientation</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPage-struct"><link linkend="PopplerPage">PopplerPage</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPage--label"><link linkend="PopplerPage--label">PopplerPage:label</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPageLayout"><link linkend="PopplerPageLayout">PopplerPageLayout</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPageMode"><link linkend="PopplerPageMode">PopplerPageMode</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPageTransition"><link linkend="PopplerPageTransition">PopplerPageTransition</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPageTransitionAlignment"><link linkend="PopplerPageTransitionAlignment">PopplerPageTransitionAlignment</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPageTransitionDirection"><link linkend="PopplerPageTransitionDirection">PopplerPageTransitionDirection</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPageTransitionType"><link linkend="PopplerPageTransitionType">PopplerPageTransitionType</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPermissions"><link linkend="PopplerPermissions">PopplerPermissions</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerPSFile"><link linkend="PopplerPSFile">PopplerPSFile</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerRectangle"><link linkend="PopplerRectangle">PopplerRectangle</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerSelectionStyle"><link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link></primaryie></indexentry>
+<indexentry><primaryie linkends="PopplerViewerPreferences"><link linkend="PopplerViewerPreferences">PopplerViewerPreferences</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-ACTION--CAPS"><link linkend="POPPLER-ACTION--CAPS">POPPLER_ACTION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-action-copy"><link linkend="poppler-action-copy">poppler_action_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-action-free"><link linkend="poppler-action-free">poppler_action_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-action-get-type"><link linkend="poppler-action-get-type">poppler_action_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-action-type-get-type"><link linkend="poppler-action-type-get-type">poppler_action_type_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-callout-line-copy"><link linkend="poppler-annot-callout-line-copy">poppler_annot_callout_line_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-callout-line-free"><link linkend="poppler-annot-callout-line-free">poppler_annot_callout_line_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-callout-line-get-type"><link linkend="poppler-annot-callout-line-get-type">poppler_annot_callout_line_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-callout-line-new"><link linkend="poppler-annot-callout-line-new">poppler_annot_callout_line_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-external-data-type-get-type"><link linkend="poppler-annot-external-data-type-get-type">poppler_annot_external_data_type_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-flag-get-type"><link linkend="poppler-annot-flag-get-type">poppler_annot_flag_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-free-text-get-callout-line"><link linkend="poppler-annot-free-text-get-callout-line">poppler_annot_free_text_get_callout_line</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-free-text-get-quadding"><link linkend="poppler-annot-free-text-get-quadding">poppler_annot_free_text_get_quadding</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-free-text-get-type"><link linkend="poppler-annot-free-text-get-type">poppler_annot_free_text_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-free-text-quadding-get-type"><link linkend="poppler-annot-free-text-quadding-get-type">poppler_annot_free_text_quadding_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-get-annot-type"><link linkend="poppler-annot-get-annot-type">poppler_annot_get_annot_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-get-color"><link linkend="poppler-annot-get-color">poppler_annot_get_color</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-get-contents"><link linkend="poppler-annot-get-contents">poppler_annot_get_contents</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-get-flags"><link linkend="poppler-annot-get-flags">poppler_annot_get_flags</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-get-modified"><link linkend="poppler-annot-get-modified">poppler_annot_get_modified</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-get-name"><link linkend="poppler-annot-get-name">poppler_annot_get_name</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-get-type"><link linkend="poppler-annot-get-type">poppler_annot_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-mapping-copy"><link linkend="poppler-annot-mapping-copy">poppler_annot_mapping_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-mapping-free"><link linkend="poppler-annot-mapping-free">poppler_annot_mapping_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-mapping-get-type"><link linkend="poppler-annot-mapping-get-type">poppler_annot_mapping_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-mapping-new"><link linkend="poppler-annot-mapping-new">poppler_annot_mapping_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-date"><link linkend="poppler-annot-markup-get-date">poppler_annot_markup_get_date</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-external-data"><link linkend="poppler-annot-markup-get-external-data">poppler_annot_markup_get_external_data</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-label"><link linkend="poppler-annot-markup-get-label">poppler_annot_markup_get_label</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-opacity"><link linkend="poppler-annot-markup-get-opacity">poppler_annot_markup_get_opacity</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-popup-is-open"><link linkend="poppler-annot-markup-get-popup-is-open">poppler_annot_markup_get_popup_is_open</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-reply-to"><link linkend="poppler-annot-markup-get-reply-to">poppler_annot_markup_get_reply_to</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-subject"><link linkend="poppler-annot-markup-get-subject">poppler_annot_markup_get_subject</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-get-type"><link linkend="poppler-annot-markup-get-type">poppler_annot_markup_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-markup-reply-type-get-type"><link linkend="poppler-annot-markup-reply-type-get-type">poppler_annot_markup_reply_type_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-text-get-icon"><link linkend="poppler-annot-text-get-icon">poppler_annot_text_get_icon</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-text-get-is-open"><link linkend="poppler-annot-text-get-is-open">poppler_annot_text_get_is_open</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-text-get-state"><link linkend="poppler-annot-text-get-state">poppler_annot_text_get_state</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-text-get-type"><link linkend="poppler-annot-text-get-type">poppler_annot_text_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-text-state-get-type"><link linkend="poppler-annot-text-state-get-type">poppler_annot_text_state_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-annot-type-get-type"><link linkend="poppler-annot-type-get-type">poppler_annot_type_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-attachment-save"><link linkend="poppler-attachment-save">poppler_attachment_save</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-attachment-save-to-callback"><link linkend="poppler-attachment-save-to-callback">poppler_attachment_save_to_callback</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-backend-get-type"><link linkend="poppler-backend-get-type">poppler_backend_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-CHECK-VERSION--CAPS"><link linkend="POPPLER-CHECK-VERSION--CAPS">POPPLER_CHECK_VERSION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-dest-copy"><link linkend="poppler-dest-copy">poppler_dest_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-dest-free"><link linkend="poppler-dest-free">poppler_dest_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-dest-get-type"><link linkend="poppler-dest-get-type">poppler_dest_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-dest-type-get-type"><link linkend="poppler-dest-type-get-type">poppler_dest_type_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-find-dest"><link linkend="poppler-document-find-dest">poppler_document_find_dest</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-get-attachments"><link linkend="poppler-document-get-attachments">poppler_document_get_attachments</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-get-form-field"><link linkend="poppler-document-get-form-field">poppler_document_get_form_field</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-get-n-pages"><link linkend="poppler-document-get-n-pages">poppler_document_get_n_pages</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-get-page"><link linkend="poppler-document-get-page">poppler_document_get_page</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-get-page-by-label"><link linkend="poppler-document-get-page-by-label">poppler_document_get_page_by_label</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-has-attachments"><link linkend="poppler-document-has-attachments">poppler_document_has_attachments</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-new-from-data"><link linkend="poppler-document-new-from-data">poppler_document_new_from_data</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-new-from-file"><link linkend="poppler-document-new-from-file">poppler_document_new_from_file</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-document-save"><link linkend="poppler-document-save">poppler_document_save</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-ERROR--CAPS"><link linkend="POPPLER-ERROR--CAPS">POPPLER_ERROR</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-error-get-type"><link linkend="poppler-error-get-type">poppler_error_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-error-quark"><link linkend="poppler-error-quark">poppler_error_quark</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-copy"><link linkend="poppler-fonts-iter-copy">poppler_fonts_iter_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-free"><link linkend="poppler-fonts-iter-free">poppler_fonts_iter_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-get-font-type"><link linkend="poppler-fonts-iter-get-font-type">poppler_fonts_iter_get_font_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-get-full-name"><link linkend="poppler-fonts-iter-get-full-name">poppler_fonts_iter_get_full_name</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-get-name"><link linkend="poppler-fonts-iter-get-name">poppler_fonts_iter_get_name</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-get-type"><link linkend="poppler-fonts-iter-get-type">poppler_fonts_iter_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-is-embedded"><link linkend="poppler-fonts-iter-is-embedded">poppler_fonts_iter_is_embedded</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-is-subset"><link linkend="poppler-fonts-iter-is-subset">poppler_fonts_iter_is_subset</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-fonts-iter-next"><link linkend="poppler-fonts-iter-next">poppler_fonts_iter_next</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-font-info-free"><link linkend="poppler-font-info-free">poppler_font_info_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-font-info-new"><link linkend="poppler-font-info-new">poppler_font_info_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-font-info-scan"><link linkend="poppler-font-info-scan">poppler_font_info_scan</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-font-type-get-type"><link linkend="poppler-font-type-get-type">poppler_font_type_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-button-get-button-type"><link linkend="poppler-form-field-button-get-button-type">poppler_form_field_button_get_button_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-button-get-state"><link linkend="poppler-form-field-button-get-state">poppler_form_field_button_get_state</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-button-set-state"><link linkend="poppler-form-field-button-set-state">poppler_form_field_button_set_state</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-can-select-multiple"><link linkend="poppler-form-field-choice-can-select-multiple">poppler_form_field_choice_can_select_multiple</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-commit-on-change"><link linkend="poppler-form-field-choice-commit-on-change">poppler_form_field_choice_commit_on_change</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-do-spell-check"><link linkend="poppler-form-field-choice-do-spell-check">poppler_form_field_choice_do_spell_check</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-get-choice-type"><link linkend="poppler-form-field-choice-get-choice-type">poppler_form_field_choice_get_choice_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-get-item"><link linkend="poppler-form-field-choice-get-item">poppler_form_field_choice_get_item</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-get-n-items"><link linkend="poppler-form-field-choice-get-n-items">poppler_form_field_choice_get_n_items</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-get-text"><link linkend="poppler-form-field-choice-get-text">poppler_form_field_choice_get_text</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-is-editable"><link linkend="poppler-form-field-choice-is-editable">poppler_form_field_choice_is_editable</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-is-item-selected"><link linkend="poppler-form-field-choice-is-item-selected">poppler_form_field_choice_is_item_selected</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-select-item"><link linkend="poppler-form-field-choice-select-item">poppler_form_field_choice_select_item</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-set-text"><link linkend="poppler-form-field-choice-set-text">poppler_form_field_choice_set_text</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-toggle-item"><link linkend="poppler-form-field-choice-toggle-item">poppler_form_field_choice_toggle_item</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-choice-unselect-all"><link linkend="poppler-form-field-choice-unselect-all">poppler_form_field_choice_unselect_all</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-get-field-type"><link linkend="poppler-form-field-get-field-type">poppler_form_field_get_field_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-get-font-size"><link linkend="poppler-form-field-get-font-size">poppler_form_field_get_font_size</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-get-id"><link linkend="poppler-form-field-get-id">poppler_form_field_get_id</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-is-read-only"><link linkend="poppler-form-field-is-read-only">poppler_form_field_is_read_only</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-mapping-copy"><link linkend="poppler-form-field-mapping-copy">poppler_form_field_mapping_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-mapping-free"><link linkend="poppler-form-field-mapping-free">poppler_form_field_mapping_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-mapping-get-type"><link linkend="poppler-form-field-mapping-get-type">poppler_form_field_mapping_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-mapping-new"><link linkend="poppler-form-field-mapping-new">poppler_form_field_mapping_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-do-scroll"><link linkend="poppler-form-field-text-do-scroll">poppler_form_field_text_do_scroll</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-do-spell-check"><link linkend="poppler-form-field-text-do-spell-check">poppler_form_field_text_do_spell_check</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-get-max-len"><link linkend="poppler-form-field-text-get-max-len">poppler_form_field_text_get_max_len</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-get-text"><link linkend="poppler-form-field-text-get-text">poppler_form_field_text_get_text</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-get-text-type"><link linkend="poppler-form-field-text-get-text-type">poppler_form_field_text_get_text_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-is-password"><link linkend="poppler-form-field-text-is-password">poppler_form_field_text_is_password</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-is-rich-text"><link linkend="poppler-form-field-text-is-rich-text">poppler_form_field_text_is_rich_text</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-form-field-text-set-text"><link linkend="poppler-form-field-text-set-text">poppler_form_field_text_set_text</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-get-backend"><link linkend="poppler-get-backend">poppler_get_backend</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-get-version"><link linkend="poppler-get-version">poppler_get_version</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-HAS-CAIRO--CAPS"><link linkend="POPPLER-HAS-CAIRO--CAPS">POPPLER_HAS_CAIRO</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-image-mapping-copy"><link linkend="poppler-image-mapping-copy">poppler_image_mapping_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-image-mapping-free"><link linkend="poppler-image-mapping-free">poppler_image_mapping_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-image-mapping-get-type"><link linkend="poppler-image-mapping-get-type">poppler_image_mapping_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-image-mapping-new"><link linkend="poppler-image-mapping-new">poppler_image_mapping_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-copy"><link linkend="poppler-index-iter-copy">poppler_index_iter_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-free"><link linkend="poppler-index-iter-free">poppler_index_iter_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-get-action"><link linkend="poppler-index-iter-get-action">poppler_index_iter_get_action</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-get-child"><link linkend="poppler-index-iter-get-child">poppler_index_iter_get_child</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-get-type"><link linkend="poppler-index-iter-get-type">poppler_index_iter_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-is-open"><link linkend="poppler-index-iter-is-open">poppler_index_iter_is_open</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-new"><link linkend="poppler-index-iter-new">poppler_index_iter_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-index-iter-next"><link linkend="poppler-index-iter-next">poppler_index_iter_next</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-layer-get-radio-button-group-id"><link linkend="poppler-layer-get-radio-button-group-id">poppler_layer_get_radio_button_group_id</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-layer-get-title"><link linkend="poppler-layer-get-title">poppler_layer_get_title</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-layer-get-type"><link linkend="poppler-layer-get-type">poppler_layer_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-layer-hide"><link linkend="poppler-layer-hide">poppler_layer_hide</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-layer-is-parent"><link linkend="poppler-layer-is-parent">poppler_layer_is_parent</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-layer-is-visible"><link linkend="poppler-layer-is-visible">poppler_layer_is_visible</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-layer-show"><link linkend="poppler-layer-show">poppler_layer_show</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-link-mapping-copy"><link linkend="poppler-link-mapping-copy">poppler_link_mapping_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-link-mapping-free"><link linkend="poppler-link-mapping-free">poppler_link_mapping_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-link-mapping-get-type"><link linkend="poppler-link-mapping-get-type">poppler_link_mapping_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-link-mapping-new"><link linkend="poppler-link-mapping-new">poppler_link_mapping_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-MAJOR-VERSION--CAPS"><link linkend="POPPLER-MAJOR-VERSION--CAPS">POPPLER_MAJOR_VERSION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-MICRO-VERSION--CAPS"><link linkend="POPPLER-MICRO-VERSION--CAPS">POPPLER_MICRO_VERSION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-MINOR-VERSION--CAPS"><link linkend="POPPLER-MINOR-VERSION--CAPS">POPPLER_MINOR_VERSION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-orientation-get-type"><link linkend="poppler-orientation-get-type">poppler_orientation_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-find-text"><link linkend="poppler-page-find-text">poppler_page_find_text</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-free-form-field-mapping"><link linkend="poppler-page-free-form-field-mapping">poppler_page_free_form_field_mapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-free-image-mapping"><link linkend="poppler-page-free-image-mapping">poppler_page_free_image_mapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-free-link-mapping"><link linkend="poppler-page-free-link-mapping">poppler_page_free_link_mapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-duration"><link linkend="poppler-page-get-duration">poppler_page_get_duration</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-form-field-mapping"><link linkend="poppler-page-get-form-field-mapping">poppler_page_get_form_field_mapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-image-mapping"><link linkend="poppler-page-get-image-mapping">poppler_page_get_image_mapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-index"><link linkend="poppler-page-get-index">poppler_page_get_index</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-link-mapping"><link linkend="poppler-page-get-link-mapping">poppler_page_get_link_mapping</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-selection-region"><link linkend="poppler-page-get-selection-region">poppler_page_get_selection_region</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-size"><link linkend="poppler-page-get-size">poppler_page_get_size</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-text"><link linkend="poppler-page-get-text">poppler_page_get_text</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-thumbnail"><link linkend="poppler-page-get-thumbnail">poppler_page_get_thumbnail</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-thumbnail-size"><link linkend="poppler-page-get-thumbnail-size">poppler_page_get_thumbnail_size</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-get-transition"><link linkend="poppler-page-get-transition">poppler_page_get_transition</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-layout-get-type"><link linkend="poppler-page-layout-get-type">poppler_page_layout_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-mode-get-type"><link linkend="poppler-page-mode-get-type">poppler_page_mode_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-render"><link linkend="poppler-page-render">poppler_page_render</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-render-selection"><link linkend="poppler-page-render-selection">poppler_page_render_selection</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-render-selection-to-pixbuf"><link linkend="poppler-page-render-selection-to-pixbuf">poppler_page_render_selection_to_pixbuf</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-render-to-pixbuf"><link linkend="poppler-page-render-to-pixbuf">poppler_page_render_to_pixbuf</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-render-to-ps"><link linkend="poppler-page-render-to-ps">poppler_page_render_to_ps</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-transition-alignment-get-type"><link linkend="poppler-page-transition-alignment-get-type">poppler_page_transition_alignment_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-transition-copy"><link linkend="poppler-page-transition-copy">poppler_page_transition_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-transition-direction-get-type"><link linkend="poppler-page-transition-direction-get-type">poppler_page_transition_direction_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-transition-free"><link linkend="poppler-page-transition-free">poppler_page_transition_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-transition-get-type"><link linkend="poppler-page-transition-get-type">poppler_page_transition_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-transition-new"><link linkend="poppler-page-transition-new">poppler_page_transition_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-page-transition-type-get-type"><link linkend="poppler-page-transition-type-get-type">poppler_page_transition_type_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-permissions-get-type"><link linkend="poppler-permissions-get-type">poppler_permissions_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-ps-file-free"><link linkend="poppler-ps-file-free">poppler_ps_file_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-ps-file-new"><link linkend="poppler-ps-file-new">poppler_ps_file_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-ps-file-set-duplex"><link linkend="poppler-ps-file-set-duplex">poppler_ps_file_set_duplex</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-ps-file-set-paper-size"><link linkend="poppler-ps-file-set-paper-size">poppler_ps_file_set_paper_size</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-rectangle-copy"><link linkend="poppler-rectangle-copy">poppler_rectangle_copy</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-rectangle-free"><link linkend="poppler-rectangle-free">poppler_rectangle_free</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-rectangle-get-type"><link linkend="poppler-rectangle-get-type">poppler_rectangle_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-rectangle-new"><link linkend="poppler-rectangle-new">poppler_rectangle_new</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-selection-style-get-type"><link linkend="poppler-selection-style-get-type">poppler_selection_style_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-ACTION--CAPS"><link linkend="POPPLER-TYPE-ACTION--CAPS">POPPLER_TYPE_ACTION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-ACTION-TYPE--CAPS"><link linkend="POPPLER-TYPE-ACTION-TYPE--CAPS">POPPLER_TYPE_ACTION_TYPE</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-BACKEND--CAPS"><link linkend="POPPLER-TYPE-BACKEND--CAPS">POPPLER_TYPE_BACKEND</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-DEST--CAPS"><link linkend="POPPLER-TYPE-DEST--CAPS">POPPLER_TYPE_DEST</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-DEST-TYPE--CAPS"><link linkend="POPPLER-TYPE-DEST-TYPE--CAPS">POPPLER_TYPE_DEST_TYPE</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-ERROR--CAPS"><link linkend="POPPLER-TYPE-ERROR--CAPS">POPPLER_TYPE_ERROR</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-FONT-TYPE--CAPS"><link linkend="POPPLER-TYPE-FONT-TYPE--CAPS">POPPLER_TYPE_FONT_TYPE</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS"><link linkend="POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS">POPPLER_TYPE_FORM_FIELD_MAPPING</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-IMAGE-MAPPING--CAPS"><link linkend="POPPLER-TYPE-IMAGE-MAPPING--CAPS">POPPLER_TYPE_IMAGE_MAPPING</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-LINK-MAPPING--CAPS"><link linkend="POPPLER-TYPE-LINK-MAPPING--CAPS">POPPLER_TYPE_LINK_MAPPING</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-ORIENTATION--CAPS"><link linkend="POPPLER-TYPE-ORIENTATION--CAPS">POPPLER_TYPE_ORIENTATION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-PAGE-LAYOUT--CAPS"><link linkend="POPPLER-TYPE-PAGE-LAYOUT--CAPS">POPPLER_TYPE_PAGE_LAYOUT</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-PAGE-MODE--CAPS"><link linkend="POPPLER-TYPE-PAGE-MODE--CAPS">POPPLER_TYPE_PAGE_MODE</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-PAGE-TRANSITION--CAPS"><link linkend="POPPLER-TYPE-PAGE-TRANSITION--CAPS">POPPLER_TYPE_PAGE_TRANSITION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS"><link linkend="POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS">POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS"><link linkend="POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS">POPPLER_TYPE_PAGE_TRANSITION_DIRECTION</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS"><link linkend="POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS">POPPLER_TYPE_PAGE_TRANSITION_TYPE</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-PERMISSIONS--CAPS"><link linkend="POPPLER-TYPE-PERMISSIONS--CAPS">POPPLER_TYPE_PERMISSIONS</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-RECTANGLE--CAPS"><link linkend="POPPLER-TYPE-RECTANGLE--CAPS">POPPLER_TYPE_RECTANGLE</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-SELECTION-STYLE--CAPS"><link linkend="POPPLER-TYPE-SELECTION-STYLE--CAPS">POPPLER_TYPE_SELECTION_STYLE</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-TYPE-VIEWER-PREFERENCES--CAPS"><link linkend="POPPLER-TYPE-VIEWER-PREFERENCES--CAPS">POPPLER_TYPE_VIEWER_PREFERENCES</link></primaryie></indexentry>
+<indexentry><primaryie linkends="poppler-viewer-preferences-get-type"><link linkend="poppler-viewer-preferences-get-type">poppler_viewer_preferences_get_type</link></primaryie></indexentry>
+<indexentry><primaryie linkends="POPPLER-WITH-GDK--CAPS"><link linkend="POPPLER-WITH-GDK--CAPS">POPPLER_WITH_GDK</link></primaryie></indexentry>
+</indexdiv>
+</indexdiv>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-action.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-action.xml
new file mode 100644
index 00000000000..c4dfb6aa8da
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-action.xml
@@ -0,0 +1,295 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-action">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-action.top_of_page">PopplerAction</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>PopplerAction</refname>
+<refpurpose>Action links</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-action.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+
+<synopsis>
+enum <link linkend="PopplerActionType">PopplerActionType</link>;
+enum <link linkend="PopplerDestType">PopplerDestType</link>;
+ <link linkend="PopplerActionAny">PopplerActionAny</link>;
+ <link linkend="PopplerActionGotoDest">PopplerActionGotoDest</link>;
+ <link linkend="PopplerActionGotoRemote">PopplerActionGotoRemote</link>;
+ <link linkend="PopplerActionLaunch">PopplerActionLaunch</link>;
+ <link linkend="PopplerActionUri">PopplerActionUri</link>;
+ <link linkend="PopplerActionNamed">PopplerActionNamed</link>;
+ <link linkend="PopplerActionMovie">PopplerActionMovie</link>;
+ <link linkend="PopplerDest">PopplerDest</link>;
+union <link linkend="PopplerAction">PopplerAction</link>;
+#define <link linkend="POPPLER-TYPE-ACTION--CAPS">POPPLER_TYPE_ACTION</link>
+#define <link linkend="POPPLER-ACTION--CAPS">POPPLER_ACTION</link> (obj)
+<link linkend="GType">GType</link> <link linkend="poppler-action-get-type">poppler_action_get_type</link> (void);
+<link linkend="PopplerAction">PopplerAction</link> * <link linkend="poppler-action-copy">poppler_action_copy</link> (<link linkend="PopplerAction">PopplerAction</link> *action);
+<link linkend="void">void</link> <link linkend="poppler-action-free">poppler_action_free</link> (<link linkend="PopplerAction">PopplerAction</link> *action);
+#define <link linkend="POPPLER-TYPE-DEST--CAPS">POPPLER_TYPE_DEST</link>
+<link linkend="GType">GType</link> <link linkend="poppler-dest-get-type">poppler_dest_get_type</link> (void);
+<link linkend="PopplerDest">PopplerDest</link> * <link linkend="poppler-dest-copy">poppler_dest_copy</link> (<link linkend="PopplerDest">PopplerDest</link> *dest);
+<link linkend="void">void</link> <link linkend="poppler-dest-free">poppler_dest_free</link> (<link linkend="PopplerDest">PopplerDest</link> *dest);
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-action.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-action.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="PopplerActionType" role="enum">
+<title>enum PopplerActionType</title>
+<indexterm zone="PopplerActionType"><primary sortas="PopplerActionType">PopplerActionType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_ACTION_UNKNOWN, /* unknown action */
+ POPPLER_ACTION_NONE, /* no action specified */
+ POPPLER_ACTION_GOTO_DEST, /* go to destination */
+ POPPLER_ACTION_GOTO_REMOTE, /* go to destination in new file */
+ POPPLER_ACTION_LAUNCH, /* launch app (or open document) */
+ POPPLER_ACTION_URI, /* URI */
+ POPPLER_ACTION_NAMED, /* named action*/
+ POPPLER_ACTION_MOVIE /* movie action */
+} PopplerActionType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerDestType" role="enum">
+<title>enum PopplerDestType</title>
+<indexterm zone="PopplerDestType"><primary sortas="PopplerDestType">PopplerDestType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_DEST_UNKNOWN,
+ POPPLER_DEST_XYZ,
+ POPPLER_DEST_FIT,
+ POPPLER_DEST_FITH,
+ POPPLER_DEST_FITV,
+ POPPLER_DEST_FITR,
+ POPPLER_DEST_FITB,
+ POPPLER_DEST_FITBH,
+ POPPLER_DEST_FITBV,
+ POPPLER_DEST_NAMED
+} PopplerDestType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerActionAny" role="struct">
+<title>PopplerActionAny</title>
+<indexterm zone="PopplerActionAny"><primary sortas="PopplerActionAny">PopplerActionAny</primary></indexterm><programlisting>typedef struct {
+ PopplerActionType type;
+ gchar *title;
+} PopplerActionAny;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerActionGotoDest" role="struct">
+<title>PopplerActionGotoDest</title>
+<indexterm zone="PopplerActionGotoDest"><primary sortas="PopplerActionGotoDest">PopplerActionGotoDest</primary></indexterm><programlisting>typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ PopplerDest *dest;
+} PopplerActionGotoDest;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerActionGotoRemote" role="struct">
+<title>PopplerActionGotoRemote</title>
+<indexterm zone="PopplerActionGotoRemote"><primary sortas="PopplerActionGotoRemote">PopplerActionGotoRemote</primary></indexterm><programlisting>typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *file_name;
+ PopplerDest *dest;
+} PopplerActionGotoRemote;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerActionLaunch" role="struct">
+<title>PopplerActionLaunch</title>
+<indexterm zone="PopplerActionLaunch"><primary sortas="PopplerActionLaunch">PopplerActionLaunch</primary></indexterm><programlisting>typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *file_name;
+ gchar *params;
+} PopplerActionLaunch;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerActionUri" role="struct">
+<title>PopplerActionUri</title>
+<indexterm zone="PopplerActionUri"><primary sortas="PopplerActionUri">PopplerActionUri</primary></indexterm><programlisting>typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ char *uri;
+} PopplerActionUri;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerActionNamed" role="struct">
+<title>PopplerActionNamed</title>
+<indexterm zone="PopplerActionNamed"><primary sortas="PopplerActionNamed">PopplerActionNamed</primary></indexterm><programlisting>typedef struct {
+ PopplerActionType type;
+ gchar *title;
+
+ gchar *named_dest;
+} PopplerActionNamed;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerActionMovie" role="struct">
+<title>PopplerActionMovie</title>
+<indexterm zone="PopplerActionMovie"><primary sortas="PopplerActionMovie">PopplerActionMovie</primary></indexterm><programlisting>typedef struct {
+ PopplerActionType type;
+ gchar *title;
+} PopplerActionMovie;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerDest" role="struct">
+<title>PopplerDest</title>
+<indexterm zone="PopplerDest"><primary sortas="PopplerDest">PopplerDest</primary></indexterm><programlisting>typedef struct {
+ PopplerDestType type;
+
+ int page_num;
+ double left;
+ double bottom;
+ double right;
+ double top;
+ double zoom;
+ gchar *named_dest;
+ guint change_left : 1;
+ guint change_top : 1;
+ guint change_zoom : 1;
+} PopplerDest;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerAction" role="union">
+<title>union PopplerAction</title>
+<indexterm zone="PopplerAction"><primary sortas="PopplerAction">PopplerAction</primary></indexterm><programlisting>union PopplerAction
+{
+ PopplerActionType type;
+ PopplerActionAny any;
+ PopplerActionGotoDest goto_dest;
+ PopplerActionGotoRemote goto_remote;
+ PopplerActionLaunch launch;
+ PopplerActionUri uri;
+ PopplerActionNamed named;
+ PopplerActionMovie movie;
+};
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="POPPLER-TYPE-ACTION--CAPS" role="macro">
+<title>POPPLER_TYPE_ACTION</title>
+<indexterm zone="POPPLER-TYPE-ACTION--CAPS"><primary sortas="POPPLER_TYPE_ACTION">POPPLER_TYPE_ACTION</primary></indexterm><programlisting>#define POPPLER_TYPE_ACTION (poppler_action_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="POPPLER-ACTION--CAPS" role="macro">
+<title>POPPLER_ACTION()</title>
+<indexterm zone="POPPLER-ACTION--CAPS"><primary sortas="POPPLER_ACTION">POPPLER_ACTION</primary></indexterm><programlisting>#define POPPLER_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ACTION, PopplerAction))
+</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>obj</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-action-get-type" role="function">
+<title>poppler_action_get_type ()</title>
+<indexterm zone="poppler-action-get-type"><primary sortas="poppler_action_get_type">poppler_action_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_action_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-action-copy" role="function">
+<title>poppler_action_copy ()</title>
+<indexterm zone="poppler-action-copy"><primary sortas="poppler_action_copy">poppler_action_copy</primary></indexterm><programlisting><link linkend="PopplerAction">PopplerAction</link> * poppler_action_copy (<link linkend="PopplerAction">PopplerAction</link> *action);</programlisting>
+<para>
+Copies <parameter>action</parameter>, creating an identical <link linkend="PopplerAction"><type>PopplerAction</type></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>action</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAction"><type>PopplerAction</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new action identical to <parameter>action</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-action-free" role="function">
+<title>poppler_action_free ()</title>
+<indexterm zone="poppler-action-free"><primary sortas="poppler_action_free">poppler_action_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_action_free (<link linkend="PopplerAction">PopplerAction</link> *action);</programlisting>
+<para>
+Frees <parameter>action</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>action</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAction"><type>PopplerAction</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-DEST--CAPS" role="macro">
+<title>POPPLER_TYPE_DEST</title>
+<indexterm zone="POPPLER-TYPE-DEST--CAPS"><primary sortas="POPPLER_TYPE_DEST">POPPLER_TYPE_DEST</primary></indexterm><programlisting>#define POPPLER_TYPE_DEST (poppler_dest_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-dest-get-type" role="function">
+<title>poppler_dest_get_type ()</title>
+<indexterm zone="poppler-dest-get-type"><primary sortas="poppler_dest_get_type">poppler_dest_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_dest_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-dest-copy" role="function">
+<title>poppler_dest_copy ()</title>
+<indexterm zone="poppler-dest-copy"><primary sortas="poppler_dest_copy">poppler_dest_copy</primary></indexterm><programlisting><link linkend="PopplerDest">PopplerDest</link> * poppler_dest_copy (<link linkend="PopplerDest">PopplerDest</link> *dest);</programlisting>
+<para>
+Copies <parameter>dest</parameter>, creating an identical <link linkend="PopplerDest"><type>PopplerDest</type></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>dest</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerDest"><type>PopplerDest</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new destination identical to <parameter>dest</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-dest-free" role="function">
+<title>poppler_dest_free ()</title>
+<indexterm zone="poppler-dest-free"><primary sortas="poppler_dest_free">poppler_dest_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_dest_free (<link linkend="PopplerDest">PopplerDest</link> *dest);</programlisting>
+<para>
+Frees <parameter>dest</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>dest</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerDest"><type>PopplerDest</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-annot.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-annot.xml
new file mode 100644
index 00000000000..555535b15c3
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-annot.xml
@@ -0,0 +1,511 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-annot">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-annot.top_of_page">PopplerAnnot</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>PopplerAnnot</refname>
+<refpurpose>Annotations</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-annot.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+
+<synopsis>
+ <link linkend="PopplerAnnot">PopplerAnnot</link>;
+<link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> * <link linkend="poppler-annot-callout-line-copy">poppler_annot_callout_line_copy</link>
+ (<link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> *callout);
+<link linkend="void">void</link> <link linkend="poppler-annot-callout-line-free">poppler_annot_callout_line_free</link> (<link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> *callout);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-callout-line-get-type">poppler_annot_callout_line_get_type</link> (void);
+<link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> * <link linkend="poppler-annot-callout-line-new">poppler_annot_callout_line_new</link>
+ (void);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-external-data-type-get-type">poppler_annot_external_data_type_get_type</link>
+ (void);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-flag-get-type">poppler_annot_flag_get_type</link> (void);
+<link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> * <link linkend="poppler-annot-free-text-get-callout-line">poppler_annot_free_text_get_callout_line</link>
+ (<link linkend="PopplerAnnotFreeText">PopplerAnnotFreeText</link> *poppler_annot);
+<link linkend="PopplerAnnotFreeTextQuadding">PopplerAnnotFreeTextQuadding</link> <link linkend="poppler-annot-free-text-get-quadding">poppler_annot_free_text_get_quadding</link>
+ (<link linkend="PopplerAnnotFreeText">PopplerAnnotFreeText</link> *poppler_annot);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-free-text-get-type">poppler_annot_free_text_get_type</link> (void);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-free-text-quadding-get-type">poppler_annot_free_text_quadding_get_type</link>
+ (void);
+<link linkend="PopplerAnnotType">PopplerAnnotType</link> <link linkend="poppler-annot-get-annot-type">poppler_annot_get_annot_type</link> (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);
+<link linkend="PopplerColor">PopplerColor</link> * <link linkend="poppler-annot-get-color">poppler_annot_get_color</link> (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-annot-get-contents">poppler_annot_get_contents</link> (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);
+<link linkend="PopplerAnnotFlag">PopplerAnnotFlag</link> <link linkend="poppler-annot-get-flags">poppler_annot_get_flags</link> (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-annot-get-modified">poppler_annot_get_modified</link> (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-annot-get-name">poppler_annot_get_name</link> (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-get-type">poppler_annot_get_type</link> (void);
+<link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> * <link linkend="poppler-annot-mapping-copy">poppler_annot_mapping_copy</link> (<link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> *mapping);
+<link linkend="void">void</link> <link linkend="poppler-annot-mapping-free">poppler_annot_mapping_free</link> (<link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> *mapping);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-mapping-get-type">poppler_annot_mapping_get_type</link> (void);
+<link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> * <link linkend="poppler-annot-mapping-new">poppler_annot_mapping_new</link> (void);
+<link linkend="GDate">GDate</link> * <link linkend="poppler-annot-markup-get-date">poppler_annot_markup_get_date</link> (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);
+<link linkend="PopplerAnnotExternalDataType">PopplerAnnotExternalDataType</link> <link linkend="poppler-annot-markup-get-external-data">poppler_annot_markup_get_external_data</link>
+ (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-annot-markup-get-label">poppler_annot_markup_get_label</link> (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);
+<link linkend="gdouble">gdouble</link> <link linkend="poppler-annot-markup-get-opacity">poppler_annot_markup_get_opacity</link> (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-annot-markup-get-popup-is-open">poppler_annot_markup_get_popup_is_open</link>
+ (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);
+<link linkend="PopplerAnnotMarkupReplyType">PopplerAnnotMarkupReplyType</link> <link linkend="poppler-annot-markup-get-reply-to">poppler_annot_markup_get_reply_to</link>
+ (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-annot-markup-get-subject">poppler_annot_markup_get_subject</link> (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-markup-get-type">poppler_annot_markup_get_type</link> (void);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-markup-reply-type-get-type">poppler_annot_markup_reply_type_get_type</link>
+ (void);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-annot-text-get-icon">poppler_annot_text_get_icon</link> (<link linkend="PopplerAnnotText">PopplerAnnotText</link> *poppler_annot);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-annot-text-get-is-open">poppler_annot_text_get_is_open</link> (<link linkend="PopplerAnnotText">PopplerAnnotText</link> *poppler_annot);
+<link linkend="PopplerAnnotTextState">PopplerAnnotTextState</link> <link linkend="poppler-annot-text-get-state">poppler_annot_text_get_state</link> (<link linkend="PopplerAnnotText">PopplerAnnotText</link> *poppler_annot);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-text-get-type">poppler_annot_text_get_type</link> (void);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-text-state-get-type">poppler_annot_text_state_get_type</link> (void);
+<link linkend="GType">GType</link> <link linkend="poppler-annot-type-get-type">poppler_annot_type_get_type</link> (void);
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-annot.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-annot.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="PopplerAnnot" role="struct">
+<title>PopplerAnnot</title>
+<indexterm zone="PopplerAnnot"><primary sortas="PopplerAnnot">PopplerAnnot</primary></indexterm><programlisting>typedef struct _PopplerAnnot PopplerAnnot;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-annot-callout-line-copy" role="function">
+<title>poppler_annot_callout_line_copy ()</title>
+<indexterm zone="poppler-annot-callout-line-copy"><primary sortas="poppler_annot_callout_line_copy">poppler_annot_callout_line_copy</primary></indexterm><programlisting><link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> * poppler_annot_callout_line_copy
+ (<link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> *callout);</programlisting>
+<para>
+It does copy <parameter>callout</parameter> to a new <link linkend="PopplerAnnotCalloutLine"><type>PopplerAnnotCalloutLine</type></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>callout</parameter>&#160;:</term>
+<listitem><simpara> the <link linkend="PopplerAnnotCalloutline"><type>PopplerAnnotCalloutline</type></link> to be copied.
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated <link linkend="PopplerAnnotCalloutLine"><type>PopplerAnnotCalloutLine</type></link> as exact copy of
+ <parameter>callout</parameter>, NULL in other case. It must be freed when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-callout-line-free" role="function">
+<title>poppler_annot_callout_line_free ()</title>
+<indexterm zone="poppler-annot-callout-line-free"><primary sortas="poppler_annot_callout_line_free">poppler_annot_callout_line_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_annot_callout_line_free (<link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> *callout);</programlisting>
+<para>
+Frees the memory used by <link linkend="PopplerAnnotCalloutLine"><type>PopplerAnnotCalloutLine</type></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>callout</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotCalloutLine"><type>PopplerAnnotCalloutLine</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-callout-line-get-type" role="function">
+<title>poppler_annot_callout_line_get_type ()</title>
+<indexterm zone="poppler-annot-callout-line-get-type"><primary sortas="poppler_annot_callout_line_get_type">poppler_annot_callout_line_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_callout_line_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-callout-line-new" role="function">
+<title>poppler_annot_callout_line_new ()</title>
+<indexterm zone="poppler-annot-callout-line-new"><primary sortas="poppler_annot_callout_line_new">poppler_annot_callout_line_new</primary></indexterm><programlisting><link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> * poppler_annot_callout_line_new
+ (void);</programlisting>
+<para>
+Creates a new empty <link linkend="PopplerAnnotCalloutLine"><type>PopplerAnnotCalloutLine</type></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated <link linkend="PopplerAnnotCalloutLine"><type>PopplerAnnotCalloutLine</type></link>, NULL in other case.
+ It must be freed when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-external-data-type-get-type" role="function">
+<title>poppler_annot_external_data_type_get_type ()</title>
+<indexterm zone="poppler-annot-external-data-type-get-type"><primary sortas="poppler_annot_external_data_type_get_type">poppler_annot_external_data_type_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_external_data_type_get_type
+ (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-flag-get-type" role="function">
+<title>poppler_annot_flag_get_type ()</title>
+<indexterm zone="poppler-annot-flag-get-type"><primary sortas="poppler_annot_flag_get_type">poppler_annot_flag_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_flag_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-free-text-get-callout-line" role="function">
+<title>poppler_annot_free_text_get_callout_line ()</title>
+<indexterm zone="poppler-annot-free-text-get-callout-line"><primary sortas="poppler_annot_free_text_get_callout_line">poppler_annot_free_text_get_callout_line</primary></indexterm><programlisting><link linkend="PopplerAnnotCalloutLine">PopplerAnnotCalloutLine</link> * poppler_annot_free_text_get_callout_line
+ (<link linkend="PopplerAnnotFreeText">PopplerAnnotFreeText</link> *poppler_annot);</programlisting>
+<para>
+Retrieves a <link linkend="PopplerCalloutLine"><type>PopplerCalloutLine</type></link> of four or six numbers specifying a callout
+line attached to the <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotFreeText"><type>PopplerAnnotFreeText</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated <link linkend="PopplerCalloutLine"><type>PopplerCalloutLine</type></link> if the annot has a callout
+ line, NULL in other case. It must be freed with <link linkend="g-free"><function>g_free()</function></link> when
+ done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-free-text-get-quadding" role="function">
+<title>poppler_annot_free_text_get_quadding ()</title>
+<indexterm zone="poppler-annot-free-text-get-quadding"><primary sortas="poppler_annot_free_text_get_quadding">poppler_annot_free_text_get_quadding</primary></indexterm><programlisting><link linkend="PopplerAnnotFreeTextQuadding">PopplerAnnotFreeTextQuadding</link> poppler_annot_free_text_get_quadding
+ (<link linkend="PopplerAnnotFreeText">PopplerAnnotFreeText</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the justification of the text of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotFreeText"><type>PopplerAnnotFreeText</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerAnnotFreeTextQuadding"><type>PopplerAnnotFreeTextQuadding</type></link> of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-free-text-get-type" role="function">
+<title>poppler_annot_free_text_get_type ()</title>
+<indexterm zone="poppler-annot-free-text-get-type"><primary sortas="poppler_annot_free_text_get_type">poppler_annot_free_text_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_free_text_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-free-text-quadding-get-type" role="function">
+<title>poppler_annot_free_text_quadding_get_type ()</title>
+<indexterm zone="poppler-annot-free-text-quadding-get-type"><primary sortas="poppler_annot_free_text_quadding_get_type">poppler_annot_free_text_quadding_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_free_text_quadding_get_type
+ (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-get-annot-type" role="function">
+<title>poppler_annot_get_annot_type ()</title>
+<indexterm zone="poppler-annot-get-annot-type"><primary sortas="poppler_annot_get_annot_type">poppler_annot_get_annot_type</primary></indexterm><programlisting><link linkend="PopplerAnnotType">PopplerAnnotType</link> poppler_annot_get_annot_type (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);</programlisting>
+<para>
+Gets the type of <parameter>poppler_annot</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnot"><type>PopplerAnnot</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerAnnotType"><type>PopplerAnnotType</type></link> of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-get-color" role="function">
+<title>poppler_annot_get_color ()</title>
+<indexterm zone="poppler-annot-get-color"><primary sortas="poppler_annot_get_color">poppler_annot_get_color</primary></indexterm><programlisting><link linkend="PopplerColor">PopplerColor</link> * poppler_annot_get_color (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the color of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnot"><type>PopplerAnnot</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated <link linkend="PopplerColor"><type>PopplerColor</type></link> with the color values of
+ <parameter>poppler_annot</parameter>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>. It must be freed with <link linkend="g-free"><function>g_free()</function></link> when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-get-contents" role="function">
+<title>poppler_annot_get_contents ()</title>
+<indexterm zone="poppler-annot-get-contents"><primary sortas="poppler_annot_get_contents">poppler_annot_get_contents</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_annot_get_contents (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the contents of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnot"><type>PopplerAnnot</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated string with the contents of <parameter>poppler_annot</parameter>. It
+ must be freed with <link linkend="g-free"><function>g_free()</function></link> when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-get-flags" role="function">
+<title>poppler_annot_get_flags ()</title>
+<indexterm zone="poppler-annot-get-flags"><primary sortas="poppler_annot_get_flags">poppler_annot_get_flags</primary></indexterm><programlisting><link linkend="PopplerAnnotFlag">PopplerAnnotFlag</link> poppler_annot_get_flags (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the flag field specifying various characteristics of the
+<parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnot"><type>PopplerAnnot</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the flag field of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-get-modified" role="function">
+<title>poppler_annot_get_modified ()</title>
+<indexterm zone="poppler-annot-get-modified"><primary sortas="poppler_annot_get_modified">poppler_annot_get_modified</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_annot_get_modified (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the last modification data of <parameter>poppler_annot</parameter>. The returned
+string will be either a PDF format date or a text string.
+See also #<link linkend="poppler-date-parse"><function>poppler_date_parse()</function></link></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnot"><type>PopplerAnnot</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated string with the last modification data of
+ <parameter>poppler_annot</parameter>. It must be freed with <link linkend="g-free"><function>g_free()</function></link> when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-get-name" role="function">
+<title>poppler_annot_get_name ()</title>
+<indexterm zone="poppler-annot-get-name"><primary sortas="poppler_annot_get_name">poppler_annot_get_name</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_annot_get_name (<link linkend="PopplerAnnot">PopplerAnnot</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the name of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnot"><type>PopplerAnnot</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated string with the name of <parameter>poppler_annot</parameter>. It must
+ be freed with <link linkend="g-free"><function>g_free()</function></link> when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-get-type" role="function">
+<title>poppler_annot_get_type ()</title>
+<indexterm zone="poppler-annot-get-type"><primary sortas="poppler_annot_get_type">poppler_annot_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-mapping-copy" role="function">
+<title>poppler_annot_mapping_copy ()</title>
+<indexterm zone="poppler-annot-mapping-copy"><primary sortas="poppler_annot_mapping_copy">poppler_annot_mapping_copy</primary></indexterm><programlisting><link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> * poppler_annot_mapping_copy (<link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-mapping-free" role="function">
+<title>poppler_annot_mapping_free ()</title>
+<indexterm zone="poppler-annot-mapping-free"><primary sortas="poppler_annot_mapping_free">poppler_annot_mapping_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_annot_mapping_free (<link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-mapping-get-type" role="function">
+<title>poppler_annot_mapping_get_type ()</title>
+<indexterm zone="poppler-annot-mapping-get-type"><primary sortas="poppler_annot_mapping_get_type">poppler_annot_mapping_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_mapping_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-mapping-new" role="function">
+<title>poppler_annot_mapping_new ()</title>
+<indexterm zone="poppler-annot-mapping-new"><primary sortas="poppler_annot_mapping_new">poppler_annot_mapping_new</primary></indexterm><programlisting><link linkend="PopplerAnnotMapping">PopplerAnnotMapping</link> * poppler_annot_mapping_new (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-date" role="function">
+<title>poppler_annot_markup_get_date ()</title>
+<indexterm zone="poppler-annot-markup-get-date"><primary sortas="poppler_annot_markup_get_date">poppler_annot_markup_get_date</primary></indexterm><programlisting><link linkend="GDate">GDate</link> * poppler_annot_markup_get_date (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-external-data" role="function">
+<title>poppler_annot_markup_get_external_data ()</title>
+<indexterm zone="poppler-annot-markup-get-external-data"><primary sortas="poppler_annot_markup_get_external_data">poppler_annot_markup_get_external_data</primary></indexterm><programlisting><link linkend="PopplerAnnotExternalDataType">PopplerAnnotExternalDataType</link> poppler_annot_markup_get_external_data
+ (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);</programlisting>
+<para>
+Gets the external data type of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotMarkup"><type>PopplerAnnotMarkup</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerAnnotExternalDataType"><type>PopplerAnnotExternalDataType</type></link> of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-label" role="function">
+<title>poppler_annot_markup_get_label ()</title>
+<indexterm zone="poppler-annot-markup-get-label"><primary sortas="poppler_annot_markup_get_label">poppler_annot_markup_get_label</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_annot_markup_get_label (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the label text of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotMarkup"><type>PopplerAnnotMarkup</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the label text of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-opacity" role="function">
+<title>poppler_annot_markup_get_opacity ()</title>
+<indexterm zone="poppler-annot-markup-get-opacity"><primary sortas="poppler_annot_markup_get_opacity">poppler_annot_markup_get_opacity</primary></indexterm><programlisting><link linkend="gdouble">gdouble</link> poppler_annot_markup_get_opacity (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the opacity value of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotMarkup"><type>PopplerAnnotMarkup</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the opacity value of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-popup-is-open" role="function">
+<title>poppler_annot_markup_get_popup_is_open ()</title>
+<indexterm zone="poppler-annot-markup-get-popup-is-open"><primary sortas="poppler_annot_markup_get_popup_is_open">poppler_annot_markup_get_popup_is_open</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_annot_markup_get_popup_is_open
+ (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the state of the popup annot related to <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotMarkup"><type>PopplerAnnotMarkup</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the state of <parameter>poppler_annot</parameter>. <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if it's open, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> in
+ other case.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-reply-to" role="function">
+<title>poppler_annot_markup_get_reply_to ()</title>
+<indexterm zone="poppler-annot-markup-get-reply-to"><primary sortas="poppler_annot_markup_get_reply_to">poppler_annot_markup_get_reply_to</primary></indexterm><programlisting><link linkend="PopplerAnnotMarkupReplyType">PopplerAnnotMarkupReplyType</link> poppler_annot_markup_get_reply_to
+ (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);</programlisting>
+<para>
+Gets the reply type of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotMarkup"><type>PopplerAnnotMarkup</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerAnnotMarkupReplyType"><type>PopplerAnnotMarkupReplyType</type></link> of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-subject" role="function">
+<title>poppler_annot_markup_get_subject ()</title>
+<indexterm zone="poppler-annot-markup-get-subject"><primary sortas="poppler_annot_markup_get_subject">poppler_annot_markup_get_subject</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_annot_markup_get_subject (<link linkend="PopplerAnnotMarkup">PopplerAnnotMarkup</link> *poppler_annot);</programlisting>
+<para>
+Retrives the subject text of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotMarkup"><type>PopplerAnnotMarkup</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the subject text of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-get-type" role="function">
+<title>poppler_annot_markup_get_type ()</title>
+<indexterm zone="poppler-annot-markup-get-type"><primary sortas="poppler_annot_markup_get_type">poppler_annot_markup_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_markup_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-markup-reply-type-get-type" role="function">
+<title>poppler_annot_markup_reply_type_get_type ()</title>
+<indexterm zone="poppler-annot-markup-reply-type-get-type"><primary sortas="poppler_annot_markup_reply_type_get_type">poppler_annot_markup_reply_type_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_markup_reply_type_get_type
+ (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-text-get-icon" role="function">
+<title>poppler_annot_text_get_icon ()</title>
+<indexterm zone="poppler-annot-text-get-icon"><primary sortas="poppler_annot_text_get_icon">poppler_annot_text_get_icon</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_annot_text_get_icon (<link linkend="PopplerAnnotText">PopplerAnnotText</link> *poppler_annot);</programlisting>
+<para>
+Gets the icon type of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotText"><type>PopplerAnnotText</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerAnnotTextIcon"><type>PopplerAnnotTextIcon</type></link> of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-text-get-is-open" role="function">
+<title>poppler_annot_text_get_is_open ()</title>
+<indexterm zone="poppler-annot-text-get-is-open"><primary sortas="poppler_annot_text_get_is_open">poppler_annot_text_get_is_open</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_annot_text_get_is_open (<link linkend="PopplerAnnotText">PopplerAnnotText</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the state of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotText"><type>PopplerAnnotText</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the state of <parameter>poppler_annot</parameter>. <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if it's open, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> in
+ other case.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-text-get-state" role="function">
+<title>poppler_annot_text_get_state ()</title>
+<indexterm zone="poppler-annot-text-get-state"><primary sortas="poppler_annot_text_get_state">poppler_annot_text_get_state</primary></indexterm><programlisting><link linkend="PopplerAnnotTextState">PopplerAnnotTextState</link> poppler_annot_text_get_state (<link linkend="PopplerAnnotText">PopplerAnnotText</link> *poppler_annot);</programlisting>
+<para>
+Retrieves the state of <parameter>poppler_annot</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>poppler_annot</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerAnnotText"><type>PopplerAnnotText</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerAnnotTextState"><type>PopplerAnnotTextState</type></link> of <parameter>poppler_annot</parameter>.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-text-get-type" role="function">
+<title>poppler_annot_text_get_type ()</title>
+<indexterm zone="poppler-annot-text-get-type"><primary sortas="poppler_annot_text_get_type">poppler_annot_text_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_text_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-text-state-get-type" role="function">
+<title>poppler_annot_text_state_get_type ()</title>
+<indexterm zone="poppler-annot-text-state-get-type"><primary sortas="poppler_annot_text_state_get_type">poppler_annot_text_state_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_text_state_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-annot-type-get-type" role="function">
+<title>poppler_annot_type_get_type ()</title>
+<indexterm zone="poppler-annot-type-get-type"><primary sortas="poppler_annot_type_get_type">poppler_annot_type_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_annot_type_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-attachment.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-attachment.xml
new file mode 100644
index 00000000000..61aa9f8e4b6
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-attachment.xml
@@ -0,0 +1,143 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-attachment">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-attachment.top_of_page">PopplerAttachment</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>PopplerAttachment</refname>
+<refpurpose></refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-attachment.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+<anchor id="PopplerAttachment"/>
+<synopsis>
+ <link linkend="PopplerAttachment-struct">PopplerAttachment</link>;
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-attachment-save">poppler_attachment_save</link> (<link linkend="PopplerAttachment">PopplerAttachment</link> *attachment,
+ const <link linkend="char">char</link> *filename,
+ <link linkend="GError">GError</link> **error);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-attachment-save-to-callback">poppler_attachment_save_to_callback</link> (<link linkend="PopplerAttachment">PopplerAttachment</link> *attachment,
+ <link linkend="PopplerAttachmentSaveFunc">PopplerAttachmentSaveFunc</link> save_func,
+ <link linkend="gpointer">gpointer</link> user_data,
+ <link linkend="GError">GError</link> **error);
+<link linkend="gboolean">gboolean</link> (<link linkend="PopplerAttachmentSaveFunc">*PopplerAttachmentSaveFunc</link>) (const <link linkend="gchar">gchar</link> *buf,
+ <link linkend="gsize">gsize</link> count,
+ <link linkend="gpointer">gpointer</link> data,
+ <link linkend="GError">GError</link> **error);
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-attachment.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-attachment.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="PopplerAttachment-struct" role="struct">
+<title>PopplerAttachment</title>
+<indexterm zone="PopplerAttachment-struct"><primary sortas="PopplerAttachment">PopplerAttachment</primary></indexterm><programlisting>typedef struct _PopplerAttachment PopplerAttachment;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-attachment-save" role="function">
+<title>poppler_attachment_save ()</title>
+<indexterm zone="poppler-attachment-save"><primary sortas="poppler_attachment_save">poppler_attachment_save</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_attachment_save (<link linkend="PopplerAttachment">PopplerAttachment</link> *attachment,
+ const <link linkend="char">char</link> *filename,
+ <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Saves <parameter>attachment</parameter> to a file indicated by <parameter>filename</parameter>. If <parameter>error</parameter> is set, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>
+will be returned. Possible errors include those in the <link linkend="G-FILE-ERROR--CAPS"><type>G_FILE_ERROR</type></link> domain
+and whatever the save function generates.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>attachment</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerAttachment"><type>PopplerAttachment</type></link>.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>filename</parameter>&#160;:</term>
+<listitem><simpara> name of file to save
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&#160;:</term>
+<listitem><simpara> return location for error, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, if the file successfully saved
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-attachment-save-to-callback" role="function">
+<title>poppler_attachment_save_to_callback ()</title>
+<indexterm zone="poppler-attachment-save-to-callback"><primary sortas="poppler_attachment_save_to_callback">poppler_attachment_save_to_callback</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_attachment_save_to_callback (<link linkend="PopplerAttachment">PopplerAttachment</link> *attachment,
+ <link linkend="PopplerAttachmentSaveFunc">PopplerAttachmentSaveFunc</link> save_func,
+ <link linkend="gpointer">gpointer</link> user_data,
+ <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Saves <parameter>attachment</parameter> by feeding the produced data to <parameter>save_func</parameter>. Can be used
+when you want to store the attachment to something other than a file, such as
+an in-memory buffer or a socket. If <parameter>error</parameter> is set, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be
+returned. Possible errors include those in the <link linkend="G-FILE-ERROR--CAPS"><type>G_FILE_ERROR</type></link> domain and
+whatever the save function generates.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>attachment</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerAttachment"><type>PopplerAttachment</type></link>.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>save_func</parameter>&#160;:</term>
+<listitem><simpara> a function that is called to save each block of data that the save routine generates.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>user_data</parameter>&#160;:</term>
+<listitem><simpara> user data to pass to the save function.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&#160;:</term>
+<listitem><simpara> return location for error, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>.
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, if the save successfully completed
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="PopplerAttachmentSaveFunc" role="function">
+<title>PopplerAttachmentSaveFunc ()</title>
+<indexterm zone="PopplerAttachmentSaveFunc"><primary sortas="PopplerAttachmentSaveFunc">PopplerAttachmentSaveFunc</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> (*PopplerAttachmentSaveFunc) (const <link linkend="gchar">gchar</link> *buf,
+ <link linkend="gsize">gsize</link> count,
+ <link linkend="gpointer">gpointer</link> data,
+ <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Specifies the type of the function passed to
+<link linkend="poppler-attachment-save-to-callback"><function>poppler_attachment_save_to_callback()</function></link>. It is called once for each block of
+bytes that is "written" by <link linkend="poppler-attachment-save-to-callback"><function>poppler_attachment_save_to_callback()</function></link>. If
+successful it should return <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>. If an error occurs it should set
+<parameter>error</parameter> and return <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>, in which case <link linkend="poppler-attachment-save-to-callback"><function>poppler_attachment_save_to_callback()</function></link>
+will fail with the same error.
+</para><variablelist role="params">
+<varlistentry><term><parameter>buf</parameter>&#160;:</term>
+<listitem><simpara>buffer containing bytes to be written.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>count</parameter>&#160;:</term>
+<listitem><simpara>number of bytes in <parameter>buf</parameter>.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>data</parameter>&#160;:</term>
+<listitem><simpara>A location to return an error.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&#160;:</term>
+<listitem><simpara>user data passed to <link linkend="poppler-attachment-save-to-callback"><function>poppler_attachment_save_to_callback()</function></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>%TRUE if successful, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> (with <parameter>error</parameter> set) if failed.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-document.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-document.xml
new file mode 100644
index 00000000000..2da4c7686ed
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-document.xml
@@ -0,0 +1,722 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-document">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-document.top_of_page">PopplerDocument</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>PopplerDocument</refname>
+<refpurpose>Information about a document</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-document.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+
+<synopsis>
+enum <link linkend="PopplerPageLayout">PopplerPageLayout</link>;
+enum <link linkend="PopplerPageMode">PopplerPageMode</link>;
+enum <link linkend="PopplerFontType">PopplerFontType</link>;
+enum <link linkend="PopplerViewerPreferences">PopplerViewerPreferences</link>;
+enum <link linkend="PopplerPermissions">PopplerPermissions</link>;
+<link linkend="PopplerDocument">PopplerDocument</link> * <link linkend="poppler-document-new-from-file">poppler_document_new_from_file</link> (const <link linkend="char">char</link> *uri,
+ const <link linkend="char">char</link> *password,
+ <link linkend="GError">GError</link> **error);
+<link linkend="PopplerDocument">PopplerDocument</link> * <link linkend="poppler-document-new-from-data">poppler_document_new_from_data</link> (<link linkend="char">char</link> *data,
+ <link linkend="int">int</link> length,
+ const <link linkend="char">char</link> *password,
+ <link linkend="GError">GError</link> **error);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-document-save">poppler_document_save</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="char">char</link> *uri,
+ <link linkend="GError">GError</link> **error);
+<link linkend="int">int</link> <link linkend="poppler-document-get-n-pages">poppler_document_get_n_pages</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document);
+<link linkend="PopplerPage">PopplerPage</link> * <link linkend="poppler-document-get-page">poppler_document_get_page</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ <link linkend="int">int</link> index);
+<link linkend="PopplerPage">PopplerPage</link> * <link linkend="poppler-document-get-page-by-label">poppler_document_get_page_by_label</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="char">char</link> *label);
+<link linkend="PopplerDest">PopplerDest</link> * <link linkend="poppler-document-find-dest">poppler_document_find_dest</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="gchar">gchar</link> *link_name);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-document-has-attachments">poppler_document_has_attachments</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document);
+<link linkend="GList">GList</link> * <link linkend="poppler-document-get-attachments">poppler_document_get_attachments</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document);
+<link linkend="PopplerFormField">PopplerFormField</link> * <link linkend="poppler-document-get-form-field">poppler_document_get_form_field</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ <link linkend="gint">gint</link> id);
+<link linkend="GType">GType</link> <link linkend="poppler-index-iter-get-type">poppler_index_iter_get_type</link> (void);
+<link linkend="PopplerIndexIter">PopplerIndexIter</link> * <link linkend="poppler-index-iter-new">poppler_index_iter_new</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document);
+<link linkend="PopplerIndexIter">PopplerIndexIter</link> * <link linkend="poppler-index-iter-copy">poppler_index_iter_copy</link> (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);
+<link linkend="void">void</link> <link linkend="poppler-index-iter-free">poppler_index_iter_free</link> (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);
+<link linkend="PopplerIndexIter">PopplerIndexIter</link> * <link linkend="poppler-index-iter-get-child">poppler_index_iter_get_child</link> (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *parent);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-index-iter-is-open">poppler_index_iter_is_open</link> (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);
+<link linkend="PopplerAction">PopplerAction</link> * <link linkend="poppler-index-iter-get-action">poppler_index_iter_get_action</link> (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-index-iter-next">poppler_index_iter_next</link> (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);
+<link linkend="PopplerFontInfo">PopplerFontInfo</link> * <link linkend="poppler-font-info-new">poppler_font_info_new</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-font-info-scan">poppler_font_info_scan</link> (<link linkend="PopplerFontInfo">PopplerFontInfo</link> *font_info,
+ <link linkend="int">int</link> n_pages,
+ <link linkend="PopplerFontsIter">PopplerFontsIter</link> **iter);
+<link linkend="void">void</link> <link linkend="poppler-font-info-free">poppler_font_info_free</link> (<link linkend="PopplerFontInfo">PopplerFontInfo</link> *font_info);
+<link linkend="GType">GType</link> <link linkend="poppler-fonts-iter-get-type">poppler_fonts_iter_get_type</link> (void);
+<link linkend="PopplerFontsIter">PopplerFontsIter</link> * <link linkend="poppler-fonts-iter-copy">poppler_fonts_iter_copy</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+<link linkend="void">void</link> <link linkend="poppler-fonts-iter-free">poppler_fonts_iter_free</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+const <link linkend="char">char</link> * <link linkend="poppler-fonts-iter-get-name">poppler_fonts_iter_get_name</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+const <link linkend="char">char</link> * <link linkend="poppler-fonts-iter-get-full-name">poppler_fonts_iter_get_full_name</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+<link linkend="PopplerFontType">PopplerFontType</link> <link linkend="poppler-fonts-iter-get-font-type">poppler_fonts_iter_get_font_type</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-fonts-iter-is-embedded">poppler_fonts_iter_is_embedded</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-fonts-iter-is-subset">poppler_fonts_iter_is_subset</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-fonts-iter-next">poppler_fonts_iter_next</link> (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);
+<link linkend="PopplerPSFile">PopplerPSFile</link> * <link linkend="poppler-ps-file-new">poppler_ps_file_new</link> (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="char">char</link> *filename,
+ <link linkend="int">int</link> first_page,
+ <link linkend="int">int</link> n_pages);
+<link linkend="void">void</link> <link linkend="poppler-ps-file-set-paper-size">poppler_ps_file_set_paper_size</link> (<link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file,
+ <link linkend="double">double</link> width,
+ <link linkend="double">double</link> height);
+<link linkend="void">void</link> <link linkend="poppler-ps-file-set-duplex">poppler_ps_file_set_duplex</link> (<link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file,
+ <link linkend="gboolean">gboolean</link> duplex);
+<link linkend="void">void</link> <link linkend="poppler-ps-file-free">poppler_ps_file_free</link> (<link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file);
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-document.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+The <link linkend="PopplerDocument"><type>PopplerDocument</type></link> is an object used to refer to a main document.
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-document.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="PopplerPageLayout" role="enum">
+<title>enum PopplerPageLayout</title>
+<indexterm zone="PopplerPageLayout"><primary sortas="PopplerPageLayout">PopplerPageLayout</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_PAGE_LAYOUT_UNSET,
+ POPPLER_PAGE_LAYOUT_SINGLE_PAGE,
+ POPPLER_PAGE_LAYOUT_ONE_COLUMN,
+ POPPLER_PAGE_LAYOUT_TWO_COLUMN_LEFT,
+ POPPLER_PAGE_LAYOUT_TWO_COLUMN_RIGHT,
+ POPPLER_PAGE_LAYOUT_TWO_PAGE_LEFT,
+ POPPLER_PAGE_LAYOUT_TWO_PAGE_RIGHT
+} PopplerPageLayout;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPageMode" role="enum">
+<title>enum PopplerPageMode</title>
+<indexterm zone="PopplerPageMode"><primary sortas="PopplerPageMode">PopplerPageMode</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_PAGE_MODE_UNSET,
+ POPPLER_PAGE_MODE_NONE,
+ POPPLER_PAGE_MODE_USE_OUTLINES,
+ POPPLER_PAGE_MODE_USE_THUMBS,
+ POPPLER_PAGE_MODE_FULL_SCREEN,
+ POPPLER_PAGE_MODE_USE_OC,
+ POPPLER_PAGE_MODE_USE_ATTACHMENTS
+} PopplerPageMode;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFontType" role="enum">
+<title>enum PopplerFontType</title>
+<indexterm zone="PopplerFontType"><primary sortas="PopplerFontType">PopplerFontType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_FONT_TYPE_UNKNOWN,
+ POPPLER_FONT_TYPE_TYPE1,
+ POPPLER_FONT_TYPE_TYPE1C,
+ POPPLER_FONT_TYPE_TYPE1COT,
+ POPPLER_FONT_TYPE_TYPE3,
+ POPPLER_FONT_TYPE_TRUETYPE,
+ POPPLER_FONT_TYPE_TRUETYPEOT,
+ POPPLER_FONT_TYPE_CID_TYPE0,
+ POPPLER_FONT_TYPE_CID_TYPE0C,
+ POPPLER_FONT_TYPE_CID_TYPE0COT,
+ POPPLER_FONT_TYPE_CID_TYPE2,
+ POPPLER_FONT_TYPE_CID_TYPE2OT
+} PopplerFontType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerViewerPreferences" role="enum">
+<title>enum PopplerViewerPreferences</title>
+<indexterm zone="PopplerViewerPreferences"><primary sortas="PopplerViewerPreferences">PopplerViewerPreferences</primary></indexterm><programlisting>typedef enum /*&lt; flags &gt;*/
+{
+ POPPLER_VIEWER_PREFERENCES_UNSET = 0,
+ POPPLER_VIEWER_PREFERENCES_HIDE_TOOLBAR = 1 &lt;&lt; 0,
+ POPPLER_VIEWER_PREFERENCES_HIDE_MENUBAR = 1 &lt;&lt; 1,
+ POPPLER_VIEWER_PREFERENCES_HIDE_WINDOWUI = 1 &lt;&lt; 2,
+ POPPLER_VIEWER_PREFERENCES_FIT_WINDOW = 1 &lt;&lt; 3,
+ POPPLER_VIEWER_PREFERENCES_CENTER_WINDOW = 1 &lt;&lt; 4,
+ POPPLER_VIEWER_PREFERENCES_DISPLAY_DOC_TITLE = 1 &lt;&lt; 5,
+ POPPLER_VIEWER_PREFERENCES_DIRECTION_RTL = 1 &lt;&lt; 6
+} PopplerViewerPreferences;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPermissions" role="enum">
+<title>enum PopplerPermissions</title>
+<indexterm zone="PopplerPermissions"><primary sortas="PopplerPermissions">PopplerPermissions</primary></indexterm><programlisting>typedef enum /*&lt; flags &gt;*/
+{
+ POPPLER_PERMISSIONS_OK_TO_PRINT = 1 &lt;&lt; 0,
+ POPPLER_PERMISSIONS_OK_TO_MODIFY = 1 &lt;&lt; 1,
+ POPPLER_PERMISSIONS_OK_TO_COPY = 1 &lt;&lt; 2,
+ POPPLER_PERMISSIONS_OK_TO_ADD_NOTES = 1 &lt;&lt; 3,
+ POPPLER_PERMISSIONS_OK_TO_FILL_FORM = 1 &lt;&lt; 4,
+ POPPLER_PERMISSIONS_FULL = (POPPLER_PERMISSIONS_OK_TO_PRINT | POPPLER_PERMISSIONS_OK_TO_MODIFY | POPPLER_PERMISSIONS_OK_TO_COPY | POPPLER_PERMISSIONS_OK_TO_ADD_NOTES | POPPLER_PERMISSIONS_OK_TO_FILL_FORM)
+
+} PopplerPermissions;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-document-new-from-file" role="function">
+<title>poppler_document_new_from_file ()</title>
+<indexterm zone="poppler-document-new-from-file"><primary sortas="poppler_document_new_from_file">poppler_document_new_from_file</primary></indexterm><programlisting><link linkend="PopplerDocument">PopplerDocument</link> * poppler_document_new_from_file (const <link linkend="char">char</link> *uri,
+ const <link linkend="char">char</link> *password,
+ <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Creates a new <link linkend="PopplerDocument"><type>PopplerDocument</type></link>. If <link linkend="NULL--CAPS"><literal>NULL</literal></link> is returned, then <parameter>error</parameter> will be
+set. Possible errors include those in the <link linkend="POPPLER-ERROR--CAPS"><type>POPPLER_ERROR</type></link> and <link linkend="G-FILE-ERROR--CAPS"><type>G_FILE_ERROR</type></link>
+domains.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>uri</parameter>&#160;:</term>
+<listitem><simpara> uri of the file to load
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>password</parameter>&#160;:</term>
+<listitem><simpara> password to unlock the file with, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&#160;:</term>
+<listitem><simpara> Return location for an error, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A newly created <link linkend="PopplerDocument"><type>PopplerDocument</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-new-from-data" role="function">
+<title>poppler_document_new_from_data ()</title>
+<indexterm zone="poppler-document-new-from-data"><primary sortas="poppler_document_new_from_data">poppler_document_new_from_data</primary></indexterm><programlisting><link linkend="PopplerDocument">PopplerDocument</link> * poppler_document_new_from_data (<link linkend="char">char</link> *data,
+ <link linkend="int">int</link> length,
+ const <link linkend="char">char</link> *password,
+ <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Creates a new <link linkend="PopplerDocument"><type>PopplerDocument</type></link>. If <link linkend="NULL--CAPS"><literal>NULL</literal></link> is returned, then <parameter>error</parameter> will be
+set. Possible errors include those in the <link linkend="POPPLER-ERROR--CAPS"><type>POPPLER_ERROR</type></link> and <link linkend="G-FILE-ERROR--CAPS"><type>G_FILE_ERROR</type></link>
+domains.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>data</parameter>&#160;:</term>
+<listitem><simpara> the pdf data contained in a char array
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>length</parameter>&#160;:</term>
+<listitem><simpara> the length of <link linkend="data"><type>data</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>password</parameter>&#160;:</term>
+<listitem><simpara> password to unlock the file with, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&#160;:</term>
+<listitem><simpara> Return location for an error, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A newly created <link linkend="PopplerDocument"><type>PopplerDocument</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-save" role="function">
+<title>poppler_document_save ()</title>
+<indexterm zone="poppler-document-save"><primary sortas="poppler_document_save">poppler_document_save</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_document_save (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="char">char</link> *uri,
+ <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Saves <parameter>document</parameter>. Any change made in the document such as
+form fields filled by the user will be saved.
+If <parameter>error</parameter> is set, <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> will be returned. Possible errors
+include those in the <link linkend="G-FILE-ERROR--CAPS"><type>G_FILE_ERROR</type></link> domain.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>uri</parameter>&#160;:</term>
+<listitem><simpara> uri of file to save
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&#160;:</term>
+<listitem><simpara> return location for an error, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, if the document was successfully saved
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-get-n-pages" role="function">
+<title>poppler_document_get_n_pages ()</title>
+<indexterm zone="poppler-document-get-n-pages"><primary sortas="poppler_document_get_n_pages">poppler_document_get_n_pages</primary></indexterm><programlisting><link linkend="int">int</link> poppler_document_get_n_pages (<link linkend="PopplerDocument">PopplerDocument</link> *document);</programlisting>
+<para>
+Returns the number of pages in a loaded document.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> Number of pages
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-get-page" role="function">
+<title>poppler_document_get_page ()</title>
+<indexterm zone="poppler-document-get-page"><primary sortas="poppler_document_get_page">poppler_document_get_page</primary></indexterm><programlisting><link linkend="PopplerPage">PopplerPage</link> * poppler_document_get_page (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ <link linkend="int">int</link> index);</programlisting>
+<para>
+Returns the <link linkend="PopplerPage"><type>PopplerPage</type></link> indexed at <parameter>index</parameter>. This object is owned by the
+caller.
+</para>
+<para>
+<link linkend="PopplerPage"><type>PopplerPage</type></link><!-- -->s are indexed starting at 0.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>index</parameter>&#160;:</term>
+<listitem><simpara> a page index
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> The <link linkend="PopplerPage"><type>PopplerPage</type></link> at <parameter>index</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-get-page-by-label" role="function">
+<title>poppler_document_get_page_by_label ()</title>
+<indexterm zone="poppler-document-get-page-by-label"><primary sortas="poppler_document_get_page_by_label">poppler_document_get_page_by_label</primary></indexterm><programlisting><link linkend="PopplerPage">PopplerPage</link> * poppler_document_get_page_by_label (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="char">char</link> *label);</programlisting>
+<para>
+Returns the <link linkend="PopplerPage"><type>PopplerPage</type></link> reference by <parameter>label</parameter>. This object is owned by the
+caller. <parameter>label</parameter> is a human-readable string representation of the page number,
+and can be document specific. Typically, it is a value such as "iii" or "3".
+</para>
+<para>
+By default, "1" refers to the first page.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>label</parameter>&#160;:</term>
+<listitem><simpara> a page label
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> The <link linkend="PopplerPage"><type>PopplerPage</type></link> referenced by <parameter>label</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-find-dest" role="function">
+<title>poppler_document_find_dest ()</title>
+<indexterm zone="poppler-document-find-dest"><primary sortas="poppler_document_find_dest">poppler_document_find_dest</primary></indexterm><programlisting><link linkend="PopplerDest">PopplerDest</link> * poppler_document_find_dest (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="gchar">gchar</link> *link_name);</programlisting>
+<para>
+Finds named destination <parameter>link_name</parameter> in <parameter>document</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>link_name</parameter>&#160;:</term>
+<listitem><simpara> a named destination
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> The <link linkend="PopplerDest"><type>PopplerDest</type></link> destination or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if
+<parameter>link_name</parameter> is not a destination. Returned value must
+be freed with <link linkend="poppler-dest-free"><type>poppler_dest_free</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-has-attachments" role="function">
+<title>poppler_document_has_attachments ()</title>
+<indexterm zone="poppler-document-has-attachments"><primary sortas="poppler_document_has_attachments">poppler_document_has_attachments</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_document_has_attachments (<link linkend="PopplerDocument">PopplerDocument</link> *document);</programlisting>
+<para>
+Returns <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> of <parameter>document</parameter> has any attachments.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, if <parameter>document</parameter> has attachments.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-get-attachments" role="function">
+<title>poppler_document_get_attachments ()</title>
+<indexterm zone="poppler-document-get-attachments"><primary sortas="poppler_document_get_attachments">poppler_document_get_attachments</primary></indexterm><programlisting><link linkend="GList">GList</link> * poppler_document_get_attachments (<link linkend="PopplerDocument">PopplerDocument</link> *document);</programlisting>
+<para>
+Returns a <link linkend="GList"><type>GList</type></link> containing <link linkend="PopplerAttachment"><type>PopplerAttachment</type></link><!-- -->s. These attachments
+are unowned, and must be unreffed, and the list must be freed with
+<link linkend="g-list-free"><function>g_list_free()</function></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a list of available attachments.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-document-get-form-field" role="function">
+<title>poppler_document_get_form_field ()</title>
+<indexterm zone="poppler-document-get-form-field"><primary sortas="poppler_document_get_form_field">poppler_document_get_form_field</primary></indexterm><programlisting><link linkend="PopplerFormField">PopplerFormField</link> * poppler_document_get_form_field (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ <link linkend="gint">gint</link> id);</programlisting>
+<para>
+Returns the <link linkend="PopplerFormField"><type>PopplerFormField</type></link> for the given <parameter>id</parameter>. It must be freed with
+<link linkend="g-object-unref"><function>g_object_unref()</function></link></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>id</parameter>&#160;:</term>
+<listitem><simpara> an id of a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new <link linkend="PopplerFormField"><type>PopplerFormField</type></link> or NULL if not found
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-get-type" role="function">
+<title>poppler_index_iter_get_type ()</title>
+<indexterm zone="poppler-index-iter-get-type"><primary sortas="poppler_index_iter_get_type">poppler_index_iter_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_index_iter_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-new" role="function">
+<title>poppler_index_iter_new ()</title>
+<indexterm zone="poppler-index-iter-new"><primary sortas="poppler_index_iter_new">poppler_index_iter_new</primary></indexterm><programlisting><link linkend="PopplerIndexIter">PopplerIndexIter</link> * poppler_index_iter_new (<link linkend="PopplerDocument">PopplerDocument</link> *document);</programlisting>
+<para>
+Returns the root <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link> for <parameter>document</parameter>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>. This must be
+freed with <link linkend="poppler-index-iter-free"><function>poppler_index_iter_free()</function></link>.
+</para>
+<para>
+Certain documents have an index associated with them. This index can be used
+to help the user navigate the document, and is similar to a table of
+contents. Each node in the index will contain a <link linkend="PopplerAction"><type>PopplerAction</type></link> that can be
+displayed to the user &mdash; typically a <link linkend="POPPLER-ACTION-GOTO-DEST--CAPS"><type>POPPLER_ACTION_GOTO_DEST</type></link> or a
+<link linkend="POPPLER-ACTION-URI--CAPS"><type>POPPLER_ACTION_URI</type></link><!-- -->.
+</para>
+<para>
+Here is a simple example of some code that walks the full index:
+</para>
+<para>
+<informalexample><programlisting>
+static void
+walk_index (PopplerIndexIter *iter)
+{
+ do
+ {
+ /<!-- -->* Get the the action and do something with it *<!-- -->/
+ PopplerIndexIter *child = poppler_index_iter_get_child (iter);
+ if (child)
+ walk_index (child);
+ poppler_index_iter_free (child);
+ }
+ while (poppler_index_iter_next (iter));
+}
+...
+{
+ iter = poppler_index_iter_new (document);
+ walk_index (iter);
+ poppler_index_iter_free (iter);
+}
+</programlisting></informalexample></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-copy" role="function">
+<title>poppler_index_iter_copy ()</title>
+<indexterm zone="poppler-index-iter-copy"><primary sortas="poppler_index_iter_copy">poppler_index_iter_copy</primary></indexterm><programlisting><link linkend="PopplerIndexIter">PopplerIndexIter</link> * poppler_index_iter_copy (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);</programlisting>
+<para>
+Creates a new <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link> as a copy of <parameter>iter</parameter>. This must be freed with
+<link linkend="poppler-index-iter-free"><function>poppler_index_iter_free()</function></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-free" role="function">
+<title>poppler_index_iter_free ()</title>
+<indexterm zone="poppler-index-iter-free"><primary sortas="poppler_index_iter_free">poppler_index_iter_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_index_iter_free (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);</programlisting>
+<para>
+Frees <parameter>iter</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-get-child" role="function">
+<title>poppler_index_iter_get_child ()</title>
+<indexterm zone="poppler-index-iter-get-child"><primary sortas="poppler_index_iter_get_child">poppler_index_iter_get_child</primary></indexterm><programlisting><link linkend="PopplerIndexIter">PopplerIndexIter</link> * poppler_index_iter_get_child (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *parent);</programlisting>
+<para>
+Returns a newly created child of <parameter>parent</parameter>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if the iter has no child.
+See <link linkend="poppler-index-iter-new"><function>poppler_index_iter_new()</function></link> for more information on this function.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>parent</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-is-open" role="function">
+<title>poppler_index_iter_is_open ()</title>
+<indexterm zone="poppler-index-iter-is-open"><primary sortas="poppler_index_iter_is_open">poppler_index_iter_is_open</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_index_iter_is_open (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);</programlisting>
+<para>
+Returns whether this node should be expanded by default to the user. The
+document can provide a hint as to how the document's index should be expanded
+initially.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, if the document wants <parameter>iter</parameter> to be expanded
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-get-action" role="function">
+<title>poppler_index_iter_get_action ()</title>
+<indexterm zone="poppler-index-iter-get-action"><primary sortas="poppler_index_iter_get_action">poppler_index_iter_get_action</primary></indexterm><programlisting><link linkend="PopplerAction">PopplerAction</link> * poppler_index_iter_get_action (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);</programlisting>
+<para>
+Returns the <link linkend="PopplerAction"><type>PopplerAction</type></link> associated with <parameter>iter</parameter>. It must be freed with
+<link linkend="poppler-action-free"><function>poppler_action_free()</function></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new <link linkend="PopplerAction"><type>PopplerAction</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-index-iter-next" role="function">
+<title>poppler_index_iter_next ()</title>
+<indexterm zone="poppler-index-iter-next"><primary sortas="poppler_index_iter_next">poppler_index_iter_next</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_index_iter_next (<link linkend="PopplerIndexIter">PopplerIndexIter</link> *iter);</programlisting>
+<para>
+Sets <parameter>iter</parameter> to point to the next action at the current level, if valid. See
+<link linkend="poppler-index-iter-new"><function>poppler_index_iter_new()</function></link> for more information.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerIndexIter"><type>PopplerIndexIter</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, if <parameter>iter</parameter> was set to the next action
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-font-info-new" role="function">
+<title>poppler_font_info_new ()</title>
+<indexterm zone="poppler-font-info-new"><primary sortas="poppler_font_info_new">poppler_font_info_new</primary></indexterm><programlisting><link linkend="PopplerFontInfo">PopplerFontInfo</link> * poppler_font_info_new (<link linkend="PopplerDocument">PopplerDocument</link> *document);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-font-info-scan" role="function">
+<title>poppler_font_info_scan ()</title>
+<indexterm zone="poppler-font-info-scan"><primary sortas="poppler_font_info_scan">poppler_font_info_scan</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_font_info_scan (<link linkend="PopplerFontInfo">PopplerFontInfo</link> *font_info,
+ <link linkend="int">int</link> n_pages,
+ <link linkend="PopplerFontsIter">PopplerFontsIter</link> **iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>font_info</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>n_pages</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-font-info-free" role="function">
+<title>poppler_font_info_free ()</title>
+<indexterm zone="poppler-font-info-free"><primary sortas="poppler_font_info_free">poppler_font_info_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_font_info_free (<link linkend="PopplerFontInfo">PopplerFontInfo</link> *font_info);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>font_info</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-get-type" role="function">
+<title>poppler_fonts_iter_get_type ()</title>
+<indexterm zone="poppler-fonts-iter-get-type"><primary sortas="poppler_fonts_iter_get_type">poppler_fonts_iter_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_fonts_iter_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-copy" role="function">
+<title>poppler_fonts_iter_copy ()</title>
+<indexterm zone="poppler-fonts-iter-copy"><primary sortas="poppler_fonts_iter_copy">poppler_fonts_iter_copy</primary></indexterm><programlisting><link linkend="PopplerFontsIter">PopplerFontsIter</link> * poppler_fonts_iter_copy (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-free" role="function">
+<title>poppler_fonts_iter_free ()</title>
+<indexterm zone="poppler-fonts-iter-free"><primary sortas="poppler_fonts_iter_free">poppler_fonts_iter_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_fonts_iter_free (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-get-name" role="function">
+<title>poppler_fonts_iter_get_name ()</title>
+<indexterm zone="poppler-fonts-iter-get-name"><primary sortas="poppler_fonts_iter_get_name">poppler_fonts_iter_get_name</primary></indexterm><programlisting>const <link linkend="char">char</link> * poppler_fonts_iter_get_name (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-get-full-name" role="function">
+<title>poppler_fonts_iter_get_full_name ()</title>
+<indexterm zone="poppler-fonts-iter-get-full-name"><primary sortas="poppler_fonts_iter_get_full_name">poppler_fonts_iter_get_full_name</primary></indexterm><programlisting>const <link linkend="char">char</link> * poppler_fonts_iter_get_full_name (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-get-font-type" role="function">
+<title>poppler_fonts_iter_get_font_type ()</title>
+<indexterm zone="poppler-fonts-iter-get-font-type"><primary sortas="poppler_fonts_iter_get_font_type">poppler_fonts_iter_get_font_type</primary></indexterm><programlisting><link linkend="PopplerFontType">PopplerFontType</link> poppler_fonts_iter_get_font_type (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-is-embedded" role="function">
+<title>poppler_fonts_iter_is_embedded ()</title>
+<indexterm zone="poppler-fonts-iter-is-embedded"><primary sortas="poppler_fonts_iter_is_embedded">poppler_fonts_iter_is_embedded</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_fonts_iter_is_embedded (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-is-subset" role="function">
+<title>poppler_fonts_iter_is_subset ()</title>
+<indexterm zone="poppler-fonts-iter-is-subset"><primary sortas="poppler_fonts_iter_is_subset">poppler_fonts_iter_is_subset</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_fonts_iter_is_subset (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-fonts-iter-next" role="function">
+<title>poppler_fonts_iter_next ()</title>
+<indexterm zone="poppler-fonts-iter-next"><primary sortas="poppler_fonts_iter_next">poppler_fonts_iter_next</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_fonts_iter_next (<link linkend="PopplerFontsIter">PopplerFontsIter</link> *iter);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>iter</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-ps-file-new" role="function">
+<title>poppler_ps_file_new ()</title>
+<indexterm zone="poppler-ps-file-new"><primary sortas="poppler_ps_file_new">poppler_ps_file_new</primary></indexterm><programlisting><link linkend="PopplerPSFile">PopplerPSFile</link> * poppler_ps_file_new (<link linkend="PopplerDocument">PopplerDocument</link> *document,
+ const <link linkend="char">char</link> *filename,
+ <link linkend="int">int</link> first_page,
+ <link linkend="int">int</link> n_pages);</programlisting>
+<para>
+Create a new postscript file to render to</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>document</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerDocument"><type>PopplerDocument</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>filename</parameter>&#160;:</term>
+<listitem><simpara> the path of the output filename
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>first_page</parameter>&#160;:</term>
+<listitem><simpara> the first page to print
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>n_pages</parameter>&#160;:</term>
+<listitem><simpara> the number of pages to print
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a PopplerPSFile
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-ps-file-set-paper-size" role="function">
+<title>poppler_ps_file_set_paper_size ()</title>
+<indexterm zone="poppler-ps-file-set-paper-size"><primary sortas="poppler_ps_file_set_paper_size">poppler_ps_file_set_paper_size</primary></indexterm><programlisting><link linkend="void">void</link> poppler_ps_file_set_paper_size (<link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file,
+ <link linkend="double">double</link> width,
+ <link linkend="double">double</link> height);</programlisting>
+<para>
+Set the output paper size. These values will end up in the
+DocumentMedia, the BoundingBox DSC comments and other places in the
+generated PostScript.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>ps_file</parameter>&#160;:</term>
+<listitem><simpara> a PopplerPSFile which was not yet printed to.
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>width</parameter>&#160;:</term>
+<listitem><simpara> the paper width in 1/72 inch
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>height</parameter>&#160;:</term>
+<listitem><simpara> the paper height in 1/72 inch
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-ps-file-set-duplex" role="function">
+<title>poppler_ps_file_set_duplex ()</title>
+<indexterm zone="poppler-ps-file-set-duplex"><primary sortas="poppler_ps_file_set_duplex">poppler_ps_file_set_duplex</primary></indexterm><programlisting><link linkend="void">void</link> poppler_ps_file_set_duplex (<link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file,
+ <link linkend="gboolean">gboolean</link> duplex);</programlisting>
+<para>
+Enable or disable Duplex printing.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>ps_file</parameter>&#160;:</term>
+<listitem><simpara> a PopplerPSFile which was not yet printed to
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>duplex</parameter>&#160;:</term>
+<listitem><simpara> whether to force duplex printing (on printers which support this)
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-ps-file-free" role="function">
+<title>poppler_ps_file_free ()</title>
+<indexterm zone="poppler-ps-file-free"><primary sortas="poppler_ps_file_free">poppler_ps_file_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_ps_file_free (<link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file);</programlisting>
+<para>
+Frees <parameter>ps_file</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>ps_file</parameter>&#160;:</term>
+<listitem><simpara> a PopplerPSFile
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-enums.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-enums.xml
new file mode 100644
index 00000000000..cf0b0aa7d7a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-enums.xml
@@ -0,0 +1,275 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-enums">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-enums.top_of_page">poppler-enums</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>poppler-enums</refname>
+<refpurpose></refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-enums.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+
+<synopsis>
+#define <link linkend="POPPLER-TYPE-ACTION-TYPE--CAPS">POPPLER_TYPE_ACTION_TYPE</link>
+<link linkend="GType">GType</link> <link linkend="poppler-action-type-get-type">poppler_action_type_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-DEST-TYPE--CAPS">POPPLER_TYPE_DEST_TYPE</link>
+<link linkend="GType">GType</link> <link linkend="poppler-dest-type-get-type">poppler_dest_type_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-PAGE-LAYOUT--CAPS">POPPLER_TYPE_PAGE_LAYOUT</link>
+<link linkend="GType">GType</link> <link linkend="poppler-page-layout-get-type">poppler_page_layout_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-PAGE-MODE--CAPS">POPPLER_TYPE_PAGE_MODE</link>
+<link linkend="GType">GType</link> <link linkend="poppler-page-mode-get-type">poppler_page_mode_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-FONT-TYPE--CAPS">POPPLER_TYPE_FONT_TYPE</link>
+<link linkend="GType">GType</link> <link linkend="poppler-font-type-get-type">poppler_font_type_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-VIEWER-PREFERENCES--CAPS">POPPLER_TYPE_VIEWER_PREFERENCES</link>
+<link linkend="GType">GType</link> <link linkend="poppler-viewer-preferences-get-type">poppler_viewer_preferences_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-PERMISSIONS--CAPS">POPPLER_TYPE_PERMISSIONS</link>
+<link linkend="GType">GType</link> <link linkend="poppler-permissions-get-type">poppler_permissions_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-SELECTION-STYLE--CAPS">POPPLER_TYPE_SELECTION_STYLE</link>
+<link linkend="GType">GType</link> <link linkend="poppler-selection-style-get-type">poppler_selection_style_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS">POPPLER_TYPE_PAGE_TRANSITION_TYPE</link>
+<link linkend="GType">GType</link> <link linkend="poppler-page-transition-type-get-type">poppler_page_transition_type_get_type</link>
+ (void);
+#define <link linkend="POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS">POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT</link>
+<link linkend="GType">GType</link> <link linkend="poppler-page-transition-alignment-get-type">poppler_page_transition_alignment_get_type</link>
+ (void);
+#define <link linkend="POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS">POPPLER_TYPE_PAGE_TRANSITION_DIRECTION</link>
+<link linkend="GType">GType</link> <link linkend="poppler-page-transition-direction-get-type">poppler_page_transition_direction_get_type</link>
+ (void);
+#define <link linkend="POPPLER-TYPE-ERROR--CAPS">POPPLER_TYPE_ERROR</link>
+<link linkend="GType">GType</link> <link linkend="poppler-error-get-type">poppler_error_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-ORIENTATION--CAPS">POPPLER_TYPE_ORIENTATION</link>
+<link linkend="GType">GType</link> <link linkend="poppler-orientation-get-type">poppler_orientation_get_type</link> (void);
+#define <link linkend="POPPLER-TYPE-BACKEND--CAPS">POPPLER_TYPE_BACKEND</link>
+<link linkend="GType">GType</link> <link linkend="poppler-backend-get-type">poppler_backend_get_type</link> (void);
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-enums.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-enums.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="POPPLER-TYPE-ACTION-TYPE--CAPS" role="macro">
+<title>POPPLER_TYPE_ACTION_TYPE</title>
+<indexterm zone="POPPLER-TYPE-ACTION-TYPE--CAPS"><primary sortas="POPPLER_TYPE_ACTION_TYPE">POPPLER_TYPE_ACTION_TYPE</primary></indexterm><programlisting>#define POPPLER_TYPE_ACTION_TYPE (poppler_action_type_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-action-type-get-type" role="function">
+<title>poppler_action_type_get_type ()</title>
+<indexterm zone="poppler-action-type-get-type"><primary sortas="poppler_action_type_get_type">poppler_action_type_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_action_type_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-DEST-TYPE--CAPS" role="macro">
+<title>POPPLER_TYPE_DEST_TYPE</title>
+<indexterm zone="POPPLER-TYPE-DEST-TYPE--CAPS"><primary sortas="POPPLER_TYPE_DEST_TYPE">POPPLER_TYPE_DEST_TYPE</primary></indexterm><programlisting>#define POPPLER_TYPE_DEST_TYPE (poppler_dest_type_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-dest-type-get-type" role="function">
+<title>poppler_dest_type_get_type ()</title>
+<indexterm zone="poppler-dest-type-get-type"><primary sortas="poppler_dest_type_get_type">poppler_dest_type_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_dest_type_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-PAGE-LAYOUT--CAPS" role="macro">
+<title>POPPLER_TYPE_PAGE_LAYOUT</title>
+<indexterm zone="POPPLER-TYPE-PAGE-LAYOUT--CAPS"><primary sortas="POPPLER_TYPE_PAGE_LAYOUT">POPPLER_TYPE_PAGE_LAYOUT</primary></indexterm><programlisting>#define POPPLER_TYPE_PAGE_LAYOUT (poppler_page_layout_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-page-layout-get-type" role="function">
+<title>poppler_page_layout_get_type ()</title>
+<indexterm zone="poppler-page-layout-get-type"><primary sortas="poppler_page_layout_get_type">poppler_page_layout_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_page_layout_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-PAGE-MODE--CAPS" role="macro">
+<title>POPPLER_TYPE_PAGE_MODE</title>
+<indexterm zone="POPPLER-TYPE-PAGE-MODE--CAPS"><primary sortas="POPPLER_TYPE_PAGE_MODE">POPPLER_TYPE_PAGE_MODE</primary></indexterm><programlisting>#define POPPLER_TYPE_PAGE_MODE (poppler_page_mode_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-page-mode-get-type" role="function">
+<title>poppler_page_mode_get_type ()</title>
+<indexterm zone="poppler-page-mode-get-type"><primary sortas="poppler_page_mode_get_type">poppler_page_mode_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_page_mode_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-FONT-TYPE--CAPS" role="macro">
+<title>POPPLER_TYPE_FONT_TYPE</title>
+<indexterm zone="POPPLER-TYPE-FONT-TYPE--CAPS"><primary sortas="POPPLER_TYPE_FONT_TYPE">POPPLER_TYPE_FONT_TYPE</primary></indexterm><programlisting>#define POPPLER_TYPE_FONT_TYPE (poppler_font_type_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-font-type-get-type" role="function">
+<title>poppler_font_type_get_type ()</title>
+<indexterm zone="poppler-font-type-get-type"><primary sortas="poppler_font_type_get_type">poppler_font_type_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_font_type_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-VIEWER-PREFERENCES--CAPS" role="macro">
+<title>POPPLER_TYPE_VIEWER_PREFERENCES</title>
+<indexterm zone="POPPLER-TYPE-VIEWER-PREFERENCES--CAPS"><primary sortas="POPPLER_TYPE_VIEWER_PREFERENCES">POPPLER_TYPE_VIEWER_PREFERENCES</primary></indexterm><programlisting>#define POPPLER_TYPE_VIEWER_PREFERENCES (poppler_viewer_preferences_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-viewer-preferences-get-type" role="function">
+<title>poppler_viewer_preferences_get_type ()</title>
+<indexterm zone="poppler-viewer-preferences-get-type"><primary sortas="poppler_viewer_preferences_get_type">poppler_viewer_preferences_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_viewer_preferences_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-PERMISSIONS--CAPS" role="macro">
+<title>POPPLER_TYPE_PERMISSIONS</title>
+<indexterm zone="POPPLER-TYPE-PERMISSIONS--CAPS"><primary sortas="POPPLER_TYPE_PERMISSIONS">POPPLER_TYPE_PERMISSIONS</primary></indexterm><programlisting>#define POPPLER_TYPE_PERMISSIONS (poppler_permissions_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-permissions-get-type" role="function">
+<title>poppler_permissions_get_type ()</title>
+<indexterm zone="poppler-permissions-get-type"><primary sortas="poppler_permissions_get_type">poppler_permissions_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_permissions_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-SELECTION-STYLE--CAPS" role="macro">
+<title>POPPLER_TYPE_SELECTION_STYLE</title>
+<indexterm zone="POPPLER-TYPE-SELECTION-STYLE--CAPS"><primary sortas="POPPLER_TYPE_SELECTION_STYLE">POPPLER_TYPE_SELECTION_STYLE</primary></indexterm><programlisting>#define POPPLER_TYPE_SELECTION_STYLE (poppler_selection_style_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-selection-style-get-type" role="function">
+<title>poppler_selection_style_get_type ()</title>
+<indexterm zone="poppler-selection-style-get-type"><primary sortas="poppler_selection_style_get_type">poppler_selection_style_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_selection_style_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS" role="macro">
+<title>POPPLER_TYPE_PAGE_TRANSITION_TYPE</title>
+<indexterm zone="POPPLER-TYPE-PAGE-TRANSITION-TYPE--CAPS"><primary sortas="POPPLER_TYPE_PAGE_TRANSITION_TYPE">POPPLER_TYPE_PAGE_TRANSITION_TYPE</primary></indexterm><programlisting>#define POPPLER_TYPE_PAGE_TRANSITION_TYPE (poppler_page_transition_type_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-page-transition-type-get-type" role="function">
+<title>poppler_page_transition_type_get_type ()</title>
+<indexterm zone="poppler-page-transition-type-get-type"><primary sortas="poppler_page_transition_type_get_type">poppler_page_transition_type_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_page_transition_type_get_type
+ (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS" role="macro">
+<title>POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT</title>
+<indexterm zone="POPPLER-TYPE-PAGE-TRANSITION-ALIGNMENT--CAPS"><primary sortas="POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT">POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT</primary></indexterm><programlisting>#define POPPLER_TYPE_PAGE_TRANSITION_ALIGNMENT (poppler_page_transition_alignment_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-page-transition-alignment-get-type" role="function">
+<title>poppler_page_transition_alignment_get_type ()</title>
+<indexterm zone="poppler-page-transition-alignment-get-type"><primary sortas="poppler_page_transition_alignment_get_type">poppler_page_transition_alignment_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_page_transition_alignment_get_type
+ (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS" role="macro">
+<title>POPPLER_TYPE_PAGE_TRANSITION_DIRECTION</title>
+<indexterm zone="POPPLER-TYPE-PAGE-TRANSITION-DIRECTION--CAPS"><primary sortas="POPPLER_TYPE_PAGE_TRANSITION_DIRECTION">POPPLER_TYPE_PAGE_TRANSITION_DIRECTION</primary></indexterm><programlisting>#define POPPLER_TYPE_PAGE_TRANSITION_DIRECTION (poppler_page_transition_direction_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-page-transition-direction-get-type" role="function">
+<title>poppler_page_transition_direction_get_type ()</title>
+<indexterm zone="poppler-page-transition-direction-get-type"><primary sortas="poppler_page_transition_direction_get_type">poppler_page_transition_direction_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_page_transition_direction_get_type
+ (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-ERROR--CAPS" role="macro">
+<title>POPPLER_TYPE_ERROR</title>
+<indexterm zone="POPPLER-TYPE-ERROR--CAPS"><primary sortas="POPPLER_TYPE_ERROR">POPPLER_TYPE_ERROR</primary></indexterm><programlisting>#define POPPLER_TYPE_ERROR (poppler_error_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-error-get-type" role="function">
+<title>poppler_error_get_type ()</title>
+<indexterm zone="poppler-error-get-type"><primary sortas="poppler_error_get_type">poppler_error_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_error_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-ORIENTATION--CAPS" role="macro">
+<title>POPPLER_TYPE_ORIENTATION</title>
+<indexterm zone="POPPLER-TYPE-ORIENTATION--CAPS"><primary sortas="POPPLER_TYPE_ORIENTATION">POPPLER_TYPE_ORIENTATION</primary></indexterm><programlisting>#define POPPLER_TYPE_ORIENTATION (poppler_orientation_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-orientation-get-type" role="function">
+<title>poppler_orientation_get_type ()</title>
+<indexterm zone="poppler-orientation-get-type"><primary sortas="poppler_orientation_get_type">poppler_orientation_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_orientation_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-BACKEND--CAPS" role="macro">
+<title>POPPLER_TYPE_BACKEND</title>
+<indexterm zone="POPPLER-TYPE-BACKEND--CAPS"><primary sortas="POPPLER_TYPE_BACKEND">POPPLER_TYPE_BACKEND</primary></indexterm><programlisting>#define POPPLER_TYPE_BACKEND (poppler_backend_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-backend-get-type" role="function">
+<title>poppler_backend_get_type ()</title>
+<indexterm zone="poppler-backend-get-type"><primary sortas="poppler_backend_get_type">poppler_backend_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_backend_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-features.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-features.xml
new file mode 100644
index 00000000000..29b60abedb5
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-features.xml
@@ -0,0 +1,114 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-features">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-features.top_of_page">Version and Features Information</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>Version and Features Information</refname>
+<refpurpose>Variables and functions to check the poppler version and features</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-features.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+
+<synopsis>
+#define <link linkend="POPPLER-HAS-CAIRO--CAPS">POPPLER_HAS_CAIRO</link>
+#define <link linkend="POPPLER-WITH-GDK--CAPS">POPPLER_WITH_GDK</link>
+#define <link linkend="POPPLER-MAJOR-VERSION--CAPS">POPPLER_MAJOR_VERSION</link>
+#define <link linkend="POPPLER-MINOR-VERSION--CAPS">POPPLER_MINOR_VERSION</link>
+#define <link linkend="POPPLER-MICRO-VERSION--CAPS">POPPLER_MICRO_VERSION</link>
+#define <link linkend="POPPLER-CHECK-VERSION--CAPS">POPPLER_CHECK_VERSION</link> (major,minor,micro)
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-features.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+Poppler provides version information, and information about features
+enabled at compile time. This is primarily useful in configure checks
+for builds that have a configure script, or for allowing code to optionally
+depend but not require a specific poppler version.
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-features.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="POPPLER-HAS-CAIRO--CAPS" role="macro">
+<title>POPPLER_HAS_CAIRO</title>
+<indexterm zone="POPPLER-HAS-CAIRO--CAPS"><primary sortas="POPPLER_HAS_CAIRO">POPPLER_HAS_CAIRO</primary></indexterm><programlisting>#define POPPLER_HAS_CAIRO 1
+</programlisting>
+<para>
+Defined if poppler was compiled with cairo support.
+</para></refsect2>
+<refsect2 id="POPPLER-WITH-GDK--CAPS" role="macro">
+<title>POPPLER_WITH_GDK</title>
+<indexterm zone="POPPLER-WITH-GDK--CAPS"><primary sortas="POPPLER_WITH_GDK">POPPLER_WITH_GDK</primary></indexterm><programlisting>#define POPPLER_WITH_GDK 1
+</programlisting>
+<para>
+Defined if poppler was compiled with GDK support.
+</para></refsect2>
+<refsect2 id="POPPLER-MAJOR-VERSION--CAPS" role="macro">
+<title>POPPLER_MAJOR_VERSION</title>
+<indexterm zone="POPPLER-MAJOR-VERSION--CAPS"><primary sortas="POPPLER_MAJOR_VERSION">POPPLER_MAJOR_VERSION</primary></indexterm><programlisting>#define POPPLER_MAJOR_VERSION (0)
+</programlisting>
+<para>
+The major version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 0.)
+</para>
+Since: 0.11</refsect2>
+<refsect2 id="POPPLER-MINOR-VERSION--CAPS" role="macro">
+<title>POPPLER_MINOR_VERSION</title>
+<indexterm zone="POPPLER-MINOR-VERSION--CAPS"><primary sortas="POPPLER_MINOR_VERSION">POPPLER_MINOR_VERSION</primary></indexterm><programlisting>#define POPPLER_MINOR_VERSION (12)
+</programlisting>
+<para>
+</para>
+The major version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 1.)
+Since: 0.11</refsect2>
+<refsect2 id="POPPLER-MICRO-VERSION--CAPS" role="macro">
+<title>POPPLER_MICRO_VERSION</title>
+<indexterm zone="POPPLER-MICRO-VERSION--CAPS"><primary sortas="POPPLER_MICRO_VERSION">POPPLER_MICRO_VERSION</primary></indexterm><programlisting>#define POPPLER_MICRO_VERSION (4)
+</programlisting>
+<para>
+The micro version number of the poppler header files (e.g. in poppler version
+0.1.2 this is 2.)
+</para>
+Since: 0.11</refsect2>
+<refsect2 id="POPPLER-CHECK-VERSION--CAPS" role="macro">
+<title>POPPLER_CHECK_VERSION()</title>
+<indexterm zone="POPPLER-CHECK-VERSION--CAPS"><primary sortas="POPPLER_CHECK_VERSION">POPPLER_CHECK_VERSION</primary></indexterm><programlisting>#define POPPLER_CHECK_VERSION(major,minor,micro)</programlisting>
+<para>
+Returns <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the version of the poppler header files is the same
+as or newer than the passed-in version.
+</para><variablelist role="params">
+<varlistentry><term><parameter>major</parameter>&#160;:</term>
+<listitem><simpara>major version (e.g. 0 for version 0.1.2)
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>minor</parameter>&#160;:</term>
+<listitem><simpara>minor version (e.g. 1 for version 0.1.2)
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>micro</parameter>&#160;:</term>
+<listitem><simpara>micro version (e.g. 2 for version 0.1.2)
+Since: 0.11
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-form-field.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-form-field.xml
new file mode 100644
index 00000000000..13b1ae75032
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-form-field.xml
@@ -0,0 +1,546 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-form-field">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-form-field.top_of_page">PopplerFormField</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>PopplerFormField</refname>
+<refpurpose></refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-form-field.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+<anchor id="PopplerFormField"/>
+<synopsis>
+ <link linkend="PopplerFormField-struct">PopplerFormField</link>;
+enum <link linkend="PopplerFormButtonType">PopplerFormButtonType</link>;
+enum <link linkend="PopplerFormChoiceType">PopplerFormChoiceType</link>;
+enum <link linkend="PopplerFormFieldType">PopplerFormFieldType</link>;
+enum <link linkend="PopplerFormTextType">PopplerFormTextType</link>;
+<link linkend="gint">gint</link> <link linkend="poppler-form-field-get-id">poppler_form_field_get_id</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="PopplerFormFieldType">PopplerFormFieldType</link> <link linkend="poppler-form-field-get-field-type">poppler_form_field_get_field_type</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-is-read-only">poppler_form_field_is_read_only</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gdouble">gdouble</link> <link linkend="poppler-form-field-get-font-size">poppler_form_field_get_font_size</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="PopplerFormButtonType">PopplerFormButtonType</link> <link linkend="poppler-form-field-button-get-button-type">poppler_form_field_button_get_button_type</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-button-get-state">poppler_form_field_button_get_state</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="void">void</link> <link linkend="poppler-form-field-button-set-state">poppler_form_field_button_set_state</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gboolean">gboolean</link> state);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-choice-can-select-multiple">poppler_form_field_choice_can_select_multiple</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-choice-commit-on-change">poppler_form_field_choice_commit_on_change</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-choice-do-spell-check">poppler_form_field_choice_do_spell_check</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="PopplerFormChoiceType">PopplerFormChoiceType</link> <link linkend="poppler-form-field-choice-get-choice-type">poppler_form_field_choice_get_choice_type</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-form-field-choice-get-item">poppler_form_field_choice_get_item</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);
+<link linkend="gint">gint</link> <link linkend="poppler-form-field-choice-get-n-items">poppler_form_field_choice_get_n_items</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-form-field-choice-get-text">poppler_form_field_choice_get_text</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-choice-is-editable">poppler_form_field_choice_is_editable</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-choice-is-item-selected">poppler_form_field_choice_is_item_selected</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);
+<link linkend="void">void</link> <link linkend="poppler-form-field-choice-select-item">poppler_form_field_choice_select_item</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);
+<link linkend="void">void</link> <link linkend="poppler-form-field-choice-set-text">poppler_form_field_choice_set_text</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ const <link linkend="gchar">gchar</link> *text);
+<link linkend="void">void</link> <link linkend="poppler-form-field-choice-toggle-item">poppler_form_field_choice_toggle_item</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);
+<link linkend="void">void</link> <link linkend="poppler-form-field-choice-unselect-all">poppler_form_field_choice_unselect_all</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-text-do-scroll">poppler_form_field_text_do_scroll</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-text-do-spell-check">poppler_form_field_text_do_spell_check</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gint">gint</link> <link linkend="poppler-form-field-text-get-max-len">poppler_form_field_text_get_max_len</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gchar">gchar</link> * <link linkend="poppler-form-field-text-get-text">poppler_form_field_text_get_text</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="PopplerFormTextType">PopplerFormTextType</link> <link linkend="poppler-form-field-text-get-text-type">poppler_form_field_text_get_text_type</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-text-is-password">poppler_form_field_text_is_password</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-form-field-text-is-rich-text">poppler_form_field_text_is_rich_text</link>
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);
+<link linkend="void">void</link> <link linkend="poppler-form-field-text-set-text">poppler_form_field_text_set_text</link> (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ const <link linkend="gchar">gchar</link> *text);
+</synopsis>
+</refsynopsisdiv>
+
+<refsect1 id="poppler-poppler-form-field.object-hierarchy" role="object_hierarchy">
+<title role="object_hierarchy.title">Object Hierarchy</title>
+<synopsis>
+ <link linkend="GObject">GObject</link>
+ +----PopplerFormField
+</synopsis>
+</refsect1>
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-form-field.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-form-field.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="PopplerFormField-struct" role="struct">
+<title>PopplerFormField</title>
+<indexterm zone="PopplerFormField-struct"><primary sortas="PopplerFormField">PopplerFormField</primary></indexterm><programlisting>typedef struct _PopplerFormField PopplerFormField;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFormButtonType" role="enum">
+<title>enum PopplerFormButtonType</title>
+<indexterm zone="PopplerFormButtonType"><primary sortas="PopplerFormButtonType">PopplerFormButtonType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_FORM_BUTTON_PUSH,
+ POPPLER_FORM_BUTTON_CHECK,
+ POPPLER_FORM_BUTTON_RADIO
+} PopplerFormButtonType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFormChoiceType" role="enum">
+<title>enum PopplerFormChoiceType</title>
+<indexterm zone="PopplerFormChoiceType"><primary sortas="PopplerFormChoiceType">PopplerFormChoiceType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_FORM_CHOICE_COMBO,
+ POPPLER_FORM_CHOICE_LIST
+} PopplerFormChoiceType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFormFieldType" role="enum">
+<title>enum PopplerFormFieldType</title>
+<indexterm zone="PopplerFormFieldType"><primary sortas="PopplerFormFieldType">PopplerFormFieldType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_FORM_FIELD_UNKNOWN,
+ POPPLER_FORM_FIELD_BUTTON,
+ POPPLER_FORM_FIELD_TEXT,
+ POPPLER_FORM_FIELD_CHOICE,
+ POPPLER_FORM_FIELD_SIGNATURE
+} PopplerFormFieldType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFormTextType" role="enum">
+<title>enum PopplerFormTextType</title>
+<indexterm zone="PopplerFormTextType"><primary sortas="PopplerFormTextType">PopplerFormTextType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_FORM_TEXT_NORMAL,
+ POPPLER_FORM_TEXT_MULTILINE,
+ POPPLER_FORM_TEXT_FILE_SELECT
+} PopplerFormTextType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-form-field-get-id" role="function">
+<title>poppler_form_field_get_id ()</title>
+<indexterm zone="poppler-form-field-get-id"><primary sortas="poppler_form_field_get_id">poppler_form_field_get_id</primary></indexterm><programlisting><link linkend="gint">gint</link> poppler_form_field_get_id (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Gets the id of <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the id of <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-get-field-type" role="function">
+<title>poppler_form_field_get_field_type ()</title>
+<indexterm zone="poppler-form-field-get-field-type"><primary sortas="poppler_form_field_get_field_type">poppler_form_field_get_field_type</primary></indexterm><programlisting><link linkend="PopplerFormFieldType">PopplerFormFieldType</link> poppler_form_field_get_field_type (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Gets the type of <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerFormFieldType"><type>PopplerFormFieldType</type></link> of <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-is-read-only" role="function">
+<title>poppler_form_field_is_read_only ()</title>
+<indexterm zone="poppler-form-field-is-read-only"><primary sortas="poppler_form_field_is_read_only">poppler_form_field_is_read_only</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_is_read_only (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Checks whether <parameter>field</parameter> is read only</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>field</parameter> is read only
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-get-font-size" role="function">
+<title>poppler_form_field_get_font_size ()</title>
+<indexterm zone="poppler-form-field-get-font-size"><primary sortas="poppler_form_field_get_font_size">poppler_form_field_get_font_size</primary></indexterm><programlisting><link linkend="gdouble">gdouble</link> poppler_form_field_get_font_size (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Gets the font size of <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the font size of <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-button-get-button-type" role="function">
+<title>poppler_form_field_button_get_button_type ()</title>
+<indexterm zone="poppler-form-field-button-get-button-type"><primary sortas="poppler_form_field_button_get_button_type">poppler_form_field_button_get_button_type</primary></indexterm><programlisting><link linkend="PopplerFormButtonType">PopplerFormButtonType</link> poppler_form_field_button_get_button_type
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Gets the button type of <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerFormButtonType"><type>PopplerFormButtonType</type></link> of <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-button-get-state" role="function">
+<title>poppler_form_field_button_get_state ()</title>
+<indexterm zone="poppler-form-field-button-get-state"><primary sortas="poppler_form_field_button_get_state">poppler_form_field_button_get_state</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_button_get_state (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Queries a <link linkend="PopplerFormField"><type>PopplerFormField</type></link> and returns its current state. Returns <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if
+<parameter>field</parameter> is pressed in and <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> if it is raised.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> current state of <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-button-set-state" role="function">
+<title>poppler_form_field_button_set_state ()</title>
+<indexterm zone="poppler-form-field-button-set-state"><primary sortas="poppler_form_field_button_set_state">poppler_form_field_button_set_state</primary></indexterm><programlisting><link linkend="void">void</link> poppler_form_field_button_set_state (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gboolean">gboolean</link> state);</programlisting>
+<para>
+Sets the status of <parameter>field</parameter>. Set to <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if you want the <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+to be 'pressed in', and <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> to raise it.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>state</parameter>&#160;:</term>
+<listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> or <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-can-select-multiple" role="function">
+<title>poppler_form_field_choice_can_select_multiple ()</title>
+<indexterm zone="poppler-form-field-choice-can-select-multiple"><primary sortas="poppler_form_field_choice_can_select_multiple">poppler_form_field_choice_can_select_multiple</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_choice_can_select_multiple
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Checks whether <parameter>field</parameter> allows multiple choices to be selected</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>field</parameter> allows multiple choices to be selected
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-commit-on-change" role="function">
+<title>poppler_form_field_choice_commit_on_change ()</title>
+<indexterm zone="poppler-form-field-choice-commit-on-change"><primary sortas="poppler_form_field_choice_commit_on_change">poppler_form_field_choice_commit_on_change</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_choice_commit_on_change
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-do-spell-check" role="function">
+<title>poppler_form_field_choice_do_spell_check ()</title>
+<indexterm zone="poppler-form-field-choice-do-spell-check"><primary sortas="poppler_form_field_choice_do_spell_check">poppler_form_field_choice_do_spell_check</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_choice_do_spell_check
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Checks whether spell checking should be done for the contents of <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if spell checking should be done for <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-get-choice-type" role="function">
+<title>poppler_form_field_choice_get_choice_type ()</title>
+<indexterm zone="poppler-form-field-choice-get-choice-type"><primary sortas="poppler_form_field_choice_get_choice_type">poppler_form_field_choice_get_choice_type</primary></indexterm><programlisting><link linkend="PopplerFormChoiceType">PopplerFormChoiceType</link> poppler_form_field_choice_get_choice_type
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Gets the choice type of <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerFormChoiceType"><type>PopplerFormChoiceType</type></link> of <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-get-item" role="function">
+<title>poppler_form_field_choice_get_item ()</title>
+<indexterm zone="poppler-form-field-choice-get-item"><primary sortas="poppler_form_field_choice_get_item">poppler_form_field_choice_get_item</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_form_field_choice_get_item (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);</programlisting>
+<para>
+Returns the contents of the item on <parameter>field</parameter> at the given index</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>index</parameter>&#160;:</term>
+<listitem><simpara> the index of the item
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated string. It must be freed with <link linkend="g-free"><function>g_free()</function></link> when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-get-n-items" role="function">
+<title>poppler_form_field_choice_get_n_items ()</title>
+<indexterm zone="poppler-form-field-choice-get-n-items"><primary sortas="poppler_form_field_choice_get_n_items">poppler_form_field_choice_get_n_items</primary></indexterm><programlisting><link linkend="gint">gint</link> poppler_form_field_choice_get_n_items
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Returns the number of items on <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the number of items on <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-get-text" role="function">
+<title>poppler_form_field_choice_get_text ()</title>
+<indexterm zone="poppler-form-field-choice-get-text"><primary sortas="poppler_form_field_choice_get_text">poppler_form_field_choice_get_text</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_form_field_choice_get_text (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Retrieves the contents of <parameter>field</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated string. It must be freed with <link linkend="g-free"><function>g_free()</function></link> when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-is-editable" role="function">
+<title>poppler_form_field_choice_is_editable ()</title>
+<indexterm zone="poppler-form-field-choice-is-editable"><primary sortas="poppler_form_field_choice_is_editable">poppler_form_field_choice_is_editable</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_choice_is_editable
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Checks whether <parameter>field</parameter> is editable</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>field</parameter> is editable
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-is-item-selected" role="function">
+<title>poppler_form_field_choice_is_item_selected ()</title>
+<indexterm zone="poppler-form-field-choice-is-item-selected"><primary sortas="poppler_form_field_choice_is_item_selected">poppler_form_field_choice_is_item_selected</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_choice_is_item_selected
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);</programlisting>
+<para>
+Checks whether the item at the given index on <parameter>field</parameter> is currently selected</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>index</parameter>&#160;:</term>
+<listitem><simpara> the index of the item
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if item at <parameter>index</parameter> is currently selected
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-select-item" role="function">
+<title>poppler_form_field_choice_select_item ()</title>
+<indexterm zone="poppler-form-field-choice-select-item"><primary sortas="poppler_form_field_choice_select_item">poppler_form_field_choice_select_item</primary></indexterm><programlisting><link linkend="void">void</link> poppler_form_field_choice_select_item
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);</programlisting>
+<para>
+Selects the item at the given index on <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>index</parameter>&#160;:</term>
+<listitem><simpara> the index of the item
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-set-text" role="function">
+<title>poppler_form_field_choice_set_text ()</title>
+<indexterm zone="poppler-form-field-choice-set-text"><primary sortas="poppler_form_field_choice_set_text">poppler_form_field_choice_set_text</primary></indexterm><programlisting><link linkend="void">void</link> poppler_form_field_choice_set_text (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ const <link linkend="gchar">gchar</link> *text);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>text</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-toggle-item" role="function">
+<title>poppler_form_field_choice_toggle_item ()</title>
+<indexterm zone="poppler-form-field-choice-toggle-item"><primary sortas="poppler_form_field_choice_toggle_item">poppler_form_field_choice_toggle_item</primary></indexterm><programlisting><link linkend="void">void</link> poppler_form_field_choice_toggle_item
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ <link linkend="gint">gint</link> index);</programlisting>
+<para>
+Sets the text in <parameter>field</parameter> to the given value, replacing the current contents</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>index</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-choice-unselect-all" role="function">
+<title>poppler_form_field_choice_unselect_all ()</title>
+<indexterm zone="poppler-form-field-choice-unselect-all"><primary sortas="poppler_form_field_choice_unselect_all">poppler_form_field_choice_unselect_all</primary></indexterm><programlisting><link linkend="void">void</link> poppler_form_field_choice_unselect_all
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Unselects all the items on <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-do-scroll" role="function">
+<title>poppler_form_field_text_do_scroll ()</title>
+<indexterm zone="poppler-form-field-text-do-scroll"><primary sortas="poppler_form_field_text_do_scroll">poppler_form_field_text_do_scroll</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_text_do_scroll (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-do-spell-check" role="function">
+<title>poppler_form_field_text_do_spell_check ()</title>
+<indexterm zone="poppler-form-field-text-do-spell-check"><primary sortas="poppler_form_field_text_do_spell_check">poppler_form_field_text_do_spell_check</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_text_do_spell_check
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Checks whether spell checking should be done for the contents of <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if spell checking should be done for <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-get-max-len" role="function">
+<title>poppler_form_field_text_get_max_len ()</title>
+<indexterm zone="poppler-form-field-text-get-max-len"><primary sortas="poppler_form_field_text_get_max_len">poppler_form_field_text_get_max_len</primary></indexterm><programlisting><link linkend="gint">gint</link> poppler_form_field_text_get_max_len (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Retrieves the maximum allowed length of the text in <parameter>field</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the maximum allowed number of characters in <parameter>field</parameter>, or -1 if there is no maximum.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-get-text" role="function">
+<title>poppler_form_field_text_get_text ()</title>
+<indexterm zone="poppler-form-field-text-get-text"><primary sortas="poppler_form_field_text_get_text">poppler_form_field_text_get_text</primary></indexterm><programlisting><link linkend="gchar">gchar</link> * poppler_form_field_text_get_text (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Retrieves the contents of <parameter>field</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new allocated string. It must be freed with <link linkend="g-free"><function>g_free()</function></link> when done.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-get-text-type" role="function">
+<title>poppler_form_field_text_get_text_type ()</title>
+<indexterm zone="poppler-form-field-text-get-text-type"><primary sortas="poppler_form_field_text_get_text_type">poppler_form_field_text_get_text_type</primary></indexterm><programlisting><link linkend="PopplerFormTextType">PopplerFormTextType</link> poppler_form_field_text_get_text_type
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Gets the text type of <parameter>field</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="PopplerFormTextType"><type>PopplerFormTextType</type></link> of <parameter>field</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-is-password" role="function">
+<title>poppler_form_field_text_is_password ()</title>
+<indexterm zone="poppler-form-field-text-is-password"><primary sortas="poppler_form_field_text_is_password">poppler_form_field_text_is_password</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_text_is_password (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Checks whether content of <parameter>field</parameter> is a password and it must be hidden</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the content of <parameter>field</parameter> is a password
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-is-rich-text" role="function">
+<title>poppler_form_field_text_is_rich_text ()</title>
+<indexterm zone="poppler-form-field-text-is-rich-text"><primary sortas="poppler_form_field_text_is_rich_text">poppler_form_field_text_is_rich_text</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_form_field_text_is_rich_text
+ (<link linkend="PopplerFormField">PopplerFormField</link> *field);</programlisting>
+<para>
+Checks whether the contents of <parameter>field</parameter> are rich text</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if the contents of <parameter>field</parameter> are rich text
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-text-set-text" role="function">
+<title>poppler_form_field_text_set_text ()</title>
+<indexterm zone="poppler-form-field-text-set-text"><primary sortas="poppler_form_field_text_set_text">poppler_form_field_text_set_text</primary></indexterm><programlisting><link linkend="void">void</link> poppler_form_field_text_set_text (<link linkend="PopplerFormField">PopplerFormField</link> *field,
+ const <link linkend="gchar">gchar</link> *text);</programlisting>
+<para>
+Sets the text in <parameter>field</parameter> to the given value, replacing the current contents.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>field</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerFormField"><type>PopplerFormField</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>text</parameter>&#160;:</term>
+<listitem><simpara> the new text
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-layer.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-layer.xml
new file mode 100644
index 00000000000..672679654a0
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-layer.xml
@@ -0,0 +1,140 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-layer">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-layer.top_of_page">PopplerLayer</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>PopplerLayer</refname>
+<refpurpose></refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-layer.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+
+<synopsis>
+<link linkend="GType">GType</link> <link linkend="poppler-layer-get-type">poppler_layer_get_type</link> (void);
+const <link linkend="gchar">gchar</link> * <link linkend="poppler-layer-get-title">poppler_layer_get_title</link> (<link linkend="PopplerLayer">PopplerLayer</link> *layer);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-layer-is-visible">poppler_layer_is_visible</link> (<link linkend="PopplerLayer">PopplerLayer</link> *layer);
+<link linkend="void">void</link> <link linkend="poppler-layer-show">poppler_layer_show</link> (<link linkend="PopplerLayer">PopplerLayer</link> *layer);
+<link linkend="void">void</link> <link linkend="poppler-layer-hide">poppler_layer_hide</link> (<link linkend="PopplerLayer">PopplerLayer</link> *layer);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-layer-is-parent">poppler_layer_is_parent</link> (<link linkend="PopplerLayer">PopplerLayer</link> *layer);
+<link linkend="gint">gint</link> <link linkend="poppler-layer-get-radio-button-group-id">poppler_layer_get_radio_button_group_id</link>
+ (<link linkend="PopplerLayer">PopplerLayer</link> *layer);
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-layer.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-layer.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="poppler-layer-get-type" role="function">
+<title>poppler_layer_get_type ()</title>
+<indexterm zone="poppler-layer-get-type"><primary sortas="poppler_layer_get_type">poppler_layer_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_layer_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-layer-get-title" role="function">
+<title>poppler_layer_get_title ()</title>
+<indexterm zone="poppler-layer-get-title"><primary sortas="poppler_layer_get_title">poppler_layer_get_title</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link> * poppler_layer_get_title (<link linkend="PopplerLayer">PopplerLayer</link> *layer);</programlisting>
+<para>
+Returns the name of the layer suitable for
+presentation as a title in a viewer's GUI</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>layer</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerLayer"><type>PopplerLayer</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a string containing the title of the layer
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-layer-is-visible" role="function">
+<title>poppler_layer_is_visible ()</title>
+<indexterm zone="poppler-layer-is-visible"><primary sortas="poppler_layer_is_visible">poppler_layer_is_visible</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_layer_is_visible (<link linkend="PopplerLayer">PopplerLayer</link> *layer);</programlisting>
+<para>
+Returns whether <parameter>layer</parameter> is visible</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>layer</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerLayer"><type>PopplerLayer</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>layer</parameter> is visible
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-layer-show" role="function">
+<title>poppler_layer_show ()</title>
+<indexterm zone="poppler-layer-show"><primary sortas="poppler_layer_show">poppler_layer_show</primary></indexterm><programlisting><link linkend="void">void</link> poppler_layer_show (<link linkend="PopplerLayer">PopplerLayer</link> *layer);</programlisting>
+<para>
+Shows <parameter>layer</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>layer</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerLayer"><type>PopplerLayer</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-layer-hide" role="function">
+<title>poppler_layer_hide ()</title>
+<indexterm zone="poppler-layer-hide"><primary sortas="poppler_layer_hide">poppler_layer_hide</primary></indexterm><programlisting><link linkend="void">void</link> poppler_layer_hide (<link linkend="PopplerLayer">PopplerLayer</link> *layer);</programlisting>
+<para>
+Hides <parameter>layer</parameter>. If <parameter>layer</parameter> is the parent of other nested layers,
+such layers will be also hidden and will be blocked until <parameter>layer</parameter>
+is shown again</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>layer</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerLayer"><type>PopplerLayer</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-layer-is-parent" role="function">
+<title>poppler_layer_is_parent ()</title>
+<indexterm zone="poppler-layer-is-parent"><primary sortas="poppler_layer_is_parent">poppler_layer_is_parent</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_layer_is_parent (<link linkend="PopplerLayer">PopplerLayer</link> *layer);</programlisting>
+<para>
+Returns whether <parameter>layer</parameter> is parent of other nested layers.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>layer</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerLayer"><type>PopplerLayer</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>layer</parameter> is a parent layer
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-layer-get-radio-button-group-id" role="function">
+<title>poppler_layer_get_radio_button_group_id ()</title>
+<indexterm zone="poppler-layer-get-radio-button-group-id"><primary sortas="poppler_layer_get_radio_button_group_id">poppler_layer_get_radio_button_group_id</primary></indexterm><programlisting><link linkend="gint">gint</link> poppler_layer_get_radio_button_group_id
+ (<link linkend="PopplerLayer">PopplerLayer</link> *layer);</programlisting>
+<para>
+Returns the numeric ID the radio button group associated with <parameter>layer</parameter>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>layer</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerLayer"><type>PopplerLayer</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the ID of the radio button group associated with <parameter>layer</parameter>,
+or 0 if the layer is not associated to any radio button group
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-page.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-page.xml
new file mode 100644
index 00000000000..9a7d5fdf88c
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-page.xml
@@ -0,0 +1,819 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-page">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-page.top_of_page">PopplerPage</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>PopplerPage</refname>
+<refpurpose>Information about a page in a document</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-page.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+
+<synopsis>
+<link linkend="void">void</link> <link linkend="poppler-page-render">poppler_page_render</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="cairo-t">cairo_t</link> *cairo);
+<link linkend="void">void</link> <link linkend="poppler-page-render-to-pixbuf">poppler_page_render_to_pixbuf</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="int">int</link> src_x,
+ <link linkend="int">int</link> src_y,
+ <link linkend="int">int</link> src_width,
+ <link linkend="int">int</link> src_height,
+ <link linkend="double">double</link> scale,
+ <link linkend="int">int</link> rotation,
+ <link linkend="GdkPixbuf">GdkPixbuf</link> *pixbuf);
+<link linkend="void">void</link> <link linkend="poppler-page-get-size">poppler_page_get_size</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="double">double</link> *width,
+ <link linkend="double">double</link> *height);
+<link linkend="int">int</link> <link linkend="poppler-page-get-index">poppler_page_get_index</link> (<link linkend="PopplerPage">PopplerPage</link> *page);
+<link linkend="cairo-surface-t">cairo_surface_t</link> * <link linkend="poppler-page-get-thumbnail">poppler_page_get_thumbnail</link> (<link linkend="PopplerPage">PopplerPage</link> *page);
+<link linkend="gboolean">gboolean</link> <link linkend="poppler-page-get-thumbnail-size">poppler_page_get_thumbnail_size</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="int">int</link> *width,
+ <link linkend="int">int</link> *height);
+<link linkend="void">void</link> <link linkend="poppler-page-render-to-ps">poppler_page_render_to_ps</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file);
+<link linkend="GList">GList</link> * <link linkend="poppler-page-find-text">poppler_page_find_text</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ const <link linkend="char">char</link> *text);
+<link linkend="char">char</link> * <link linkend="poppler-page-get-text">poppler_page_get_text</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *rect);
+<link linkend="double">double</link> <link linkend="poppler-page-get-duration">poppler_page_get_duration</link> (<link linkend="PopplerPage">PopplerPage</link> *page);
+<link linkend="PopplerPageTransition">PopplerPageTransition</link> * <link linkend="poppler-page-get-transition">poppler_page_get_transition</link> (<link linkend="PopplerPage">PopplerPage</link> *page);
+<link linkend="GList">GList</link> * <link linkend="poppler-page-get-link-mapping">poppler_page_get_link_mapping</link> (<link linkend="PopplerPage">PopplerPage</link> *page);
+<link linkend="void">void</link> <link linkend="poppler-page-free-link-mapping">poppler_page_free_link_mapping</link> (<link linkend="GList">GList</link> *list);
+<link linkend="GList">GList</link> * <link linkend="poppler-page-get-image-mapping">poppler_page_get_image_mapping</link> (<link linkend="PopplerPage">PopplerPage</link> *page);
+<link linkend="void">void</link> <link linkend="poppler-page-free-image-mapping">poppler_page_free_image_mapping</link> (<link linkend="GList">GList</link> *list);
+<link linkend="GList">GList</link> * <link linkend="poppler-page-get-form-field-mapping">poppler_page_get_form_field_mapping</link> (<link linkend="PopplerPage">PopplerPage</link> *page);
+<link linkend="void">void</link> <link linkend="poppler-page-free-form-field-mapping">poppler_page_free_form_field_mapping</link>
+ (<link linkend="GList">GList</link> *list);
+<link linkend="GList">GList</link> * <link linkend="poppler-page-get-selection-region">poppler_page_get_selection_region</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="gdouble">gdouble</link> scale,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *selection);
+<link linkend="void">void</link> <link linkend="poppler-page-render-selection">poppler_page_render_selection</link> (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="cairo-t">cairo_t</link> *cairo,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *selection,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *old_selection,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="PopplerColor">PopplerColor</link> *glyph_color,
+ <link linkend="PopplerColor">PopplerColor</link> *background_color);
+<link linkend="void">void</link> <link linkend="poppler-page-render-selection-to-pixbuf">poppler_page_render_selection_to_pixbuf</link>
+ (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="gdouble">gdouble</link> scale,
+ <link linkend="int">int</link> rotation,
+ <link linkend="GdkPixbuf">GdkPixbuf</link> *pixbuf,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *selection,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *old_selection,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="GdkColor">GdkColor</link> *glyph_color,
+ <link linkend="GdkColor">GdkColor</link> *background_color);
+#define <link linkend="POPPLER-TYPE-RECTANGLE--CAPS">POPPLER_TYPE_RECTANGLE</link>
+ <link linkend="PopplerRectangle">PopplerRectangle</link>;
+<link linkend="GType">GType</link> <link linkend="poppler-rectangle-get-type">poppler_rectangle_get_type</link> (void);
+<link linkend="PopplerRectangle">PopplerRectangle</link> * <link linkend="poppler-rectangle-new">poppler_rectangle_new</link> (void);
+<link linkend="PopplerRectangle">PopplerRectangle</link> * <link linkend="poppler-rectangle-copy">poppler_rectangle_copy</link> (<link linkend="PopplerRectangle">PopplerRectangle</link> *rectangle);
+<link linkend="void">void</link> <link linkend="poppler-rectangle-free">poppler_rectangle_free</link> (<link linkend="PopplerRectangle">PopplerRectangle</link> *rectangle);
+#define <link linkend="POPPLER-TYPE-PAGE-TRANSITION--CAPS">POPPLER_TYPE_PAGE_TRANSITION</link>
+ <link linkend="PopplerPageTransition">PopplerPageTransition</link>;
+<link linkend="GType">GType</link> <link linkend="poppler-page-transition-get-type">poppler_page_transition_get_type</link> (void);
+<link linkend="PopplerPageTransition">PopplerPageTransition</link> * <link linkend="poppler-page-transition-new">poppler_page_transition_new</link> (void);
+<link linkend="PopplerPageTransition">PopplerPageTransition</link> * <link linkend="poppler-page-transition-copy">poppler_page_transition_copy</link> (<link linkend="PopplerPageTransition">PopplerPageTransition</link> *transition);
+<link linkend="void">void</link> <link linkend="poppler-page-transition-free">poppler_page_transition_free</link> (<link linkend="PopplerPageTransition">PopplerPageTransition</link> *transition);
+#define <link linkend="POPPLER-TYPE-LINK-MAPPING--CAPS">POPPLER_TYPE_LINK_MAPPING</link>
+ <link linkend="PopplerLinkMapping">PopplerLinkMapping</link>;
+<link linkend="GType">GType</link> <link linkend="poppler-link-mapping-get-type">poppler_link_mapping_get_type</link> (void);
+<link linkend="PopplerLinkMapping">PopplerLinkMapping</link> * <link linkend="poppler-link-mapping-new">poppler_link_mapping_new</link> (void);
+<link linkend="PopplerLinkMapping">PopplerLinkMapping</link> * <link linkend="poppler-link-mapping-copy">poppler_link_mapping_copy</link> (<link linkend="PopplerLinkMapping">PopplerLinkMapping</link> *mapping);
+<link linkend="void">void</link> <link linkend="poppler-link-mapping-free">poppler_link_mapping_free</link> (<link linkend="PopplerLinkMapping">PopplerLinkMapping</link> *mapping);
+#define <link linkend="POPPLER-TYPE-IMAGE-MAPPING--CAPS">POPPLER_TYPE_IMAGE_MAPPING</link>
+ <link linkend="PopplerImageMapping">PopplerImageMapping</link>;
+<link linkend="GType">GType</link> <link linkend="poppler-image-mapping-get-type">poppler_image_mapping_get_type</link> (void);
+<link linkend="PopplerImageMapping">PopplerImageMapping</link> * <link linkend="poppler-image-mapping-new">poppler_image_mapping_new</link> (void);
+<link linkend="PopplerImageMapping">PopplerImageMapping</link> * <link linkend="poppler-image-mapping-copy">poppler_image_mapping_copy</link> (<link linkend="PopplerImageMapping">PopplerImageMapping</link> *mapping);
+<link linkend="void">void</link> <link linkend="poppler-image-mapping-free">poppler_image_mapping_free</link> (<link linkend="PopplerImageMapping">PopplerImageMapping</link> *mapping);
+#define <link linkend="POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS">POPPLER_TYPE_FORM_FIELD_MAPPING</link>
+ <link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link>;
+<link linkend="GType">GType</link> <link linkend="poppler-form-field-mapping-get-type">poppler_form_field_mapping_get_type</link> (void);
+<link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> * <link linkend="poppler-form-field-mapping-new">poppler_form_field_mapping_new</link>
+ (void);
+<link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> * <link linkend="poppler-form-field-mapping-copy">poppler_form_field_mapping_copy</link>
+ (<link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> *mapping);
+<link linkend="void">void</link> <link linkend="poppler-form-field-mapping-free">poppler_form_field_mapping_free</link> (<link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> *mapping);
+</synopsis>
+</refsynopsisdiv>
+
+
+
+
+
+
+
+
+
+<refsect1 id="poppler-poppler-page.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-page.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="poppler-page-render" role="function">
+<title>poppler_page_render ()</title>
+<indexterm zone="poppler-page-render"><primary sortas="poppler_page_render">poppler_page_render</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_render (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="cairo-t">cairo_t</link> *cairo);</programlisting>
+<para>
+Render the page to the given cairo context. This function
+is for rendering a page that will be displayed. If you want
+to render a page that will be printed use
+<link linkend="poppler-page-render-for-printing"><function>poppler_page_render_for_printing()</function></link> instead</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> the page to render from
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>cairo</parameter>&#160;:</term>
+<listitem><simpara> cairo context to render to
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-render-to-pixbuf" role="function">
+<title>poppler_page_render_to_pixbuf ()</title>
+<indexterm zone="poppler-page-render-to-pixbuf"><primary sortas="poppler_page_render_to_pixbuf">poppler_page_render_to_pixbuf</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_render_to_pixbuf (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="int">int</link> src_x,
+ <link linkend="int">int</link> src_y,
+ <link linkend="int">int</link> src_width,
+ <link linkend="int">int</link> src_height,
+ <link linkend="double">double</link> scale,
+ <link linkend="int">int</link> rotation,
+ <link linkend="GdkPixbuf">GdkPixbuf</link> *pixbuf);</programlisting>
+<para>
+First scale the document to match the specified pixels per point,
+then render the rectangle given by the upper left corner at
+(src_x, src_y) and src_width and src_height.
+This function is for rendering a page that will be displayed.
+If you want to render a page that will be printed use
+<link linkend="poppler-page-render-to-pixbuf-for-printing"><function>poppler_page_render_to_pixbuf_for_printing()</function></link> instead</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> the page to render from
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>src_x</parameter>&#160;:</term>
+<listitem><simpara> x coordinate of upper left corner
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>src_y</parameter>&#160;:</term>
+<listitem><simpara> y coordinate of upper left corner
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>src_width</parameter>&#160;:</term>
+<listitem><simpara> width of rectangle to render
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>src_height</parameter>&#160;:</term>
+<listitem><simpara> height of rectangle to render
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>scale</parameter>&#160;:</term>
+<listitem><simpara> scale specified as pixels per point
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>rotation</parameter>&#160;:</term>
+<listitem><simpara> rotate the document by the specified degree
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>pixbuf</parameter>&#160;:</term>
+<listitem><simpara> pixbuf to render into
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-size" role="function">
+<title>poppler_page_get_size ()</title>
+<indexterm zone="poppler-page-get-size"><primary sortas="poppler_page_get_size">poppler_page_get_size</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_get_size (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="double">double</link> *width,
+ <link linkend="double">double</link> *height);</programlisting>
+<para>
+Gets the size of <parameter>page</parameter> at the current scale and rotation.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>width</parameter>&#160;:</term>
+<listitem><simpara> return location for the width of <parameter>page</parameter>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>height</parameter>&#160;:</term>
+<listitem><simpara> return location for the height of <parameter>page</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-index" role="function">
+<title>poppler_page_get_index ()</title>
+<indexterm zone="poppler-page-get-index"><primary sortas="poppler_page_get_index">poppler_page_get_index</primary></indexterm><programlisting><link linkend="int">int</link> poppler_page_get_index (<link linkend="PopplerPage">PopplerPage</link> *page);</programlisting>
+<para>
+Returns the index of <parameter>page</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> index value of <parameter>page</parameter>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-thumbnail" role="function">
+<title>poppler_page_get_thumbnail ()</title>
+<indexterm zone="poppler-page-get-thumbnail"><primary sortas="poppler_page_get_thumbnail">poppler_page_get_thumbnail</primary></indexterm><programlisting><link linkend="cairo-surface-t">cairo_surface_t</link> * poppler_page_get_thumbnail (<link linkend="PopplerPage">PopplerPage</link> *page);</programlisting>
+<para>
+Get the embedded thumbnail for the specified page. If the document
+doesn't have an embedded thumbnail for the page, this function
+returns <link linkend="NULL--CAPS"><literal>NULL</literal></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> the <link linkend="PopperPage"><type>PopperPage</type></link> to get the thumbnail for
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the tumbnail as a cairo_surface_t or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if the document
+doesn't have a thumbnail for this page.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-thumbnail-size" role="function">
+<title>poppler_page_get_thumbnail_size ()</title>
+<indexterm zone="poppler-page-get-thumbnail-size"><primary sortas="poppler_page_get_thumbnail_size">poppler_page_get_thumbnail_size</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> poppler_page_get_thumbnail_size (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="int">int</link> *width,
+ <link linkend="int">int</link> *height);</programlisting>
+<para>
+Returns <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if <parameter>page</parameter> has a thumbnail associated with it. It also
+fills in <parameter>width</parameter> and <parameter>height</parameter> with the width and height of the
+thumbnail. The values of width and height are not changed if no
+appropriate thumbnail exists.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>width</parameter>&#160;:</term>
+<listitem><simpara> return location for width
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>height</parameter>&#160;:</term>
+<listitem><simpara> return location for height
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, if <parameter>page</parameter> has a thumbnail associated with it.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-render-to-ps" role="function">
+<title>poppler_page_render_to_ps ()</title>
+<indexterm zone="poppler-page-render-to-ps"><primary sortas="poppler_page_render_to_ps">poppler_page_render_to_ps</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_render_to_ps (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="PopplerPSFile">PopplerPSFile</link> *ps_file);</programlisting>
+<para>
+Render the page on a postscript file</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>ps_file</parameter>&#160;:</term>
+<listitem><simpara> the PopplerPSFile to render to
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-find-text" role="function">
+<title>poppler_page_find_text ()</title>
+<indexterm zone="poppler-page-find-text"><primary sortas="poppler_page_find_text">poppler_page_find_text</primary></indexterm><programlisting><link linkend="GList">GList</link> * poppler_page_find_text (<link linkend="PopplerPage">PopplerPage</link> *page,
+ const <link linkend="char">char</link> *text);</programlisting>
+<para>
+A <link linkend="GList"><type>GList</type></link> of rectangles for each occurance of the text on the page.
+The coordinates are in PDF points.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>text</parameter>&#160;:</term>
+<listitem><simpara> the text to search for (UTF-8 encoded)
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a <link linkend="GList"><type>GList</type></link> of PopplerRectangle,
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-text" role="function">
+<title>poppler_page_get_text ()</title>
+<indexterm zone="poppler-page-get-text"><primary sortas="poppler_page_get_text">poppler_page_get_text</primary></indexterm><programlisting><link linkend="char">char</link> * poppler_page_get_text (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *rect);</programlisting>
+<para>
+Retrieves the contents of the specified <parameter>selection</parameter> as text.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>style</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerSelectionStyle"><type>PopplerSelectionStyle</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>rect</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a pointer to the contents of the <parameter>selection</parameter>
+ as a string
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-duration" role="function">
+<title>poppler_page_get_duration ()</title>
+<indexterm zone="poppler-page-get-duration"><primary sortas="poppler_page_get_duration">poppler_page_get_duration</primary></indexterm><programlisting><link linkend="double">double</link> poppler_page_get_duration (<link linkend="PopplerPage">PopplerPage</link> *page);</programlisting>
+<para>
+Returns the duration of <parameter>page</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> duration in seconds of <parameter>page</parameter> or -1.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-transition" role="function">
+<title>poppler_page_get_transition ()</title>
+<indexterm zone="poppler-page-get-transition"><primary sortas="poppler_page_get_transition">poppler_page_get_transition</primary></indexterm><programlisting><link linkend="PopplerPageTransition">PopplerPageTransition</link> * poppler_page_get_transition (<link linkend="PopplerPage">PopplerPage</link> *page);</programlisting>
+<para>
+Returns the transition effect of <parameter>page</parameter></para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a <link linkend="PopplerPageTransition"><type>PopplerPageTransition</type></link> or NULL.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-link-mapping" role="function">
+<title>poppler_page_get_link_mapping ()</title>
+<indexterm zone="poppler-page-get-link-mapping"><primary sortas="poppler_page_get_link_mapping">poppler_page_get_link_mapping</primary></indexterm><programlisting><link linkend="GList">GList</link> * poppler_page_get_link_mapping (<link linkend="PopplerPage">PopplerPage</link> *page);</programlisting>
+<para>
+Returns a list of <link linkend="PopplerLinkMapping"><type>PopplerLinkMapping</type></link> items that map from a
+location on <parameter>page</parameter> to a <link linkend="PopplerAction"><type>PopplerAction</type></link>. This list must be freed
+with <link linkend="poppler-page-free-link-mapping"><function>poppler_page_free_link_mapping()</function></link> when done.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A <link linkend="GList"><type>GList</type></link> of <link linkend="PopplerLinkMapping"><type>PopplerLinkMapping</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-free-link-mapping" role="function">
+<title>poppler_page_free_link_mapping ()</title>
+<indexterm zone="poppler-page-free-link-mapping"><primary sortas="poppler_page_free_link_mapping">poppler_page_free_link_mapping</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_free_link_mapping (<link linkend="GList">GList</link> *list);</programlisting>
+<para>
+Frees a list of <link linkend="PopplerLinkMapping"><type>PopplerLinkMapping</type></link><!-- -->s allocated by
+<link linkend="poppler-page-get-link-mapping"><function>poppler_page_get_link_mapping()</function></link>. It also frees the <link linkend="PopplerAction"><type>PopplerAction</type></link><!-- -->s
+that each mapping contains, so if you want to keep them around, you need to
+copy them with <link linkend="poppler-action-copy"><function>poppler_action_copy()</function></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>list</parameter>&#160;:</term>
+<listitem><simpara> A list of <link linkend="PopplerLinkMapping"><type>PopplerLinkMapping</type></link><!-- -->s
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-image-mapping" role="function">
+<title>poppler_page_get_image_mapping ()</title>
+<indexterm zone="poppler-page-get-image-mapping"><primary sortas="poppler_page_get_image_mapping">poppler_page_get_image_mapping</primary></indexterm><programlisting><link linkend="GList">GList</link> * poppler_page_get_image_mapping (<link linkend="PopplerPage">PopplerPage</link> *page);</programlisting>
+<para>
+Returns a list of <link linkend="PopplerImageMapping"><type>PopplerImageMapping</type></link> items that map from a
+location on <parameter>page</parameter> to an image of the page. This list must be freed
+with <link linkend="poppler-page-free-image-mapping"><function>poppler_page_free_image_mapping()</function></link> when done.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A <link linkend="GList"><type>GList</type></link> of <link linkend="PopplerImageMapping"><type>PopplerImageMapping</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-free-image-mapping" role="function">
+<title>poppler_page_free_image_mapping ()</title>
+<indexterm zone="poppler-page-free-image-mapping"><primary sortas="poppler_page_free_image_mapping">poppler_page_free_image_mapping</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_free_image_mapping (<link linkend="GList">GList</link> *list);</programlisting>
+<para>
+Frees a list of <link linkend="PopplerImageMapping"><type>PopplerImageMapping</type></link><!-- -->s allocated by
+<link linkend="poppler-page-get-image-mapping"><function>poppler_page_get_image_mapping()</function></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>list</parameter>&#160;:</term>
+<listitem><simpara> A list of <link linkend="PopplerImageMapping"><type>PopplerImageMapping</type></link><!-- -->s
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-form-field-mapping" role="function">
+<title>poppler_page_get_form_field_mapping ()</title>
+<indexterm zone="poppler-page-get-form-field-mapping"><primary sortas="poppler_page_get_form_field_mapping">poppler_page_get_form_field_mapping</primary></indexterm><programlisting><link linkend="GList">GList</link> * poppler_page_get_form_field_mapping (<link linkend="PopplerPage">PopplerPage</link> *page);</programlisting>
+<para>
+Returns a list of <link linkend="PopplerFormFieldMapping"><type>PopplerFormFieldMapping</type></link> items that map from a
+location on <parameter>page</parameter> to a form field. This list must be freed
+with <link linkend="poppler-page-free-form-field-mapping"><function>poppler_page_free_form_field_mapping()</function></link> when done.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> A <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> A <link linkend="GList"><type>GList</type></link> of <link linkend="PopplerFormFieldMapping"><type>PopplerFormFieldMapping</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-free-form-field-mapping" role="function">
+<title>poppler_page_free_form_field_mapping ()</title>
+<indexterm zone="poppler-page-free-form-field-mapping"><primary sortas="poppler_page_free_form_field_mapping">poppler_page_free_form_field_mapping</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_free_form_field_mapping
+ (<link linkend="GList">GList</link> *list);</programlisting>
+<para>
+Frees a list of <link linkend="PopplerFormFieldMapping"><type>PopplerFormFieldMapping</type></link><!-- -->s allocated by
+<link linkend="poppler-page-get-form-field-mapping"><function>poppler_page_get_form_field_mapping()</function></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>list</parameter>&#160;:</term>
+<listitem><simpara> A list of <link linkend="PopplerFormFieldMapping"><type>PopplerFormFieldMapping</type></link><!-- -->s
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-get-selection-region" role="function">
+<title>poppler_page_get_selection_region ()</title>
+<indexterm zone="poppler-page-get-selection-region"><primary sortas="poppler_page_get_selection_region">poppler_page_get_selection_region</primary></indexterm><programlisting><link linkend="GList">GList</link> * poppler_page_get_selection_region (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="gdouble">gdouble</link> scale,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *selection);</programlisting>
+<para>
+Returns a region containing the area that would be rendered by
+<link linkend="poppler-page-render-selection"><function>poppler_page_render_selection()</function></link> or
+<link linkend="poppler-page-render-selection-to-pixbuf"><function>poppler_page_render_selection_to_pixbuf()</function></link> as a <link linkend="GList"><type>GList</type></link> of
+<link linkend="PopplerRectangle"><type>PopplerRectangle</type></link>. The returned list must be freed with
+<link linkend="poppler-page-selection-region-free"><function>poppler_page_selection_region_free()</function></link>.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerPage"><type>PopplerPage</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>scale</parameter>&#160;:</term>
+<listitem><simpara> scale specified as pixels per point
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>style</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerSelectionStyle"><type>PopplerSelectionStyle</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>selection</parameter>&#160;:</term>
+<listitem><simpara> start and end point of selection as a rectangle
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a <link linkend="GList"><type>GList</type></link> of <link linkend="PopplerRectangle"><type>PopplerRectangle</type></link>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-render-selection" role="function">
+<title>poppler_page_render_selection ()</title>
+<indexterm zone="poppler-page-render-selection"><primary sortas="poppler_page_render_selection">poppler_page_render_selection</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_render_selection (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="cairo-t">cairo_t</link> *cairo,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *selection,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *old_selection,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="PopplerColor">PopplerColor</link> *glyph_color,
+ <link linkend="PopplerColor">PopplerColor</link> *background_color);</programlisting>
+<para>
+Render the selection specified by <parameter>selection</parameter> for <parameter>page</parameter> to
+the given cairo context. The selection will be rendered, using
+<parameter>glyph_color</parameter> for the glyphs and <parameter>background_color</parameter> for the selection
+background.
+</para>
+<para>
+If non-NULL, <parameter>old_selection</parameter> specifies the selection that is already
+rendered to <parameter>cairo</parameter>, in which case this function will (some day)
+only render the changed part of the selection.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> the <link linkend="PopplerPage"><type>PopplerPage</type></link> for which to render selection
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>cairo</parameter>&#160;:</term>
+<listitem><simpara> cairo context to render to
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>selection</parameter>&#160;:</term>
+<listitem><simpara> start and end point of selection as a rectangle
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>old_selection</parameter>&#160;:</term>
+<listitem><simpara> previous selection
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>style</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerSelectionStyle"><type>PopplerSelectionStyle</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>glyph_color</parameter>&#160;:</term>
+<listitem><simpara> color to use for drawing glyphs
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>background_color</parameter>&#160;:</term>
+<listitem><simpara> color to use for the selection background
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-render-selection-to-pixbuf" role="function">
+<title>poppler_page_render_selection_to_pixbuf ()</title>
+<indexterm zone="poppler-page-render-selection-to-pixbuf"><primary sortas="poppler_page_render_selection_to_pixbuf">poppler_page_render_selection_to_pixbuf</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_render_selection_to_pixbuf
+ (<link linkend="PopplerPage">PopplerPage</link> *page,
+ <link linkend="gdouble">gdouble</link> scale,
+ <link linkend="int">int</link> rotation,
+ <link linkend="GdkPixbuf">GdkPixbuf</link> *pixbuf,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *selection,
+ <link linkend="PopplerRectangle">PopplerRectangle</link> *old_selection,
+ <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link> style,
+ <link linkend="GdkColor">GdkColor</link> *glyph_color,
+ <link linkend="GdkColor">GdkColor</link> *background_color);</programlisting>
+<para>
+Render the selection specified by <parameter>selection</parameter> for <parameter>page</parameter> into
+<parameter>pixbuf</parameter>. The selection will be rendered at <parameter>scale</parameter>, using
+<parameter>glyph_color</parameter> for the glyphs and <parameter>background_color</parameter> for the selection
+background.
+</para>
+<para>
+If non-NULL, <parameter>old_selection</parameter> specifies the selection that is already
+rendered in <parameter>pixbuf</parameter>, in which case this function will (some day)
+only render the changed part of the selection.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>page</parameter>&#160;:</term>
+<listitem><simpara> the <link linkend="PopplerPage"><type>PopplerPage</type></link> for which to render selection
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>scale</parameter>&#160;:</term>
+<listitem><simpara> scale specified as pixels per point
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>rotation</parameter>&#160;:</term>
+<listitem><simpara> rotate the document by the specified degree
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>pixbuf</parameter>&#160;:</term>
+<listitem><simpara> pixbuf to render to
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>selection</parameter>&#160;:</term>
+<listitem><simpara> start and end point of selection as a rectangle
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>old_selection</parameter>&#160;:</term>
+<listitem><simpara> previous selection
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>style</parameter>&#160;:</term>
+<listitem><simpara> a <link linkend="PopplerSelectionStyle"><type>PopplerSelectionStyle</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>glyph_color</parameter>&#160;:</term>
+<listitem><simpara> color to use for drawing glyphs
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>background_color</parameter>&#160;:</term>
+<listitem><simpara> color to use for the selection background
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-RECTANGLE--CAPS" role="macro">
+<title>POPPLER_TYPE_RECTANGLE</title>
+<indexterm zone="POPPLER-TYPE-RECTANGLE--CAPS"><primary sortas="POPPLER_TYPE_RECTANGLE">POPPLER_TYPE_RECTANGLE</primary></indexterm><programlisting>#define POPPLER_TYPE_RECTANGLE (poppler_rectangle_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerRectangle" role="struct">
+<title>PopplerRectangle</title>
+<indexterm zone="PopplerRectangle"><primary sortas="PopplerRectangle">PopplerRectangle</primary></indexterm><programlisting>typedef struct {
+ gdouble x1;
+ gdouble y1;
+ gdouble x2;
+ gdouble y2;
+} PopplerRectangle;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-rectangle-get-type" role="function">
+<title>poppler_rectangle_get_type ()</title>
+<indexterm zone="poppler-rectangle-get-type"><primary sortas="poppler_rectangle_get_type">poppler_rectangle_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_rectangle_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-rectangle-new" role="function">
+<title>poppler_rectangle_new ()</title>
+<indexterm zone="poppler-rectangle-new"><primary sortas="poppler_rectangle_new">poppler_rectangle_new</primary></indexterm><programlisting><link linkend="PopplerRectangle">PopplerRectangle</link> * poppler_rectangle_new (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-rectangle-copy" role="function">
+<title>poppler_rectangle_copy ()</title>
+<indexterm zone="poppler-rectangle-copy"><primary sortas="poppler_rectangle_copy">poppler_rectangle_copy</primary></indexterm><programlisting><link linkend="PopplerRectangle">PopplerRectangle</link> * poppler_rectangle_copy (<link linkend="PopplerRectangle">PopplerRectangle</link> *rectangle);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>rectangle</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-rectangle-free" role="function">
+<title>poppler_rectangle_free ()</title>
+<indexterm zone="poppler-rectangle-free"><primary sortas="poppler_rectangle_free">poppler_rectangle_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_rectangle_free (<link linkend="PopplerRectangle">PopplerRectangle</link> *rectangle);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>rectangle</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-PAGE-TRANSITION--CAPS" role="macro">
+<title>POPPLER_TYPE_PAGE_TRANSITION</title>
+<indexterm zone="POPPLER-TYPE-PAGE-TRANSITION--CAPS"><primary sortas="POPPLER_TYPE_PAGE_TRANSITION">POPPLER_TYPE_PAGE_TRANSITION</primary></indexterm><programlisting>#define POPPLER_TYPE_PAGE_TRANSITION (poppler_page_transition_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPageTransition" role="struct">
+<title>PopplerPageTransition</title>
+<indexterm zone="PopplerPageTransition"><primary sortas="PopplerPageTransition">PopplerPageTransition</primary></indexterm><programlisting>typedef struct {
+ PopplerPageTransitionType type;
+ PopplerPageTransitionAlignment alignment;
+ PopplerPageTransitionDirection direction;
+ gint duration;
+ gint angle;
+ gdouble scale;
+ gboolean rectangular;
+} PopplerPageTransition;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-page-transition-get-type" role="function">
+<title>poppler_page_transition_get_type ()</title>
+<indexterm zone="poppler-page-transition-get-type"><primary sortas="poppler_page_transition_get_type">poppler_page_transition_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_page_transition_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-transition-new" role="function">
+<title>poppler_page_transition_new ()</title>
+<indexterm zone="poppler-page-transition-new"><primary sortas="poppler_page_transition_new">poppler_page_transition_new</primary></indexterm><programlisting><link linkend="PopplerPageTransition">PopplerPageTransition</link> * poppler_page_transition_new (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-transition-copy" role="function">
+<title>poppler_page_transition_copy ()</title>
+<indexterm zone="poppler-page-transition-copy"><primary sortas="poppler_page_transition_copy">poppler_page_transition_copy</primary></indexterm><programlisting><link linkend="PopplerPageTransition">PopplerPageTransition</link> * poppler_page_transition_copy (<link linkend="PopplerPageTransition">PopplerPageTransition</link> *transition);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>transition</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-page-transition-free" role="function">
+<title>poppler_page_transition_free ()</title>
+<indexterm zone="poppler-page-transition-free"><primary sortas="poppler_page_transition_free">poppler_page_transition_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_page_transition_free (<link linkend="PopplerPageTransition">PopplerPageTransition</link> *transition);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>transition</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-LINK-MAPPING--CAPS" role="macro">
+<title>POPPLER_TYPE_LINK_MAPPING</title>
+<indexterm zone="POPPLER-TYPE-LINK-MAPPING--CAPS"><primary sortas="POPPLER_TYPE_LINK_MAPPING">POPPLER_TYPE_LINK_MAPPING</primary></indexterm><programlisting>#define POPPLER_TYPE_LINK_MAPPING (poppler_link_mapping_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerLinkMapping" role="struct">
+<title>PopplerLinkMapping</title>
+<indexterm zone="PopplerLinkMapping"><primary sortas="PopplerLinkMapping">PopplerLinkMapping</primary></indexterm><programlisting>typedef struct {
+ PopplerRectangle area;
+ PopplerAction *action;
+} PopplerLinkMapping;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-link-mapping-get-type" role="function">
+<title>poppler_link_mapping_get_type ()</title>
+<indexterm zone="poppler-link-mapping-get-type"><primary sortas="poppler_link_mapping_get_type">poppler_link_mapping_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_link_mapping_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-link-mapping-new" role="function">
+<title>poppler_link_mapping_new ()</title>
+<indexterm zone="poppler-link-mapping-new"><primary sortas="poppler_link_mapping_new">poppler_link_mapping_new</primary></indexterm><programlisting><link linkend="PopplerLinkMapping">PopplerLinkMapping</link> * poppler_link_mapping_new (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-link-mapping-copy" role="function">
+<title>poppler_link_mapping_copy ()</title>
+<indexterm zone="poppler-link-mapping-copy"><primary sortas="poppler_link_mapping_copy">poppler_link_mapping_copy</primary></indexterm><programlisting><link linkend="PopplerLinkMapping">PopplerLinkMapping</link> * poppler_link_mapping_copy (<link linkend="PopplerLinkMapping">PopplerLinkMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-link-mapping-free" role="function">
+<title>poppler_link_mapping_free ()</title>
+<indexterm zone="poppler-link-mapping-free"><primary sortas="poppler_link_mapping_free">poppler_link_mapping_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_link_mapping_free (<link linkend="PopplerLinkMapping">PopplerLinkMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-IMAGE-MAPPING--CAPS" role="macro">
+<title>POPPLER_TYPE_IMAGE_MAPPING</title>
+<indexterm zone="POPPLER-TYPE-IMAGE-MAPPING--CAPS"><primary sortas="POPPLER_TYPE_IMAGE_MAPPING">POPPLER_TYPE_IMAGE_MAPPING</primary></indexterm><programlisting>#define POPPLER_TYPE_IMAGE_MAPPING (poppler_image_mapping_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerImageMapping" role="struct">
+<title>PopplerImageMapping</title>
+<indexterm zone="PopplerImageMapping"><primary sortas="PopplerImageMapping">PopplerImageMapping</primary></indexterm><programlisting>typedef struct {
+ PopplerRectangle area;
+ gint image_id;
+} PopplerImageMapping;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-image-mapping-get-type" role="function">
+<title>poppler_image_mapping_get_type ()</title>
+<indexterm zone="poppler-image-mapping-get-type"><primary sortas="poppler_image_mapping_get_type">poppler_image_mapping_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_image_mapping_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-image-mapping-new" role="function">
+<title>poppler_image_mapping_new ()</title>
+<indexterm zone="poppler-image-mapping-new"><primary sortas="poppler_image_mapping_new">poppler_image_mapping_new</primary></indexterm><programlisting><link linkend="PopplerImageMapping">PopplerImageMapping</link> * poppler_image_mapping_new (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-image-mapping-copy" role="function">
+<title>poppler_image_mapping_copy ()</title>
+<indexterm zone="poppler-image-mapping-copy"><primary sortas="poppler_image_mapping_copy">poppler_image_mapping_copy</primary></indexterm><programlisting><link linkend="PopplerImageMapping">PopplerImageMapping</link> * poppler_image_mapping_copy (<link linkend="PopplerImageMapping">PopplerImageMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-image-mapping-free" role="function">
+<title>poppler_image_mapping_free ()</title>
+<indexterm zone="poppler-image-mapping-free"><primary sortas="poppler_image_mapping_free">poppler_image_mapping_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_image_mapping_free (<link linkend="PopplerImageMapping">PopplerImageMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS" role="macro">
+<title>POPPLER_TYPE_FORM_FIELD_MAPPING</title>
+<indexterm zone="POPPLER-TYPE-FORM-FIELD-MAPPING--CAPS"><primary sortas="POPPLER_TYPE_FORM_FIELD_MAPPING">POPPLER_TYPE_FORM_FIELD_MAPPING</primary></indexterm><programlisting>#define POPPLER_TYPE_FORM_FIELD_MAPPING (poppler_form_field_mapping_get_type ())
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFormFieldMapping" role="struct">
+<title>PopplerFormFieldMapping</title>
+<indexterm zone="PopplerFormFieldMapping"><primary sortas="PopplerFormFieldMapping">PopplerFormFieldMapping</primary></indexterm><programlisting>typedef struct {
+ PopplerRectangle area;
+ PopplerFormField *field;
+} PopplerFormFieldMapping;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-form-field-mapping-get-type" role="function">
+<title>poppler_form_field_mapping_get_type ()</title>
+<indexterm zone="poppler-form-field-mapping-get-type"><primary sortas="poppler_form_field_mapping_get_type">poppler_form_field_mapping_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link> poppler_form_field_mapping_get_type (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-mapping-new" role="function">
+<title>poppler_form_field_mapping_new ()</title>
+<indexterm zone="poppler-form-field-mapping-new"><primary sortas="poppler_form_field_mapping_new">poppler_form_field_mapping_new</primary></indexterm><programlisting><link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> * poppler_form_field_mapping_new
+ (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-mapping-copy" role="function">
+<title>poppler_form_field_mapping_copy ()</title>
+<indexterm zone="poppler-form-field-mapping-copy"><primary sortas="poppler_form_field_mapping_copy">poppler_form_field_mapping_copy</primary></indexterm><programlisting><link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> * poppler_form_field_mapping_copy
+ (<link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-form-field-mapping-free" role="function">
+<title>poppler_form_field_mapping_free ()</title>
+<indexterm zone="poppler-form-field-mapping-free"><primary sortas="poppler_form_field_mapping_free">poppler_form_field_mapping_free</primary></indexterm><programlisting><link linkend="void">void</link> poppler_form_field_mapping_free (<link linkend="PopplerFormFieldMapping">PopplerFormFieldMapping</link> *mapping);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><parameter>mapping</parameter>&#160;:</term>
+<listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-private.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-private.xml
new file mode 100644
index 00000000000..71b5245f472
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler-private.xml
@@ -0,0 +1,196 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler-private">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler-private.top_of_page">poppler-private</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>poppler-private</refname>
+<refpurpose></refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler-private.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+<anchor id="PopplerDocument"/><anchor id="PopplerPage"/>
+<synopsis>
+ <link linkend="PopplerDocument-struct">PopplerDocument</link>;
+ <link linkend="PopplerPSFile">PopplerPSFile</link>;
+ <link linkend="PopplerFontInfo">PopplerFontInfo</link>;
+ <link linkend="PopplerPage-struct">PopplerPage</link>;
+</synopsis>
+</refsynopsisdiv>
+
+<refsect1 id="poppler-poppler-private.object-hierarchy" role="object_hierarchy">
+<title role="object_hierarchy.title">Object Hierarchy</title>
+<synopsis>
+ <link linkend="GObject">GObject</link>
+ +----PopplerDocument
+</synopsis>
+<synopsis>
+ <link linkend="GObject">GObject</link>
+ +----PopplerPage
+</synopsis>
+</refsect1>
+
+
+
+
+
+<refsect1 id="poppler-poppler-private.properties" role="properties">
+<title role="properties.title">Properties</title>
+<synopsis>
+ &quot;<link linkend="PopplerDocument--author">author</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--creation-date">creation-date</link>&quot; <link linkend="gint">gint</link> : Read
+ &quot;<link linkend="PopplerDocument--creator">creator</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--format">format</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--format-major">format-major</link>&quot; <link linkend="guint">guint</link> : Read
+ &quot;<link linkend="PopplerDocument--format-minor">format-minor</link>&quot; <link linkend="guint">guint</link> : Read
+ &quot;<link linkend="PopplerDocument--keywords">keywords</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--linearized">linearized</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--metadata">metadata</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--mod-date">mod-date</link>&quot; <link linkend="gint">gint</link> : Read
+ &quot;<link linkend="PopplerDocument--page-layout">page-layout</link>&quot; <link linkend="PopplerPageLayout">PopplerPageLayout</link> : Read
+ &quot;<link linkend="PopplerDocument--page-mode">page-mode</link>&quot; <link linkend="PopplerPageMode">PopplerPageMode</link> : Read
+ &quot;<link linkend="PopplerDocument--permissions">permissions</link>&quot; <link linkend="PopplerPermissions">PopplerPermissions</link> : Read
+ &quot;<link linkend="PopplerDocument--producer">producer</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--subject">subject</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--title">title</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--viewer-preferences">viewer-preferences</link>&quot; <link linkend="PopplerViewerPreferences">PopplerViewerPreferences</link> : Read
+ &quot;<link linkend="PopplerPage--label">label</link>&quot; <link linkend="gchar">gchar</link>* : Read
+</synopsis>
+</refsect1>
+
+
+
+<refsect1 id="poppler-poppler-private.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler-private.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="PopplerDocument-struct" role="struct">
+<title>PopplerDocument</title>
+<indexterm zone="PopplerDocument-struct"><primary sortas="PopplerDocument">PopplerDocument</primary></indexterm><programlisting>typedef struct _PopplerDocument PopplerDocument;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPSFile" role="struct">
+<title>PopplerPSFile</title>
+<indexterm zone="PopplerPSFile"><primary sortas="PopplerPSFile">PopplerPSFile</primary></indexterm><programlisting>typedef struct {
+ GObject parent_instance;
+
+ PopplerDocument *document;
+ PSOutputDev *out;
+ char *filename;
+ int first_page;
+ int last_page;
+ double paper_width;
+ double paper_height;
+ gboolean duplex;
+} PopplerPSFile;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFontInfo" role="struct">
+<title>PopplerFontInfo</title>
+<indexterm zone="PopplerFontInfo"><primary sortas="PopplerFontInfo">PopplerFontInfo</primary></indexterm><programlisting>typedef struct {
+ GObject parent_instance;
+ PopplerDocument *document;
+ FontInfoScanner *scanner;
+} PopplerFontInfo;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPage-struct" role="struct">
+<title>PopplerPage</title>
+<indexterm zone="PopplerPage-struct"><primary sortas="PopplerPage">PopplerPage</primary></indexterm><programlisting>typedef struct _PopplerPage PopplerPage;</programlisting>
+<para>
+</para></refsect2>
+
+</refsect1>
+<refsect1 id="poppler-poppler-private.property-details" role="property_details">
+<title role="property_details.title">Property Details</title>
+<refsect2 id="PopplerDocument--author" role="property"><title>The <literal>&quot;author&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--author"><primary sortas="PopplerDocument:author">PopplerDocument:author</primary></indexterm><programlisting> &quot;author&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The author of the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--creation-date" role="property"><title>The <literal>&quot;creation-date&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--creation-date"><primary sortas="PopplerDocument:creation-date">PopplerDocument:creation-date</primary></indexterm><programlisting> &quot;creation-date&quot; <link linkend="gint">gint</link> : Read</programlisting>
+<para>The date and time the document was created.</para><para>Allowed values: &gt;= 0</para>
+<para>Default value: 0</para>
+</refsect2>
+<refsect2 id="PopplerDocument--creator" role="property"><title>The <literal>&quot;creator&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--creator"><primary sortas="PopplerDocument:creator">PopplerDocument:creator</primary></indexterm><programlisting> &quot;creator&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The software that created the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--format" role="property"><title>The <literal>&quot;format&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--format"><primary sortas="PopplerDocument:format">PopplerDocument:format</primary></indexterm><programlisting> &quot;format&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The PDF version of the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--format-major" role="property"><title>The <literal>&quot;format-major&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--format-major"><primary sortas="PopplerDocument:format-major">PopplerDocument:format-major</primary></indexterm><programlisting> &quot;format-major&quot; <link linkend="guint">guint</link> : Read</programlisting>
+<para>The PDF major version number of the document.</para><para>Default value: 1</para>
+</refsect2>
+<refsect2 id="PopplerDocument--format-minor" role="property"><title>The <literal>&quot;format-minor&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--format-minor"><primary sortas="PopplerDocument:format-minor">PopplerDocument:format-minor</primary></indexterm><programlisting> &quot;format-minor&quot; <link linkend="guint">guint</link> : Read</programlisting>
+<para>The PDF minor version number of the document.</para><para>Default value: 0</para>
+</refsect2>
+<refsect2 id="PopplerDocument--keywords" role="property"><title>The <literal>&quot;keywords&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--keywords"><primary sortas="PopplerDocument:keywords">PopplerDocument:keywords</primary></indexterm><programlisting> &quot;keywords&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Keywords.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--linearized" role="property"><title>The <literal>&quot;linearized&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--linearized"><primary sortas="PopplerDocument:linearized">PopplerDocument:linearized</primary></indexterm><programlisting> &quot;linearized&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Is the document optimized for web viewing?.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--metadata" role="property"><title>The <literal>&quot;metadata&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--metadata"><primary sortas="PopplerDocument:metadata">PopplerDocument:metadata</primary></indexterm><programlisting> &quot;metadata&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Embedded XML metadata.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--mod-date" role="property"><title>The <literal>&quot;mod-date&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--mod-date"><primary sortas="PopplerDocument:mod-date">PopplerDocument:mod-date</primary></indexterm><programlisting> &quot;mod-date&quot; <link linkend="gint">gint</link> : Read</programlisting>
+<para>The date and time the document was modified.</para><para>Allowed values: &gt;= 0</para>
+<para>Default value: 0</para>
+</refsect2>
+<refsect2 id="PopplerDocument--page-layout" role="property"><title>The <literal>&quot;page-layout&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--page-layout"><primary sortas="PopplerDocument:page-layout">PopplerDocument:page-layout</primary></indexterm><programlisting> &quot;page-layout&quot; <link linkend="PopplerPageLayout">PopplerPageLayout</link> : Read</programlisting>
+<para>Initial Page Layout.</para><para>Default value: POPPLER_PAGE_LAYOUT_UNSET</para>
+</refsect2>
+<refsect2 id="PopplerDocument--page-mode" role="property"><title>The <literal>&quot;page-mode&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--page-mode"><primary sortas="PopplerDocument:page-mode">PopplerDocument:page-mode</primary></indexterm><programlisting> &quot;page-mode&quot; <link linkend="PopplerPageMode">PopplerPageMode</link> : Read</programlisting>
+<para>Page Mode.</para><para>Default value: POPPLER_PAGE_MODE_UNSET</para>
+</refsect2>
+<refsect2 id="PopplerDocument--permissions" role="property"><title>The <literal>&quot;permissions&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--permissions"><primary sortas="PopplerDocument:permissions">PopplerDocument:permissions</primary></indexterm><programlisting> &quot;permissions&quot; <link linkend="PopplerPermissions">PopplerPermissions</link> : Read</programlisting>
+<para>Permissions.</para><para>Default value: POPPLER_PERMISSIONS_OK_TO_PRINT|POPPLER_PERMISSIONS_OK_TO_MODIFY|POPPLER_PERMISSIONS_OK_TO_COPY|POPPLER_PERMISSIONS_OK_TO_ADD_NOTES|POPPLER_PERMISSIONS_OK_TO_FILL_FORM</para>
+</refsect2>
+<refsect2 id="PopplerDocument--producer" role="property"><title>The <literal>&quot;producer&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--producer"><primary sortas="PopplerDocument:producer">PopplerDocument:producer</primary></indexterm><programlisting> &quot;producer&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The software that converted the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--subject" role="property"><title>The <literal>&quot;subject&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--subject"><primary sortas="PopplerDocument:subject">PopplerDocument:subject</primary></indexterm><programlisting> &quot;subject&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Subjects the document touches.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--title" role="property"><title>The <literal>&quot;title&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--title"><primary sortas="PopplerDocument:title">PopplerDocument:title</primary></indexterm><programlisting> &quot;title&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The title of the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--viewer-preferences" role="property"><title>The <literal>&quot;viewer-preferences&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--viewer-preferences"><primary sortas="PopplerDocument:viewer-preferences">PopplerDocument:viewer-preferences</primary></indexterm><programlisting> &quot;viewer-preferences&quot; <link linkend="PopplerViewerPreferences">PopplerViewerPreferences</link> : Read</programlisting>
+<para>Viewer Preferences.</para></refsect2>
+<refsect2 id="PopplerPage--label" role="property"><title>The <literal>&quot;label&quot;</literal> property</title>
+<indexterm zone="PopplerPage--label"><primary sortas="PopplerPage:label">PopplerPage:label</primary></indexterm><programlisting> &quot;label&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The label of the page.</para><para>Default value: NULL</para>
+</refsect2>
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler.xml b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler.xml
new file mode 100644
index 00000000000..a347b370f90
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/reference/xml/poppler.xml
@@ -0,0 +1,362 @@
+<?xml version="1.0"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
+<refentry id="poppler-poppler">
+<refmeta>
+<refentrytitle role="top_of_page" id="poppler-poppler.top_of_page">poppler</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>POPPLER Library</refmiscinfo>
+</refmeta>
+
+<refnamediv>
+<refname>poppler</refname>
+<refpurpose></refpurpose>
+</refnamediv>
+
+<refsynopsisdiv id="poppler-poppler.synopsis" role="synopsis">
+<title role="synopsis.title">Synopsis</title>
+<anchor id="PopplerDocument"/><anchor id="PopplerPage"/>
+<synopsis>
+<link linkend="GQuark">GQuark</link> <link linkend="poppler-error-quark">poppler_error_quark</link> (void);
+#define <link linkend="POPPLER-ERROR--CAPS">POPPLER_ERROR</link>
+enum <link linkend="PopplerError">PopplerError</link>;
+enum <link linkend="PopplerOrientation">PopplerOrientation</link>;
+ <link linkend="PopplerDocument-struct">PopplerDocument</link>;
+ <link linkend="PopplerIndexIter">PopplerIndexIter</link>;
+ <link linkend="PopplerFontsIter">PopplerFontsIter</link>;
+ <link linkend="PopplerRectangle">PopplerRectangle</link>;
+enum <link linkend="PopplerSelectionStyle">PopplerSelectionStyle</link>;
+enum <link linkend="PopplerPageTransitionType">PopplerPageTransitionType</link>;
+enum <link linkend="PopplerPageTransitionAlignment">PopplerPageTransitionAlignment</link>;
+enum <link linkend="PopplerPageTransitionDirection">PopplerPageTransitionDirection</link>;
+ <link linkend="PopplerLinkMapping">PopplerLinkMapping</link>;
+ <link linkend="PopplerPage-struct">PopplerPage</link>;
+ <link linkend="PopplerFontInfo">PopplerFontInfo</link>;
+ <link linkend="PopplerPSFile">PopplerPSFile</link>;
+enum <link linkend="PopplerBackend">PopplerBackend</link>;
+<link linkend="PopplerBackend">PopplerBackend</link> <link linkend="poppler-get-backend">poppler_get_backend</link> (void);
+const <link linkend="char">char</link> * <link linkend="poppler-get-version">poppler_get_version</link> (void);
+</synopsis>
+</refsynopsisdiv>
+
+<refsect1 id="poppler-poppler.object-hierarchy" role="object_hierarchy">
+<title role="object_hierarchy.title">Object Hierarchy</title>
+<synopsis>
+ <link linkend="GObject">GObject</link>
+ +----PopplerDocument
+</synopsis>
+<synopsis>
+ <link linkend="GObject">GObject</link>
+ +----PopplerPage
+</synopsis>
+</refsect1>
+
+
+
+
+
+<refsect1 id="poppler-poppler.properties" role="properties">
+<title role="properties.title">Properties</title>
+<synopsis>
+ &quot;<link linkend="PopplerDocument--author">author</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--creation-date">creation-date</link>&quot; <link linkend="gint">gint</link> : Read
+ &quot;<link linkend="PopplerDocument--creator">creator</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--format">format</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--format-major">format-major</link>&quot; <link linkend="guint">guint</link> : Read
+ &quot;<link linkend="PopplerDocument--format-minor">format-minor</link>&quot; <link linkend="guint">guint</link> : Read
+ &quot;<link linkend="PopplerDocument--keywords">keywords</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--linearized">linearized</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--metadata">metadata</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--mod-date">mod-date</link>&quot; <link linkend="gint">gint</link> : Read
+ &quot;<link linkend="PopplerDocument--page-layout">page-layout</link>&quot; <link linkend="PopplerPageLayout">PopplerPageLayout</link> : Read
+ &quot;<link linkend="PopplerDocument--page-mode">page-mode</link>&quot; <link linkend="PopplerPageMode">PopplerPageMode</link> : Read
+ &quot;<link linkend="PopplerDocument--permissions">permissions</link>&quot; <link linkend="PopplerPermissions">PopplerPermissions</link> : Read
+ &quot;<link linkend="PopplerDocument--producer">producer</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--subject">subject</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--title">title</link>&quot; <link linkend="gchar">gchar</link>* : Read
+ &quot;<link linkend="PopplerDocument--viewer-preferences">viewer-preferences</link>&quot; <link linkend="PopplerViewerPreferences">PopplerViewerPreferences</link> : Read
+ &quot;<link linkend="PopplerPage--label">label</link>&quot; <link linkend="gchar">gchar</link>* : Read
+</synopsis>
+</refsect1>
+
+
+
+<refsect1 id="poppler-poppler.description" role="desc">
+<title role="desc.title">Description</title>
+<para>
+</para>
+</refsect1>
+
+<refsect1 id="poppler-poppler.details" role="details">
+<title role="details.title">Details</title>
+<refsect2 id="poppler-error-quark" role="function">
+<title>poppler_error_quark ()</title>
+<indexterm zone="poppler-error-quark"><primary sortas="poppler_error_quark">poppler_error_quark</primary></indexterm><programlisting><link linkend="GQuark">GQuark</link> poppler_error_quark (void);</programlisting>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="POPPLER-ERROR--CAPS" role="macro">
+<title>POPPLER_ERROR</title>
+<indexterm zone="POPPLER-ERROR--CAPS"><primary sortas="POPPLER_ERROR">POPPLER_ERROR</primary></indexterm><programlisting>#define POPPLER_ERROR poppler_error_quark ()
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerError" role="enum">
+<title>enum PopplerError</title>
+<indexterm zone="PopplerError"><primary sortas="PopplerError">PopplerError</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_ERROR_INVALID,
+ POPPLER_ERROR_ENCRYPTED,
+ POPPLER_ERROR_OPEN_FILE,
+ POPPLER_ERROR_BAD_CATALOG,
+ POPPLER_ERROR_DAMAGED
+} PopplerError;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerOrientation" role="enum">
+<title>enum PopplerOrientation</title>
+<indexterm zone="PopplerOrientation"><primary sortas="PopplerOrientation">PopplerOrientation</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_ORIENTATION_PORTRAIT,
+ POPPLER_ORIENTATION_LANDSCAPE,
+ POPPLER_ORIENTATION_UPSIDEDOWN,
+ POPPLER_ORIENTATION_SEASCAPE
+} PopplerOrientation;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerDocument-struct" role="struct">
+<title>PopplerDocument</title>
+<indexterm zone="PopplerDocument-struct"><primary sortas="PopplerDocument">PopplerDocument</primary></indexterm><programlisting>typedef struct _PopplerDocument PopplerDocument;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerIndexIter" role="struct">
+<title>PopplerIndexIter</title>
+<indexterm zone="PopplerIndexIter"><primary sortas="PopplerIndexIter">PopplerIndexIter</primary></indexterm><programlisting>typedef struct _PopplerIndexIter PopplerIndexIter;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFontsIter" role="struct">
+<title>PopplerFontsIter</title>
+<indexterm zone="PopplerFontsIter"><primary sortas="PopplerFontsIter">PopplerFontsIter</primary></indexterm><programlisting>typedef struct _PopplerFontsIter PopplerFontsIter;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerRectangle" role="struct">
+<title>PopplerRectangle</title>
+<indexterm zone="PopplerRectangle"><primary sortas="PopplerRectangle">PopplerRectangle</primary></indexterm><programlisting>typedef struct {
+ gdouble x1;
+ gdouble y1;
+ gdouble x2;
+ gdouble y2;
+} PopplerRectangle;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerSelectionStyle" role="enum">
+<title>enum PopplerSelectionStyle</title>
+<indexterm zone="PopplerSelectionStyle"><primary sortas="PopplerSelectionStyle">PopplerSelectionStyle</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_SELECTION_GLYPH,
+ POPPLER_SELECTION_WORD,
+ POPPLER_SELECTION_LINE
+} PopplerSelectionStyle;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPageTransitionType" role="enum">
+<title>enum PopplerPageTransitionType</title>
+<indexterm zone="PopplerPageTransitionType"><primary sortas="PopplerPageTransitionType">PopplerPageTransitionType</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_PAGE_TRANSITION_REPLACE,
+ POPPLER_PAGE_TRANSITION_SPLIT,
+ POPPLER_PAGE_TRANSITION_BLINDS,
+ POPPLER_PAGE_TRANSITION_BOX,
+ POPPLER_PAGE_TRANSITION_WIPE,
+ POPPLER_PAGE_TRANSITION_DISSOLVE,
+ POPPLER_PAGE_TRANSITION_GLITTER,
+ POPPLER_PAGE_TRANSITION_FLY,
+ POPPLER_PAGE_TRANSITION_PUSH,
+ POPPLER_PAGE_TRANSITION_COVER,
+ POPPLER_PAGE_TRANSITION_UNCOVER,
+ POPPLER_PAGE_TRANSITION_FADE
+} PopplerPageTransitionType;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPageTransitionAlignment" role="enum">
+<title>enum PopplerPageTransitionAlignment</title>
+<indexterm zone="PopplerPageTransitionAlignment"><primary sortas="PopplerPageTransitionAlignment">PopplerPageTransitionAlignment</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_PAGE_TRANSITION_HORIZONTAL,
+ POPPLER_PAGE_TRANSITION_VERTICAL
+} PopplerPageTransitionAlignment;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPageTransitionDirection" role="enum">
+<title>enum PopplerPageTransitionDirection</title>
+<indexterm zone="PopplerPageTransitionDirection"><primary sortas="PopplerPageTransitionDirection">PopplerPageTransitionDirection</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_PAGE_TRANSITION_INWARD,
+ POPPLER_PAGE_TRANSITION_OUTWARD
+} PopplerPageTransitionDirection;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerLinkMapping" role="struct">
+<title>PopplerLinkMapping</title>
+<indexterm zone="PopplerLinkMapping"><primary sortas="PopplerLinkMapping">PopplerLinkMapping</primary></indexterm><programlisting>typedef struct {
+ PopplerRectangle area;
+ PopplerAction *action;
+} PopplerLinkMapping;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPage-struct" role="struct">
+<title>PopplerPage</title>
+<indexterm zone="PopplerPage-struct"><primary sortas="PopplerPage">PopplerPage</primary></indexterm><programlisting>typedef struct _PopplerPage PopplerPage;</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerFontInfo" role="struct">
+<title>PopplerFontInfo</title>
+<indexterm zone="PopplerFontInfo"><primary sortas="PopplerFontInfo">PopplerFontInfo</primary></indexterm><programlisting>typedef struct {
+ GObject parent_instance;
+ PopplerDocument *document;
+ FontInfoScanner *scanner;
+} PopplerFontInfo;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerPSFile" role="struct">
+<title>PopplerPSFile</title>
+<indexterm zone="PopplerPSFile"><primary sortas="PopplerPSFile">PopplerPSFile</primary></indexterm><programlisting>typedef struct {
+ GObject parent_instance;
+
+ PopplerDocument *document;
+ PSOutputDev *out;
+ char *filename;
+ int first_page;
+ int last_page;
+ double paper_width;
+ double paper_height;
+ gboolean duplex;
+} PopplerPSFile;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="PopplerBackend" role="enum">
+<title>enum PopplerBackend</title>
+<indexterm zone="PopplerBackend"><primary sortas="PopplerBackend">PopplerBackend</primary></indexterm><programlisting>typedef enum
+{
+ POPPLER_BACKEND_UNKNOWN,
+ POPPLER_BACKEND_SPLASH,
+ POPPLER_BACKEND_CAIRO
+} PopplerBackend;
+</programlisting>
+<para>
+</para></refsect2>
+<refsect2 id="poppler-get-backend" role="function">
+<title>poppler_get_backend ()</title>
+<indexterm zone="poppler-get-backend"><primary sortas="poppler_get_backend">poppler_get_backend</primary></indexterm><programlisting><link linkend="PopplerBackend">PopplerBackend</link> poppler_get_backend (void);</programlisting>
+<para>
+Returns the backend compiled into the poppler library.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> The backend used by poppler
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+<refsect2 id="poppler-get-version" role="function">
+<title>poppler_get_version ()</title>
+<indexterm zone="poppler-get-version"><primary sortas="poppler_get_version">poppler_get_version</primary></indexterm><programlisting>const <link linkend="char">char</link> * poppler_get_version (void);</programlisting>
+<para>
+Returns the version of poppler in use. This result is not to be freed.</para>
+<para>
+</para><variablelist role="params">
+<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the version of poppler.
+</simpara></listitem></varlistentry>
+</variablelist></refsect2>
+
+</refsect1>
+<refsect1 id="poppler-poppler.property-details" role="property_details">
+<title role="property_details.title">Property Details</title>
+<refsect2 id="PopplerDocument--author" role="property"><title>The <literal>&quot;author&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--author"><primary sortas="PopplerDocument:author">PopplerDocument:author</primary></indexterm><programlisting> &quot;author&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The author of the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--creation-date" role="property"><title>The <literal>&quot;creation-date&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--creation-date"><primary sortas="PopplerDocument:creation-date">PopplerDocument:creation-date</primary></indexterm><programlisting> &quot;creation-date&quot; <link linkend="gint">gint</link> : Read</programlisting>
+<para>The date and time the document was created.</para><para>Allowed values: &gt;= 0</para>
+<para>Default value: 0</para>
+</refsect2>
+<refsect2 id="PopplerDocument--creator" role="property"><title>The <literal>&quot;creator&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--creator"><primary sortas="PopplerDocument:creator">PopplerDocument:creator</primary></indexterm><programlisting> &quot;creator&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The software that created the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--format" role="property"><title>The <literal>&quot;format&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--format"><primary sortas="PopplerDocument:format">PopplerDocument:format</primary></indexterm><programlisting> &quot;format&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The PDF version of the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--format-major" role="property"><title>The <literal>&quot;format-major&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--format-major"><primary sortas="PopplerDocument:format-major">PopplerDocument:format-major</primary></indexterm><programlisting> &quot;format-major&quot; <link linkend="guint">guint</link> : Read</programlisting>
+<para>The PDF major version number of the document.</para><para>Default value: 1</para>
+</refsect2>
+<refsect2 id="PopplerDocument--format-minor" role="property"><title>The <literal>&quot;format-minor&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--format-minor"><primary sortas="PopplerDocument:format-minor">PopplerDocument:format-minor</primary></indexterm><programlisting> &quot;format-minor&quot; <link linkend="guint">guint</link> : Read</programlisting>
+<para>The PDF minor version number of the document.</para><para>Default value: 0</para>
+</refsect2>
+<refsect2 id="PopplerDocument--keywords" role="property"><title>The <literal>&quot;keywords&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--keywords"><primary sortas="PopplerDocument:keywords">PopplerDocument:keywords</primary></indexterm><programlisting> &quot;keywords&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Keywords.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--linearized" role="property"><title>The <literal>&quot;linearized&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--linearized"><primary sortas="PopplerDocument:linearized">PopplerDocument:linearized</primary></indexterm><programlisting> &quot;linearized&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Is the document optimized for web viewing?.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--metadata" role="property"><title>The <literal>&quot;metadata&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--metadata"><primary sortas="PopplerDocument:metadata">PopplerDocument:metadata</primary></indexterm><programlisting> &quot;metadata&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Embedded XML metadata.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--mod-date" role="property"><title>The <literal>&quot;mod-date&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--mod-date"><primary sortas="PopplerDocument:mod-date">PopplerDocument:mod-date</primary></indexterm><programlisting> &quot;mod-date&quot; <link linkend="gint">gint</link> : Read</programlisting>
+<para>The date and time the document was modified.</para><para>Allowed values: &gt;= 0</para>
+<para>Default value: 0</para>
+</refsect2>
+<refsect2 id="PopplerDocument--page-layout" role="property"><title>The <literal>&quot;page-layout&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--page-layout"><primary sortas="PopplerDocument:page-layout">PopplerDocument:page-layout</primary></indexterm><programlisting> &quot;page-layout&quot; <link linkend="PopplerPageLayout">PopplerPageLayout</link> : Read</programlisting>
+<para>Initial Page Layout.</para><para>Default value: POPPLER_PAGE_LAYOUT_UNSET</para>
+</refsect2>
+<refsect2 id="PopplerDocument--page-mode" role="property"><title>The <literal>&quot;page-mode&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--page-mode"><primary sortas="PopplerDocument:page-mode">PopplerDocument:page-mode</primary></indexterm><programlisting> &quot;page-mode&quot; <link linkend="PopplerPageMode">PopplerPageMode</link> : Read</programlisting>
+<para>Page Mode.</para><para>Default value: POPPLER_PAGE_MODE_UNSET</para>
+</refsect2>
+<refsect2 id="PopplerDocument--permissions" role="property"><title>The <literal>&quot;permissions&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--permissions"><primary sortas="PopplerDocument:permissions">PopplerDocument:permissions</primary></indexterm><programlisting> &quot;permissions&quot; <link linkend="PopplerPermissions">PopplerPermissions</link> : Read</programlisting>
+<para>Permissions.</para><para>Default value: POPPLER_PERMISSIONS_OK_TO_PRINT|POPPLER_PERMISSIONS_OK_TO_MODIFY|POPPLER_PERMISSIONS_OK_TO_COPY|POPPLER_PERMISSIONS_OK_TO_ADD_NOTES|POPPLER_PERMISSIONS_OK_TO_FILL_FORM</para>
+</refsect2>
+<refsect2 id="PopplerDocument--producer" role="property"><title>The <literal>&quot;producer&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--producer"><primary sortas="PopplerDocument:producer">PopplerDocument:producer</primary></indexterm><programlisting> &quot;producer&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The software that converted the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--subject" role="property"><title>The <literal>&quot;subject&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--subject"><primary sortas="PopplerDocument:subject">PopplerDocument:subject</primary></indexterm><programlisting> &quot;subject&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>Subjects the document touches.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--title" role="property"><title>The <literal>&quot;title&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--title"><primary sortas="PopplerDocument:title">PopplerDocument:title</primary></indexterm><programlisting> &quot;title&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The title of the document.</para><para>Default value: NULL</para>
+</refsect2>
+<refsect2 id="PopplerDocument--viewer-preferences" role="property"><title>The <literal>&quot;viewer-preferences&quot;</literal> property</title>
+<indexterm zone="PopplerDocument--viewer-preferences"><primary sortas="PopplerDocument:viewer-preferences">PopplerDocument:viewer-preferences</primary></indexterm><programlisting> &quot;viewer-preferences&quot; <link linkend="PopplerViewerPreferences">PopplerViewerPreferences</link> : Read</programlisting>
+<para>Viewer Preferences.</para></refsect2>
+<refsect2 id="PopplerPage--label" role="property"><title>The <literal>&quot;label&quot;</literal> property</title>
+<indexterm zone="PopplerPage--label"><primary sortas="PopplerPage:label">PopplerPage:label</primary></indexterm><programlisting> &quot;label&quot; <link linkend="gchar">gchar</link>* : Read</programlisting>
+<para>The label of the page.</para><para>Default value: NULL</para>
+</refsect2>
+</refsect1>
+
+
+
+
+</refentry>
diff --git a/Build/source/libs/poppler/poppler-0.12.4/glib/test-poppler-glib.cc b/Build/source/libs/poppler/poppler-0.12.4/glib/test-poppler-glib.cc
new file mode 100644
index 00000000000..e64000e8c2a
--- /dev/null
+++ b/Build/source/libs/poppler/poppler-0.12.4/glib/test-poppler-glib.cc
@@ -0,0 +1,665 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+#include "config.h"
+#include "poppler.h"
+
+#define FAIL(msg) \
+ do { fprintf (stderr, "FAIL: %s\n", msg); exit (-1); } while (0)
+
+static gchar *
+poppler_format_date (GTime utime)
+{
+ time_t time = (time_t) utime;
+ char s[256];
+ const char *fmt_hack = "%c";
+ size_t len;
+#ifdef HAVE_LOCALTIME_R
+ struct tm t;
+ if (time == 0 || !localtime_r (&time, &t)) return NULL;
+ len = strftime (s, sizeof (s), fmt_hack, &t);
+#else
+ struct tm *t;
+ if (time == 0 || !(t = localtime (&time)) ) return NULL;
+ len = strftime (s, sizeof (s), fmt_hack, t);
+#endif
+
+ if (len == 0 || s[0] == '\0') return NULL;
+
+ return g_locale_to_utf8 (s, -1, NULL, NULL, NULL);
+}
+
+static void
+print_index (PopplerIndexIter *iter, gint deph)
+{
+ do
+ {
+ PopplerAction *action;
+ PopplerIndexIter *child;
+ int i;
+
+ action = poppler_index_iter_get_action (iter);
+ for (i = 0; i < deph; i++)
+ g_print (" ");
+ g_print ("+ %s\n", action->any.title);
+ poppler_action_free (action);
+ child = poppler_index_iter_get_child (iter);
+ if (child)
+ print_index (child, deph + 1);
+ poppler_index_iter_free (child);
+ }
+ while (poppler_index_iter_next (iter));
+}
+
+static void
+print_layers (PopplerLayersIter *iter, gint deph)
+{
+ do
+ {
+ PopplerLayersIter *child;
+ PopplerLayer *layer;
+ gint i;
+
+ for (i = 0; i < deph; i++)
+ g_print (" ");
+
+ layer = poppler_layers_iter_get_layer (iter);
+ if (layer)
+ {
+ g_print ("+ %s (%s)\n", poppler_layer_get_title (layer),
+ poppler_layer_is_visible (layer) ?
+ "Visible" : "Hidden");
+ g_object_unref (layer);
+ }
+
+ child = poppler_layers_iter_get_child (iter);
+ if (child)
+ {
+ gchar *title;
+
+ title = poppler_layers_iter_get_title (iter);
+ if (title)
+ {
+ g_print ("+ %s\n", title);
+ g_free (title);
+ }
+ print_layers (child, deph + 1);
+ }
+ poppler_layers_iter_free (child);
+ }
+ while (poppler_layers_iter_next (iter));
+}
+
+static void
+print_document_info (PopplerDocument *document)
+{
+ gchar *title, *format, *author, *subject, *keywords, *creator, *producer, *linearized;
+ GTime creation_date, mod_date;
+ gchar *strdate;
+ PopplerPageLayout layout;
+ PopplerPageMode mode;
+ PopplerViewerPreferences view_prefs;
+ PopplerPermissions permissions;
+ PopplerFontInfo *font_info;
+ PopplerFontsIter *fonts_iter;
+ PopplerIndexIter *index_iter;
+ GEnumValue *enum_value;
+
+ g_object_get (document,
+ "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,
+ "permissions", &permissions,
+ NULL);
+
+ printf ("\t---------------------------------------------------------\n");
+ printf ("\tDocument Metadata\n");
+ printf ("\t---------------------------------------------------------\n");
+ if (title) printf ("\ttitle:\t\t%s\n", title);
+ if (format) printf ("\tformat:\t\t%s\n", format);
+ if (author) printf ("\tauthor:\t\t%s\n", author);
+ if (subject) printf ("\tsubject:\t%s\n", subject);
+ if (keywords) printf ("\tkeywords:\t%s\n", keywords);
+ if (creator) printf ("\tcreator:\t%s\n", creator);
+ if (producer) printf ("\tproducer:\t%s\n", producer);
+ if (linearized) printf ("\tlinearized:\t%s\n", linearized);
+
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_peek (POPPLER_TYPE_PAGE_MODE), mode);
+ g_print ("\tpage mode:\t%s\n", enum_value->value_name);
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_peek (POPPLER_TYPE_PAGE_LAYOUT), layout);
+ g_print ("\tpage layout:\t%s\n", enum_value->value_name);
+
+ strdate = poppler_format_date (creation_date);
+ if (strdate)
+ {
+ g_print ("\tcreation date:\t%s\n", strdate);
+ g_free (strdate);
+ }
+ strdate = poppler_format_date (mod_date);
+ if (strdate)
+ {
+ g_print ("\tmodified date:\t%s\n", strdate);
+ g_free (strdate);
+ }
+
+ g_print ("\tfonts:\n");
+ font_info = poppler_font_info_new (document);
+ while (poppler_font_info_scan (font_info, 20, &fonts_iter)) {
+ if (fonts_iter) {
+ do {
+ g_print ("\t\t\t%s\n", poppler_fonts_iter_get_name (fonts_iter));
+ } while (poppler_fonts_iter_next (fonts_iter));
+ poppler_fonts_iter_free (fonts_iter);
+ }
+ }
+ g_object_unref (font_info);
+
+ index_iter = poppler_index_iter_new (document);
+ if (index_iter)
+ {
+ g_print ("\tindex:\n");
+ print_index (index_iter, 0);
+ poppler_index_iter_free (index_iter);
+ }
+
+ printf ("\t---------------------------------------------------------\n");
+ printf ("\tDocument Permissions\n");
+ printf ("\t---------------------------------------------------------\n");
+
+ printf ("\tOk to Print: %s\n",
+ permissions & POPPLER_PERMISSIONS_OK_TO_PRINT ? "Yes" : "No");
+ printf ("\tOk to Modify: %s\n",
+ permissions & POPPLER_PERMISSIONS_OK_TO_MODIFY ? "Yes" : "No");
+ printf ("\tOk to Copy: %s\n",
+ permissions & POPPLER_PERMISSIONS_OK_TO_COPY ? "Yes" : "No");
+ printf ("\tOk to Add Notes: %s\n",
+ permissions & POPPLER_PERMISSIONS_OK_TO_ADD_NOTES ? "Yes" : "No");
+ printf ("\tOk to Fill Forms: %s\n",
+ permissions & POPPLER_PERMISSIONS_OK_TO_FILL_FORM ? "Yes" : "No");
+
+ printf ("\n");
+
+ /* FIXME: print out the view prefs when we support it */
+
+ g_free (title);
+ g_free (format);
+ g_free (author);
+ g_free (subject);
+ g_free (keywords);
+ g_free (creator);
+ g_free (producer);
+ g_free (linearized);
+}
+
+static const gchar *
+transition_effect_name (PopplerPageTransitionType type)
+{
+ switch (type)
+ {
+ case POPPLER_PAGE_TRANSITION_REPLACE:
+ return "Replace";
+ case POPPLER_PAGE_TRANSITION_SPLIT:
+ return "Split";
+ case POPPLER_PAGE_TRANSITION_BLINDS:
+ return "Blinds";
+ case POPPLER_PAGE_TRANSITION_BOX:
+ return "Box";
+ case POPPLER_PAGE_TRANSITION_WIPE:
+ return "Wipe";
+ case POPPLER_PAGE_TRANSITION_DISSOLVE:
+ return "Dissolve";
+ case POPPLER_PAGE_TRANSITION_GLITTER:
+ return "Glitter";
+ case POPPLER_PAGE_TRANSITION_FLY:
+ return "Fly";
+ case POPPLER_PAGE_TRANSITION_PUSH:
+ return "Push";
+ case POPPLER_PAGE_TRANSITION_COVER:
+ return "Cover";
+ case POPPLER_PAGE_TRANSITION_UNCOVER:
+ return "Uncover";
+ case POPPLER_PAGE_TRANSITION_FADE:
+ return "Fade";
+ }
+
+ return "Unknown";
+}
+
+static void
+print_page_transition (PopplerPageTransition *transition)
+{
+ printf ("\t\tEffect: %s\n", transition_effect_name (transition->type));
+ printf ("\t\tAlignment: %s\n",
+ transition->alignment == POPPLER_PAGE_TRANSITION_HORIZONTAL ?
+ "Horizontal" : "Vertical");
+ printf ("\t\tDirection: %s\n",
+ transition->direction == POPPLER_PAGE_TRANSITION_INWARD ?
+ "Inward" : "Outward");
+ printf ("\t\tDuration: %d\n", transition->duration);
+ printf ("\t\tAngle: %d\n", transition->angle);
+ printf ("\t\tScale: %.2f\n", transition->scale);
+ printf ("\t\tRectangular: %s\n", transition->rectangular ? "Yes" : "No");
+}
+
+static void
+form_field_text_print (PopplerFormField *field)
+{
+ PopplerFormTextType type;
+ gchar *text;
+
+ type = poppler_form_field_text_get_text_type (field);
+ printf ("\t\tType:\t\tText\n");
+ printf ("\t\tMultiline:\t%s\n",
+ type == POPPLER_FORM_TEXT_MULTILINE ? "Yes" : "No");
+ printf ("\t\tFileSelect:\t%s\n",
+ type == POPPLER_FORM_TEXT_FILE_SELECT ? "Yes" : "No");
+ printf ("\t\tDoSpellCheck:\t%s\n",
+ poppler_form_field_text_do_spell_check (field) ? "Yes" : "No");
+ printf ("\t\tDoScroll:\t%s\n",
+ poppler_form_field_text_do_scroll (field) ? "Yes" : "No");
+ printf ("\t\tIsRichText:\t%s\n",
+ poppler_form_field_text_is_rich_text (field) ? "Yes" : "No");
+ printf ("\t\tPassword:\t%s\n",
+ poppler_form_field_text_is_password (field) ? "Yes" : "No");
+ printf ("\t\tMaxLen:\t\t%d\n", poppler_form_field_text_get_max_len (field));
+ text = poppler_form_field_text_get_text (field);
+ printf ("\t\tContent:\t%s\n", text ? text : "");
+ g_free (text);
+}
+
+static void
+form_field_button_print (PopplerFormField *field)
+{
+ PopplerFormButtonType button_type;
+ const gchar *button_type_str;
+
+ button_type = poppler_form_field_button_get_button_type (field);
+
+ switch (button_type)
+ {
+ case POPPLER_FORM_BUTTON_PUSH:
+ button_type_str = "Push";
+ break;
+ case POPPLER_FORM_BUTTON_CHECK:
+ button_type_str = "Check box";
+ break;
+ case POPPLER_FORM_BUTTON_RADIO:
+ button_type_str = "Radio Button";
+ break;
+ default:
+ g_assert_not_reached ();
+ }
+
+ printf ("\t\tType:\t\tButton\n");
+ printf ("\t\tButton type:\t%s\n", button_type_str);
+ if (button_type != POPPLER_FORM_BUTTON_PUSH)
+ printf ("\t\tState:\t\t%s\n",
+ poppler_form_field_button_get_state (field) ? "Active" : "Inactive");
+}
+
+static void
+form_field_choice_print (PopplerFormField *field)
+{
+ gint i, n_items;
+
+ printf ("\t\tType:\t\tChoice\n");
+ printf ("\t\tSubType:\t%s\n",
+ poppler_form_field_choice_get_choice_type (field) == POPPLER_FORM_CHOICE_COMBO ?
+ "Combo" : "List");
+ printf ("\t\tEditable:\t%s\n",
+ poppler_form_field_choice_is_editable (field) ? "Yes" : "No");
+ printf ("\t\tCan select multiple: %s\n",
+ poppler_form_field_choice_can_select_multiple (field) ? "Yes" : "No");
+ printf ("\t\tDoSpellCheck:\t%s\n",
+ poppler_form_field_choice_do_spell_check (field) ? "Yes" : "No");
+ printf ("\t\tCommit on change: %s\n",
+ poppler_form_field_choice_commit_on_change (field) ? "Yes" : "No");
+
+ n_items = poppler_form_field_choice_get_n_items (field);
+ for (i = 0; i < n_items; i++)
+ {
+ gchar *item;
+
+ item = poppler_form_field_choice_get_item (field, i);
+ printf ("\t\t\tItem %d: %s %s\n", i, item ? item : "",
+ poppler_form_field_choice_is_item_selected (field, i) ?
+ "(selected)" : "");
+ g_free (item);
+ }
+}
+
+static void
+form_field_print (PopplerFormField *field)
+{
+ printf ("\t\tFont Size:\t%.2f\n",
+ poppler_form_field_get_font_size (field));
+ printf ("\t\tReadOnly:\t%s\n",
+ poppler_form_field_is_read_only (field) ? "Yes" : "No");
+
+ switch (poppler_form_field_get_field_type (field))
+ {
+ case POPPLER_FORM_FIELD_TEXT:
+ form_field_text_print (field);
+ break;
+ case POPPLER_FORM_FIELD_BUTTON:
+ form_field_button_print (field);
+ break;
+ case POPPLER_FORM_FIELD_CHOICE:
+ form_field_choice_print (field);
+ break;
+ default:
+ printf ("\t\tUnknown form field\n");
+ }
+ printf ("\n");
+}
+
+static void
+annot_print (PopplerAnnot *annot)
+{
+ GEnumValue *enum_value;
+ gchar *text;
+
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_ANNOT_TYPE),
+ poppler_annot_get_annot_type (annot));
+ g_print ("\t\tType: %s\n", enum_value->value_name);
+ text = poppler_annot_get_contents (annot);
+ g_print ("\t\tContents: %s\n", text);
+ g_free (text);
+ printf ("\n");
+}
+
+int main (int argc, char *argv[])
+{
+ PopplerDocument *document;
+ PopplerBackend backend;
+ PopplerPage *page;
+ PopplerPageTransition *transition;
+ PopplerFormField *field;
+ GEnumValue *enum_value;
+ char *label;
+ GError *error;
+ GdkPixbuf *pixbuf, *thumb;
+ double width, height;
+ GList *list, *l;
+ char *text;
+ double duration;
+ PopplerRectangle area;
+ gint num_images;
+ gint num_forms;
+ gint num_links;
+ gint num_annots;
+ gint form_id = 0;
+ PopplerLayersIter *layers_iter;
+
+ if (argc != 3)
+ FAIL ("usage: test-poppler-glib file://FILE PAGE");
+
+ g_type_init ();
+
+ g_print ("Poppler version %s\n", poppler_get_version ());
+ backend = poppler_get_backend ();
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_BACKEND), backend);
+ g_print ("Backend is %s\n", enum_value->value_name);
+
+ error = NULL;
+ document = poppler_document_new_from_file (argv[1], NULL, &error);
+ if (document == NULL)
+ FAIL (error->message);
+
+ print_document_info (document);
+
+ page = poppler_document_get_page_by_label (document, argv[2]);
+ if (page == NULL)
+ FAIL ("page not found");
+
+ poppler_page_get_size (page, &width, &height);
+ printf ("\tpage size:\t%f inches by %f inches\n", width / 72, height / 72);
+
+ duration = poppler_page_get_duration (page);
+ if (duration > 0)
+ printf ("\tpage duration:\t%f second(s)\n", duration);
+ else
+ printf ("\tpage duration:\tno duration for page\n");
+
+ transition = poppler_page_get_transition (page);
+ if (transition) {
+ printf ("\tpage transition:\n");
+ print_page_transition (transition);
+ poppler_page_transition_free (transition);
+ } else {
+ printf ("\tpage transition:no transition effect for page\n");
+ }
+
+ thumb = poppler_page_get_thumbnail_pixbuf (page);
+ if (thumb != NULL) {
+ gdk_pixbuf_save (thumb, "thumb.png", "png", &error, NULL);
+ if (error != NULL)
+ FAIL (error->message);
+ else
+ printf ("\tthumbnail:\tsaved as thumb.png\n");
+ g_object_unref (G_OBJECT (thumb));
+ }
+ else
+ printf ("\tthumbnail:\tno thumbnail for page\n");
+
+ g_object_get (page, "label", &label, NULL);
+ printf ("\tpage label:\t%s\n", label);
+ g_free (label);
+
+ pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, 220, 220);
+ gdk_pixbuf_fill (pixbuf, 0x00106000);
+ poppler_page_render_to_pixbuf (page, 100, 100, 200, 200, 1, 0, pixbuf);
+
+ gdk_pixbuf_save (pixbuf, "slice.png", "png", &error, NULL);
+ printf ("\tslice:\t\tsaved 200x200 slice at (100, 100) as slice.png\n");
+ if (error != NULL) {
+ FAIL (error->message);
+ g_error_free (error);
+ }
+
+ g_object_unref (G_OBJECT (pixbuf));
+
+ list = poppler_page_get_link_mapping (page);
+ num_links = g_list_length (list);
+ if (num_links > 0)
+ printf ("\tFound %d links at positions:\n", num_links);
+ else
+ printf ("\tNo links found\n");
+
+ for (l = list; l != NULL; l = l->next)
+ {
+ PopplerLinkMapping *mapping = (PopplerLinkMapping *)l->data;
+
+ printf ("\t\t(%f, %f) - (%f, %f)\n",
+ mapping->area.x1,
+ mapping->area.y1,
+ mapping->area.x2,
+ mapping->area.y2);
+ enum_value = g_enum_get_value ((GEnumClass *) g_type_class_ref (POPPLER_TYPE_ACTION_TYPE),
+ mapping->action->type);
+ g_print ("\t\t\tAction: %s (%d)\n", enum_value->value_name, mapping->action->type);
+ switch (mapping->action->type)
+ {
+ case POPPLER_ACTION_GOTO_DEST:
+ printf("\t\t\tDest title: %s\n", mapping->action->goto_dest.title);
+ printf("\t\t\tNamed dest: %s\n", mapping->action->goto_dest.dest->named_dest);
+ break;
+ default:
+ printf("\t\t\tDetails unimplemented for this action type\n");
+ }
+ }
+ poppler_page_free_link_mapping (list);
+
+ area.x1 = 0;
+ area.y1 = 0;
+ area.x2 = width;
+ area.y2 = height;
+
+ text = poppler_page_get_text (page, POPPLER_SELECTION_GLYPH, &area);
+ if (text)
+ {
+ FILE *file = fopen ("dump.txt", "w");
+ if (file)
+ {
+ fwrite (text, strlen (text), 1, file);
+ fclose (file);
+ }
+ g_free (text);
+ }
+
+ list = poppler_page_find_text (page, "Bitwise");
+ printf ("\n");
+ printf ("\tFound text \"Bitwise\" at positions:\n");
+ for (l = list; l != NULL; l = l->next)
+ {
+ PopplerRectangle *rect = (PopplerRectangle *)l->data;
+
+ printf (" (%f,%f)-(%f,%f)\n", rect->x1, rect->y1, rect->x2, rect->y2);
+ }
+
+ list = poppler_page_get_image_mapping (page);
+ num_images = g_list_length (list);
+ printf ("\n");
+ if (num_images > 0)
+ printf ("\tFound %d images at positions:\n", num_images);
+ else
+ printf ("\tNo images found\n");
+ for (l = list; l != NULL; l = l->next)
+ {
+ PopplerImageMapping *mapping;
+#if defined (HAVE_CAIRO)
+ cairo_surface_t *image;
+#endif
+ mapping = (PopplerImageMapping *)l->data;
+ printf ("\t\t(%f, %f) - (%f, %f)\n",
+ mapping->area.x1,
+ mapping->area.y1,
+ mapping->area.x2,
+ mapping->area.y2);
+#if defined (HAVE_CAIRO)
+ image = poppler_page_get_image (page, mapping->image_id);
+ printf ("\t\tImage: %p\n", image);
+ cairo_surface_destroy (image);
+#endif
+ }
+ poppler_page_free_image_mapping (list);
+
+ list = poppler_page_get_form_field_mapping (page);
+ num_forms = g_list_length (list);
+ printf ("\n");
+ if (num_forms > 0)
+ printf ("\tFound %d form fields at positions:\n", num_forms);
+ else
+ printf ("\tNo forms fields found\n");
+ for (l = list; l != NULL; l = l->next)
+ {
+ PopplerFormFieldMapping *mapping;
+
+ mapping = (PopplerFormFieldMapping *)l->data;
+
+ form_id = poppler_form_field_get_id (mapping->field);
+
+ printf ("\t\tId: %d: (%f, %f) - (%f, %f)\n",
+ form_id,
+ mapping->area.x1,
+ mapping->area.y1,
+ mapping->area.x2,
+ mapping->area.y2);
+ form_field_print (mapping->field);
+ }
+ poppler_page_free_form_field_mapping (list);
+
+ if (num_forms > 0)
+ {
+ field = poppler_document_get_form_field (document, form_id);
+ printf ("\tForm field for id %d\n", form_id);
+ form_field_print (field);
+ g_object_unref (field);
+ }
+
+ list = poppler_page_get_annot_mapping (page);
+ num_annots = g_list_length (list);
+ if (num_annots > 0)
+ printf ("\tFound %d annotations at positions:\n", num_annots);
+ else
+ printf ("\tNo annotations found\n");
+ for (l = list; l != NULL; l = l->next)
+ {
+ PopplerAnnotMapping *mapping = (PopplerAnnotMapping *)l->data;
+
+ printf ("\t\t(%f, %f) - (%f, %f)\n",
+ mapping->area.x1,
+ mapping->area.y1,
+ mapping->area.x2,
+ mapping->area.y2);
+
+ annot_print (mapping->annot);
+ }
+ poppler_page_free_annot_mapping (list);
+
+ if (poppler_document_has_attachments (document))
+ {
+ int i = 0;
+
+ g_print ("Attachments found:\n\n");
+
+ list = poppler_document_get_attachments (document);
+ for (l = list; l; l = l->next)
+ {
+ PopplerAttachment *attachment;
+ char *filename, *strdate;
+
+ filename = g_strdup_printf ("/tmp/attach%d", i);
+ attachment = (PopplerAttachment *)l->data;
+ g_print ("\tname: %s\n", attachment->name);
+ g_print ("\tdescription: %s\n", attachment->description);
+ g_print ("\tsize: %" G_GSIZE_FORMAT "\n", attachment->size);
+ strdate = poppler_format_date (attachment->ctime);
+ if (strdate)
+ {
+ g_print ("\tcreation date: %s\n", strdate);
+ g_free (strdate);
+ }
+ strdate = poppler_format_date (attachment->mtime);
+ if (strdate)
+ {
+ g_print ("\tmodification date: %s\n", strdate);
+ g_free (strdate);
+ }
+ poppler_attachment_save (attachment, filename, NULL);
+ g_free (filename);
+ g_print ("\n");
+ i++;
+ }
+ g_list_foreach (list, (GFunc) g_object_unref, NULL);
+ g_list_free (list);
+ }
+ else
+ g_print ("\tNo attachments found\n");
+
+ layers_iter = poppler_layers_iter_new (document);
+ if (layers_iter)
+ {
+ g_print ("\tLayers:\n");
+ print_layers (layers_iter, 0);
+ poppler_layers_iter_free (layers_iter);
+ }
+ else
+ g_print ("\tNo layers found\n");
+
+ g_object_unref (G_OBJECT (page));
+ g_object_unref (G_OBJECT (document));
+
+ return 0;
+}