Mercurial > gemma
view client/src/components/layers/Layers.vue @ 2413:f39c4b432601 staging_consolidation
merge with default
author | Thomas Junk <thomas.junk@intevation.de> |
---|---|
date | Thu, 28 Feb 2019 12:29:46 +0100 |
parents | f185503ef35a |
children | bb5286acfee2 |
line wrap: on
line source
<template> <div :class="[ 'box ui-element rounded bg-white text-nowrap', { expanded: showLayers } ]" > <div style="width: 18rem"> <UIBoxHeader icon="layer-group" title="Layers" :closeCallback="close" /> <div class="d-flex flex-column p-3 small"> <Layerselect v-for="(layer, index) in layersForLegend" :layerindex="index" :layername="layer.name" :key="layer.name" :isVisible="layer.isVisible" @visibilityToggled="visibilityToggled" ></Layerselect> </div> </div> </div> </template> <script> /* This is Free Software under GNU Affero General Public License v >= 3.0 * without warranty, see README.md and license for details. * * SPDX-License-Identifier: AGPL-3.0-or-later * License-Filename: LICENSES/AGPL-3.0.txt * * Copyright (C) 2018 by via donau * – Österreichische Wasserstraßen-Gesellschaft mbH * Software engineering by Intevation GmbH * * Author(s): * Thomas Junk <thomas.junk@intevation.de> * Markus Kottländer <markus.kottlaender@intevation.de> */ import { mapGetters, mapState } from "vuex"; export default { name: "layers", components: { Layerselect: () => import("./Layerselect") }, computed: { ...mapGetters("map", ["layersForLegend"]), ...mapState("application", ["showLayers"]) }, methods: { close() { this.$store.commit("application/showLayers", false); }, visibilityToggled(layer) { this.$store.commit("map/toggleVisibility", layer); } } }; </script>