diff --git a/plugins/advancedviewplugin/advancedviewplugin.cpp b/plugins/advancedviewplugin/advancedviewplugin.cpp new file mode 100644 index 0000000..d84bae7 --- /dev/null +++ b/plugins/advancedviewplugin/advancedviewplugin.cpp @@ -0,0 +1,18 @@ +#include "advancedviewplugin.h" + +#include + +#include "mainwindow.h" +#include "stripswidget.h" +#include "advancedviewwidget.h" + +AdvancedViewPlugin::AdvancedViewPlugin(QObject *parent) : + ZeiterfassungPlugin(parent) +{ +} + +void AdvancedViewPlugin::attachTo(MainWindow &mainWindow) +{ + for(auto irgendwas : mainWindow.stripsWidgets()) + irgendwas->headerLayout()->addWidget(new AdvancedViewWidget(mainWindow)); +} diff --git a/plugins/advancedviewplugin/advancedviewplugin.h b/plugins/advancedviewplugin/advancedviewplugin.h new file mode 100644 index 0000000..e4a08e8 --- /dev/null +++ b/plugins/advancedviewplugin/advancedviewplugin.h @@ -0,0 +1,23 @@ +#ifndef ADVANCEDVIEWPLUGIN_H +#define ADVANCEDVIEWPLUGIN_H + +#include + +#include "zeiterfassungplugin.h" + +class MainWindow; + +class Q_DECL_EXPORT AdvancedViewPlugin : public ZeiterfassungPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "dbsoftware.zeiterfassung.plugin/1.0" FILE "advancedviewplugin.json") + Q_INTERFACES(ZeiterfassungPlugin) + +public: + explicit AdvancedViewPlugin(QObject *parent = Q_NULLPTR); + + // ZeiterfassungPlugin interface + void attachTo(MainWindow &mainWindow); +}; + +#endif // ADVANCEDVIEWPLUGIN_H diff --git a/plugins/advancedviewplugin/advancedviewplugin.json b/plugins/advancedviewplugin/advancedviewplugin.json new file mode 100644 index 0000000..e69de29 diff --git a/plugins/advancedviewplugin/advancedviewplugin.pro b/plugins/advancedviewplugin/advancedviewplugin.pro new file mode 100644 index 0000000..a1a3e27 --- /dev/null +++ b/plugins/advancedviewplugin/advancedviewplugin.pro @@ -0,0 +1,23 @@ +QT += core network gui widgets + +TARGET = advancedviewplugin +TEMPLATE = lib + +CONFIG += shared c++14 + +DESTDIR = $${OUT_PWD}/../../bin/plugins/zeiterfassung + +LIBS += -L$$OUT_PWD/../../lib -lzeiterfassunglib + +INCLUDEPATH += $$PWD/../../zeiterfassunglib +DEPENDPATH += $$PWD/../../zeiterfassunglib + +DEFINES += QT_DEPRECATED_WARNINGS QT_DISABLE_DEPRECATED_BEFORE=0x060000 QT_MESSAGELOGCONTEXT + +HEADERS += advancedviewplugin.h \ + advancedviewwidget.h + +SOURCES += advancedviewplugin.cpp \ + advancedviewwidget.cpp + +OTHER_FILES += advancedviewplugin.json diff --git a/plugins/advancedviewplugin/advancedviewwidget.cpp b/plugins/advancedviewplugin/advancedviewwidget.cpp new file mode 100644 index 0000000..124115d --- /dev/null +++ b/plugins/advancedviewplugin/advancedviewwidget.cpp @@ -0,0 +1,10 @@ +#include "advancedviewwidget.h" + +#include "mainwindow.h" + +AdvancedViewWidget::AdvancedViewWidget(MainWindow &mainWindow) : + QToolButton(&mainWindow), + m_mainWindow(mainWindow) +{ + setText(tr("X")); +} diff --git a/plugins/advancedviewplugin/advancedviewwidget.h b/plugins/advancedviewplugin/advancedviewwidget.h new file mode 100644 index 0000000..d6397b6 --- /dev/null +++ b/plugins/advancedviewplugin/advancedviewwidget.h @@ -0,0 +1,19 @@ +#ifndef ADVANCEDVIEWWIDGET_H +#define ADVANCEDVIEWWIDGET_H + +#include + +class MainWindow; + +class AdvancedViewWidget : public QToolButton +{ + Q_OBJECT + +public: + explicit AdvancedViewWidget(MainWindow &mainWindow); + +private: + MainWindow &m_mainWindow; +}; + +#endif // ADVANCEDVIEWWIDGET_H diff --git a/plugins/lunchmealplugin/lunchmealplugin.h b/plugins/lunchmealplugin/lunchmealplugin.h index e73e062..c5626a8 100644 --- a/plugins/lunchmealplugin/lunchmealplugin.h +++ b/plugins/lunchmealplugin/lunchmealplugin.h @@ -12,7 +12,7 @@ class Q_DECL_EXPORT LunchMealPlugin : public ZeiterfassungPlugin Q_INTERFACES(ZeiterfassungPlugin) public: - explicit LunchMealPlugin(QObject *parent = 0); + explicit LunchMealPlugin(QObject *parent = Q_NULLPTR); // ZeiterfassungPlugin interface }; diff --git a/plugins/plugins.pro b/plugins/plugins.pro index 5335e51..e062acc 100644 --- a/plugins/plugins.pro +++ b/plugins/plugins.pro @@ -1,5 +1,6 @@ TEMPLATE = subdirs -SUBDIRS += lunchmealplugin \ +SUBDIRS += advancedviewplugin \ + lunchmealplugin \ presenceplugin \ weatherplugin diff --git a/plugins/presenceplugin/presenceplugin.h b/plugins/presenceplugin/presenceplugin.h index 5ccdc86..362c0f1 100644 --- a/plugins/presenceplugin/presenceplugin.h +++ b/plugins/presenceplugin/presenceplugin.h @@ -14,7 +14,7 @@ class Q_DECL_EXPORT PresencePlugin : public ZeiterfassungPlugin Q_INTERFACES(ZeiterfassungPlugin) public: - explicit PresencePlugin(QObject *parent = 0); + explicit PresencePlugin(QObject *parent = Q_NULLPTR); // ZeiterfassungPlugin interface void attachTo(MainWindow &mainWindow); diff --git a/plugins/weatherplugin/weatherplugin.h b/plugins/weatherplugin/weatherplugin.h index 9db873d..f8abc9b 100644 --- a/plugins/weatherplugin/weatherplugin.h +++ b/plugins/weatherplugin/weatherplugin.h @@ -12,7 +12,7 @@ class Q_DECL_EXPORT WeatherPlugin : public ZeiterfassungPlugin Q_INTERFACES(ZeiterfassungPlugin) public: - explicit WeatherPlugin(QObject *parent = 0); + explicit WeatherPlugin(QObject *parent = Q_NULLPTR); // ZeiterfassungPlugin interface }; diff --git a/zeiterfassunglib/zeiterfassungplugin.h b/zeiterfassunglib/zeiterfassungplugin.h index 0f53d31..1b170c0 100644 --- a/zeiterfassunglib/zeiterfassungplugin.h +++ b/zeiterfassunglib/zeiterfassungplugin.h @@ -13,7 +13,7 @@ class ZEITERFASSUNGLIBSHARED_EXPORT ZeiterfassungPlugin : public QObject Q_OBJECT public: - explicit ZeiterfassungPlugin(QObject *parent = 0); + explicit ZeiterfassungPlugin(QObject *parent = Q_NULLPTR); virtual void attachTo(MainWindow &mainWindow) { Q_UNUSED(mainWindow) } };