mirror of
				https://github.com/ciphervance/supercell-wx.git
				synced 2025-10-31 17:20:06 +00:00 
			
		
		
		
	Configure animation dock widget display
This commit is contained in:
		
							parent
							
								
									0d44513d0a
								
							
						
					
					
						commit
						aee4fecacc
					
				
					 2 changed files with 42 additions and 2 deletions
				
			
		|  | @ -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() | ||||||
|  |  | ||||||
|  | @ -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"> | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Dan Paulat
						Dan Paulat