Skip to content

Commit 3e06d0a

Browse files
Samwelinyalldawson
authored andcommittedMar 12, 2020
new temporal map settings dialog
1 parent d446c0a commit 3e06d0a

16 files changed

+605
-5
lines changed
 

‎images/images.qrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -829,6 +829,7 @@
829829
<file>themes/default/temporal_navigation/next.svg</file>
830830
<file>themes/default/temporal_navigation/stop.svg</file>
831831
<file>themes/default/temporal_navigation/previous.svg</file>
832+
<file>themes/default/temporal_navigation/vcr_settings.svg</file>
832833
</qresource>
833834
<qresource prefix="/images/tips">
834835
<file alias="symbol_levels.png">qgis_tips/symbol_levels.png</file>
Lines changed: 79 additions & 0 deletions
Loading

‎python/core/auto_generated/qgstemporalcontroller.sip.in

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
class QgsTemporalController : QObject
1414
{
1515
%Docstring
16-
16+
A controller base class for temporal objects, contains a signal for notifying
17+
updates of the objects temporal range.
1718

1819
.. versionadded:: 3.14
1920
%End
@@ -31,7 +32,12 @@ Constructor for QgsTemporalController.
3132
virtual ~QgsTemporalController();
3233

3334
signals:
35+
3436
void updateTemporalRange( const QgsDateTimeRange &range );
37+
%Docstring
38+
Signals that a temporal ``range`` has changed and need to be updated to
39+
the related objects.
40+
%End
3541

3642
};
3743

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
/************************************************************************
2+
* This file has been generated automatically from *
3+
* *
4+
* src/gui/qgstemporalmapsettingsdialog.h *
5+
* *
6+
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
7+
************************************************************************/
8+
9+
10+
11+
12+
13+
class QgsTemporalMapSettingsDialog : QDialog
14+
{
15+
%Docstring
16+
The QgsTemporalMapSettingsDialog class
17+
18+
.. versionadded:: 3.14
19+
%End
20+
21+
%TypeHeaderCode
22+
#include "qgstemporalmapsettingsdialog.h"
23+
%End
24+
public:
25+
26+
QgsTemporalMapSettingsDialog( QWidget *parent = 0, Qt::WindowFlags flags = Qt::WindowFlags() );
27+
%Docstring
28+
Constructor for QgsTemporalMapSettingsDialog
29+
%End
30+
31+
~QgsTemporalMapSettingsDialog();
32+
33+
double frameRateValue();
34+
%Docstring
35+
Returns the value of frame rate from widget.
36+
%End
37+
38+
};
39+
40+
/************************************************************************
41+
* This file has been generated automatically from *
42+
* *
43+
* src/gui/qgstemporalmapsettingsdialog.h *
44+
* *
45+
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
46+
************************************************************************/
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
/************************************************************************
2+
* This file has been generated automatically from *
3+
* *
4+
* src/gui/qgstemporalmapsettingswidget.h *
5+
* *
6+
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
7+
************************************************************************/
8+
9+
10+
11+
12+
13+
14+
class QgsTemporalMapSettingsWidget : QWidget
15+
{
16+
%Docstring
17+
The QgsTemporalMapSettingsWidget class
18+
19+
.. versionadded:: 3.14
20+
%End
21+
22+
%TypeHeaderCode
23+
#include "qgstemporalmapsettingswidget.h"
24+
%End
25+
public:
26+
27+
QgsTemporalMapSettingsWidget( QWidget *parent = 0 );
28+
%Docstring
29+
Constructor for QgsTemporalMapSettingsWidget
30+
%End
31+
32+
~QgsTemporalMapSettingsWidget();
33+
34+
double frameRateValue();
35+
%Docstring
36+
Returns the value of frame rate from widget input
37+
%End
38+
39+
void setFrameRateValue( double value );
40+
%Docstring
41+
Sets the value of frame rate from the vcr widget.
42+
%End
43+
44+
};
45+
46+
/************************************************************************
47+
* This file has been generated automatically from *
48+
* *
49+
* src/gui/qgstemporalmapsettingswidget.h *
50+
* *
51+
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
52+
************************************************************************/

