diff options
author | Rohan McGovern <rohan.mcgovern@nokia.com> | 2009-03-09 14:11:11 +1000 |
---|---|---|
committer | Rohan McGovern <rohan.mcgovern@nokia.com> | 2009-03-09 14:11:11 +1000 |
commit | 26623c4957f14ee593b17f5dfb70fc87354aa537 (patch) | |
tree | 4d778d461d82ad418badc82a937fcd3af4b07378 | |
parent | 9f4319964c0b1aa35a3d60b5b1726908fb01365d (diff) | |
parent | 3bc3d8620694f4a32d070c73a2321f66f6a26b32 (diff) |
Merge branch 'master' of git@scm.dev.nokia.troll.no:addons/messagingframework2009W10
21 files changed, 57 insertions, 73 deletions
diff --git a/doc/src/messaging.qdoc b/doc/src/messaging.qdoc index f1e1ccd7..4bc08e06 100644 --- a/doc/src/messaging.qdoc +++ b/doc/src/messaging.qdoc @@ -75,7 +75,7 @@ or optionally remove unwanted tests from the qmf.pro. \section1 Running Messaging Framework -After \c make \c install has run, the following image layout should exist in your image directory: +After \c make \c install has run, the following layout should exist in your image directory: \code bin @@ -96,8 +96,8 @@ QMF_PLUGINS=<imagedir/plugins> Optionally set \c QMF_DATA to the location where you want the framework data files stored. If this is not set, the default of \c $HOME/.qmf will be used. -\bold Note: When running the test application \c qtmail, if the messageserver is not already running it will be started as -a child process of the application. If debug output to stout is required from messageserver, ensure it is running before -qtmail is started. +\bold Note: When running the test application \c qtmail, if the \c messageserver is not already running it will be started as +a child process of the application. If debug to stdout is required from \c messageserver, ensure it is running separately +before running \c qtmail. */ diff --git a/doc/src/qtopiamail_qmfutil.qdoc b/doc/src/qtopiamail_qmfutil.qdoc index b6b4b7e5..f1f5fd55 100644 --- a/doc/src/qtopiamail_qmfutil.qdoc +++ b/doc/src/qtopiamail_qmfutil.qdoc @@ -33,10 +33,6 @@ Although this mechanism can be accessed by applications, it is currently recomme \row \o QMailViewerFactory \o Creates objects implementing the QMailViewerInterface interface \row \o QMailComposerInterface \o Defines the interface to objects that can compose a mail message \row \o QMailViewerInterface \o Defines the interface to objects that can display a mail message -\row \o QMailComposerPlugin \o Defines a base class for implementing mail message composer plug-ins -\row \o QMailViewerPlugin \o Defines a base class for implementing mail message viewer plug-ins -\row \o QMailComposerPluginInterface \o Defines the interface to plug-ins that provide mail message composers -\row \o QMailViewerPluginInterface \o Defines the interface to plug-ins that provide mail message viewers \endtable \section1 New Message Arrival Service diff --git a/src/libraries/qmfutil/qmailcomposer.cpp b/src/libraries/qmfutil/qmailcomposer.cpp index ea4e7079..59b6a923 100644 --- a/src/libraries/qmfutil/qmailcomposer.cpp +++ b/src/libraries/qmfutil/qmailcomposer.cpp @@ -359,9 +359,9 @@ void QMailComposerInterface::setMessageType( QMailMessage::MessageType type ) The QMailComposerInterface class describes the interface supported by classes that can be created by the QMailComposerFactory class. To create a new class that can be created via the QMailComposerFactory, - implement a plug-in that derives from QMailComposerPlugin. + implement a plug-in that derives from QMailComposerInterface. - \sa QMailComposerInterface, QMailComposerPlugin + \sa QMailComposerInterface */ /*! diff --git a/src/libraries/qmfutil/qmailviewer.cpp b/src/libraries/qmfutil/qmailviewer.cpp index d6bd25f6..43aa4438 100644 --- a/src/libraries/qmfutil/qmailviewer.cpp +++ b/src/libraries/qmfutil/qmailviewer.cpp @@ -271,9 +271,9 @@ void QMailViewerInterface::setResource(const QUrl& name, QVariant value) The QMailViewerInterface class describes the interface supported by classes that can be created by the QMailViewerFactory class. To create a new class that can be created via the QMailViewerFactory, - implement a plug-in that derives from QMailViewerPlugin. + implement a plug-in that derives from QMailViewerInterface. - \sa QMailViewerInterface, QMailViewerPlugin + \sa QMailViewerInterface */ /*! diff --git a/src/libraries/qtopiamail/qmailmessage.cpp b/src/libraries/qtopiamail/qmailmessage.cpp index 22631a90..96598f0b 100644 --- a/src/libraries/qtopiamail/qmailmessage.cpp +++ b/src/libraries/qtopiamail/qmailmessage.cpp @@ -5507,10 +5507,10 @@ template class QPrivatelyImplemented<QMailMessageMetaDataPrivate>; */ /*! - \variable QMailMessageMetaData::Attachments + \variable QMailMessageMetaData::HasAttachments The status mask needed for testing the value of the registered status flag named - \c "Attachments" against the result of QMailMessage::status(). + \c "HasAttachments" against the result of QMailMessage::status(). This flag indicates that the message contains at least one sub-part with 'Attachment' disposition. diff --git a/src/plugins/messageservices/imap/imapclient.cpp b/src/plugins/messageservices/imap/imapclient.cpp index 975f1dab..1063eae5 100644 --- a/src/plugins/messageservices/imap/imapclient.cpp +++ b/src/plugins/messageservices/imap/imapclient.cpp @@ -685,8 +685,8 @@ void ImapClient::dataFetched(const QString &uid, const QString §ion, const Q // Update the relevant part QMailMessagePart &part = mail.partAt(partLocation); if (partial && section.isEmpty()) { + partialLength.insert(partName, partialLength[partName] + size); mail.setBody(QMailMessageBody::fromFile(fileName, mail.contentType(), mail.transferEncoding(), QMailMessageBody::AlreadyEncoded)); - mail.setStatus(QMailMessage::PartialContentAvailable, true); if (partialLength[partName] >= mail.size()) { mail.setStatus(QMailMessage::ContentAvailable, true); diff --git a/src/plugins/viewers/generic/attachmentoptions.cpp b/src/plugins/viewers/generic/attachmentoptions.cpp index 3c8de53c..86e7d06d 100644 --- a/src/plugins/viewers/generic/attachmentoptions.cpp +++ b/src/plugins/viewers/generic/attachmentoptions.cpp @@ -11,30 +11,26 @@ #include "attachmentoptions.h" #include "browser.h" +#include "qmailmessage.h" #include <QAction> #include <QByteArray> -#include <QContent> #include <QDataStream> +#include <QDir> #include <QFormLayout> #include <QImage> #include <QImageReader> #include <QLabel> -#include <QMailMessage> -#include <QMailMessagePart> #include <QMenu> #include <QMessageBox> -#include <QMimeType> #include <QPushButton> #include <QScrollArea> -#include <QSoftMenuBar> #include <QSize> #include <QString> #include <QStyle> #include <QTemporaryFile> #include <QTextBrowser> #include <QVBoxLayout> -#include <QtopiaApplication> class TextDisplay : public QDialog @@ -65,17 +61,15 @@ TextDisplay::TextDisplay(QWidget* parent) QVBoxLayout* vb = new QVBoxLayout(this); vb->addWidget(_browser); - QMenu* contextMenu = QSoftMenuBar::menuFor(this); - QAction* toggleLineWrap = new QAction(tr("Wrap text"), this); toggleLineWrap->setCheckable(true); toggleLineWrap->setChecked(true); toggleLineWrap->setVisible(true); connect(toggleLineWrap, SIGNAL(triggered()), this, SLOT(toggleLineWrapMode())); - contextMenu->addAction(toggleLineWrap); + addAction(toggleLineWrap); - showMaximized(); + setContextMenuPolicy(Qt::ActionsContextMenu); } TextDisplay::~TextDisplay() @@ -147,25 +141,23 @@ ImageDisplay::ImageDisplay(QWidget* parent) vb->setMargin(0); vb->setSpacing(0); - QMenu* contextMenu = QSoftMenuBar::menuFor(this); - connect(_sizeToFit, SIGNAL(triggered()), this, SLOT(sizeToFit())); _sizeToFit->setVisible(true); - contextMenu->addAction(_sizeToFit); + addAction(_sizeToFit); connect(_sizeDefault, SIGNAL(triggered()), this, SLOT(sizeDefault())); _sizeDefault->setVisible(false); - contextMenu->addAction(_sizeDefault); + addAction(_sizeDefault); connect(_sizeActual, SIGNAL(triggered()), this, SLOT(sizeActual())); _sizeActual->setVisible(true); - contextMenu->addAction(_sizeActual); + addAction(_sizeActual); connect(_zoomToFit, SIGNAL(triggered()), this, SLOT(zoomToFit())); _zoomToFit->setVisible(false); - contextMenu->addAction(_zoomToFit); + addAction(_zoomToFit); - showMaximized(); + setContextMenuPolicy(Qt::ActionsContextMenu); } ImageDisplay::~ImageDisplay() @@ -321,14 +313,17 @@ AttachmentOptions::AttachmentOptions(QWidget* parent) vb->addWidget(_retrieve); layout->addRow(vb); - - showMaximized(); } AttachmentOptions::~AttachmentOptions() { - while (!_temporaries.isEmpty()) - _temporaries.takeFirst().removeFiles(); + while (!_temporaries.isEmpty()) { + QString fileName(_temporaries.takeFirst()); + if (QFile::exists(fileName)) { + QFile::remove(fileName); + } + } + } QSize AttachmentOptions::sizeHint() const @@ -433,15 +428,19 @@ void AttachmentOptions::setAttachment(const QMailMessagePart& msgPart) _view->setText(tr("View")); _view->setVisible(true); } else { +#if 0 // See if there is a viewer available for this type QMimeType mt(_part->contentType().content()); if (!mt.id().isEmpty() && !QMimeType::applicationsFor(mt).isEmpty()) { +#endif _view->setText(tr("View")); _view->setVisible(true); +#if 0 } else { _viewer->setText("<i><small><center>" + tr("No viewer available") + "</center></small></i>"); _viewer->setVisible(true); } +#endif } } @@ -462,16 +461,19 @@ void AttachmentOptions::viewAttachment() TextDisplay display(this); display.setText(_decodedText, _part->contentType().subType()); - QtopiaApplication::execDialog(&display); + display.exec(); } else { if (_decodedData.isNull()) _decodedData = _part->body().data(QMailMessageBody::Decoded); ImageDisplay display(this); display.setImage(_decodedData); - QtopiaApplication::execDialog(&display); + display.exec(); } } else { +#if 1 + qWarning() << "Cannot display message of type:" << _part->contentType().content(); +#else QMimeType mt(_part->contentType().content()); if (!mt.id().isEmpty()) { if (_decodedData.isNull()) @@ -542,13 +544,15 @@ void AttachmentOptions::viewAttachment() QMessageBox::Ok | QMessageBox::Default, QMessageBox::NoButton, QMessageBox::NoButton); mb.exec(); } +#endif } } void AttachmentOptions::saveAttachment() { - QString fileName(_part->writeBodyTo(Qtopia::documentDir())); + QString fileName(_part->writeBodyTo(QDir::currentPath())); if (!fileName.isEmpty()) { +#if 0 // Create a document object from the saved file QContent document(fileName); @@ -562,8 +566,9 @@ void AttachmentOptions::saveAttachment() document.setName(_part->displayName()); document.setRole(QContent::Document); document.commit(); +#endif - _document->setText("<i><small><center>" + tr("Added to Documents") + "</center></small></i>"); + _document->setText("<i><small><center>" + tr("Saved in:") + QDir::currentPath() + "</center></small></i>"); _document->setVisible(true); _save->setVisible(false); } else { diff --git a/src/plugins/viewers/generic/attachmentoptions.h b/src/plugins/viewers/generic/attachmentoptions.h index 46284d6e..4aa5de39 100644 --- a/src/plugins/viewers/generic/attachmentoptions.h +++ b/src/plugins/viewers/generic/attachmentoptions.h @@ -12,16 +12,12 @@ #define ATTACHMENTOPTIONS_H #include <QByteArray> -#include <QContent> #include <QDialog> #include <QList> #include <QSize> #include <QString> -#include <qtopiaglobal.h> - class QByteArray; -class QContent; class QLabel; class QMailMessagePart; class QPushButton; @@ -72,7 +68,7 @@ private: ContentClass _class; QString _decodedText; QByteArray _decodedData; - QList<QContent> _temporaries; + QStringList _temporaries; }; #endif diff --git a/src/plugins/viewers/generic/generic.pro b/src/plugins/viewers/generic/generic.pro index 0b5f27e4..e1bcaf2b 100644 --- a/src/plugins/viewers/generic/generic.pro +++ b/src/plugins/viewers/generic/generic.pro @@ -13,9 +13,9 @@ INCLUDEPATH += . ../../../libraries/qmfutil \ LIBS += -L../../../libraries/qtopiamail -lqtopiamail \ -L../../../libraries/qmfutil -lqmfutil -HEADERS += browser.h genericviewer.h +HEADERS += attachmentoptions.h browser.h genericviewer.h -SOURCES += browser.cpp genericviewer.cpp +SOURCES += attachmentoptions.cpp browser.cpp genericviewer.cpp TRANSLATIONS += libgenericviewer-ar.ts \ libgenericviewer-de.ts \ diff --git a/src/plugins/viewers/generic/genericviewer.cpp b/src/plugins/viewers/generic/genericviewer.cpp index 29b24ead..92a4025f 100644 --- a/src/plugins/viewers/generic/genericviewer.cpp +++ b/src/plugins/viewers/generic/genericviewer.cpp @@ -10,6 +10,7 @@ #include "genericviewer.h" #include "browser.h" +#include "attachmentoptions.h" #include <QAction> #include <QGridLayout> #include <QKeyEvent> @@ -45,7 +46,6 @@ GenericViewer::GenericViewer(QWidget* parent) browser->addAction(richTextModeAction); connect(richTextModeAction, SIGNAL(triggered(bool)), this, SLOT(triggered(bool))); - } GenericViewer::~GenericViewer() @@ -126,7 +126,6 @@ void GenericViewer::linkClicked(const QUrl& link) QString command = link.toString(); if (command.startsWith("attachment")) { - /* QRegExp splitter("attachment;([^;]+)(?:;(\\d*))?"); if (splitter.exactMatch(command)) { QString cmd = splitter.cap(1); @@ -143,7 +142,6 @@ void GenericViewer::linkClicked(const QUrl& link) return; } } - */ } else if (command == "download") { emit completeMessage(); } diff --git a/tests/tst_longstring/tst_longstring.pro b/tests/tst_longstring/tst_longstring.pro index 971a38f1..32b96edd 100644 --- a/tests/tst_longstring/tst_longstring.pro +++ b/tests/tst_longstring/tst_longstring.pro @@ -4,8 +4,7 @@ TARGET = tst_longstring target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_python_email/tst_python_email.pro b/tests/tst_python_email/tst_python_email.pro index aa1286e4..6636a3eb 100644 --- a/tests/tst_python_email/tst_python_email.pro +++ b/tests/tst_python_email/tst_python_email.pro @@ -10,13 +10,12 @@ testdata.files = testdata/ INSTALLS += target \ testdata -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support LIBS += -L$$QTOPIAMAIL -lqtopiamail -QMAKE_LFLAGS += -Wl,-rpath,$$BASE/src/libraries/qtopiamail +QMAKE_LFLAGS += -Wl,-rpath,../../src/libraries/qtopiamail SOURCES += tst_python_email.cpp diff --git a/tests/tst_qmailaddress/tst_qmailaddress.pro b/tests/tst_qmailaddress/tst_qmailaddress.pro index b9ff2430..b4cf0ebd 100644 --- a/tests/tst_qmailaddress/tst_qmailaddress.pro +++ b/tests/tst_qmailaddress/tst_qmailaddress.pro @@ -4,8 +4,7 @@ TARGET = tst_qmailaddress target.path+=$$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qmailcodec/tst_qmailcodec.pro b/tests/tst_qmailcodec/tst_qmailcodec.pro index 959b4f43..399c6fa6 100644 --- a/tests/tst_qmailcodec/tst_qmailcodec.pro +++ b/tests/tst_qmailcodec/tst_qmailcodec.pro @@ -4,8 +4,7 @@ TARGET = tst_qmailcodec target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qmailmessage/tst_qmailmessage.pro b/tests/tst_qmailmessage/tst_qmailmessage.pro index e1d3642f..2ff5251c 100644 --- a/tests/tst_qmailmessage/tst_qmailmessage.pro +++ b/tests/tst_qmailmessage/tst_qmailmessage.pro @@ -4,8 +4,7 @@ TARGET = tst_qmailmessage target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qmailmessagebody/tst_qmailmessagebody.pro b/tests/tst_qmailmessagebody/tst_qmailmessagebody.pro index 297f9752..612d6e12 100644 --- a/tests/tst_qmailmessagebody/tst_qmailmessagebody.pro +++ b/tests/tst_qmailmessagebody/tst_qmailmessagebody.pro @@ -4,8 +4,7 @@ TARGET = tst_qmailmessagebody target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qmailmessageheader/tst_qmailmessageheader.pro b/tests/tst_qmailmessageheader/tst_qmailmessageheader.pro index 9dde0e37..898834fc 100644 --- a/tests/tst_qmailmessageheader/tst_qmailmessageheader.pro +++ b/tests/tst_qmailmessageheader/tst_qmailmessageheader.pro @@ -4,8 +4,7 @@ TARGET = tst_qmailmessageheader target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qmailmessagepart/tst_qmailmessagepart.pro b/tests/tst_qmailmessagepart/tst_qmailmessagepart.pro index 7a747ba4..53679fc1 100644 --- a/tests/tst_qmailmessagepart/tst_qmailmessagepart.pro +++ b/tests/tst_qmailmessagepart/tst_qmailmessagepart.pro @@ -4,8 +4,7 @@ TARGET = tst_qmailmessagepart target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qmailstore/tst_qmailstore.pro b/tests/tst_qmailstore/tst_qmailstore.pro index 2c0a406d..e6cd9a76 100644 --- a/tests/tst_qmailstore/tst_qmailstore.pro +++ b/tests/tst_qmailstore/tst_qmailstore.pro @@ -5,8 +5,7 @@ TARGET = tst_qmailstore target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qmailstorekeys/tst_qmailstorekeys.pro b/tests/tst_qmailstorekeys/tst_qmailstorekeys.pro index 1889d492..a25a2209 100644 --- a/tests/tst_qmailstorekeys/tst_qmailstorekeys.pro +++ b/tests/tst_qmailstorekeys/tst_qmailstorekeys.pro @@ -5,8 +5,7 @@ TARGET = tst_qmailstorekeys target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support diff --git a/tests/tst_qprivateimplementation/tst_qprivateimplementation.pro b/tests/tst_qprivateimplementation/tst_qprivateimplementation.pro index 4057206f..c2cb212f 100644 --- a/tests/tst_qprivateimplementation/tst_qprivateimplementation.pro +++ b/tests/tst_qprivateimplementation/tst_qprivateimplementation.pro @@ -4,8 +4,7 @@ TARGET = tst_qprivateimplementation target.path += $$QMF_INSTALL_ROOT/tests INSTALLS += target -BASE=$$PWD/../.. -QTOPIAMAIL=$$BASE/src/libraries/qtopiamail +QTOPIAMAIL=../../src/libraries/qtopiamail DEPENDPATH += . INCLUDEPATH += . $$QTOPIAMAIL $$QTOPIAMAIL/support |