aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator/templates/wizards/projects/cpplibrary/lib.h
blob: 80ef326ce546c4bff38c63b7d49e1c44dadda62a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
%{Cpp:LicenseTemplate}\
@if '%{Cpp:PragmaOnce}'
#pragma once
@else
#ifndef %{GUARD}
#define %{GUARD}
@endif
@if %{IsShared}

#include "%{GlobalHdrFileName}"
@elsif %{IsQtPlugin}

#include <%{BaseClassName}>
@endif
%{JS: Cpp.openNamespaces('%{Class}')}\

@if %{IsShared}
class %{LibraryExport} %{CN}
{

public:
    %{CN}();
};
@elsif %{IsStatic}
class %{CN}
{

public:
    %{CN}();
};
@else
class %{CN} : public %{BaseClassName}
{
    Q_OBJECT
    Q_PLUGIN_METADATA(IID "org.qt-project.Qt.%{PluginInterface}" FILE "%{PluginJsonFile}")

public:
    explicit %{CN}(QObject *parent = nullptr);

private:
%{JS: '%{PluginMethods}'.split('|').map(s => '    ' + s + ' override;').join('\n')}
};
@endif
%{JS: Cpp.closeNamespaces('%{Class}')}\
@if ! '%{Cpp:PragmaOnce}'

#endif // %{GUARD}
@endif