diff --git a/plugins/advancedviewplugin/advancedviewplugin.cpp b/plugins/advancedviewplugin/advancedviewplugin.cpp index d84bae7..e4124ba 100644 --- a/plugins/advancedviewplugin/advancedviewplugin.cpp +++ b/plugins/advancedviewplugin/advancedviewplugin.cpp @@ -9,10 +9,11 @@ AdvancedViewPlugin::AdvancedViewPlugin(QObject *parent) : ZeiterfassungPlugin(parent) { + Q_INIT_RESOURCE(advancedviewplugin_resources); } void AdvancedViewPlugin::attachTo(MainWindow &mainWindow) { - for(auto irgendwas : mainWindow.stripsWidgets()) - irgendwas->headerLayout()->addWidget(new AdvancedViewWidget(mainWindow)); + for(auto stripsWidget : mainWindow.stripsWidgets()) + stripsWidget->headerLayout()->addWidget(new AdvancedViewWidget(*stripsWidget)); } diff --git a/plugins/advancedviewplugin/advancedviewplugin.pro b/plugins/advancedviewplugin/advancedviewplugin.pro index a1a3e27..3a3116b 100644 --- a/plugins/advancedviewplugin/advancedviewplugin.pro +++ b/plugins/advancedviewplugin/advancedviewplugin.pro @@ -20,4 +20,11 @@ HEADERS += advancedviewplugin.h \ SOURCES += advancedviewplugin.cpp \ advancedviewwidget.cpp +FORMS += + +RESOURCES += \ + advancedviewplugin_resources.qrc + +TRANSLATIONS += + OTHER_FILES += advancedviewplugin.json diff --git a/plugins/advancedviewplugin/advancedviewplugin_resources.qrc b/plugins/advancedviewplugin/advancedviewplugin_resources.qrc new file mode 100644 index 0000000..c0cfae7 --- /dev/null +++ b/plugins/advancedviewplugin/advancedviewplugin_resources.qrc @@ -0,0 +1,5 @@ + + + images/advanced-view.png + + diff --git a/plugins/advancedviewplugin/advancedviewwidget.cpp b/plugins/advancedviewplugin/advancedviewwidget.cpp index 124115d..aab7f36 100644 --- a/plugins/advancedviewplugin/advancedviewwidget.cpp +++ b/plugins/advancedviewplugin/advancedviewwidget.cpp @@ -1,10 +1,20 @@ #include "advancedviewwidget.h" -#include "mainwindow.h" +#include -AdvancedViewWidget::AdvancedViewWidget(MainWindow &mainWindow) : - QToolButton(&mainWindow), - m_mainWindow(mainWindow) +#include "stripswidget.h" + +AdvancedViewWidget::AdvancedViewWidget(StripsWidget &stripsWidget) : + QToolButton(&stripsWidget), + m_stripsWidget(stripsWidget) { - setText(tr("X")); + setIcon(QIcon(QStringLiteral(":/zeiterfassunglib/plugins/advancedviewplugin/images/advanced-view.png"))); + setText(tr("Advanced view")); + connect(&stripsWidget, &StripsWidget::dateChanged, this, &AdvancedViewWidget::dateChanged); + dateChanged(stripsWidget.date()); +} + +void AdvancedViewWidget::dateChanged(const QDate &date) +{ + setEnabled(date.isValid()); } diff --git a/plugins/advancedviewplugin/advancedviewwidget.h b/plugins/advancedviewplugin/advancedviewwidget.h index d6397b6..b1c33bc 100644 --- a/plugins/advancedviewplugin/advancedviewwidget.h +++ b/plugins/advancedviewplugin/advancedviewwidget.h @@ -3,17 +3,20 @@ #include -class MainWindow; +class StripsWidget; class AdvancedViewWidget : public QToolButton { Q_OBJECT public: - explicit AdvancedViewWidget(MainWindow &mainWindow); + explicit AdvancedViewWidget(StripsWidget &stripsWidget); + +private Q_SLOTS: + void dateChanged(const QDate &date); private: - MainWindow &m_mainWindow; + StripsWidget &m_stripsWidget; }; #endif // ADVANCEDVIEWWIDGET_H diff --git a/plugins/advancedviewplugin/images/advanced-view.png b/plugins/advancedviewplugin/images/advanced-view.png new file mode 100644 index 0000000..7a6c875 Binary files /dev/null and b/plugins/advancedviewplugin/images/advanced-view.png differ