mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
QML UI: add checkbox to show/hide developer menu
Add a checkbox to the preferences page to facilitate selective visibility of the developer menu. With the coresponding function in qmlmanager. Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
This commit is contained in:
parent
0eef27376a
commit
a66d876ed0
4 changed files with 61 additions and 0 deletions
|
@ -321,6 +321,49 @@ Kirigami.ScrollablePage {
|
||||||
text: qsTr("Save detailed log of interaction with the dive computer")
|
text: qsTr("Save detailed log of interaction with the dive computer")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
GridLayout {
|
||||||
|
id: developer
|
||||||
|
columns: 2
|
||||||
|
width: parent.width - Kirigami.Units.gridUnit
|
||||||
|
Kirigami.Heading {
|
||||||
|
text: qsTr("Developer")
|
||||||
|
color: subsurfaceTheme.textColor
|
||||||
|
level: 4
|
||||||
|
Layout.topMargin: Kirigami.Units.largeSpacing
|
||||||
|
Layout.bottomMargin: Kirigami.Units.largeSpacing / 2
|
||||||
|
Layout.columnSpan: 2
|
||||||
|
}
|
||||||
|
|
||||||
|
CheckBox {
|
||||||
|
id: developerButton
|
||||||
|
checked: manager.developer
|
||||||
|
onClicked: {
|
||||||
|
manager.developer = checked
|
||||||
|
}
|
||||||
|
indicator: Rectangle {
|
||||||
|
implicitWidth: 20
|
||||||
|
implicitHeight: 20
|
||||||
|
x: developerButton.leftPadding
|
||||||
|
y: parent.height / 2 - height / 2
|
||||||
|
radius: 4
|
||||||
|
border.color: developerButton.down ? subsurfaceTheme.primaryColor : subsurfaceTheme.darkerPrimaryColor
|
||||||
|
color: subsurfaceTheme.backgroundColor
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
width: 12
|
||||||
|
height: 12
|
||||||
|
x: 4
|
||||||
|
y: 4
|
||||||
|
radius: 3
|
||||||
|
color: developerButton.down ? subsurfaceTheme.primaryColor : subsurfaceTheme.darkerPrimaryColor
|
||||||
|
visible: developerButton.checked
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Kirigami.Label {
|
||||||
|
text: qsTr("Display Developer menu")
|
||||||
|
}
|
||||||
|
}
|
||||||
Item {
|
Item {
|
||||||
height: Kirigami.Units.gridUnit * 6
|
height: Kirigami.Units.gridUnit * 6
|
||||||
}
|
}
|
||||||
|
|
|
@ -251,6 +251,7 @@ if you have network connectivity and want to sync your data to cloud storage."),
|
||||||
},
|
},
|
||||||
Kirigami.Action {
|
Kirigami.Action {
|
||||||
text: qsTr("Developer")
|
text: qsTr("Developer")
|
||||||
|
visible: manager.developer
|
||||||
Kirigami.Action {
|
Kirigami.Action {
|
||||||
text: qsTr("App log")
|
text: qsTr("App log")
|
||||||
onTriggered: {
|
onTriggered: {
|
||||||
|
|
|
@ -1583,6 +1583,17 @@ void QMLManager::setLibdcLog(bool value)
|
||||||
emit libdcLogChanged();
|
emit libdcLogChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool QMLManager::developer() const
|
||||||
|
{
|
||||||
|
return m_developer;
|
||||||
|
}
|
||||||
|
|
||||||
|
void QMLManager::setDeveloper(bool value)
|
||||||
|
{
|
||||||
|
m_developer = value;
|
||||||
|
emit developerChanged();
|
||||||
|
}
|
||||||
|
|
||||||
bool QMLManager::btEnabled() const
|
bool QMLManager::btEnabled() const
|
||||||
{
|
{
|
||||||
return m_btEnabled;
|
return m_btEnabled;
|
||||||
|
|
|
@ -42,6 +42,7 @@ class QMLManager : public QObject {
|
||||||
Q_PROPERTY(bool showPin READ showPin WRITE setShowPin NOTIFY showPinChanged)
|
Q_PROPERTY(bool showPin READ showPin WRITE setShowPin NOTIFY showPinChanged)
|
||||||
Q_PROPERTY(QString progressMessage READ progressMessage WRITE setProgressMessage NOTIFY progressMessageChanged)
|
Q_PROPERTY(QString progressMessage READ progressMessage WRITE setProgressMessage NOTIFY progressMessageChanged)
|
||||||
Q_PROPERTY(bool libdcLog READ libdcLog WRITE setLibdcLog NOTIFY libdcLogChanged)
|
Q_PROPERTY(bool libdcLog READ libdcLog WRITE setLibdcLog NOTIFY libdcLogChanged)
|
||||||
|
Q_PROPERTY(bool developer READ developer WRITE setDeveloper NOTIFY developerChanged)
|
||||||
|
|
||||||
public:
|
public:
|
||||||
QMLManager();
|
QMLManager();
|
||||||
|
@ -119,6 +120,9 @@ public:
|
||||||
bool libdcLog() const;
|
bool libdcLog() const;
|
||||||
void setLibdcLog(bool value);
|
void setLibdcLog(bool value);
|
||||||
|
|
||||||
|
bool developer() const;
|
||||||
|
void setDeveloper(bool value);
|
||||||
|
|
||||||
typedef void (QMLManager::*execute_function_type)();
|
typedef void (QMLManager::*execute_function_type)();
|
||||||
DiveListSortModel *dlSortModel;
|
DiveListSortModel *dlSortModel;
|
||||||
|
|
||||||
|
@ -219,6 +223,7 @@ private:
|
||||||
DCDeviceData *m_device_data;
|
DCDeviceData *m_device_data;
|
||||||
QString m_progressMessage;
|
QString m_progressMessage;
|
||||||
bool m_libdcLog;
|
bool m_libdcLog;
|
||||||
|
bool m_developer;
|
||||||
bool m_btEnabled;
|
bool m_btEnabled;
|
||||||
|
|
||||||
#if defined(Q_OS_ANDROID)
|
#if defined(Q_OS_ANDROID)
|
||||||
|
@ -250,6 +255,7 @@ signals:
|
||||||
void sendScreenChanged(QScreen *screen);
|
void sendScreenChanged(QScreen *screen);
|
||||||
void progressMessageChanged();
|
void progressMessageChanged();
|
||||||
void libdcLogChanged();
|
void libdcLogChanged();
|
||||||
|
void developerChanged();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue