aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/plugins/builtinplugin.cpp
blob: 29397e0b3293a22932814f3b468f7cfd6ac9e220 (plain) (blame)
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
49
50
51
52
53
54
55
56
57
58
#include "builtinplugin.h"
#include "services/pluginmanager.h"
#include <QMetaClassInfo>

QString BuiltInPlugin::getName() const
{
    return metaObject()->className();
}

QString BuiltInPlugin::getTitle() const
{
    const char *title = getMetaInfo("title");
    if (!title)
        return getName();

    return title;
}

QString BuiltInPlugin::getDescription() const
{
    return getMetaInfo("description");
}

int BuiltInPlugin::getVersion() const
{
    return QString(getMetaInfo("version")).toInt();
}

QString BuiltInPlugin::getPrintableVersion() const
{
    return PLUGINS->toPrintableVersion(getVersion());
}

QString BuiltInPlugin::getAuthor() const
{
    return getMetaInfo("author");
}

bool BuiltInPlugin::init()
{
    return true;
}

void BuiltInPlugin::deinit()
{
}

const char* BuiltInPlugin::getMetaInfo(const QString& key) const
{
    for (int i = 0; i < metaObject()->classInfoCount(); i++)
    {
        if (key != metaObject()->classInfo(i).name())
            continue;

        return metaObject()->classInfo(i).value();
    }
    return nullptr;
}