diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2011-05-13 07:30:07 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2011-05-13 07:30:07 +0000 |
| commit | 612a93867681c48ec9fc28c77dd8926b4e70baef (patch) | |
| tree | fee5c2479d1224600d06193db778633c10951ee8 /src/QXmppTransferManager.h | |
| parent | 89b85eda7570337e2e9611a547e28f21bba0d48a (diff) | |
| download | qxmpp-612a93867681c48ec9fc28c77dd8926b4e70baef.tar.gz | |
add some properties to QXmppTransferJob to make it easier to script
Diffstat (limited to 'src/QXmppTransferManager.h')
| -rw-r--r-- | src/QXmppTransferManager.h | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/QXmppTransferManager.h b/src/QXmppTransferManager.h index f5cf432f..45df48e9 100644 --- a/src/QXmppTransferManager.h +++ b/src/QXmppTransferManager.h @@ -25,6 +25,7 @@ #define QXMPPTRANSFERMANAGER_H #include <QDateTime> +#include <QUrl> #include <QVariant> #include "QXmppClientExtension.h" @@ -72,9 +73,18 @@ private: /// \sa QXmppTransferManager /// -class QXmppTransferJob : public QObject +class QXmppTransferJob : public QXmppLoggable { Q_OBJECT + Q_ENUMS(Direction Error Method State) + Q_PROPERTY(Direction direction READ direction CONSTANT) + Q_PROPERTY(QUrl localFileUrl READ localFileUrl WRITE setLocalFileUrl NOTIFY localFileUrlChanged) + Q_PROPERTY(QString jid READ jid CONSTANT) + Q_PROPERTY(Method method READ method CONSTANT) + Q_PROPERTY(State state READ state NOTIFY stateChanged) + + Q_PROPERTY(QString fileName READ fileName CONSTANT) + Q_PROPERTY(qint64 fileSize READ fileSize CONSTANT) public: /// This enum is used to describe the direction of a transfer job. @@ -115,9 +125,6 @@ public: ~QXmppTransferJob(); - void abort(); - void accept(QIODevice *output); - QVariant data(int role) const; void setData(int role, const QVariant &value); @@ -131,6 +138,8 @@ public: // XEP-0096 : File transfer QXmppTransferFileInfo fileInfo() const; + QUrl localFileUrl() const; + void setLocalFileUrl(const QUrl &localFileUrl); /// \cond QDateTime fileDate() const; @@ -153,12 +162,20 @@ signals: /// instead use deleteLater(). void finished(); + /// This signal is emitted when the local file URL changes. + void localFileUrlChanged(const QUrl &localFileUrl); + /// This signal is emitted to indicate the progress of this transfer job. void progress(qint64 done, qint64 total); /// This signal is emitted when the transfer job changes state. void stateChanged(QXmppTransferJob::State state); +public slots: + void abort(); + void accept(const QString &filePath); + void accept(QIODevice *output); + private slots: void disconnected(); void receiveData(); @@ -199,7 +216,7 @@ class QXmppTransferManager : public QXmppClientExtension public: QXmppTransferManager(); - QXmppTransferJob *sendFile(const QString &jid, const QString &fileName, const QString &sid = QString()); + QXmppTransferJob *sendFile(const QString &jid, const QString &filePath, const QString &sid = QString()); QXmppTransferJob *sendFile(const QString &jid, QIODevice *device, const QXmppTransferFileInfo &fileInfo, const QString &sid = QString()); QString proxy() const; |
