Reports plugin #34
@@ -7,7 +7,7 @@ BookingsModel::BookingsModel(StripsWidget &stripsWidget, QObject *parent) :
|
||||
m_stripsWidget(stripsWidget)
|
||||
{
|
||||
connect(&stripsWidget, &StripsWidget::bookingsChanged, this, &BookingsModel::bookingsChanged);
|
||||
connect(&stripsWidget, &StripsWidget::refreshingBookingsChanged, [=](bool refreshing){ enabledChanged(!refreshing); });
|
||||
connect(&stripsWidget, &StripsWidget::refreshingBookingsChanged, this, &BookingsModel::refreshingChanged);
|
||||
}
|
||||
|
||||
StripsWidget &BookingsModel::stripsWidget() const
|
||||
@@ -86,3 +86,8 @@ void BookingsModel::bookingsChanged()
|
||||
beginResetModel();
|
||||
endResetModel();
|
||||
}
|
||||
|
||||
void BookingsModel::refreshingChanged(bool refreshing)
|
||||
{
|
||||
Q_EMIT enabledChanged(!refreshing);
|
||||
}
|
||||
|
@@ -32,6 +32,7 @@ Q_SIGNALS:
|
||||
|
||||
private Q_SLOTS:
|
||||
void bookingsChanged();
|
||||
void refreshingChanged(bool refreshing);
|
||||
|
||||
private:
|
||||
StripsWidget &m_stripsWidget;
|
||||
|
@@ -7,7 +7,7 @@ TimeAssignmentsModel::TimeAssignmentsModel(StripsWidget &stripsWidget, QObject *
|
||||
m_stripsWidget(stripsWidget)
|
||||
{
|
||||
connect(&stripsWidget, &StripsWidget::timeAssignmentsChanged, this, &TimeAssignmentsModel::timeAssignmentsChanged);
|
||||
connect(&stripsWidget, &StripsWidget::refreshingTimeAssignmentsChanged, [=](bool refreshing){ enabledChanged(!refreshing); });
|
||||
connect(&stripsWidget, &StripsWidget::refreshingTimeAssignmentsChanged, this, &TimeAssignmentsModel::refreshingChanged);
|
||||
}
|
||||
|
||||
StripsWidget &TimeAssignmentsModel::stripsWidget() const
|
||||
@@ -90,3 +90,8 @@ void TimeAssignmentsModel::timeAssignmentsChanged()
|
||||
beginResetModel();
|
||||
endResetModel();
|
||||
}
|
||||
|
||||
void TimeAssignmentsModel::refreshingChanged(bool refreshing)
|
||||
{
|
||||
Q_EMIT enabledChanged(!refreshing);
|
||||
}
|
||||
|
@@ -27,22 +27,8 @@ UpdaterDialog::UpdaterDialog(MainWindow &mainWindow) :
|
||||
|
||||
setAttribute(Qt::WA_DeleteOnClose);
|
||||
|
||||
connect(ui->buttonBox, &QDialogButtonBox::accepted, this, [=]() {
|
||||
if(ui->checkBoxDontShow->isChecked())
|
||||
m_mainWindow.settings().setValue(QStringLiteral("UpdaterPlugin/lastUpdateCheck"), QDate::currentDate());
|
||||
|
||||
if(!QDesktopServices::openUrl(m_url))
|
||||
QMessageBox::warning(this, tr("Could not open default webbrowser!"), tr("Could not open default webbrowser!"));
|
||||
|
||||
accept();
|
||||
});
|
||||
|
||||
connect(ui->buttonBox, &QDialogButtonBox::rejected, this, [=](){
|
||||
if(ui->checkBoxDontShow->isChecked())
|
||||
m_mainWindow.settings().setValue(QStringLiteral("UpdaterPlugin/lastUpdateCheck"), QDate::currentDate());
|
||||
|
||||
reject();
|
||||
});
|
||||
connect(ui->buttonBox, &QDialogButtonBox::accepted, this, &UpdaterDialog::acceptedSlot);
|
||||
connect(ui->buttonBox, &QDialogButtonBox::rejected, this, &UpdaterDialog::rejectedSlot);
|
||||
|
||||
auto url = m_mainWindow.settings().value(QStringLiteral("UpdaterPlugin/url"),
|
||||
QUrl(QStringLiteral("https://api.github.com/repos/0xFEEDC0DE64/QtZeiterfassung/releases"))).toUrl();
|
||||
@@ -55,6 +41,25 @@ UpdaterDialog::~UpdaterDialog()
|
||||
delete ui;
|
||||
}
|
||||
|
||||
void UpdaterDialog::acceptedSlot()
|
||||
{
|
||||
if(ui->checkBoxDontShow->isChecked())
|
||||
m_mainWindow.settings().setValue(QStringLiteral("UpdaterPlugin/lastUpdateCheck"), QDate::currentDate());
|
||||
|
||||
if(!QDesktopServices::openUrl(m_url))
|
||||
QMessageBox::warning(this, tr("Could not open default webbrowser!"), tr("Could not open default webbrowser!"));
|
||||
|
||||
accept();
|
||||
}
|
||||
|
||||
void UpdaterDialog::rejectedSlot()
|
||||
{
|
||||
if(ui->checkBoxDontShow->isChecked())
|
||||
m_mainWindow.settings().setValue(QStringLiteral("UpdaterPlugin/lastUpdateCheck"), QDate::currentDate());
|
||||
|
||||
reject();
|
||||
}
|
||||
|
||||
void UpdaterDialog::finished()
|
||||
{
|
||||
if(m_reply->error() != QNetworkReply::NoError)
|
||||
|
@@ -20,6 +20,8 @@ public:
|
||||
~UpdaterDialog();
|
||||
|
||||
private Q_SLOTS:
|
||||
void acceptedSlot();
|
||||
void rejectedSlot();
|
||||
void finished();
|
||||
|
||||
private:
|
||||
|
@@ -16,8 +16,6 @@ UpdaterPlugin::UpdaterPlugin(QObject *parent) :
|
||||
|
||||
void UpdaterPlugin::attachTo(MainWindow &mainWindow)
|
||||
{
|
||||
qDebug() << "called";
|
||||
|
||||
if(mainWindow.settings().value(QStringLiteral("UpdaterPlugin/lastUpdateCheck")).toDate().isNull() ||
|
||||
mainWindow.settings().value(QStringLiteral("UpdaterPlugin/lastUpdateCheck")).toDate() < QDate::currentDate())
|
||||
new UpdaterDialog(mainWindow);
|
||||
|
@@ -19,8 +19,6 @@ namespace Ui { class MainWindow; }
|
||||
class ZeiterfassungSettings;
|
||||
class StripFactory;
|
||||
class StripsWidget;
|
||||
class BookingsModel;
|
||||
class TimeAssignmentsModel;
|
||||
|
||||
class ZEITERFASSUNGLIBSHARED_EXPORT MainWindow : public QMainWindow
|
||||
{
|
||||
@@ -70,9 +68,6 @@ private:
|
||||
std::unique_ptr<GetProjectsReply> m_getProjectsReply;
|
||||
std::unique_ptr<GetAuswertungReply> m_getAuswertungReply;
|
||||
|
||||
BookingsModel *m_bookingsModel;
|
||||
TimeAssignmentsModel *m_timeAssignmentsModel;
|
||||
|
||||
QMap<QString, QString> m_projects;
|
||||
|
||||
QDate m_auswertungDate;
|
||||
|
Reference in New Issue
Block a user