LeechCraft Azoth 0.6.70-14794-g33744ae6ce
Modular multiprotocol IM plugin for LeechCraft
Loading...
Searching...
No Matches
isupportimport.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#ifndef PLUGINS_AZOTH_INTERFACES_ISUPPORTIMPORT_H
10#define PLUGINS_AZOTH_INTERFACES_ISUPPORTIMPORT_H
11#include <QMetaType>
12#include <QVariantMap>
13
14namespace LC
15{
16namespace Azoth
17{
26 {
27 public:
29
39 virtual QString GetImportProtocolID () const = 0;
40
54 virtual bool ImportAccount (const QVariantMap& data) = 0;
55
69 virtual QString GetEntryID (const QString& hrID, QObject *account) = 0;
70 };
71}
72}
73
74Q_DECLARE_INTERFACE (LC::Azoth::ISupportImport,
75 "org.Deviant.LeechCraft.Azoth.ISupportImport/1.0")
76
77#endif
Interface for protocols supporting import.
virtual QString GetEntryID(const QString &hrID, QObject *account)=0
Returns the unique entry ID for given entry and account.
virtual QString GetImportProtocolID() const =0
Returns the "import-style" ID of the protocol.
virtual bool ImportAccount(const QVariantMap &data)=0
Should try to import the account from data.