Page MenuHomePhabricator (Chris)

No OneTemporary

Authored By
Unknown
Size
3 KB
Referenced Files
None
Subscribers
None
diff --git a/tools/uploader.cpp b/tools/uploader.cpp
index 70a68d2..66bc266 100644
--- a/tools/uploader.cpp
+++ b/tools/uploader.cpp
@@ -1,92 +1,92 @@
#include "uploader.h"
#include "qtimgur.h"
#include <QDebug>
Uploader::Uploader(QObject *parent) : QObject(parent)
{
mImgur = new QtImgur("6920a141451d125b3e1357ce0e432409", this);
connect(mImgur, SIGNAL(uploaded(QString, QString)), this, SLOT(uploaded(QString, QString)));
- connect(mImgur, SIGNAL(error(QtImgur::Error)), this, SLOT(imgurError(QtImgur::Error)));
+ connect(mImgur, SIGNAL(error(QString, QtImgur::Error)), this, SLOT(imgurError(QString, QtImgur::Error)));
}
void Uploader::upload(QString fileName)
{
if (!fileName.isEmpty() && !mScreenshots.contains(fileName)) {
mImgur->upload(fileName);
- mScreenshots.insert(fileName, "");
+ mScreenshots.insert(fileName, tr("Uploading..."));
mUploading++;
}
}
void Uploader::uploaded(QString file, QString url)
{
mScreenshots[file] = url;
mUploading--;
emit done(file, url);
}
int Uploader::uploading()
{
return mUploading;
}
-void Uploader::imgurError(QtImgur::Error e)
+void Uploader::imgurError(QString file, QtImgur::Error e)
{
- //TODO
mUploading--;
+ mScreenshots.remove(file);
if (e == mLastError) {
// Fail silently? Really? FINE
return;
}
QString errorString;
switch (e) {
case QtImgur::ErrorFile:
errorString = tr("Screenshot file not found.");
break;
case QtImgur::ErrorNetwork:
- errorString = tr("Could not reach imgur.com");
+ errorString = tr("Could not reach imgur.com");
break;
case QtImgur::ErrorCredits:
- errorString = tr("You have exceeded your upload quota.");
+ errorString = tr("You have exceeded your upload quota.");
break;
case QtImgur::ErrorUpload:
- errorString = tr("Upload failed.");
+ errorString = tr("Upload failed.");
break;
}
mLastError = e;
emit error(errorString);
}
QString Uploader::lastUrl()
{
QMapIterator<QString, QString> i(mScreenshots);
i.toBack();
QString url;
while (i.hasPrevious()) {
url = i.previous().value();
- if (!url.isEmpty()) {
+ if (!url.contains(tr("Uploading..."))) {
return url;
}
}
return url;
}
// Singleton
Uploader* Uploader::mInstance = 0;
Uploader *Uploader::instance()
{
if (!mInstance)
mInstance = new Uploader();
return mInstance;
}
diff --git a/tools/uploader.h b/tools/uploader.h
index 97583f4..18ae643 100644
--- a/tools/uploader.h
+++ b/tools/uploader.h
@@ -1,39 +1,39 @@
#ifndef UPLOADER_H
#define UPLOADER_H
#include <QObject>
#include <QMap>
#include "qtimgur.h"
class Uploader : public QObject
{
Q_OBJECT
public:
Uploader(QObject *parent = 0);
static Uploader* instance();
QString lastUrl();
QMap<QString, QString> &screenshots() { return mScreenshots; }
public slots:
void upload(QString fileName);
void uploaded(QString fileName, QString url);
int uploading();
- void imgurError(QtImgur::Error e);
+ void imgurError(QString file, QtImgur::Error e);
signals:
void done(QString, QString);
void error(QString);
private:
static Uploader* mInstance;
// Filename, url
QMap<QString, QString> mScreenshots;
QtImgur *mImgur;
QtImgur::Error mLastError;
int mUploading;
};
#endif // UPLOADER_H

File Metadata

Mime Type
text/x-diff
Expires
Wed, Jun 17, 9:07 PM (1 w, 5 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
70967
Default Alt Text
(3 KB)

Event Timeline