Configure animation dock widget display

This commit is contained in:
Dan Paulat 2023-05-07 13:06:16 -05:00
parent 0d44513d0a
commit aee4fecacc
2 changed files with 42 additions and 2 deletions

View file

@ -3,6 +3,8 @@
#include <scwx/util/logger.hpp> #include <scwx/util/logger.hpp>
#include <QTimer>
namespace scwx namespace scwx
{ {
namespace qt namespace qt
@ -26,6 +28,44 @@ AnimationDockWidget::AnimationDockWidget(QWidget* parent) :
ui(new Ui::AnimationDockWidget) ui(new Ui::AnimationDockWidget)
{ {
ui->setupUi(this); ui->setupUi(this);
// Set date/time edit enabled/disabled
ui->dateEdit->setEnabled(ui->archiveViewRadioButton->isChecked());
ui->timeEdit->setEnabled(ui->archiveViewRadioButton->isChecked());
// Update date/time edit enabled/disabled based on Archive View radio button
connect(ui->archiveViewRadioButton,
&QRadioButton::toggled,
this,
[this](bool checked)
{
ui->dateEdit->setEnabled(checked);
ui->timeEdit->setEnabled(checked);
});
// Set current date/time
QDateTime currentDateTime = QDateTime::currentDateTimeUtc();
ui->dateEdit->setDate(currentDateTime.date());
ui->timeEdit->setTime(currentDateTime.time());
ui->dateEdit->setMaximumDate(currentDateTime.date());
// Update maximum date on a timer
QTimer* maxDateTimer = new QTimer(this);
connect(maxDateTimer,
&QTimer::timeout,
this,
[this]()
{
// Update maximum date to today
QDate currentDate = QDateTime::currentDateTimeUtc().date();
if (ui->dateEdit->maximumDate() != currentDate)
{
ui->dateEdit->setMaximumDate(currentDate);
}
});
// Evaluate every 15 seconds, every second is unnecessary
maxDateTimer->start(15000);
} }
AnimationDockWidget::~AnimationDockWidget() AnimationDockWidget::~AnimationDockWidget()

View file

@ -46,8 +46,8 @@
<minute>0</minute> <minute>0</minute>
<second>0</second> <second>0</second>
<year>1991</year> <year>1991</year>
<month>9</month> <month>6</month>
<day>14</day> <day>1</day>
</datetime> </datetime>
</property> </property>
<property name="displayFormat"> <property name="displayFormat">