summaryrefslogtreecommitdiffhomepage
path: root/api/plugin-api.cpp
blob: 5a485d622ac159ad872395f95f3bfe30fe9fb710 (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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include "plugin-api.hpp"

#include <utility>

using namespace plugin_api::detail;

// these exist so that vtable is emitted in a single compilation unit, not all of them.

Metadata_::~Metadata_() = default;
IFilter::~IFilter() = default;
IProtocol::~IProtocol() = default;
ITracker::~ITracker() = default;
IExtension::~IExtension() = default;

void ITrackerDialog::register_tracker(ITracker*) {}
void ITrackerDialog::unregister_tracker() {}

BaseDialog::BaseDialog() = default;

void BaseDialog::closeEvent(QCloseEvent*)
{
    if (isVisible())
    {
        hide();
        emit closing();
    }
}

bool ITracker::center() { return false; }

module_status ITracker::status_ok()
{
    return module_status();
}

module_status ITracker::error(const QString& error)
{
    return module_status(error);
}

Metadata_::Metadata_() = default;
IFilter::IFilter() = default;
IFilterDialog::IFilterDialog() = default;
IProtocol::IProtocol() = default;
IProtocolDialog::IProtocolDialog() = default;
ITracker::ITracker() = default;
ITrackerDialog::ITrackerDialog() = default;

void BaseDialog::done(int)
{
    if (isVisible())
    {
        hide();
        close();
    }
}

IExtensionDialog::~IExtensionDialog() = default;

bool module_status::is_ok() const
{
    return error.isNull();
}

module_status::module_status(QString error) : error(std::move(error)) {}

module_status module_status_mixin::status_ok() { return {}; }

module_status module_status_mixin::error(const QString& error)
{
    return module_status(error.isEmpty() ? "Unknown error" : error);
}


Metadata::Metadata() = default;
Metadata::~Metadata() = default;