‎python/gui/gui_auto.sip

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,8 @@
196196
%Include auto_generated/qgstablewidgetitem.sip
197197
%Include auto_generated/qgstabwidget.sip
198198
%Include auto_generated/qgstaskmanagerwidget.sip
199+
%Include auto_generated/qgstemporalmapsettingsdialog.sip
200+
%Include auto_generated/qgstemporalmapsettingswidget.sip
199201
%Include auto_generated/qgstemporalvcrdockwidget.sip
200202
%Include auto_generated/qgstextformatwidget.sip
201203
%Include auto_generated/qgstextpreview.sip

‎src/gui/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -504,6 +504,8 @@ SET(QGIS_GUI_SRCS
504504
qgstabwidget.cpp
505505
qgstablewidgetitem.cpp
506506
qgstaskmanagerwidget.cpp
507+
qgstemporalmapsettingsdialog.cpp
508+
qgstemporalmapsettingswidget.cpp
507509
qgstemporalvcrdockwidget.cpp
508510
qgstextformatwidget.cpp
509511
qgstextpreview.cpp
@@ -725,6 +727,8 @@ SET(QGIS_GUI_HDRS
725727
qgstablewidgetitem.h
726728
qgstabwidget.h
727729
qgstaskmanagerwidget.h
730+
qgstemporalmapsettingsdialog.h
731+
qgstemporalmapsettingswidget.h
728732
qgstemporalvcrdockwidget.h
729733
qgstextformatwidget.h
730734
qgstextpreview.h
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/***************************************************************************
2+
qgstemporalmapsettingsdialog.cpp
3+
---------------
4+
begin : March 2020
5+
copyright : (C) 2020 by Samweli Mwakisambwe
6+
email : samweli at kartoza dot com
7+
***************************************************************************/
8+
9+
/***************************************************************************
10+
* *
11+
* This program is free software; you can redistribute it and/or modify *
12+
* it under the terms of the GNU General Public License as published by *
13+
* the Free Software Foundation; either version 2 of the License, or *
14+
* (at your option) any later version. *
15+
* *
16+
***************************************************************************/
17+
18+
#include "qgstemporalmapsettingsdialog.h"
19+
#include "qgsgui.h"
20+
#include "qgstemporalmapsettingswidget.h"
21+
22+
QgsTemporalMapSettingsDialog::QgsTemporalMapSettingsDialog( QWidget *parent, Qt::WindowFlags flags )
23+
: QDialog( parent, flags )
24+
{
25+
setupUi( this );
26+
27+
connect( this, &QDialog::accepted, this, &QgsTemporalMapSettingsDialog::apply );
28+
connect( this, &QDialog::rejected, this, &QgsTemporalMapSettingsDialog::onCancel );
29+
30+
QVBoxLayout *layout = new QVBoxLayout();
31+
mTemporalMapSettingsWidget = new QgsTemporalMapSettingsWidget( this );
32+
layout->addWidget( mTemporalMapSettingsWidget );
33+
setLayout( layout );
34+
setWindowTitle( tr( "Temporal Map Settings" ) );
35+
36+
mTemporalMapSettingsWidget->setFrameRateValue( 1 );
37+
38+
hide();
39+
}
40+
41+
QgsTemporalMapSettingsDialog::~QgsTemporalMapSettingsDialog()
42+
{
43+
}
44+
45+
void QgsTemporalMapSettingsDialog::apply()
46+
{
47+
}
48+
49+
void QgsTemporalMapSettingsDialog::onCancel()
50+
{
51+
52+
}
53+
double QgsTemporalMapSettingsDialog::frameRateValue()
54+
{
55+
return mTemporalMapSettingsWidget->frameRateValue();
56+
}
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
/***************************************************************************
2+
qgstemporalmapsettingsdialog.h
3+
---------------
4+
begin : March 2020
5+
copyright : (C) 2020 by Samweli Mwakisambwe
6+
email : samweli at kartoza dot com
7+
***************************************************************************/
8+
9+
/***************************************************************************
10+
* *
11+
* This program is free software; you can redistribute it and/or modify *
12+
* it under the terms of the GNU General Public License as published by *
13+
* the Free Software Foundation; either version 2 of the License, or *
14+
* (at your option) any later version. *
15+
* *
16+
***************************************************************************/
17+
18+
#ifndef QGSTEMPORALMAPSETTINGSDIALOG_H
19+
#define QGSTEMPORALMAPSETTINGSDIALOG_H
20+
21+
#include "ui_qgstemporalmapsettingsdialogbase.h"
22+
#include "qgis_gui.h"
23+
24+
class QgsTemporalMapSettingsWidget;
25+
26+
/**
27+
* \ingroup gui
28+
* The QgsTemporalMapSettingsDialog class
29+
*
30+
* \since QGIS 3.14
31+
*/
32+
class GUI_EXPORT QgsTemporalMapSettingsDialog : public QDialog, private Ui::QgsTemporalMapSettingsDialogBase
33+
{
34+
Q_OBJECT
35+
public:
36+
37+
/**
38+
* Constructor for QgsTemporalMapSettingsDialog
39+
*
40+
*/
41+
QgsTemporalMapSettingsDialog( QWidget *parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags() );
42+
43+
~QgsTemporalMapSettingsDialog() override;
44+
45+
/**
46+
* Returns the value of frame rate from widget.
47+
*/
48+
double frameRateValue();
49+
50+
private slots:
51+
52+
//! \brief Applies the settings made in the dialog.
53+
void apply();
54+
//! \brief Called when cancel button is pressed
55+
void onCancel();
56+
57+
private:
58+
59+
//! Widget for handling temporal map settings
60+
QgsTemporalMapSettingsWidget *mTemporalMapSettingsWidget = nullptr;
61+
};
62+
63+
#endif // QGSTEMPORALMAPSETTINGSDIALOG_H
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
/***************************************************************************
2+
qgstemporalmapsettingswidget.cpp
3+
---------------
4+
begin : March 2020
5+
copyright : (C) 2020 by Samweli Mwakisambwe
6+
email : samweli at kartoza dot com
7+
***************************************************************************/
8+
9+
/***************************************************************************
10+
* *
11+
* This program is free software; you can redistribute it and/or modify *
12+
* it under the terms of the GNU General Public License as published by *
13+
* the Free Software Foundation; either version 2 of the License, or *
14+
* (at your option) any later version. *
15+
* *
16+
***************************************************************************/
17+
18+
#include "qgstemporalmapsettingswidget.h"
19+
#include "qgsgui.h"
20+
21+
QgsTemporalMapSettingsWidget::QgsTemporalMapSettingsWidget( QWidget *parent )
22+
: QWidget( parent )
23+
{
24+
setupUi( this );
25+
}
26+
27+
QgsTemporalMapSettingsWidget::~QgsTemporalMapSettingsWidget()
28+
{
29+
}
30+
31+
double QgsTemporalMapSettingsWidget::frameRateValue()
32+
{
33+
return mFrameSpinBox->value();
34+
}
35+
36+
void QgsTemporalMapSettingsWidget::setFrameRateValue( double value )
37+
{
38+
mFrameSpinBox->setValue( value );
39+
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
/***************************************************************************
2+
qgstemporalmapsettingswidget.h
3+
---------------
4+
begin : March 2020
5+
copyright : (C) 2020 by Samweli Mwakisambwe
6+
email : samweli at kartoza dot com
7+
***************************************************************************/
8+
9+
/***************************************************************************
10+
* *
11+
* This program is free software; you can redistribute it and/or modify *
12+
* it under the terms of the GNU General Public License as published by *
13+
* the Free Software Foundation; either version 2 of the License, or *
14+
* (at your option) any later version. *
15+
* *
16+
***************************************************************************/
17+
18+
#ifndef QGSTEMPORALMAPSETTINGSWIDGET_H
19+
#define QGSTEMPORALMAPSETTINGSWIDGET_H
20+
21+
#include "ui_qgstemporalmapsettingswidgetbase.h"
22+
23+
#include "qgis_gui.h"
24+
25+
26+
/**
27+
* \ingroup gui
28+
* The QgsTemporalMapSettingsWidget class
29+
*
30+
* \since QGIS 3.14
31+
*/
32+
class GUI_EXPORT QgsTemporalMapSettingsWidget : public QWidget, private Ui::QgsTemporalMapSettingsWidgetBase
33+
{
34+
Q_OBJECT
35+
public:
36+
37+
/**
38+
* Constructor for QgsTemporalMapSettingsWidget
39+
*
40+
*/
41+
QgsTemporalMapSettingsWidget( QWidget *parent = nullptr );
42+
43+
~QgsTemporalMapSettingsWidget() override;
44+
45+
/**
46+
* Returns the value of frame rate from widget input
47+
*/
48+
double frameRateValue();
49+
50+
/**
51+
* Sets the value of frame rate from the vcr widget.
52+
*/
53+
void setFrameRateValue( double value );
54+
55+
};
56+
57+
#endif // QGSTEMPORALMAPSETTINGSWIDGET_H

‎src/gui/qgstemporalvcrdockwidget.cpp

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@
2222
#include "qgsmaplayer.h"
2323
#include "qgsrasterlayer.h"
2424
#include "qgstemporalnavigationobject.h"
25+
#include "qgstemporalmapsettingswidget.h"
26+
27+
#include "qgstemporalmapsettingsdialog.h"
2528

2629
QgsTemporalVcrDockWidget::QgsTemporalVcrDockWidget( const QString &name, QWidget *parent )
2730
: QgsDockWidget( parent )
@@ -30,6 +33,7 @@ QgsTemporalVcrDockWidget::QgsTemporalVcrDockWidget( const QString &name, QWidget
3033
setWindowTitle( name );
3134

3235
mNavigationObject = new QgsTemporalNavigationObject();
36+
settingsDialog();
3337

3438
connect( mForwardButton, &QPushButton::clicked, this, &QgsTemporalVcrDockWidget::forwardButton_clicked );
3539
connect( mBackButton, &QPushButton::clicked, this, &QgsTemporalVcrDockWidget::backButton_clicked );
@@ -40,6 +44,7 @@ QgsTemporalVcrDockWidget::QgsTemporalVcrDockWidget( const QString &name, QWidget
4044
connect( mTimeStepsComboBox, qgis::overload<int>::of( &QComboBox::currentIndexChanged ), this, &QgsTemporalVcrDockWidget::timeStepsComboBox_currentIndexChanged );
4145
connect( mModeComboBox, qgis::overload<int>::of( &QComboBox::currentIndexChanged ), this, &QgsTemporalVcrDockWidget::modeComboBox_currentIndexChanged );
4246
connect( mTimeSlider, &QSlider::valueChanged, this, &QgsTemporalVcrDockWidget::timeSlider_valueChanged );
47+
connect( mSettings, &QPushButton::clicked, this, &QgsTemporalVcrDockWidget::settings_clicked );
4348

4449
connect( mStartDateTime, &QDateTimeEdit::dateTimeChanged, this, &QgsTemporalVcrDockWidget::startDateTime_changed );
4550
connect( mEndDateTime, &QDateTimeEdit::dateTimeChanged, this, &QgsTemporalVcrDockWidget::endDateTime_changed );
@@ -56,6 +61,7 @@ QgsTemporalVcrDockWidget::~QgsTemporalVcrDockWidget()
5661
{
5762
mTimer->stop();
5863
delete mNavigationObject;
64+
delete mSettingsDialog;
5965
}
6066

6167
void QgsTemporalVcrDockWidget::init()
@@ -92,6 +98,17 @@ void QgsTemporalVcrDockWidget::init()
9298
setSliderRange();
9399
}
94100

101+
void QgsTemporalVcrDockWidget::settingsDialog()
102+
{
103+
mSettingsDialog = new QgsTemporalMapSettingsDialog( this );
104+
105+
}
106+
107+
void QgsTemporalVcrDockWidget::settings_clicked()
108+
{
109+
mSettingsDialog->setVisible( !mSettingsDialog->isVisible() );
110+
}
111+
95112
void QgsTemporalVcrDockWidget::timerTimeout()
96113
{
97114
if ( mNavigationObject->navigationStatus() ==
@@ -227,7 +244,7 @@ void QgsTemporalVcrDockWidget::forwardButton_clicked()
227244
if ( ( mTimeSlider->value() + 1 ) < mNavigationObject->dateTimes().size() )
228245
{
229246
mTimeSlider->setValue( mTimeSlider->value() + 1 );
230-
mTimer->start( 1000 );
247+
mTimer->start( mSettingsDialog->frameRateValue() );
231248
}
232249
updateButtonsEnable( true );
233250
setDateInputsEnable( true );

‎src/gui/qgstemporalvcrdockwidget.h

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626

2727
class QgsMapLayer;
2828
class QgsTemporalNavigationObject;
29+
class QgsTemporalMapSettingsWidget;
30+
class QgsTemporalMapSettingsDialog;
2931

3032
/**
3133
* \ingroup gui
@@ -74,11 +76,20 @@ class GUI_EXPORT QgsTemporalVcrDockWidget : public QgsDockWidget, private Ui::Qg
7476
**/
7577
void setDateInputsEnable( bool enabled );
7678

79+
/**
80+
* Sets the VCR settings dialog
81+
**/
82+
void settingsDialog();
83+
7784
//! Timer to set navigation time interval
7885
QTimer *mTimer = nullptr;
7986

87+
//! Handles all non ui navigation logic
8088
QgsTemporalNavigationObject *mNavigationObject = nullptr;
8189

90+
//! Dialog for temporal map settings
91+
QgsTemporalMapSettingsDialog *mSettingsDialog = nullptr;
92+
8293
private slots:
8394

8495
/**
@@ -146,10 +157,15 @@ class GUI_EXPORT QgsTemporalVcrDockWidget : public QgsDockWidget, private Ui::Qg
146157
void startDateTime_changed( const QDateTime &datetime );
147158

148159
/**
149-
*Handles the input change on the end date time input.
160+
* Handles the input change on the end date time input.
150161
**/
151162
void endDateTime_changed( const QDateTime &datetime );
152163

164+
/**
165+
* Loads a temporal map settings dialog
166+
**/
167+
void settings_clicked();
168+
153169
};
154170

155171
#endif // QGSTEMPORALVCRDOCKWIDGET_H
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<ui version="4.0">
3+
<class>QgsTemporalMapSettingsDialogBase</class>
4+
<widget class="QDialog" name="QgsTemporalMapSettingsDialogBase">
5+
<property name="geometry">
6+
<rect>
7+
<x>0</x>
8+
<y>0</y>
9+
<width>216</width>
10+
<height>210</height>
11+
</rect>
12+
</property>
13+
<property name="windowTitle">
14+
<string>Dialog</string>
15+
</property>
16+
<layout class="QVBoxLayout" name="verticalLayout">
17+
<item>
18+
<spacer name="verticalSpacer">
19+
<property name="orientation">
20+
<enum>Qt::Vertical</enum>
21+
</property>
22+
<property name="sizeHint" stdset="0">
23+
<size>
24+
<width>20</width>
25+
<height>40</height>
26+
</size>
27+
</property>
28+
</spacer>
29+
</item>
30+
<item>
31+
<widget class="QDialogButtonBox" name="buttonBox">
32+
<property name="orientation">
33+
<enum>Qt::Horizontal</enum>
34+
</property>
35+
<property name="standardButtons">
36+
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
37+
</property>
38+
</widget>
39+
</item>
40+
</layout>
41+
</widget>
42+
<resources/>
43+
<connections>
44+
<connection>
45+
<sender>buttonBox</sender>
46+
<signal>accepted()</signal>
47+
<receiver>QgsTemporalMapSettingsDialogBase</receiver>
48+
<slot>accept()</slot>
49+
<hints>
50+
<hint type="sourcelabel">
51+
<x>248</x>
52+
<y>254</y>
53+
</hint>
54+
<hint type="destinationlabel">
55+
<x>157</x>
56+
<y>274</y>
57+
</hint>
58+
</hints>
59+
</connection>
60+
<connection>
61+
<sender>buttonBox</sender>
62+
<signal>rejected()</signal>
63+
<receiver>QgsTemporalMapSettingsDialogBase</receiver>
64+
<slot>reject()</slot>
65+
<hints>
66+
<hint type="sourcelabel">
67+
<x>316</x>
68+
<y>260</y>
69+
</hint>
70+
<hint type="destinationlabel">
71+
<x>286</x>
72+
<y>274</y>
73+
</hint>
74+
</hints>
75+
</connection>
76+
</connections>
77+
</ui>
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<ui version="4.0">
3+
<class>QgsTemporalMapSettingsWidgetBase</class>
4+
<widget class="QWidget" name="QgsTemporalMapSettingsWidgetBase">
5+
<property name="geometry">
6+
<rect>
7+
<x>0</x>
8+
<y>0</y>
9+
<width>231</width>
10+
<height>134</height>
11+
</rect>
12+
</property>
13+
<property name="windowTitle">
14+
<string>Form</string>
15+
</property>
16+
<layout class="QVBoxLayout" name="verticalLayout">
17+
<item>
18+
<layout class="QHBoxLayout" name="horizontalLayout">
19+
<item>
20+
<widget class="QLabel" name="label">
21+
<property name="text">
22+
<string>Frame rate</string>
23+
</property>
24+
</widget>
25+
</item>
26+
<item>
27+
<spacer name="horizontalSpacer">
28+
<property name="orientation">
29+
<enum>Qt::Horizontal</enum>
30+
</property>
31+
<property name="sizeHint" stdset="0">
32+
<size>
33+
<width>40</width>
34+
<height>20</height>
35+
</size>
36+
</property>
37+
</spacer>
38+
</item>
39+
<item>
40+
<widget class="QDoubleSpinBox" name="mFrameSpinBox"/>
41+
</item>
42+
<item>
43+
<spacer name="horizontalSpacer_2">
44+
<property name="orientation">
45+
<enum>Qt::Horizontal</enum>
46+
</property>
47+
<property name="sizeHint" stdset="0">
48+
<size>
49+
<width>40</width>
50+
<height>20</height>
51+
</size>
52+
</property>
53+
</spacer>
54+
</item>
55+
</layout>
56+
</item>
57+
<item>
58+
<spacer name="verticalSpacer">
59+
<property name="orientation">
60+
<enum>Qt::Vertical</enum>
61+
</property>
62+
<property name="sizeHint" stdset="0">
63+
<size>
64+
<width>20</width>
65+
<height>40</height>
66+
</size>
67+
</property>
68+
</spacer>
69+
</item>
70+
</layout>
71+
</widget>
72+
<resources/>
73+
<connections/>
74+
</ui>

‎src/ui/qgstemporalvcrdockwidgetbase.ui

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
<rect>
77
<x>0</x>
88
<y>0</y>
9-
<width>1076</width>
10-
<height>128</height>
9+
<width>1133</width>
10+
<height>134</height>
1111
</rect>
1212
</property>
1313
<property name="windowTitle">
@@ -17,6 +17,17 @@
1717
<layout class="QVBoxLayout" name="verticalLayout">
1818
<item>
1919
<layout class="QHBoxLayout" name="horizontalLayout">
20+
<item>
21+
<widget class="QPushButton" name="mSettings">
22+
<property name="text">
23+
<string/>
24+
</property>
25+
<property name="icon">
26+
<iconset resource="../../images/images.qrc">
27+
<normaloff>:/images/themes/default/temporal_navigation/vcr_settings.svg</normaloff>:/images/themes/default/temporal_navigation/vcr_settings.svg</iconset>
28+
</property>
29+
</widget>
30+
</item>
2031
<item>
2132
<spacer name="horizontalSpacer">
2233
<property name="orientation">

0 commit comments

Comments
 (0)
Please sign in to comment.