Mercurial > gemma
diff client/src/morphtool/Morphtool.vue @ 1251:d1903250390b
splitted mophtool into two components
one shows the survey results and the other the info bar when a bottleneck is selected (and no profile is shown)
author | Markus Kottlaender <markus@intevation.de> |
---|---|
date | Wed, 21 Nov 2018 12:10:12 +0100 |
parents | c14353e2cdb9 |
children | da51fd6a72a0 |
line wrap: on
line diff
--- a/client/src/morphtool/Morphtool.vue Wed Nov 21 11:42:00 2018 +0100 +++ b/client/src/morphtool/Morphtool.vue Wed Nov 21 12:10:12 2018 +0100 @@ -1,51 +1,23 @@ <template> - <div class="mb-3 mr-3 ml-auto rounded position-relative"> - <div v-if="selectedBottleneck && surveys && !selectedSurvey" class="ui-element bg-white rounded p-3 shadow"> - <h4 class="text-center mx-4">{{ selectedBottleneck }}</h4> - <hr> - <div - @click="$store.dispatch('fairwayprofile/clearSelection');" - class="ui-element d-flex morphtoolminus position-absolute" - > - <i class="fa fa-close p-2"></i> - </div> - <div> + <div :class="['box ui-element rounded bg-white ml-auto mr-3 mb-3 text-nowrap', { expanded: selectedBottleneck && surveys && !selectedSurvey }]"> + <div style="width: 15rem"> + <h5 class="mb-0 py-2 border-bottom"> + {{ selectedBottleneck }} + </h5> + <div class="p-3"> <div - v-for="survey of surveys" + v-for="(survey, i) of surveys" :key="survey.data_info" - class="my-1" + :class="{ 'mt-1': i }" @click.prevent="$store.commit('bottlenecks/setSelectedSurvey', survey)" > <a href="#" @click.prevent>{{ survey.date_info }}</a> </div> </div> </div> - <div v-if="selectedSurvey && !showSplitscreen" class="ui-element shadow morphtool rounded position-relative bg-white my-auto"> - <div class="d-flex flex-row justify-content-between"> - <h6 class="my-auto px-2"> - {{ selectedBottleneck }} - ({{ selectedSurvey.date_info }}) - </h6> - <i class="fa fa-angle-up py-2 px-2 border-left" @click="$store.commit('application/showSplitscreen', true)" v-if="Object.keys(currentProfile).length"></i> - <i class="fa fa-close text-danger py-2 px-2 border-left" @click="$store.dispatch('fairwayprofile/clearSelection');"></i> - </div> - </div> </div> </template> -<style scoped lang="sass"> -.morphtool - height: $icon-width - z-index: 2 - -.morphtoolminus - top: 0 - right: 0 - height: $icon-width - width: $icon-height - z-index: 2 -</style> - <script> /* * This is Free Software under GNU Affero General Public License v >= 3.0 @@ -60,16 +32,13 @@ * * Author(s): * Thomas Junk <thomas.junk@intevation.de> + * Markus Kottländer <markus.kottlaender@intevation.de> */ -import { mapState, mapGetters } from "vuex"; +import { mapState } from "vuex"; export default { name: "morphtool", computed: { - ...mapGetters("map", ["getLayerByName"]), - ...mapState("map", ["openLayersMap", "cutTool"]), - ...mapState("application", ["showSplitscreen"]), - ...mapState("fairwayprofile", ["currentProfile"]), ...mapState("bottlenecks", [ "selectedBottleneck", "surveys",