mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 14:25:27 +00:00
Add an interface for Social Network Interfaces
The Social Network plugins need an interface file to describe the expected behavior of it, this little header file will serve for that. Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
c1b2907071
commit
6930c689b7
1 changed files with 67 additions and 0 deletions
67
subsurface-core/isocialnetworkintegration.h
Normal file
67
subsurface-core/isocialnetworkintegration.h
Normal file
|
@ -0,0 +1,67 @@
|
|||
#ifndef ISOCIALNETWORKINTEGRATION_H
|
||||
#define ISOCIALNETWORKINTEGRATION_H
|
||||
|
||||
/* 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 {
|
||||
/*!
|
||||
* @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.
|
||||
*/
|
||||
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.
|
||||
*/
|
||||
QIcon 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
|
||||
*/
|
||||
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.
|
||||
*/
|
||||
void requestLogin() = 0;
|
||||
|
||||
/*!
|
||||
* @name requestLogoff
|
||||
* @brief tries to logoff from this social network
|
||||
*
|
||||
* Try to logoff from this social network.
|
||||
*/
|
||||
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.
|
||||
*/
|
||||
void uploadCurrentDive() = 0;
|
||||
};
|
||||
|
||||
#endif
|
Loading…
Add table
Reference in a new issue