mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-28 13:10:19 +00:00
287977b04c
Since we can't forbit the plugins to upload more than just the current dive, it's better to change the name of the call. also add a stub to make sure it's calling the right method inside the plugin. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
72 lines
No EOL
2.1 KiB
C++
72 lines
No EOL
2.1 KiB
C++
#ifndef ISOCIALNETWORKINTEGRATION_H
|
|
#define ISOCIALNETWORKINTEGRATION_H
|
|
|
|
#include <QtPlugin>
|
|
|
|
/* This Interface represents a Plugin for Social Network integration,
|
|
* with it you may be able to create plugins for facebook, instagram,
|
|
* twitpic, google plus and any other thing you may imagine.
|
|
*
|
|
* We bundle facebook integration as an example.
|
|
*/
|
|
|
|
class ISocialNetworkIntegration {
|
|
public:
|
|
/*!
|
|
* @name socialNetworkName
|
|
* @brief The name of this social network
|
|
* @return The name of this social network
|
|
*
|
|
* The name of this social network will be used to populate the Menu to toggle states
|
|
* between connected/disconnected, and also submit stuff to it.
|
|
*/
|
|
virtual QString socialNetworkName() const = 0;
|
|
|
|
/*!
|
|
* @name socialNetworkIcon
|
|
* @brief The icon of this social network
|
|
* @return The icon of this social network
|
|
*
|
|
* The icon of this social network will be used to populate the menu, and can also be
|
|
* used on a toolbar if requested.
|
|
*/
|
|
virtual QString socialNetworkIcon() const = 0;
|
|
|
|
/*!
|
|
* @name isConnected
|
|
* @brief returns true if connected to this social network, false otherwise
|
|
* @return true if connected to this social network, false otherwise
|
|
*/
|
|
virtual bool isConnected() = 0;
|
|
|
|
/*!
|
|
* @name requestLogin
|
|
* @brief try to login on this social network.
|
|
*
|
|
* Try to login on this social network. All widget implementation that
|
|
* manages login should be done inside this function.
|
|
*/
|
|
virtual void requestLogin() = 0;
|
|
|
|
/*!
|
|
* @name requestLogoff
|
|
* @brief tries to logoff from this social network
|
|
*
|
|
* Try to logoff from this social network.
|
|
*/
|
|
virtual void requestLogoff() = 0;
|
|
|
|
/*!
|
|
* @name uploadCurrentDive
|
|
* @brief send the current dive info to the Social Network
|
|
*
|
|
* Should format all the options and pixmaps from the current dive
|
|
* to update to the social network. All widget stuff related to sendint
|
|
* dive information should be executed inside this function.
|
|
*/
|
|
virtual void requestUpload() = 0;
|
|
};
|
|
|
|
Q_DECLARE_INTERFACE(ISocialNetworkIntegration, "org.subsurface.ISocialNetworkIntegration.v1")
|
|
Q_DECLARE_METATYPE(ISocialNetworkIntegration*);
|
|
#endif |