Implemented box showing currently selected day

This commit is contained in:
0xFEEDC0DE64
2018-05-17 19:38:55 +02:00
parent f132f1b583
commit 660390afa9
3 changed files with 25 additions and 3 deletions

View File

@@ -355,6 +355,7 @@ void MainWindow::dateChangedSlot(const QDate &date)
{ {
if(m_currentStripWidget) if(m_currentStripWidget)
{ {
m_currentStripWidget->setHighlighted(false);
disconnect(m_currentStripWidget, &StripsWidget::minimumTimeChanged, this, &MainWindow::minimumTimeChanged); disconnect(m_currentStripWidget, &StripsWidget::minimumTimeChanged, this, &MainWindow::minimumTimeChanged);
disconnect(m_currentStripWidget, &StripsWidget::startEnabledChanged, this, &MainWindow::startEnabledChanged); disconnect(m_currentStripWidget, &StripsWidget::startEnabledChanged, this, &MainWindow::startEnabledChanged);
disconnect(m_currentStripWidget, &StripsWidget::endEnabledChanged, this, &MainWindow::endEnabledChanged); disconnect(m_currentStripWidget, &StripsWidget::endEnabledChanged, this, &MainWindow::endEnabledChanged);
@@ -362,6 +363,8 @@ void MainWindow::dateChangedSlot(const QDate &date)
m_currentStripWidget = m_stripsWidgets[i]; m_currentStripWidget = m_stripsWidgets[i];
m_currentStripWidget->setHighlighted(true);
minimumTimeChanged(); minimumTimeChanged();
startEnabledChanged(); startEnabledChanged();
endEnabledChanged(); endEnabledChanged();

View File

@@ -13,7 +13,7 @@
#include "stripfactory.h" #include "stripfactory.h"
StripsWidget::StripsWidget(MainWindow &mainWindow, QWidget *parent) : StripsWidget::StripsWidget(MainWindow &mainWindow, QWidget *parent) :
QWidget(parent), QFrame(parent),
m_mainWindow(mainWindow), m_mainWindow(mainWindow),
m_refreshing(false), m_refreshing(false),
m_refreshingBookings(false), m_refreshingBookings(false),
@@ -84,6 +84,20 @@ void StripsWidget::setDate(const QDate &date)
} }
} }
bool StripsWidget::highlighted() const
{
return m_highlighted;
}
void StripsWidget::setHighlighted(bool highlighted)
{
if(m_highlighted != highlighted)
{
Q_EMIT highlightedChanged(m_highlighted = highlighted);
setFrameStyle(highlighted ? QFrame::Box : QFrame::NoFrame);
}
}
const QVector<GetBookingsReply::Booking> &StripsWidget::bookings() const const QVector<GetBookingsReply::Booking> &StripsWidget::bookings() const
{ {
return m_bookings; return m_bookings;

View File

@@ -2,7 +2,7 @@
#include <memory> #include <memory>
#include <QWidget> #include <QFrame>
#include <QTime> #include <QTime>
#include "zeiterfassungguilib_global.h" #include "zeiterfassungguilib_global.h"
@@ -15,7 +15,7 @@ template <typename T> class QVector;
class MainWindow; class MainWindow;
class ZEITERFASSUNGGUILIBSHARED_EXPORT StripsWidget : public QWidget class ZEITERFASSUNGGUILIBSHARED_EXPORT StripsWidget : public QFrame
{ {
Q_OBJECT Q_OBJECT
@@ -32,6 +32,9 @@ public:
const QDate &date() const; const QDate &date() const;
void setDate(const QDate &date); void setDate(const QDate &date);
bool highlighted() const;
void setHighlighted(bool highlighted);
const QVector<GetBookingsReply::Booking> &bookings() const; const QVector<GetBookingsReply::Booking> &bookings() const;
const QVector<GetTimeAssignmentsReply::TimeAssignment> &timeAssignments() const; const QVector<GetTimeAssignmentsReply::TimeAssignment> &timeAssignments() const;
@@ -52,6 +55,7 @@ public:
Q_SIGNALS: Q_SIGNALS:
void dateChanged(const QDate &date); void dateChanged(const QDate &date);
void highlightedChanged(bool highlighted);
void bookingsChanged(const QVector<GetBookingsReply::Booking> &bookings); void bookingsChanged(const QVector<GetBookingsReply::Booking> &bookings);
void timeAssignmentsChanged(const QVector<GetTimeAssignmentsReply::TimeAssignment> &timeAssignments); void timeAssignmentsChanged(const QVector<GetTimeAssignmentsReply::TimeAssignment> &timeAssignments);
@@ -86,6 +90,7 @@ private:
QLabel *m_label; QLabel *m_label;
QDate m_date; QDate m_date;
bool m_highlighted;
QVector<GetBookingsReply::Booking> m_bookings; QVector<GetBookingsReply::Booking> m_bookings;
QVector<GetTimeAssignmentsReply::TimeAssignment> m_timeAssignments; QVector<GetTimeAssignmentsReply::TimeAssignment> m_timeAssignments;