LeechCraft
0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
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
14
namespace
LC
15
{
16
namespace
Util
17
{
18
class
XmlSettingsDialog;
19
typedef
std::shared_ptr<XmlSettingsDialog>
XmlSettingsDialog_ptr
;
20
}
21
}
22
29
class
Q_DECL_EXPORT
IHaveSettings
30
{
31
public
:
41
virtual
LC::Util::XmlSettingsDialog_ptr
GetSettingsDialog ()
const
= 0;
42
45
virtual
~IHaveSettings
() {}
46
};
47
48
Q_DECLARE_INTERFACE (
IHaveSettings
,
"org.Deviant.LeechCraft.IHaveSettings/1.0"
)
49
50
#endif
51
IHaveSettings::~IHaveSettings
virtual ~IHaveSettings()
Virtual destructor.
Definition:
ihavesettings.h:45
LC
Definition:
constants.h:14
IHaveSettings
Interface for plugins that have user-configurable settings.
Definition:
ihavesettings.h:29
LC::Util::XmlSettingsDialog_ptr
std::shared_ptr< XmlSettingsDialog > XmlSettingsDialog_ptr
Definition:
ihavesettings.h:30
src
interfaces
ihavesettings.h
Generated by
1.8.17