Dropbox API for Qt
QtDropbox provides an easy to use API that wraps the common REST API of Dropbox in convenient C++ classes and objects for Qt. You don't have to worry about creating and calling any HTTP requests that are used to by oAuth and the Dropbox API - all of these calls are wrapped inside the Qt C++ API of QtDropbox!
Everything you nedd to use QtDropbox is provided by Qt itself or this library - there are no additional dependencies. QtDropbox relies on the QtNetwork and QtXml modules.
It is fairly easy to use QtDropbox in your own project. There are two tested and supported ways to include QtDropbox. As the project grows other usage methods will follow.
Build the project by using qmake
and make
(or any other commands you usually use). Create a folder called qtdropbox. Copy the libqtdropbox.pri file and all header files into that folder. Now copy that folder (and the library as needed) to your project directory. In your project file (.pro) you only need to add this line:
include("qtdropbox/libqtdropbox.pri")
As the project continues some scripts and improvements will be provided to provide some degree of automation for this method.
Include the whole src
directory in your project and compile the library with your code. It is necessary to add the Qt modules network
and xml
to use this method.
QtDropbox is constantly improved and developed further to include all possible requests you could send to Dropbox and to simplify access. Below is a list of features that are currently available and tested:
Currently in progress:
Postponed to next version:
The project is targetting the most recent version of Qt and thus was ported to Qt5. In the beginning the project was developed for Qt4 and as there are some projects based on Qt4 out there the legacy version is still being supported.
The master branch always provides the most recent version of the project and at the moment this is the Qt5 version.
Legacy versions such as the one supporting Qt4 are provided in specific branches. Here is a short list which branch to check out for the specific legacy versions:
Mind that the branch with name qt5
is currently an unused stub!
The ongoing development focues on the master
branch first. This means that legacy versions
are usually not further improved with new features. Bugfixes will be provided though!
This should not indicate that legacy versions won't receive important new features but they are rather implemented on request only. If there is a specific feature that is already implemented in the most recent version but you need it in a legacy version (e.g. Qt4.x) just open an issue.
Because QtDropbox is still in development I am glad about every helping hand on the project. If you know a bit about Qt, C++ and the Dropbox REST API you can be a valuable member of this project. Because there is currently only one person maintaining QtDropbox I support two ways of contributing:
qtdropbox dot deder dot at
. Add [QtDropbox]
to the subject of your mail. It doesn't matter if you've got a question, a patch or if you want to join the project as active developer.I will look into any questions (and try to answer them in time) as well as I will look into any patches I receive.
Please read the development guidelines if you wish to contribute!