Skip to content

Commit

Permalink
use volatile checkboxes to auto-show new test channels when needed, s…
Browse files Browse the repository at this point in the history
…atisfying error checker
  • Loading branch information
Patronics committed Jan 22, 2025
1 parent e5c0339 commit 6f6dec6
Showing 1 changed file with 29 additions and 11 deletions.
40 changes: 29 additions & 11 deletions chirp/drivers/tk690.py
Original file line number Diff line number Diff line change
Expand Up @@ -1106,15 +1106,26 @@ def get_settings(self):
button_assignments.append(rs)

for index in range(0, 16):
for direction in ["rx", "tx"]:
key = "test_freq_%i_%s" % (index, direction)
name = "test frequency %i %s" % (index+1, direction)
rs = RadioSetting(key, name,
RadioSettingValueInteger(
self._range[0]/10, self._range[1]/10,
self._memobj.test_frequencies[index]
[direction+"freq"]))
rxfreq = int(self._memobj.test_frequencies[index]["rxfreq"])*10
txfreq = int(self._memobj.test_frequencies[index]["txfreq"])*10
# don't populate invalid values
if not ((self._range[0] < rxfreq < self._range[1]) or
(self._range[0] < txfreq < self._range[1])):
rs = RadioSetting("add_testfreq_%i" % index,
"Add test frequency #%i" % index,
RadioSettingValueBoolean(False))
rs.set_volatile(True)
test_frequencies.append(rs)
else:
for direction in ["rx", "tx"]:
key = "set_testfreq_%i_%s" % (index, direction)
name = "test frequency %i %s" % (index+1, direction)
rs = RadioSetting(key, name,
RadioSettingValueInteger(
self._range[0]/10, self._range[1]/10,
self._memobj.test_frequencies[index]
[direction+"freq"]))
test_frequencies.append(rs)
return group

def set_settings(self, settings):
Expand All @@ -1138,9 +1149,16 @@ def set_settings(self, settings):
button.value.get_value())
elif groupKey == "test_frequencies":
keyItems = settingKey.split("_")
self._memobj.test_frequencies[
int(keyItems[2])][
keyItems[3]+"freq"] = int(button.value)
if keyItems[0] == "set":
self._memobj.test_frequencies[
int(keyItems[2])][
keyItems[3]+"freq"] = int(button.value)
elif keyItems[0] == "add" and button.value.get_value():
centerFreq = (self._range[0]+self._range[1])/2/10
self._memobj.test_frequencies[
int(keyItems[2])]["rxfreq"] = centerFreq
self._memobj.test_frequencies[
int(keyItems[2])]["txfreq"] = centerFreq


@directory.register
Expand Down

0 comments on commit 6f6dec6

Please sign in to comment.