Skip to content

Commit

Permalink
core: frontend: create compass configuration
Browse files Browse the repository at this point in the history
  • Loading branch information
Williangalvani committed Jan 24, 2024
1 parent d0778e6 commit 15049f1
Show file tree
Hide file tree
Showing 13 changed files with 1,846 additions and 3,351 deletions.
1 change: 1 addition & 0 deletions core/frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
"date-fns": "^2.23.0",
"file-saver": "^2.0.5",
"fuse.js": "^6.6.2",
"gsap": "^3.12.3",
"http-status-codes": "^2.2.0",
"image-js": "^0.35.3",
"is-ip": "^5.0.0",
Expand Down
52 changes: 52 additions & 0 deletions core/frontend/src/components/common/ParameterSwitch.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<template>
<div>
<v-switch v-model="switchValue" :label="label" />
</div>
</template>
<script lang="ts">
import { PropType } from 'vue'
import mavlink2rest from '@/libs/MAVLink2Rest'
import autopilot_data from '@/store/autopilot'
import Parameter from '@/types/autopilot/parameter'
export default {
name: 'ParameterSwitch',
props: {
parameter: {
type: Object as PropType<Parameter | undefined>,
required: true,
},
offValue: {
type: Number,
default: 0,
},
onValue: {
type: Number,
default: 1,
},
label: {
type: String,
default: '',
},
},
computed: {
switchValue: {
get(): boolean {
return this.parameter?.value === this.onValue
},
set(newValue: boolean) {
if (this.parameter === undefined) {
return
}
mavlink2rest.setParam(
this.parameter.name,
newValue ? this.onValue : this.offValue,
autopilot_data.system_id,
this.parameter.paramType.type,
)
},
},
},
}
</script>
21 changes: 19 additions & 2 deletions core/frontend/src/components/vehiclesetup/Configure.vue
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@
<script lang="ts">
import Vue from 'vue'
import autopilot_data from '@/store/autopilot'
import SpinningLogo from '../common/SpinningLogo.vue'
import ArdupilotMavlinkCompassSetup from './configuration/compass/ArdupilotMavlinkCompassSetup.vue'
import ParamSets from './overview/ParamSets.vue'
export interface Item {
Expand All @@ -39,20 +43,33 @@ export default Vue.extend({
name: 'Configure',
components: {
ParamSets,
ArdupilotMavlinkCompassSetup,
SpinningLogo,
},
data() {
return {
page_selected: null as string | null,
page_selected: null as number | null,
pages: [
{ title: 'Parameters', component: ParamSets },
{ title: 'Accelerometer', component: undefined },
{ title: 'Compass', component: undefined },
{ title: 'Compass', component: ArdupilotMavlinkCompassSetup },
{ title: 'Baro', component: undefined },
{ title: 'Gripper', component: undefined },
{ title: 'Lights', component: undefined },
{ title: 'Camera Mount', component: undefined },
] as Item[],
}
},
computed: {
params_loaded(): boolean {
return autopilot_data.finished_loading
},
loaded_params(): number {
return autopilot_data.parameters_loaded
},
total_params(): number {
return autopilot_data.parameters_total
},
},
})
</script>
Loading

0 comments on commit 15049f1

Please sign in to comment.