Fix things. Simplify field value change handling.

This commit is contained in:
Pedro 2023-11-18 14:27:19 +01:00
parent c6871dbf52
commit 60b68612ab
6 changed files with 30 additions and 44 deletions

View file

@ -8,8 +8,7 @@ import { setActivePinia } from "pinia";
import pinia from "../store/index"; import pinia from "../store/index";
setActivePinia(pinia); setActivePinia(pinia);
import { settingsStore as settings } from "../store/settingsStore.js"; import { settingsStore as settings, onChange } from "../store/settingsStore.js";
import { handleFieldValueChange } from "../js/settingsHandler";
import { useAudioStore } from "../store/audioStore.js"; import { useAudioStore } from "../store/audioStore.js";
const audio = useAudioStore(pinia); const audio = useAudioStore(pinia);
@ -43,7 +42,7 @@ function getNetworkState() {
} }
function getRigControlStuff() { function getRigControlStuff() {
switch (settings.remote.RADIO.radiocontrol) { switch (settings.remote.RADIO.control) {
case "disabled": case "disabled":
return true; return true;
case "rigctld": case "rigctld":
@ -210,7 +209,7 @@ function testHamlib() {
aria-label=".form-select-sm" aria-label=".form-select-sm"
data-section="AUDIO" data-section="AUDIO"
data-setting="input_device" data-setting="input_device"
@change="handleFieldValueChange" @change="onChange"
v-model="settings.remote.AUDIO.input_device" v-model="settings.remote.AUDIO.input_device"
v-html="audio.getInputDevices()" v-html="audio.getInputDevices()"
></select> ></select>
@ -268,7 +267,7 @@ function testHamlib() {
id="rigcontrol_radiocontrol" id="rigcontrol_radiocontrol"
data-section="RADIO" data-section="RADIO"
data-setting="control" data-setting="control"
@change="handleFieldValueChange" @change="onChange"
v-model="settings.remote.RADIO.control" v-model="settings.remote.RADIO.control"
> >
<option selected value="disabled"> <option selected value="disabled">
@ -365,7 +364,7 @@ function testHamlib() {
data-section="TCI" data-section="TCI"
data-setting="ip" data-setting="ip"
v-model="settings.remote.TCI.ip" v-model="settings.remote.TCI.ip"
@change="handleFieldValueChange" @change="onChange"
/> />
</div> </div>
@ -380,7 +379,7 @@ function testHamlib() {
data-section="TCI" data-section="TCI"
data-setting="port" data-setting="port"
v-model="settings.remote.TCI.port" v-model="settings.remote.TCI.port"
@change="handleFieldValueChange" @change="onChange"
/> />
</div> </div>
</div> </div>

View file

@ -1,6 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import { settingsStore as settings } from "../store/settingsStore.js"; import { settingsStore as settings, onChange } from "../store/settingsStore.js";
import { handleFieldValueChange } from "../js/settingsHandler";
</script> </script>
<template> <template>
@ -13,7 +12,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
placeholder="rigctld IP" placeholder="rigctld IP"
id="hamlib_rigctld_ip" id="hamlib_rigctld_ip"
aria-label="Device IP" aria-label="Device IP"
@change="handleFieldValueChange" @change="onChange"
data-section="RIGCTLD" data-section="RIGCTLD"
data-setting="rip" data-setting="rip"
v-model="settings.remote.RIGCTLD.ip" v-model="settings.remote.RIGCTLD.ip"
@ -28,7 +27,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
placeholder="rigctld port" placeholder="rigctld port"
id="hamlib_rigctld_port" id="hamlib_rigctld_port"
aria-label="Device Port" aria-label="Device Port"
@change="handleFieldValueChange" @change="onChange"
data-section="RIGCTLD" data-section="RIGCTLD"
data-setting="port" data-setting="port"
v-model="settings.remote.RIGCTLD.port" v-model="settings.remote.RIGCTLD.port"
@ -42,10 +41,10 @@ import { handleFieldValueChange } from "../js/settingsHandler";
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_deviceid" id="hamlib_deviceid"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="model_id" data-setting="model_id"
v-model="settings.remote.RADIO.model_id" v-model.number="settings.remote.RADIO.model_id"
> >
<option selected value="-- ignore --">-- ignore --</option> <option selected value="-- ignore --">-- ignore --</option>
<option value="2028">Kenwood TS480</option> <option value="2028">Kenwood TS480</option>
@ -321,7 +320,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_deviceport" id="hamlib_deviceport"
style="width: 7rem" style="width: 7rem"
@change="handleFieldValueChange" @change="onChange"
data-section="RIGCTLD" data-section="RIGCTLD"
data-setting="port" data-setting="port"
v-model="settings.remote.RIGCTLD.port" v-model="settings.remote.RIGCTLD.port"
@ -335,7 +334,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_serialspeed" id="hamlib_serialspeed"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="serial_speed" data-setting="serial_speed"
v-model="settings.remote.RADIO.serial_speed" v-model="settings.remote.RADIO.serial_speed"
@ -360,7 +359,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_data_bits" id="hamlib_data_bits"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="data_bits" data-setting="data_bits"
v-model="settings.remote.RADIO.data_bits" v-model="settings.remote.RADIO.data_bits"
@ -377,7 +376,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_stop_bits" id="hamlib_stop_bits"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="stop_bits" data-setting="stop_bits"
v-model="settings.remote.RADIO.stop_bits" v-model="settings.remote.RADIO.stop_bits"
@ -394,7 +393,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_handshake" id="hamlib_handshake"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="serial_handshake" data-setting="serial_handshake"
v-model="settings.remote.RADIO.serial_handshake" v-model="settings.remote.RADIO.serial_handshake"
@ -410,7 +409,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_ptt_port" id="hamlib_ptt_port"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="ptt_port" data-setting="ptt_port"
v-model="settings.remote.RADIO.ptt_port" v-model="settings.remote.RADIO.ptt_port"
@ -426,7 +425,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_pttprotocol" id="hamlib_pttprotocol"
style="width: 0.5rem" style="width: 0.5rem"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="ptt_type" data-setting="ptt_type"
v-model="settings.remote.RADIO.ptt_type" v-model="settings.remote.RADIO.ptt_type"
@ -449,7 +448,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_dcd" id="hamlib_dcd"
style="width: 0.5rem" style="width: 0.5rem"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="serial_dcd" data-setting="serial_dcd"
v-model="settings.remote.RADIO.serial_dcd" v-model="settings.remote.RADIO.serial_dcd"
@ -471,7 +470,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="hamlib_dtrstate" id="hamlib_dtrstate"
style="width: 0.5rem" style="width: 0.5rem"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="serial_dtr" data-setting="serial_dtr"
v-model="settings.remote.RADIO.serial_dtr" v-model="settings.remote.RADIO.serial_dtr"
@ -511,7 +510,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
id="hamlib_rigctld_custom_args" id="hamlib_rigctld_custom_args"
aria-label="Custom arguments" aria-label="Custom arguments"
aria-describedby="basic-addon1" aria-describedby="basic-addon1"
@change="handleFieldValueChange" @change="onChange"
data-section="RIGCTLD" data-section="RIGCTLD"
data-setting="arguments" data-setting="arguments"
v-model="settings.remote.RIGCTLD.arguments" v-model="settings.remote.RIGCTLD.arguments"

View file

@ -1,6 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import { settingsStore as settings } from "../store/settingsStore.js"; import { settingsStore as settings, onChange } from "../store/settingsStore.js";
import { handleFieldValueChange } from "../js/settingsHandler";
</script> </script>
<template> <template>
@ -11,7 +10,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
class="form-select form-select-sm" class="form-select form-select-sm"
aria-label=".form-select-sm" aria-label=".form-select-sm"
id="rigcontrol_radiocontrol" id="rigcontrol_radiocontrol"
@change="handleFieldValueChange" @change="onChange"
data-section="RADIO" data-section="RADIO"
data-setting="control" data-setting="control"
v-model="settings.remote.RADIO.control" v-model="settings.remote.RADIO.control"
@ -34,7 +33,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
placeholder="TCI IP" placeholder="TCI IP"
id="rigcontrol_tci_ip" id="rigcontrol_tci_ip"
aria-label="Device IP" aria-label="Device IP"
@change="handleFieldValueChange" @change="onChange"
data-section="TCI" data-section="TCI"
data-setting="tci_ip" data-setting="tci_ip"
v-model="settings.remote.TCI.tci_ip" v-model="settings.remote.TCI.tci_ip"
@ -49,7 +48,7 @@ import { handleFieldValueChange } from "../js/settingsHandler";
placeholder="TCI port" placeholder="TCI port"
id="rigcontrol_tci_port" id="rigcontrol_tci_port"
aria-label="Device Port" aria-label="Device Port"
@change="handleFieldValueChange" @change="onChange"
data-section="TCI" data-section="TCI"
data-setting="tci_port" data-setting="tci_port"
v-model="settings.remote.TCI.tci_port" v-model="settings.remote.TCI.tci_port"

View file

@ -1,6 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import { settingsStore as settings } from "../store/settingsStore.js"; import { settingsStore as settings, onChange } from "../store/settingsStore.js";
import { handleFieldValueChange } from "../js/settingsHandler.js";
</script> </script>
<template> <template>
<!-- station callsign --> <!-- station callsign -->
@ -15,7 +14,7 @@ import { handleFieldValueChange } from "../js/settingsHandler.js";
id="myCall" id="myCall"
aria-label="Station Callsign" aria-label="Station Callsign"
aria-describedby="basic-addon1" aria-describedby="basic-addon1"
@change="handleFieldValueChange" @change="onChange"
data-section="STATION" data-section="STATION"
data-setting="mycall" data-setting="mycall"
v-model="settings.remote.STATION.mycall" v-model="settings.remote.STATION.mycall"
@ -28,7 +27,7 @@ import { handleFieldValueChange } from "../js/settingsHandler.js";
<select <select
class="form-select form-select-sm w-50" class="form-select form-select-sm w-50"
id="myCallSSID" id="myCallSSID"
@change="handleFieldValueChange" @change="onChange"
data-section="STATION" data-section="STATION"
data-setting="myssid" data-setting="myssid"
v-model.number="settings.remote.STATION.myssid" v-model.number="settings.remote.STATION.myssid"
@ -63,7 +62,7 @@ import { handleFieldValueChange } from "../js/settingsHandler.js";
maxlength="6" maxlength="6"
aria-label="Station Grid Locator" aria-label="Station Grid Locator"
aria-describedby="basic-addon1" aria-describedby="basic-addon1"
@change="handleFieldValueChange" @change="onChange"
data-section="STATION" data-section="STATION"
data-setting="mygrid" data-setting="mygrid"
v-model="settings.remote.STATION.mygrid" v-model="settings.remote.STATION.mygrid"

View file

@ -141,11 +141,4 @@ export function processModemConfig(data) {
} }
} }
} }
} }
export function handleFieldValueChange(event) {
const element = event.target;
const newValue = element.value;
settings.remote[element.dataset.section][element.dataset.setting] = newValue;
onChange();
}

View file

@ -29,9 +29,6 @@ export const settingsStore = reactive({
tuning_range_fmin: 0, tuning_range_fmin: 0,
tx_delay: 0, tx_delay: 0,
}, },
NETWORK: {
modemport: 0,
},
RADIO: { RADIO: {
control: "disabled", control: "disabled",
model_id: 0, model_id: 0,