Files
PhotonVision/chameleon-client/src/views/CameraViewes/OutputTab.vue

80 lines
2.6 KiB
Vue
Raw Normal View History

2019-09-22 00:14:12 +03:00
<template>
2019-09-28 18:27:17 +03:00
<div>
2019-10-26 23:41:45 +03:00
<CVselect name="SortMode" v-model="value.sortMode"
:list="['Largest','Smallest','Highest','Lowest','Rightmost','Leftmost','Centermost']"
2019-10-29 23:58:06 +02:00
@input="handleData('sortMode')"/>
<CVswitch name="Output multiple" v-model="value.multiple" @input="handleData('multiple')"></CVswitch>
2019-10-26 23:41:45 +03:00
<span>Calibrate:</span>
<v-divider dark color="white"/>
<CVselect name="Calibration Mode" v-model="value.calibrationMode" :list="['None','Single point','Dual point']"
2019-10-29 23:58:06 +02:00
@input="handleData('calibrationMode')"/>
<component :raw-point="rawPoint" :is="selectedComponent" @update="doUpdate" @snackbar="showSnackbar"/>
<v-snackbar :timeout="3000" v-model="snackbar" top color="error">
<span style="color:#000">{{snackbarText}}</span>
<v-btn color="black" text @click="snackbar = false">Close</v-btn>
</v-snackbar>
2019-09-28 18:27:17 +03:00
</div>
2019-09-22 00:14:12 +03:00
</template>
<script>
2019-10-29 23:58:06 +02:00
import CVselect from '../../components/cv-select'
import CVswitch from '../../components/cv-switch'
2019-10-29 23:58:06 +02:00
import DualCalibration from "../../components/OutputTab/DualCalibration";
import SingleCalibration from "../../components/OutputTab/SingleCalibration";
2019-09-22 00:14:12 +03:00
export default {
2019-09-28 18:27:17 +03:00
name: 'Output',
2019-10-29 23:58:06 +02:00
props: ['value'],
components: {
2019-10-26 23:41:45 +03:00
CVselect,
CVswitch,
2019-10-26 23:41:45 +03:00
SingleCalibration,
DualCalibration,
2019-09-28 18:27:17 +03:00
},
2019-10-29 23:58:06 +02:00
methods: {
handleData(val) {
this.handleInput(val, this.value[val]);
2019-10-29 23:58:06 +02:00
this.$emit('update')
},
doUpdate() {
this.$emit('update')
},
showSnackbar(message){
this.snackbarText = message;
this.snackbar = true;
},
},
2019-09-22 00:14:12 +03:00
data() {
return {
snackbar: false,
snackbarText:""
}
},
2019-10-29 23:58:06 +02:00
computed: {
selectedComponent: {
get() {
2019-10-26 23:41:45 +03:00
switch (this.value.calibrationMode) {
case 0:
return "";
2019-10-26 23:41:45 +03:00
case 1:
return "SingleCalibration";
case 2:
2019-10-26 23:41:45 +03:00
return "DualCalibration"
}
return ""
}
},
2019-10-29 23:58:06 +02:00
rawPoint: {
get() {
return this.$store.state.point.rawPoint;
}
2019-09-22 00:14:12 +03:00
}
}
}
</script>
2019-09-28 18:27:17 +03:00
<style scoped>
2019-09-22 00:14:12 +03:00
</style>