summaryrefslogtreecommitdiffstats
path: root/tdefile-plugins
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2017-12-26 17:03:04 +0100
committerSlávek Banko <slavek.banko@axis.cz>2017-12-26 17:03:04 +0100
commit9dd187337acce50e168b06571dfa315c41a1b628 (patch)
tree66579cd45677b358783fd23129c12262c851d2f2 /tdefile-plugins
parente199b0f7781e38b97eb6bb5d5bfa147f520da77c (diff)
downloadtdegraphics-9dd187337acce50e168b06571dfa315c41a1b628.tar.gz
tdegraphics-9dd187337acce50e168b06571dfa315c41a1b628.zip
Add support for Poppler >= 0.60
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'tdefile-plugins')
-rw-r--r--tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake10
-rw-r--r--tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc36
-rw-r--r--tdefile-plugins/dependencies/poppler-tqt/poppler-page.cc13
3 files changed, 53 insertions, 6 deletions
diff --git a/tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake b/tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake
index 7714f5e3..725a19c6 100644
--- a/tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake
+++ b/tdefile-plugins/dependencies/poppler-tqt/ConfigureChecks.cmake
@@ -24,3 +24,13 @@ check_cxx_source_compiles("
HAVE_POPPLER_030 )
tde_restore( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES )
+if( NOT DEFINED HAVE_POPPLER_060 )
+ message( STATUS "Performing Test HAVE_POPPLER_060" )
+ if( POPPLER_VERSION VERSION_GREATER_EQUAL "0.60" )
+ set( HAVE_POPPLER_060 1 CACHE INTERNAL "" FORCE )
+ message( STATUS "Performing Test HAVE_POPPLER_060 - Success" )
+ else( )
+ set( HAVE_POPPLER_060 "" CACHE INTERNAL "" FORCE )
+ message( STATUS "Performing Test HAVE_POPPLER_060 - Failed" )
+ endif( )
+endif( )
diff --git a/tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc b/tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc
index 081e1035..5998ae24 100644
--- a/tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc
+++ b/tdefile-plugins/dependencies/poppler-tqt/poppler-document.cc
@@ -153,7 +153,11 @@ TQString Document::getInfo( const TQString & type ) const
if ( data->locked )
return NULL;
+# if defined(HAVE_POPPLER_060)
+ info = data->doc.getDocInfo();
+# else
data->doc.getDocInfo( &info );
+# endif
if ( !info.isDict() )
return NULL;
@@ -165,7 +169,13 @@ TQString Document::getInfo( const TQString & type ) const
int i;
Dict *infoDict = info.getDict();
- if ( infoDict->lookup( (char*)type.latin1(), &obj )->isString() )
+ if (
+# if defined(HAVE_POPPLER_060)
+ infoDict->lookup( (char*)type.latin1() ).isString()
+# else
+ infoDict->lookup( (char*)type.latin1(), &obj )->isString()
+# endif
+ )
{
s1 = obj.getString();
if ( ( s1->getChar(0) & 0xff ) == 0xfe && ( s1->getChar(1) & 0xff ) == 0xff )
@@ -192,12 +202,16 @@ TQString Document::getInfo( const TQString & type ) const
}
result += unicodeToTQString( &u, 1 );
}
+# if !defined(HAVE_POPPLER_060)
obj.free();
info.free();
+# endif
return result;
}
+# if !defined(HAVE_POPPLER_060)
obj.free();
info.free();
+# endif
return NULL;
}
@@ -209,9 +223,15 @@ TQDateTime Document::getDate( const TQString & type ) const
return TQDateTime();
Object info;
+# if defined(HAVE_POPPLER_060)
+ info = data->doc.getDocInfo();
+# else
data->doc.getDocInfo( &info );
+# endif
if ( !info.isDict() ) {
+# if !defined(HAVE_POPPLER_060)
info.free();
+# endif
return TQDateTime();
}
@@ -221,7 +241,13 @@ TQDateTime Document::getDate( const TQString & type ) const
Dict *infoDict = info.getDict();
TQString result;
- if ( infoDict->lookup( (char*)type.latin1(), &obj )->isString() )
+ if (
+# if defined(HAVE_POPPLER_060)
+ infoDict->lookup( (char*)type.latin1() ).isString()
+# else
+ infoDict->lookup( (char*)type.latin1(), &obj )->isString()
+# endif
+ )
{
TQString s = UnicodeParsedString(obj.getString());
// TODO do something with the timezone information
@@ -230,14 +256,18 @@ TQDateTime Document::getDate( const TQString & type ) const
TQDate d( year, mon, day ); //CHECK: it was mon-1, Jan->0 (??)
TQTime t( hour, min, sec );
if ( d.isValid() && t.isValid() ) {
+# if !defined(HAVE_POPPLER_060)
obj.free();
info.free();
+# endif
return TQDateTime( d, t );
}
}
}
+# if !defined(HAVE_POPPLER_060)
obj.free();
info.free();
+# endif
return TQDateTime();
}
@@ -317,7 +347,7 @@ bool Document::print(const TQString &fileName, TQValueList<int> pageList, double
bool Document::print(const TQString &file, TQValueList<int> pageList, double hDPI, double vDPI, int rotate, int paperWidth, int paperHeight)
{
-#if defined(HAVE_POPPLER_030)
+#if defined(HAVE_POPPLER_060) || defined(HAVE_POPPLER_030)
std::vector<int> pages;
TQValueList<int>::iterator it;
for (it = pageList.begin(); it != pageList.end(); ++it ) {
diff --git a/tdefile-plugins/dependencies/poppler-tqt/poppler-page.cc b/tdefile-plugins/dependencies/poppler-tqt/poppler-page.cc
index 2c6a5f0e..3c6bafca 100644
--- a/tdefile-plugins/dependencies/poppler-tqt/poppler-page.cc
+++ b/tdefile-plugins/dependencies/poppler-tqt/poppler-page.cc
@@ -129,7 +129,7 @@ TQString Page::getText(const Rectangle &r) const
TQString result;
::Page *p;
-#if defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020)
+#if defined(HAVE_POPPLER_060) || defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020)
output_dev = new TextOutputDev(0, gFalse, 0, gFalse, gFalse);
#else
output_dev = new TextOutputDev(0, gFalse, gFalse, gFalse);
@@ -164,7 +164,7 @@ TQValueList<TextBox*> Page::textList() const
TQValueList<TextBox*> output_list;
-#if defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020)
+#if defined(HAVE_POPPLER_060) || defined(HAVE_POPPLER_030) || defined(HAVE_POPPLER_020)
output_dev = new TextOutputDev(0, gFalse, 0, gFalse, gFalse);
#else
output_dev = new TextOutputDev(0, gFalse, gFalse, gFalse);
@@ -205,9 +205,16 @@ PageTransition *Page::getTransition() const
{
Object o;
PageTransitionParams params;
- params.dictObj = data->doc->data->doc.getCatalog()->getPage(data->index + 1)->getTrans(&o);
+# if defined(HAVE_POPPLER_060)
+ o = data->doc->data->doc.getCatalog()->getPage(data->index + 1)->getTrans();
+# else
+ data->doc->data->doc.getCatalog()->getPage(data->index + 1)->getTrans(&o);
+# endif
+ params.dictObj = &o;
data->transition = new PageTransition(params);
+# if !defined(HAVE_POPPLER_060)
o.free();
+# endif
}
return data->transition;
}