LeechCraft  0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
iwebfilestorage.h
Go to the documentation of this file.
1 /**********************************************************************
2  * LeechCraft - modular cross-platform feature rich internet client.
3  * Copyright (C) 2006-2014 Georg Rudoy
4  *
5  * Distributed under the Boost Software License, Version 1.0.
6  * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7  **********************************************************************/
8 
9 #pragma once
10 
11 #include <QStringList>
12 #include <QtPlugin>
13 
14 class QUrl;
15 
31 class Q_DECL_EXPORT IWebFileStorage
32 {
33 public:
34  virtual ~IWebFileStorage () {}
35 
40  virtual QStringList GetServiceVariants () const = 0;
41 
60  virtual void UploadFile (const QString& filename,
61  const QString& service = QString ()) = 0;
62 protected:
80  virtual void fileUploaded (const QString& filename, const QUrl& fileUrl) = 0;
81 };
82 
83 Q_DECLARE_INTERFACE (IWebFileStorage, "org.Deviant.LeechCraft.IWebFileStorage/1.0")
IWebFileStorage
Interface for plugins supporting storing files on the web.
Definition: iwebfilestorage.h:31
IWebFileStorage::~IWebFileStorage
virtual ~IWebFileStorage()
Definition: iwebfilestorage.h:34