summaryrefslogtreecommitdiff
path: root/qt4
diff options
context:
space:
mode:
authorCarlos Garcia Campos <carlosgc@gnome.org>2011-05-07 12:55:34 +0200
committerCarlos Garcia Campos <carlosgc@gnome.org>2011-05-27 15:12:56 +0200
commit04dfb2c984b3c9949466e2b70e26b58029c5a7d3 (patch)
treee60f57a13ad2503b24876bc8f5d8f7e3b2319606 /qt4
parent74f9befddd4b5848c4af0c1b2848a1322f8cd0a2 (diff)
Make FileSpec a class and move EmbFile from Catalog to FileSpec
Qt and cpp frontends adapted by Pino Toscano
Diffstat (limited to 'qt4')
-rw-r--r--qt4/src/poppler-embeddedfile-private.h6
-rw-r--r--qt4/src/poppler-embeddedfile.cc34
-rw-r--r--qt4/src/poppler-page.cc5
-rw-r--r--qt4/src/poppler-private.h4
-rw-r--r--qt4/tests/check_attachments.cpp12
5 files changed, 35 insertions, 26 deletions
diff --git a/qt4/src/poppler-embeddedfile-private.h b/qt4/src/poppler-embeddedfile-private.h
index cdd98028..f109d36b 100644
--- a/qt4/src/poppler-embeddedfile-private.h
+++ b/qt4/src/poppler-embeddedfile-private.h
@@ -21,7 +21,7 @@
#ifndef POPPLER_EMBEDDEDFILE_PRIVATE_H
#define POPPLER_EMBEDDEDFILE_PRIVATE_H
-class EmbFile;
+class FileSpec;
namespace Poppler
{
@@ -29,10 +29,10 @@ namespace Poppler
class EmbeddedFileData
{
public:
- EmbeddedFileData(EmbFile *ef);
+ EmbeddedFileData(FileSpec *fs);
~EmbeddedFileData();
- EmbFile *embfile;
+ FileSpec *filespec;
};
}
diff --git a/qt4/src/poppler-embeddedfile.cc b/qt4/src/poppler-embeddedfile.cc
index fc1cfecc..ad942b73 100644
--- a/qt4/src/poppler-embeddedfile.cc
+++ b/qt4/src/poppler-embeddedfile.cc
@@ -26,6 +26,7 @@
#include "Object.h"
#include "Stream.h"
#include "Catalog.h"
+#include "FileSpec.h"
#include "poppler-private.h"
#include "poppler-embeddedfile-private.h"
@@ -33,14 +34,14 @@
namespace Poppler
{
-EmbeddedFileData::EmbeddedFileData(EmbFile *ef)
- : embfile(ef)
+EmbeddedFileData::EmbeddedFileData(FileSpec *fs)
+ : filespec(fs)
{
}
EmbeddedFileData::~EmbeddedFileData()
{
- delete embfile;
+ delete filespec;
}
@@ -62,47 +63,54 @@ EmbeddedFile::~EmbeddedFile()
QString EmbeddedFile::name() const
{
- return QString(m_embeddedFile->embfile->name()->getCString());
+ GooString *goo = m_embeddedFile->filespec->getFileName();
+ return goo ? QString(goo->getCString()) : QString();
}
QString EmbeddedFile::description() const
{
- return UnicodeParsedString(m_embeddedFile->embfile->description());
+ GooString *goo = m_embeddedFile->filespec->getDescription();
+ return goo ? UnicodeParsedString(goo) : QString();
}
int EmbeddedFile::size() const
{
- return m_embeddedFile->embfile->size();
+ return m_embeddedFile->filespec->getEmbeddedFile()->size();
}
QDateTime EmbeddedFile::modDate() const
{
- return convertDate(m_embeddedFile->embfile->modDate()->getCString());
+ GooString *goo = m_embeddedFile->filespec->getEmbeddedFile()->modDate();
+ return goo ? convertDate(goo->getCString()) : QDateTime();
}
QDateTime EmbeddedFile::createDate() const
{
- return convertDate(m_embeddedFile->embfile->createDate()->getCString());
+ GooString *goo = m_embeddedFile->filespec->getEmbeddedFile()->createDate();
+ return goo ? convertDate(goo->getCString()) : QDateTime();
}
QByteArray EmbeddedFile::checksum() const
{
- GooString *goo_checksum = m_embeddedFile->embfile->checksum();
- return QByteArray::fromRawData(goo_checksum->getCString(), goo_checksum->getLength());
+ GooString *goo = m_embeddedFile->filespec->getEmbeddedFile()->checksum();
+ return goo ? QByteArray::fromRawData(goo->getCString(), goo->getLength()) : QByteArray();
}
QString EmbeddedFile::mimeType() const
{
- return QString(m_embeddedFile->embfile->mimeType()->getCString());
+ GooString *goo = m_embeddedFile->filespec->getEmbeddedFile()->mimeType();
+ return goo ? QString(goo->getCString()) : QString();
}
QByteArray EmbeddedFile::data()
{
if (!isValid())
return QByteArray();
+ Stream *stream = m_embeddedFile->filespec->getEmbeddedFile()->stream();
+ if (!stream)
+ return QByteArray();
Object obj;
- Stream *stream = m_embeddedFile->embfile->streamObject().getStream();
stream->reset();
int dataLen = 0;
QByteArray fileArray;
@@ -117,7 +125,7 @@ QByteArray EmbeddedFile::data()
bool EmbeddedFile::isValid() const
{
- return m_embeddedFile->embfile->isOk();
+ return m_embeddedFile->filespec->isOk();
}
}
diff --git a/qt4/src/poppler-page.cc b/qt4/src/poppler-page.cc
index b92002c1..62d16f98 100644
--- a/qt4/src/poppler-page.cc
+++ b/qt4/src/poppler-page.cc
@@ -42,6 +42,7 @@
#include <TextOutputDev.h>
#include <Annot.h>
#include <Link.h>
+#include <FileSpec.h>
#include <ArthurOutputDev.h>
#if defined(HAVE_SPLASH)
#include <SplashOutputDev.h>
@@ -939,8 +940,8 @@ QList<Annotation*> Page::annotations() const
// -> fileIcon
f->setFileIconName( QString::fromLatin1( attachann->getName()->getCString() ) );
// -> embeddedFile
- EmbFile *embfile = new EmbFile( attachann->getFile(), attachann->getContents() );
- f->setEmbeddedFile( new EmbeddedFile( *new EmbeddedFileData( embfile ) ) );
+ FileSpec *filespec = new FileSpec( attachann->getFile() );
+ f->setEmbeddedFile( new EmbeddedFile( *new EmbeddedFileData( filespec ) ) );
break;
}
case Annot::typeSound:
diff --git a/qt4/src/poppler-private.h b/qt4/src/poppler-private.h
index ea36e7e3..6d2b3154 100644
--- a/qt4/src/poppler-private.h
+++ b/qt4/src/poppler-private.h
@@ -164,8 +164,8 @@ namespace Poppler {
if (!(0 == numEmb)) {
// we have some embedded documents, build the list
for (int yalv = 0; yalv < numEmb; ++yalv) {
- EmbFile *ef = doc->getCatalog()->embeddedFile(yalv);
- m_embeddedFiles.append(new EmbeddedFile(*new EmbeddedFileData(ef)));
+ FileSpec *fs = doc->getCatalog()->embeddedFile(yalv);
+ m_embeddedFiles.append(new EmbeddedFile(*new EmbeddedFileData(fs)));
}
}
}
diff --git a/qt4/tests/check_attachments.cpp b/qt4/tests/check_attachments.cpp
index 2e02ec81..6405351f 100644
--- a/qt4/tests/check_attachments.cpp
+++ b/qt4/tests/check_attachments.cpp
@@ -40,7 +40,7 @@ void TestAttachments::checkAttach1()
Poppler::EmbeddedFile *embfile = fileList.at(0);
QCOMPARE( embfile->name(), QString( "kroller.png" ) );
- QCOMPARE( embfile->description(), QString("/home/bradh/coding/svn-vers/KDE/kdeartwork/wallpapers/kroller.png") );
+ QCOMPARE( embfile->description(), QString() );
QCOMPARE( embfile->createDate(), QDateTime( QDate(), QTime() ) );
QCOMPARE( embfile->modDate(), QDateTime( QDate(), QTime() ) );
QCOMPARE( embfile->mimeType(), QString() );
@@ -54,7 +54,7 @@ void TestAttachments::checkAttach1()
Poppler::EmbeddedFile *embfile2 = fileList.at(1);
QCOMPARE( embfile2->name(), QString("gnome-64.gif") );
- QCOMPARE( embfile2->description(), QString("/usr/share/gnome-about/gnome-64.gif") );
+ QCOMPARE( embfile2->description(), QString() );
QCOMPARE( embfile2->modDate(), QDateTime( QDate(), QTime() ) );
QCOMPARE( embfile2->createDate(), QDateTime( QDate(), QTime() ) );
QCOMPARE( embfile2->mimeType(), QString() );
@@ -84,21 +84,21 @@ void TestAttachments::checkAttach2()
Poppler::EmbeddedFile *embfile1 = fileList.at(0);
QCOMPARE( embfile1->name(), QString("Acro7 thoughts") );
- QCOMPARE( embfile1->description(), QString("Acro7 Thoughts") );
+ QCOMPARE( embfile1->description(), QString() );
QCOMPARE( embfile1->createDate(), QDateTime( QDate( 2003, 8, 4 ), QTime( 13, 54, 54), Qt::UTC ) );
QCOMPARE( embfile1->modDate(), QDateTime( QDate( 2003, 8, 4 ), QTime( 14, 15, 27), Qt::UTC ) );
QCOMPARE( embfile1->mimeType(), QString("text/xml") );
Poppler::EmbeddedFile *embfile2 = fileList.at(1);
QCOMPARE( embfile2->name(), QString("acro transitions 1.xls") );
- QCOMPARE( embfile2->description(), QString("AcroTransitions") );
+ QCOMPARE( embfile2->description(), QString() );
QCOMPARE( embfile2->createDate(), QDateTime( QDate( 2003, 7, 18 ), QTime( 21, 7, 16), Qt::UTC ) );
QCOMPARE( embfile2->modDate(), QDateTime( QDate( 2003, 7, 22 ), QTime( 13, 4, 40), Qt::UTC ) );
QCOMPARE( embfile2->mimeType(), QString("application/excel") );
Poppler::EmbeddedFile *embfile3 = fileList.at(2);
QCOMPARE( embfile3->name(), QString("apago_pdfe_wide.gif") );
- QCOMPARE( embfile3->description(), QString("PDFE Animation") );
+ QCOMPARE( embfile3->description(), QString() );
QCOMPARE( embfile3->createDate(), QDateTime( QDate( 2003, 1, 31 ), QTime( 15, 54, 29), Qt::UTC ) );
QCOMPARE( embfile3->modDate(), QDateTime( QDate( 2003, 1, 31 ), QTime( 15, 52, 58), Qt::UTC ) );
QCOMPARE( embfile3->mimeType(), QString() );
@@ -121,7 +121,7 @@ void TestAttachments::checkAttach3()
Poppler::EmbeddedFile *embfile = fileList.at(0);
QCOMPARE( embfile->name(), QString( "ADEX1.xpdf.pgp" ) );
- QCOMPARE( embfile->description(), QString("encrypted version of document") );
+ QCOMPARE( embfile->description(), QString() );
QCOMPARE( embfile->createDate(), QDateTime( QDate( 2004, 3, 29 ), QTime( 19, 37, 16), Qt::UTC ) );
QCOMPARE( embfile->modDate(), QDateTime( QDate( 2004, 3, 29 ), QTime( 19, 37, 16), Qt::UTC ) );
QCOMPARE( embfile->mimeType(), QString() );