QtDropbox

Dropbox API for Qt


Project maintained by lycis Hosted on GitHub Pages — Theme by mattgraham

Want to access a Dropbox from 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!

Requirements

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.

Including QtDropbox into your project

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.

As dynamic library

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.

Use the source!

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.

Current status

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:

Features

General

File Access

Postponed to next version:

Different Qt versions

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.

Checking out legacy versions

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!

Support for legacy versions

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.

Support us!

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:

  1. (Prefered) Contact me by mailing to 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.
  2. Open a new issue and add a patch if you have a solution for the bug.

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!