You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1031 lines
19 KiB
QML
1031 lines
19 KiB
QML
3 years ago
|
/*
|
||
|
Copyright (C) 2019-2021 Doug McLain
|
||
|
|
||
|
This program is free software: you can redistribute it and/or modify
|
||
|
it under the terms of the GNU General Public License as published by
|
||
|
the Free Software Foundation, either version 3 of the License, or
|
||
|
(at your option) any later version.
|
||
|
|
||
|
This program is distributed in the hope that it will be useful,
|
||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
GNU General Public License for more details.
|
||
|
|
||
|
You should have received a copy of the GNU General Public License
|
||
|
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||
|
*/
|
||
|
|
||
|
import QtQuick 2.10
|
||
|
import QtQuick.Controls 2.3
|
||
|
|
||
|
Item {
|
||
|
id: settingsTab
|
||
|
property alias callsignEdit: csedit
|
||
|
property alias dmridEdit: dmridedit
|
||
|
property alias comboEssid: comboessid
|
||
|
property alias bmpwEdit: bmpwedit
|
||
|
property alias tgifpwEdit: tgifpwedit
|
||
|
property alias latEdit: latedit
|
||
|
property alias lonEdit: lonedit
|
||
|
property alias locEdit: locedit
|
||
|
property alias descEdit: descedit
|
||
|
property alias urlEdit: urledit
|
||
|
property alias swidEdit: swidedit
|
||
|
property alias pkgidEdit: pkgidedit
|
||
|
property alias dmroptsEdit: dmroptsedit
|
||
|
property alias iaxuserEdit: iaxuseredit
|
||
|
property alias iaxpassEdit: iaxpassedit
|
||
|
property alias iaxnodeEdit: iaxnodeedit
|
||
|
property alias iaxhostEdit: iaxhostedit
|
||
|
property alias iaxportEdit: iaxportedit
|
||
|
property alias m173200: m17_3200
|
||
|
property alias m171600: m17_1600
|
||
|
property alias sliderMicGain: slidermicGain
|
||
|
property alias mycallEdit: mycalledit
|
||
|
property alias urcallEdit: urcalledit
|
||
|
property alias rptr1Edit: rptr1edit
|
||
|
property alias rptr2Edit: rptr2edit
|
||
|
property alias txtimerEdit: txtimeredit
|
||
|
property alias toggleTX: toggletx
|
||
|
property alias xrf2ref: xrf2Ref
|
||
|
property alias ipv6: ipV6
|
||
|
property alias comboVocoder: _comboVocoder
|
||
|
property alias comboModem: _comboModem
|
||
|
property alias comboPlayback: _comboPlayback
|
||
|
property alias comboCapture: _comboCapture
|
||
|
property alias modemRXFreqEdit: _modemRXFreqEdit
|
||
|
property alias modemTXFreqEdit: _modemTXFreqEdit
|
||
|
property alias modemRXOffsetEdit: _modemRXOffsetEdit
|
||
|
property alias modemTXOffsetEdit: _modemTXOffsetEdit
|
||
|
property alias modemRXDCOffsetEdit: _modemRXDCOffsetEdit
|
||
|
property alias modemTXDCOffsetEdit: _modemTXDCOffsetEdit
|
||
|
property alias modemRXLevelEdit: _modemRXLevelEdit
|
||
|
property alias modemTXLevelEdit: _modemTXLevelEdit
|
||
|
property alias modemRFLevelEdit: _modemRFLevelEdit
|
||
|
property alias modemTXDelayEdit: _modemTXDelayEdit
|
||
|
property alias modemCWIdTXLevelEdit: _modemCWIdTXLevelEdit
|
||
|
property alias modemDStarTXLevelEdit: _modemDStarTXLevelEdit
|
||
|
property alias modemDMRTXLevelEdit: _modemDMRTXLevelEdit
|
||
|
property alias modemYSFTXLevelEdit: _modemYSFTXLevelEdit
|
||
|
property alias modemP25TXLevelEdit: _modemP25TXLevelEdit
|
||
|
property alias modemNXDNTXLevelEdit: _modemNXDNTXLevelEdit
|
||
|
|
||
|
Flickable {
|
||
|
anchors.fill: parent
|
||
|
contentWidth: parent.width
|
||
|
contentHeight: _modemNXDNTXLevelLabel.y +
|
||
|
_modemNXDNTXLevelLabel.height + 10
|
||
|
flickableDirection: Flickable.VerticalFlick
|
||
|
clip: true
|
||
|
|
||
|
Text {
|
||
|
id: csLabel
|
||
|
x: 10
|
||
|
y: 0
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Callsign")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: csedit
|
||
|
x: 100
|
||
|
y: 0
|
||
|
width: 125
|
||
|
height: 25
|
||
|
text: qsTr("")
|
||
|
font.capitalization: Font.AllUppercase
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: dmridLabel
|
||
|
x: 10
|
||
|
y: 30
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("DMRID")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: dmridedit
|
||
|
x: 100
|
||
|
y: 30
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: essidLabel
|
||
|
x: 10
|
||
|
y: 60
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("ESSID")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
ComboBox {
|
||
|
id: comboessid
|
||
|
x: 100
|
||
|
y: 60
|
||
|
width: 60
|
||
|
height: 30
|
||
|
function build_model(){
|
||
|
console.log("build_model() called");
|
||
|
var ids = ["None"];
|
||
|
for(var i = 0; i < 100; ++i){
|
||
|
ids[i+1] = i.toString().padStart(2, "0");
|
||
|
}
|
||
|
comboessid.model = ids;
|
||
|
comboessid.currentIndex = comboessid.find(droidstar.get_essid());
|
||
|
}
|
||
|
|
||
|
Component.onCompleted: build_model();
|
||
|
onCurrentTextChanged: {
|
||
|
//console.log("set essid called");
|
||
|
//droidstar.set_essid(comboessid.currentText);
|
||
|
}
|
||
|
}
|
||
|
Text {
|
||
|
id: bmpwLabel
|
||
|
x: 10
|
||
|
y: 95
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("BM Pass")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: bmpwedit
|
||
|
x: 100
|
||
|
y: 95
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
echoMode: TextInput.Password
|
||
|
}
|
||
|
Text {
|
||
|
id: tgifpwLabel
|
||
|
x: 10
|
||
|
y: 130
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("TGIF Pass")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: tgifpwedit
|
||
|
x: 100
|
||
|
y: 130
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
echoMode: TextInput.Password
|
||
|
}
|
||
|
Text {
|
||
|
id: latLabel
|
||
|
x: 10
|
||
|
y: 160
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Latitude")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: latedit
|
||
|
x: 100
|
||
|
y: 160
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: lonLabel
|
||
|
x: 10
|
||
|
y: 190
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Longitude")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: lonedit
|
||
|
x: 100
|
||
|
y: 190
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: locLabel
|
||
|
x: 10
|
||
|
y: 220
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Location")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: locedit
|
||
|
x: 100
|
||
|
y: 220
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: descLabel
|
||
|
x: 10
|
||
|
y: 250
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Description")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: descedit
|
||
|
x: 100
|
||
|
y: 250
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: urlLabel
|
||
|
x: 10
|
||
|
y: 280
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("URL")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: urledit
|
||
|
x: 100
|
||
|
y: 280
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: swidLabel
|
||
|
x: 10
|
||
|
y: 310
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("SoftwareID")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: swidedit
|
||
|
x: 100
|
||
|
y: 310
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: pkgidLabel
|
||
|
x: 10
|
||
|
y: 340
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("PackageID")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: pkgidedit
|
||
|
x: 100
|
||
|
y: 340
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: dmroptslabel
|
||
|
x: 10
|
||
|
y: 370
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("DMR+ Opts")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: dmroptsedit
|
||
|
x: 100
|
||
|
y: 370
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: iaxuserlabel
|
||
|
x: 10
|
||
|
y: 400
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("IAX User")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: iaxuseredit
|
||
|
x: 100
|
||
|
y: 400
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: iaxpasslabel
|
||
|
x: 10
|
||
|
y: 430
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("IAX secret")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: iaxpassedit
|
||
|
x: 100
|
||
|
y: 430
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
echoMode: TextInput.Password
|
||
|
}
|
||
|
Text {
|
||
|
id: iaxnodelabel
|
||
|
x: 10
|
||
|
y: 460
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("IAX Node")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: iaxnodeedit
|
||
|
x: 100
|
||
|
y: 460
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: iaxhostlabel
|
||
|
x: 10
|
||
|
y: 490
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("IAX Host")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: iaxhostedit
|
||
|
x: 100
|
||
|
y: 490
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
Text {
|
||
|
id: iaxportlabel
|
||
|
x: 10
|
||
|
y: 520
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("IAX Port")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: iaxportedit
|
||
|
x: 100
|
||
|
y: 520
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: m17rateLabel
|
||
|
x: 10
|
||
|
y: 550
|
||
|
width: 100
|
||
|
height: 25
|
||
|
text: qsTr("M17/YSF rate")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
ButtonGroup {
|
||
|
id: m17rateGroup
|
||
|
onClicked: {
|
||
|
button.text == "Voice Full" ? droidstar.m17_rate_changed(true) : droidstar.m17_rate_changed(false)
|
||
|
}
|
||
|
}
|
||
|
CheckBox {
|
||
|
id: m17_3200
|
||
|
x: 120
|
||
|
y: 550
|
||
|
//width: 100
|
||
|
height: 25
|
||
|
spacing: 1
|
||
|
text: qsTr("Voice Full")
|
||
|
checked: true
|
||
|
ButtonGroup.group: m17rateGroup
|
||
|
}
|
||
|
CheckBox {
|
||
|
id: m17_1600
|
||
|
x: 220
|
||
|
y: 550
|
||
|
//width: 100
|
||
|
height: 25
|
||
|
spacing: 1
|
||
|
text: qsTr("Voice/Data")
|
||
|
ButtonGroup.group: m17rateGroup
|
||
|
}
|
||
|
Text {
|
||
|
id: micgain_label
|
||
|
x: 10
|
||
|
y: 590
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Mic gain")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
Slider {
|
||
|
visible: true
|
||
|
id: slidermicGain
|
||
|
x: 72
|
||
|
y: 590
|
||
|
width: parent.parent.width - 80
|
||
|
height: parent.parent.height / 15
|
||
|
value: 0.5
|
||
|
onValueChanged: {
|
||
|
droidstar.set_input_volume(value);
|
||
|
}
|
||
|
}
|
||
|
Button {
|
||
|
id: updatehostsButton
|
||
|
x: 10
|
||
|
y: 630
|
||
|
width: 150
|
||
|
height: 30
|
||
|
text: qsTr("Update hosts")
|
||
|
onClicked: {
|
||
|
droidstar.update_host_files()
|
||
|
updateDialog.open()
|
||
|
}
|
||
|
}
|
||
|
Button {
|
||
|
id: updatedmridsButton
|
||
|
x: 170
|
||
|
y: 630
|
||
|
width: 150
|
||
|
height: 30
|
||
|
text: qsTr("Update ID files")
|
||
|
onClicked: {
|
||
|
droidstar.update_dmr_ids()
|
||
|
updateDialog.open()
|
||
|
}
|
||
|
}
|
||
|
Button {
|
||
|
id: vocoderButton
|
||
|
x: 10
|
||
|
y: 670
|
||
|
width: 150
|
||
|
height: 30
|
||
|
text: qsTr("Vocoder Plugin")
|
||
|
onClicked: {
|
||
|
//vocoderDialog.open()
|
||
|
}
|
||
|
}
|
||
|
Text {
|
||
|
id: mycallLabel
|
||
|
x: 10
|
||
|
y: 700
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("MYCALL")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: mycalledit
|
||
|
x: 100
|
||
|
y: 700
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
font.capitalization: Font.AllUppercase
|
||
|
onEditingFinished: {
|
||
|
droidstar.set_mycall(mycalledit.text.toUpperCase())
|
||
|
}
|
||
|
}
|
||
|
Text {
|
||
|
id: urcallLabel
|
||
|
x: 10
|
||
|
y: 730
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("URCALL")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: urcalledit
|
||
|
x: 100
|
||
|
y: 730
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
font.capitalization: Font.AllUppercase
|
||
|
onEditingFinished: {
|
||
|
droidstar.set_urcall(urcalledit.text.toUpperCase())
|
||
|
}
|
||
|
}
|
||
|
Text {
|
||
|
id: rptr1Label
|
||
|
x: 10
|
||
|
y: 760
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("RPTR1")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: rptr1edit
|
||
|
x: 100
|
||
|
y: 760
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
font.capitalization: Font.AllUppercase
|
||
|
onEditingFinished: {
|
||
|
droidstar.set_rptr1(rptr1edit.text.toUpperCase())
|
||
|
}
|
||
|
}
|
||
|
Text {
|
||
|
id: rptr2Label
|
||
|
x: 10
|
||
|
y: 790
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("RPTR2")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: rptr2edit
|
||
|
x: 100
|
||
|
y: 790
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
font.capitalization: Font.AllUppercase
|
||
|
onEditingFinished: {
|
||
|
droidstar.set_rptr2(rptr2edit.text.toUpperCase())
|
||
|
}
|
||
|
}
|
||
|
Text {
|
||
|
id: txtimerLabel
|
||
|
x: 10
|
||
|
y: 820
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("TX Timeout")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: txtimeredit
|
||
|
x: 100
|
||
|
y: 820
|
||
|
width: 125
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
}
|
||
|
CheckBox {
|
||
|
id: toggletx
|
||
|
x: 10
|
||
|
y: 850
|
||
|
//width: 100
|
||
|
height: 25
|
||
|
spacing: 1
|
||
|
text: qsTr("Enable TX toggle mode")
|
||
|
onClicked:{
|
||
|
droidstar.set_toggletx(toggleTX.checked);
|
||
|
}
|
||
|
}
|
||
|
CheckBox {
|
||
|
id: xrf2Ref
|
||
|
x: 10
|
||
|
y: 880
|
||
|
//width: 100
|
||
|
height: 25
|
||
|
spacing: 1
|
||
|
text: qsTr("Use REF for XRF")
|
||
|
}
|
||
|
CheckBox {
|
||
|
id: ipV6
|
||
|
x: 10
|
||
|
y: 910
|
||
|
//width: 100
|
||
|
height: 25
|
||
|
spacing: 1
|
||
|
text: qsTr("Use IPv6 when available")
|
||
|
}
|
||
|
Text {
|
||
|
id: vocoderLabel
|
||
|
x: 10
|
||
|
y: 940
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Vocoder")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
ComboBox {
|
||
|
id: _comboVocoder
|
||
|
x: 100
|
||
|
y: 940
|
||
|
width: parent.width - 110
|
||
|
height: 30
|
||
|
}
|
||
|
Text {
|
||
|
id: modemLabel
|
||
|
x: 10
|
||
|
y: 970
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Modem")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
ComboBox {
|
||
|
id: _comboModem
|
||
|
x: 100
|
||
|
y: 970
|
||
|
width: parent.width - 110
|
||
|
height: 30
|
||
|
}
|
||
|
Text {
|
||
|
id: playbackLabel
|
||
|
x: 10
|
||
|
y: 1000
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Playback")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
ComboBox {
|
||
|
id: _comboPlayback
|
||
|
x: 100
|
||
|
y: 1000
|
||
|
width: parent.width - 110
|
||
|
height: 30
|
||
|
}
|
||
|
Text {
|
||
|
id: captureLabel
|
||
|
x: 10
|
||
|
y: 1030
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("Capture")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
ComboBox {
|
||
|
id: _comboCapture
|
||
|
x: 100
|
||
|
y: 1030
|
||
|
width: parent.width - 110
|
||
|
height: 30
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemRXFreqLabel
|
||
|
x: 10
|
||
|
y: 1070
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("RX Freq")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemRXFreqEdit
|
||
|
x: 100
|
||
|
y: 1070
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemTXFreqLabel
|
||
|
x: 10
|
||
|
y: 1100
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("TX Freq")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemTXFreqEdit
|
||
|
x: 100
|
||
|
y: 1100
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemRXOffsetLabel
|
||
|
x: 10
|
||
|
y: 1130
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("RX Offset")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemRXOffsetEdit
|
||
|
x: 100
|
||
|
y: 1130
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
//inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemTXOffsetLabel
|
||
|
x: 10
|
||
|
y: 1160
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("TX Offset")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemTXOffsetEdit
|
||
|
x: 100
|
||
|
y: 1160
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
//inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemRXLevelLabel
|
||
|
x: 10
|
||
|
y: 1190
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("RX Level")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemRXLevelEdit
|
||
|
x: 100
|
||
|
y: 1190
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemTXLevelLabel
|
||
|
x: 10
|
||
|
y: 1220
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("TX Level")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemTXLevelEdit
|
||
|
x: 100
|
||
|
y: 1220
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemRXDCOffsetLabel
|
||
|
x: 10
|
||
|
y: 1250
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("RX DC Offset")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemRXDCOffsetEdit
|
||
|
x: 100
|
||
|
y: 1250
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemTXDCOffsetLabel
|
||
|
x: 10
|
||
|
y: 1280
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("TX DC Offset")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemTXDCOffsetEdit
|
||
|
x: 100
|
||
|
y: 1280
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemRFLevelLabel
|
||
|
x: 10
|
||
|
y: 1310
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("RF Level")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemRFLevelEdit
|
||
|
x: 100
|
||
|
y: 1310
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemTXDelayLabel
|
||
|
x: 10
|
||
|
y: 1340
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("TX Delay")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemTXDelayEdit
|
||
|
x: 100
|
||
|
y: 1340
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemCWIdTXLevelLabel
|
||
|
x: 10
|
||
|
y: 1370
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("CWIdTXLevel")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemCWIdTXLevelEdit
|
||
|
x: 100
|
||
|
y: 1370
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemDStarTXLevelLabel
|
||
|
x: 10
|
||
|
y: 1400
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("DStarTXLevel")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemDStarTXLevelEdit
|
||
|
x: 100
|
||
|
y: 1400
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemDMRTXLevelLabel
|
||
|
x: 10
|
||
|
y: 1430
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("DMRTXLevel")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemDMRTXLevelEdit
|
||
|
x: 100
|
||
|
y: 1430
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemYSFTXLevelLabel
|
||
|
x: 10
|
||
|
y: 1460
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("YSFTXLevel")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemYSFTXLevelEdit
|
||
|
x: 100
|
||
|
y: 1460
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemP25TXLevelLabel
|
||
|
x: 10
|
||
|
y: 1490
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("P25TXLevel")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemP25TXLevelEdit
|
||
|
x: 100
|
||
|
y: 1490
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
Text {
|
||
|
id: _modemNXDNTXLevelLabel
|
||
|
x: 10
|
||
|
y: 1520
|
||
|
width: 80
|
||
|
height: 25
|
||
|
text: qsTr("NXDNTXLevel")
|
||
|
color: "white"
|
||
|
verticalAlignment: Text.AlignVCenter
|
||
|
}
|
||
|
TextField {
|
||
|
id: _modemNXDNTXLevelEdit
|
||
|
x: 100
|
||
|
y: 1520
|
||
|
width: parent.width - 110
|
||
|
height: 25
|
||
|
selectByMouse: true
|
||
|
inputMethodHints: "ImhPreferNumbers"
|
||
|
}
|
||
|
}
|
||
|
}
|