Mercurial > gemma
changeset 3863:dd0e5be71393
merge
author | Thomas Junk <thomas.junk@intevation.de> |
---|---|
date | Tue, 09 Jul 2019 15:37:59 +0200 |
parents | ecf2e5ea1464 (current diff) 704f853b9c37 (diff) |
children | a7abfb3d400d 36e85a74fca0 |
files | |
diffstat | 1 files changed, 76 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/client/src/components/systemconfiguration/MorphologyClassbreaks.vue Tue Jul 09 15:37:42 2019 +0200 +++ b/client/src/components/systemconfiguration/MorphologyClassbreaks.vue Tue Jul 09 15:37:59 2019 +0200 @@ -33,7 +33,6 @@ <UIBoxHeader :title="colorPickerTitle" icon="paint-brush" - :closeCallback="() => (activeColorPicker = null)" :actions="[ { callback: () => { @@ -41,6 +40,12 @@ activeColorPicker = null; }, icon: 'trash' + }, + { + callback: () => { + activeColorPicker = null; + }, + icon: 'check' } ]" /> @@ -82,6 +87,20 @@ </button> </div> </div> + <div class="mb-4 px-3"> + <a + @click.prevent="submitClassbreaks" + class="btn btn-info btn-sm text-white" + > + <translate>Send</translate> + </a> + <a + @click.prevent="resetClassbreaks" + class="btn btn-outline-info btn-sm ml-2" + > + <translate>Reset to defaults</translate> + </a> + </div> <div class="px-3"> <h6 class="font-weight-bold"> <translate>Sounding Result Comparison</translate> @@ -114,7 +133,6 @@ <UIBoxHeader :title="colorPickerTitle" icon="paint-brush" - :closeCallback="() => (activeColorPicker = null)" :actions="[ { callback: () => { @@ -122,6 +140,12 @@ activeColorPicker = null; }, icon: 'trash' + }, + { + callback: () => { + activeColorPicker = null; + }, + icon: 'check' } ]" /> @@ -164,10 +188,19 @@ </button> </div> </div> - <div class="mt-4 px-3"> - <a @click.prevent="submit" class="btn btn-info btn-sm text-white"> + <div class="px-3"> + <a + @click.prevent="submitClassbreaksCompare" + class="btn btn-info btn-sm text-white" + > <translate>Send</translate> </a> + <a + @click.prevent="resetClassbreaksCompare" + class="btn btn-outline-info btn-sm ml-2" + > + <translate>Reset to defaults</translate> + </a> </div> </div> </template> @@ -226,6 +259,11 @@ import { mapState } from "vuex"; import { Chrome } from "vue-color"; +const DEFAULT_CLASSBREAKS = + "1:#ff00dd,1.5,1.7,1.9,2.1,2.3,2.5:#f25f20,2.7,2.9,3.1:#f7e40e,3.3,3.5,4:#8ad51a,4.5,5,5.5,6,6.5,7:#1414ff"; +const DEFAULT_CLASSBREAKS_COMPARE = + "-2:#06b100,-1.9,-1.8,-1.7,-1.6,-1.5,-1.4,-1.3,-1.2,-1.1,-1:#1cc68e,-0.9,-0.8,-0.7,-0.6,-0.5,-0.4,-0.3,-0.2,-0.1,0:#c2c2c2,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1:#fff01a,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2:#f80012"; + export default { components: { "chrome-picker": Chrome @@ -257,36 +295,52 @@ showColorPicker(id) { this.activeColorPicker = this.activeColorPicker === id ? null : id; }, - submit() { + submitClassbreaks() { this.$store .dispatch("application/saveConfig", { morphology_classbreaks: this.morphologyClassbreaks .map(cb => (cb[1] === "#ffffff" ? cb[0] : cb.join(":"))) - .join(","), + .join(",") + }) + .finally(() => this.$store.dispatch("application/loadConfig")); + }, + submitClassbreaksCompare() { + this.$store + .dispatch("application/saveConfig", { morphology_classbreaks_compare: this.morphologyClassbreaksCompare .map(cb => (cb[1] === "#ffffff" ? cb[0] : cb.join(":"))) .join(",") }) .finally(() => this.$store.dispatch("application/loadConfig")); + }, + resetClassbreaks() { + this.morphologyClassbreaks = this.parseClassbreakString( + DEFAULT_CLASSBREAKS + ); + }, + resetClassbreaksCompare() { + this.morphologyClassbreaksCompare = this.parseClassbreakString( + DEFAULT_CLASSBREAKS_COMPARE + ); + }, + parseClassbreakString(str) { + return str + .split(",") + .map(cb => cb.split(":")) + .map(cb => { + cb[0] = Number(cb[0]); + cb[1] = cb[1] || "#ffffff"; + return cb; + }); } }, mounted() { - this.morphologyClassbreaks = this.config.morphology_classbreaks - .split(",") - .map(cb => cb.split(":")) - .map(cb => { - cb[0] = Number(cb[0]); - cb[1] = cb[1] || "#ffffff"; - return cb; - }); - this.morphologyClassbreaksCompare = this.config.morphology_classbreaks_compare - .split(",") - .map(cb => cb.split(":")) - .map(cb => { - cb[0] = Number(cb[0]); - cb[1] = cb[1] || "#ffffff"; - return cb; - }); + this.morphologyClassbreaks = this.parseClassbreakString( + this.config.morphology_classbreaks + ); + this.morphologyClassbreaksCompare = this.parseClassbreakString( + this.config.morphology_classbreaks_compare + ); this.closeColorPickerListener = e => { // Escape