dtkWidgetsParameterFactory.h 1.79 KB
Newer Older
KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
1 2 3
// Version: $Id$
//
//
4

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
5 6 7
// Commentary:
//
//
8

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
9 10 11
// Change Log:
//
//
12

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
13
// Code:
14

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
15
#pragma once
16

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
17
#include<dtkWidgetsExport.h>
18

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
19
#include <dtkCore>
20

21
#include "dtkWidgetsParameter.h"
22

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
23 24 25
// ///////////////////////////////////////////////////////////////////
// dtkWidgetsParameterPlugin declaration
// ///////////////////////////////////////////////////////////////////
26

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
27
class DTKWIDGETS_EXPORT dtkWidgetsParameterPlugin : public dtkCorePluginBase {};
28

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
29 30
Q_DECLARE_METATYPE(dtkWidgetsParameterPlugin *);
Q_DECLARE_INTERFACE(dtkWidgetsParameterPlugin, DTK_DECLARE_PLUGIN_INTERFACE(dtkWidgetsParameterPlugin));
31

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
32 33 34
// ///////////////////////////////////////////////////////////////////
// dtkWidgetsParameterPluginManager declaration
// ///////////////////////////////////////////////////////////////////
35

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
36
class DTKWIDGETS_EXPORT dtkWidgetsParameterPluginManager : public dtkCorePluginManager<dtkWidgetsParameterPlugin> {};
37

KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
38 39 40
// ///////////////////////////////////////////////////////////////////
// dtkWidgetsParameterFactory declaration
// ///////////////////////////////////////////////////////////////////
41

42
class DTKWIDGETS_EXPORT dtkWidgetsParameterFactory : public dtkCorePluginFactory<dtkWidgetsParameter>
KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
43 44
{
public:
45 46
    dtkWidgetsParameter *create(const QString& key);
    dtkWidgetsParameter *create(dtkCoreAbstractParameter *parameter, const QString& key);
47 48
};

49
// /////////////////////////////////////////////////////////////////
KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
50
// Register to dtkWidgets layer declaration
51 52 53 54 55
// /////////////////////////////////////////////////////////////////

namespace dtk {
    namespace widgets {
        namespace parameters {
KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
56 57
            DTKWIDGETS_EXPORT dtkWidgetsParameterFactory& pluginFactory(void);
            DTKWIDGETS_EXPORT dtkWidgetsParameterPluginManager& pluginManager(void);
58
        }
59 60
    }
}
KLOCZKO Thibaud's avatar
KLOCZKO Thibaud committed
61 62 63

//
// dtkWidgetsParameterFactory.h ends here