mirror of
https://gitlab.com/eql/lqml.git
synced 2025-12-06 02:30:38 -08:00
example 'meshtastic': make device name filter editable
This commit is contained in:
parent
7350289076
commit
7cf29c2c8c
6 changed files with 27 additions and 5 deletions
|
|
@ -20,7 +20,7 @@ public:
|
||||||
QLowEnergyCharacteristic fromNum;
|
QLowEnergyCharacteristic fromNum;
|
||||||
QLowEnergyCharacteristic toRadio;
|
QLowEnergyCharacteristic toRadio;
|
||||||
|
|
||||||
QString nameFilter = QStringLiteral("meshtastic");
|
QString nameFilter = "meshtastic";
|
||||||
QLowEnergyDescriptor notifications;
|
QLowEnergyDescriptor notifications;
|
||||||
|
|
||||||
bool deviceFilter(const QBluetoothDeviceInfo&) override;
|
bool deviceFilter(const QBluetoothDeviceInfo&) override;
|
||||||
|
|
|
||||||
|
|
@ -48,6 +48,7 @@ QVariant QT::startDeviceDiscovery(const QVariant& vName) {
|
||||||
|
|
||||||
QVariant QT::setDeviceFilter(const QVariant& vName) {
|
QVariant QT::setDeviceFilter(const QVariant& vName) {
|
||||||
ble->nameFilter = vName.toString();
|
ble->nameFilter = vName.toString();
|
||||||
|
return vName;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariant QT::shortNames() {
|
QVariant QT::shortNames() {
|
||||||
|
|
|
||||||
|
|
@ -419,6 +419,18 @@
|
||||||
(app:change-setting :channel-name name)
|
(app:change-setting :channel-name name)
|
||||||
(config-device)))))
|
(config-device)))))
|
||||||
|
|
||||||
|
(defun edit-device-filter () ; see QML
|
||||||
|
(app:input-dialog
|
||||||
|
(tr "Device filter:") 'device-filter-changed
|
||||||
|
:title (tr "Filter")
|
||||||
|
:text (or (app:setting :device-filter) "meshtastic")))
|
||||||
|
|
||||||
|
(defun device-filter-changed (ok)
|
||||||
|
(when ok
|
||||||
|
(let ((name (q< |text| ui:*dialog-line-edit*)))
|
||||||
|
(qt:set-device-filter qt:*cpp* name)
|
||||||
|
(app:change-setting :device-filter name))))
|
||||||
|
|
||||||
(defun keywords (name)
|
(defun keywords (name)
|
||||||
(pr:enum-keywords (ecase name
|
(pr:enum-keywords (ecase name
|
||||||
(:modem-preset
|
(:modem-preset
|
||||||
|
|
|
||||||
|
|
@ -51,6 +51,7 @@
|
||||||
#:change-modem-preset
|
#:change-modem-preset
|
||||||
#:channel-to-url
|
#:channel-to-url
|
||||||
#:edit-channel-name
|
#:edit-channel-name
|
||||||
|
#:edit-device-filter
|
||||||
#:get-node-config
|
#:get-node-config
|
||||||
#:ini
|
#:ini
|
||||||
#:keywords
|
#:keywords
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,9 @@
|
||||||
(x:when-it (app:setting :region)
|
(x:when-it (app:setting :region)
|
||||||
(q> |currentIndex| ui:*region*
|
(q> |currentIndex| ui:*region*
|
||||||
(q! |indexOfValue| ui:*region*
|
(q! |indexOfValue| ui:*region*
|
||||||
(symbol-name x:it)))))
|
(symbol-name x:it))))
|
||||||
|
(x:when-it (app:setting :device-filter)
|
||||||
|
(qt:set-device-filter qt:*cpp* x:it)))
|
||||||
|
|
||||||
(defun device-discovered (name)
|
(defun device-discovered (name)
|
||||||
"Show discovered (cached) device, which may not be reachable / turned on."
|
"Show discovered (cached) device, which may not be reachable / turned on."
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,12 @@ Item {
|
||||||
enabled: (view.currentIndex === 0)
|
enabled: (view.currentIndex === 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Ext.MenuItem {
|
||||||
|
text: qsTr("Update group/nodes")
|
||||||
|
onTriggered: Lisp.call("lora:get-node-config")
|
||||||
|
enabled: (view.currentIndex === 0)
|
||||||
|
}
|
||||||
|
|
||||||
Ext.MenuItem {
|
Ext.MenuItem {
|
||||||
text: qsTr("Message font size...")
|
text: qsTr("Message font size...")
|
||||||
onTriggered: Lisp.call("msg:font-size-dialog")
|
onTriggered: Lisp.call("msg:font-size-dialog")
|
||||||
|
|
@ -46,9 +52,9 @@ Item {
|
||||||
}
|
}
|
||||||
|
|
||||||
Ext.MenuItem {
|
Ext.MenuItem {
|
||||||
text: qsTr("Update group/nodes")
|
text: qsTr("Device filter...")
|
||||||
onTriggered: Lisp.call("lora:get-node-config")
|
onTriggered: Lisp.call("lora:edit-device-filter")
|
||||||
enabled: (view.currentIndex === 0)
|
enabled: (view.currentIndex === 2)
|
||||||
}
|
}
|
||||||
|
|
||||||
Ext.MenuItem {
|
Ext.MenuItem {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue