LeechCraft 0.6.70-17609-g3dde4097dd
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
ihavesettings.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 INTERFACES_IHAVESETTINGS_H
10#define INTERFACES_IHAVESETTINGS_H
11#include <memory>
12#include <QtPlugin>
13
14namespace LC
15{
16 namespace Util
17 {
18 class XmlSettingsDialog;
19 typedef std::shared_ptr<XmlSettingsDialog> XmlSettingsDialog_ptr;
20 }
21}
22
29class Q_DECL_EXPORT IHaveSettings
30{
31public:
42
45 virtual ~IHaveSettings () {}
46};
47
48Q_DECLARE_INTERFACE (IHaveSettings, "org.Deviant.LeechCraft.IHaveSettings/1.0")
49
50#endif
51
Interface for plugins that have user-configurable settings.
virtual LC::Util::XmlSettingsDialog_ptr GetSettingsDialog() const =0
Gets the settings dialog manager object from the plugin.
virtual ~IHaveSettings()
Virtual destructor.
std::shared_ptr< XmlSettingsDialog > XmlSettingsDialog_ptr
Definition constants.h:15