LeechCraft Azoth  0.6.70-14771-g9d21b0f8ad
Modular multiprotocol IM plugin for LeechCraft
ihavequeriableversion.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 #pragma once
10 
11 class QString;
12 class QObject;
13 
14 namespace LC
15 {
16 namespace Azoth
17 {
19  {
20  public:
21  virtual ~IPendingVersionQuery () {}
22  protected:
23  virtual void versionReceived () = 0;
24  };
25 
27  {
28  public:
29  virtual ~IHaveQueriableVersion () {}
30 
31  virtual QObject* QueryVersion (const QString& variant) = 0;
32  };
33 }
34 }
35 
36 Q_DECLARE_INTERFACE (LC::Azoth::IPendingVersionQuery,
37  "org.LeechCraft.Azoth.IPendingVersionQuery/1.0")
38 Q_DECLARE_INTERFACE (LC::Azoth::IHaveQueriableVersion,
39  "org.LeechCraft.Azoth.IHaveQueriableVersion/1.0")
virtual QObject * QueryVersion(const QString &variant)=0
virtual void versionReceived()=0