diff --git a/plugins/lunchmealplugin/lunchmealplugin.cpp b/plugins/lunchmealplugin/lunchmealplugin.cpp index b07fbeb..3e8e278 100644 --- a/plugins/lunchmealplugin/lunchmealplugin.cpp +++ b/plugins/lunchmealplugin/lunchmealplugin.cpp @@ -1,6 +1,14 @@ #include "lunchmealplugin.h" -LunchMealPlugin::LunchMealPlugin(QObject *parent) : QObject(parent) +#include + +LunchMealPlugin::LunchMealPlugin(QObject *parent) : + ZeiterfassungPlugin(parent) { } + +void LunchMealPlugin::initialize() +{ + qDebug() << "called"; +} diff --git a/plugins/lunchmealplugin/lunchmealplugin.h b/plugins/lunchmealplugin/lunchmealplugin.h index 3fe3055..9befa20 100644 --- a/plugins/lunchmealplugin/lunchmealplugin.h +++ b/plugins/lunchmealplugin/lunchmealplugin.h @@ -3,15 +3,19 @@ #include -class Q_DECL_EXPORT LunchMealPlugin : public QObject +#include "zeiterfassungplugin.h" + +class Q_DECL_EXPORT LunchMealPlugin : public ZeiterfassungPlugin { Q_OBJECT + Q_PLUGIN_METADATA(IID "dbsoftware.zeiterfassung.plugin/1.0" FILE "lunchmealplugin.json") + Q_INTERFACES(ZeiterfassungPlugin) + public: explicit LunchMealPlugin(QObject *parent = 0); -signals: - -public slots: + // ZeiterfassungPlugin interface + void initialize() Q_DECL_OVERRIDE; }; #endif // LUNCHMEALPLUGIN_H diff --git a/plugins/lunchmealplugin/lunchmealplugin.json b/plugins/lunchmealplugin/lunchmealplugin.json new file mode 100644 index 0000000..e69de29 diff --git a/plugins/lunchmealplugin/lunchmealplugin.pro b/plugins/lunchmealplugin/lunchmealplugin.pro index 306a80a..d0dd373 100644 --- a/plugins/lunchmealplugin/lunchmealplugin.pro +++ b/plugins/lunchmealplugin/lunchmealplugin.pro @@ -9,13 +9,13 @@ DESTDIR = $${OUT_PWD}/../../bin/plugins/zeiterfassung LIBS += -L$$OUT_PWD/../../lib -lzeiterfassunglib -INCLUDEPATH += $$PWD/../zeiterfassunglib -DEPENDPATH += $$PWD/../zeiterfassunglib +INCLUDEPATH += $$PWD/../../zeiterfassunglib +DEPENDPATH += $$PWD/../../zeiterfassunglib DEFINES += QT_DEPRECATED_WARNINGS QT_DISABLE_DEPRECATED_BEFORE=0x060000 QT_MESSAGELOGCONTEXT -HEADERS += \ - lunchmealplugin.h +HEADERS += lunchmealplugin.h -SOURCES += \ - lunchmealplugin.cpp +SOURCES += lunchmealplugin.cpp + +OTHER_FILES += lunchmealplugin.json diff --git a/plugins/presenceplugin/presenceplugin.cpp b/plugins/presenceplugin/presenceplugin.cpp index 146fd65..d0a3f5f 100644 --- a/plugins/presenceplugin/presenceplugin.cpp +++ b/plugins/presenceplugin/presenceplugin.cpp @@ -1,6 +1,14 @@ #include "presenceplugin.h" -PresencePlugin::PresencePlugin(QObject *parent) : QObject(parent) +#include + +PresencePlugin::PresencePlugin(QObject *parent) : + ZeiterfassungPlugin(parent) { } + +void PresencePlugin::initialize() +{ + qDebug() << "called"; +} diff --git a/plugins/presenceplugin/presenceplugin.h b/plugins/presenceplugin/presenceplugin.h index e8c14b2..c90e0ea 100644 --- a/plugins/presenceplugin/presenceplugin.h +++ b/plugins/presenceplugin/presenceplugin.h @@ -3,15 +3,19 @@ #include -class Q_DECL_EXPORT PresencePlugin : public QObject +#include "zeiterfassungplugin.h" + +class Q_DECL_EXPORT PresencePlugin : public ZeiterfassungPlugin { Q_OBJECT + Q_PLUGIN_METADATA(IID "dbsoftware.zeiterfassung.plugin/1.0" FILE "presenceplugin.json") + Q_INTERFACES(ZeiterfassungPlugin) + public: explicit PresencePlugin(QObject *parent = 0); -signals: - -public slots: + // ZeiterfassungPlugin interface + void initialize() Q_DECL_OVERRIDE; }; #endif // PRESENCEPLUGIN_H diff --git a/plugins/presenceplugin/presenceplugin.json b/plugins/presenceplugin/presenceplugin.json new file mode 100644 index 0000000..e69de29 diff --git a/plugins/presenceplugin/presenceplugin.pro b/plugins/presenceplugin/presenceplugin.pro index a155df1..9ad4afb 100644 --- a/plugins/presenceplugin/presenceplugin.pro +++ b/plugins/presenceplugin/presenceplugin.pro @@ -9,13 +9,13 @@ DESTDIR = $${OUT_PWD}/../../bin/plugins/zeiterfassung LIBS += -L$$OUT_PWD/../../lib -lzeiterfassunglib -INCLUDEPATH += $$PWD/../zeiterfassunglib -DEPENDPATH += $$PWD/../zeiterfassunglib +INCLUDEPATH += $$PWD/../../zeiterfassunglib +DEPENDPATH += $$PWD/../../zeiterfassunglib DEFINES += QT_DEPRECATED_WARNINGS QT_DISABLE_DEPRECATED_BEFORE=0x060000 QT_MESSAGELOGCONTEXT -HEADERS += \ - presenceplugin.h +HEADERS += presenceplugin.h -SOURCES += \ - presenceplugin.cpp +SOURCES += presenceplugin.cpp + +OTHER_FILES += presenceplugin.json diff --git a/plugins/weatherplugin/weatherplugin.cpp b/plugins/weatherplugin/weatherplugin.cpp index d9c5e95..1fdfc72 100644 --- a/plugins/weatherplugin/weatherplugin.cpp +++ b/plugins/weatherplugin/weatherplugin.cpp @@ -1,6 +1,14 @@ #include "weatherplugin.h" -WeatherPlugin::WeatherPlugin(QObject *parent) : QObject(parent) +#include + +WeatherPlugin::WeatherPlugin(QObject *parent) : + ZeiterfassungPlugin(parent) { } + +void WeatherPlugin::initialize() +{ + qDebug() << "called"; +} diff --git a/plugins/weatherplugin/weatherplugin.h b/plugins/weatherplugin/weatherplugin.h index 6420aba..933fdbd 100644 --- a/plugins/weatherplugin/weatherplugin.h +++ b/plugins/weatherplugin/weatherplugin.h @@ -3,15 +3,19 @@ #include -class Q_DECL_EXPORT WeatherPlugin : public QObject +#include "zeiterfassungplugin.h" + +class Q_DECL_EXPORT WeatherPlugin : public ZeiterfassungPlugin { Q_OBJECT + Q_PLUGIN_METADATA(IID "dbsoftware.zeiterfassung.plugin/1.0" FILE "weatherplugin.json") + Q_INTERFACES(ZeiterfassungPlugin) + public: explicit WeatherPlugin(QObject *parent = 0); -signals: - -public slots: + // ZeiterfassungPlugin interface + void initialize() Q_DECL_OVERRIDE; }; #endif // WEATHERPLUGIN_H diff --git a/plugins/weatherplugin/weatherplugin.json b/plugins/weatherplugin/weatherplugin.json new file mode 100644 index 0000000..e69de29 diff --git a/plugins/weatherplugin/weatherplugin.pro b/plugins/weatherplugin/weatherplugin.pro index 5e7e7ad..b67c6dd 100644 --- a/plugins/weatherplugin/weatherplugin.pro +++ b/plugins/weatherplugin/weatherplugin.pro @@ -9,13 +9,13 @@ DESTDIR = $${OUT_PWD}/../../bin/plugins/zeiterfassung LIBS += -L$$OUT_PWD/../../lib -lzeiterfassunglib -INCLUDEPATH += $$PWD/../zeiterfassunglib -DEPENDPATH += $$PWD/../zeiterfassunglib +INCLUDEPATH += $$PWD/../../zeiterfassunglib +DEPENDPATH += $$PWD/../../zeiterfassunglib DEFINES += QT_DEPRECATED_WARNINGS QT_DISABLE_DEPRECATED_BEFORE=0x060000 QT_MESSAGELOGCONTEXT -HEADERS += \ - weatherplugin.h +HEADERS += weatherplugin.h -SOURCES += \ - weatherplugin.cpp +SOURCES += weatherplugin.cpp + +OTHER_FILES += weatherplugin.json diff --git a/zeiterfassunglib/zeiterfassunglib.pro b/zeiterfassunglib/zeiterfassunglib.pro index 28013eb..994e871 100644 --- a/zeiterfassunglib/zeiterfassunglib.pro +++ b/zeiterfassunglib/zeiterfassunglib.pro @@ -11,6 +11,7 @@ DEFINES += QT_DEPRECATED_WARNINGS QT_DISABLE_DEPRECATED_BEFORE=0x060000 QT_MESSA DEFINES += ZEITERFASSUNGLIB_LIBRARY SOURCES += zeiterfassungapi.cpp \ + zeiterfassungplugin.cpp \ replies/createtimeassignmentreply.cpp \ replies/updatebookingreply.cpp \ replies/getbookingsreply.cpp \ @@ -30,6 +31,7 @@ SOURCES += zeiterfassungapi.cpp \ HEADERS += cpp14polyfills.h \ zeiterfassunglib_global.h \ zeiterfassungapi.h \ + zeiterfassungplugin.h \ replies/createtimeassignmentreply.h \ replies/updatebookingreply.h \ replies/getbookingsreply.h \ diff --git a/zeiterfassunglib/zeiterfassungplugin.cpp b/zeiterfassunglib/zeiterfassungplugin.cpp new file mode 100644 index 0000000..4436d93 --- /dev/null +++ b/zeiterfassunglib/zeiterfassungplugin.cpp @@ -0,0 +1,7 @@ +#include "zeiterfassungplugin.h" + +ZeiterfassungPlugin::ZeiterfassungPlugin(QObject *parent) : + QObject(parent) +{ + +} diff --git a/zeiterfassunglib/zeiterfassungplugin.h b/zeiterfassunglib/zeiterfassungplugin.h new file mode 100644 index 0000000..f437480 --- /dev/null +++ b/zeiterfassunglib/zeiterfassungplugin.h @@ -0,0 +1,18 @@ +#ifndef ZEITERFASSUNGPLUGIN_H +#define ZEITERFASSUNGPLUGIN_H + +#include + +class ZeiterfassungPlugin : public QObject +{ + Q_OBJECT + +public: + explicit ZeiterfassungPlugin(QObject *parent = 0); + + virtual void initialize() = 0; +}; + +Q_DECLARE_INTERFACE(ZeiterfassungPlugin, "dbsoftware.zeiterfassung.plugin/1.0") + +#endif // ZEITERFASSUNGPLUGIN_H