Loading src/components/viewComponents/settingsComponents/cameraStageMappingSettings.vue +53 −1 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ <!--Show auto calibrate if default plugin is enabled--> <div v-if="'calibrate_xy' in recalibrationLinks" class="uk-margin-small"> <taskSubmitter :button-primary="true" :can-terminate="false" :requires-confirmation="true" :confirmation-message=" Loading @@ -21,6 +22,15 @@ > </taskSubmitter> </div> <button v-if="'get_calibration' in recalibrationLinks" v-show="dataAvailable" type="button" class="uk-button uk-button-default uk-width-1-1" @click="getCalibrationData()" > Download calibration data </button> </form> </div> </template> Loading @@ -41,7 +51,8 @@ export default { return { settings: null, recalibrationLinks: {}, isCalibrating: false isCalibrating: false, dataAvailable: false }; }, Loading @@ -61,11 +72,16 @@ export default { methods: { updateSettings: function() { // Update links axios .get(this.settingsUri) .then(response => { this.settings = response.data.extensions["org.openflexure.camera_stage_mapping"]; // Check if existing calibration data is available if ("get_calibration" in this.recalibrationLinks) { this.checkCalibrationData(); } }) .catch(error => { this.modalError(error); // Let mixin handle error Loading @@ -73,6 +89,42 @@ export default { }); }, checkCalibrationData: function() { axios .get(this.recalibrationLinks.get_calibration.href) .then(response => { console.log("CSM data:"); console.log(response.data); if (Object.keys(response.data).length === 0) { this.dataAvailable = false; } else { this.dataAvailable = true; } }) .catch(error => { this.modalError(error); // Let mixin handle error }); }, getCalibrationData: function() { axios .get(this.recalibrationLinks.get_calibration.href) .then(response => { if (response.data != {}) { const data = JSON.stringify(response.data); const url = window.URL.createObjectURL(new Blob([data])); const link = document.createElement("a"); link.href = url; link.setAttribute("download", "csm_calibration.json"); document.body.appendChild(link); link.click(); } }) .catch(error => { this.modalError(error); // Let mixin handle error }); }, updateRecalibrationLinks: function() { axios .get(this.pluginsUri) // Get a list of plugins Loading Loading
src/components/viewComponents/settingsComponents/cameraStageMappingSettings.vue +53 −1 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ <!--Show auto calibrate if default plugin is enabled--> <div v-if="'calibrate_xy' in recalibrationLinks" class="uk-margin-small"> <taskSubmitter :button-primary="true" :can-terminate="false" :requires-confirmation="true" :confirmation-message=" Loading @@ -21,6 +22,15 @@ > </taskSubmitter> </div> <button v-if="'get_calibration' in recalibrationLinks" v-show="dataAvailable" type="button" class="uk-button uk-button-default uk-width-1-1" @click="getCalibrationData()" > Download calibration data </button> </form> </div> </template> Loading @@ -41,7 +51,8 @@ export default { return { settings: null, recalibrationLinks: {}, isCalibrating: false isCalibrating: false, dataAvailable: false }; }, Loading @@ -61,11 +72,16 @@ export default { methods: { updateSettings: function() { // Update links axios .get(this.settingsUri) .then(response => { this.settings = response.data.extensions["org.openflexure.camera_stage_mapping"]; // Check if existing calibration data is available if ("get_calibration" in this.recalibrationLinks) { this.checkCalibrationData(); } }) .catch(error => { this.modalError(error); // Let mixin handle error Loading @@ -73,6 +89,42 @@ export default { }); }, checkCalibrationData: function() { axios .get(this.recalibrationLinks.get_calibration.href) .then(response => { console.log("CSM data:"); console.log(response.data); if (Object.keys(response.data).length === 0) { this.dataAvailable = false; } else { this.dataAvailable = true; } }) .catch(error => { this.modalError(error); // Let mixin handle error }); }, getCalibrationData: function() { axios .get(this.recalibrationLinks.get_calibration.href) .then(response => { if (response.data != {}) { const data = JSON.stringify(response.data); const url = window.URL.createObjectURL(new Blob([data])); const link = document.createElement("a"); link.href = url; link.setAttribute("download", "csm_calibration.json"); document.body.appendChild(link); link.click(); } }) .catch(error => { this.modalError(error); // Let mixin handle error }); }, updateRecalibrationLinks: function() { axios .get(this.pluginsUri) // Get a list of plugins Loading