LeechCraft Azoth 0.6.70-16373-g319c272718
Modular multiprotocol IM plugin for LeechCraft
Loading...
Searching...
No Matches
ihavesearch.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_IHAVESEARCH_H
10#define PLUGINS_AZOTH_INTERFACES_IHAVESEARCH_H
11#include <QMetaType>
12
13class QAbstractItemModel;
14class QModelIndex;
15class QString;
16
17namespace LC
18{
19namespace Azoth
20{
37 {
38 public:
39 virtual ~ISearchSession () {}
40
58 virtual void RestartSearch (QString server) = 0;
59
69 virtual QAbstractItemModel* GetRepresentationModel () const = 0;
70 };
71
83 {
84 public:
85 virtual ~IHaveSearch () {}
86
99 virtual QObject* CreateSearchSession () = 0;
100
109 virtual QString GetDefaultSearchServer () const = 0;
110 };
111}
112}
113
114Q_DECLARE_INTERFACE (LC::Azoth::ISearchSession,
115 "org.Deviant.LeechCraft.Azoth.ISearchSession/1.0")
116Q_DECLARE_INTERFACE (LC::Azoth::IHaveSearch,
117 "org.Deviant.LeechCraft.Azoth.IHaveSearch/1.0")
118
119#endif
Interface for accounts supporting IM search.
Definition ihavesearch.h:83
virtual QObject * CreateSearchSession()=0
Creates a new search session.
virtual QString GetDefaultSearchServer() const =0
Returns a default search server for this account.
Interface for search sessions.
Definition ihavesearch.h:37
virtual QAbstractItemModel * GetRepresentationModel() const =0
Returns the model with the results.
virtual void RestartSearch(QString server)=0
Sets the search server used and restarts the search.