| | |
| | | 'libs/layer/layer.js' |
| | | ], |
| | | function (declare, |
| | | lang, |
| | | array, |
| | | html, |
| | | topic, |
| | | BaseWidget, |
| | | aspect, |
| | | string, |
| | | utils, |
| | | layer |
| | | lang, |
| | | array, |
| | | html, |
| | | topic, |
| | | BaseWidget, |
| | | aspect, |
| | | string, |
| | | utils, |
| | | layer |
| | | ) { |
| | | return declare([BaseWidget], { |
| | | baseClass: 'jimu-widget-Layermanagement', |
| | | name: 'Layermanagement', |
| | | dataArr: [], |
| | | startup: function () { |
| | | var that = this; |
| | | // 暴露在外的接口 |
| | | topic.subscribe("closeZtree", lang.hitch(this, this.closeZtreeBox)); |
| | | |
| | | topic.subscribe("appendItem", lang.hitch(this, this.appendItem)); |
| | | topic.subscribe("removeItem", lang.hitch(this, this.removeItem)); |
| | | |
| | | $(".jimu-widget-Layermanagement .layer-tab button").click(function () { |
| | | $(".jimu-widget-Layermanagement .layer-list").stop().toggle(); |
| | | }) |
| | | |
| | | $(".jimu-widget-Layermanagement .sign-head-th-xx").click(function () { |
| | | $(".jimu-widget-Layermanagement .layer-list").stop().hide(); |
| | | }) |
| | | |
| | | $(".jimu-widget-Layermanagement .layer-list ul").on("click", "li .layer-opacity", function () { |
| | | |
| | | var layerId = $(this).parents('li').attr('itemid'); |
| | | var layerTitle = $(this).parents('li').attr('itemtitle'); |
| | | |
| | | var liC = `<li> |
| | | <div title="${layerTitle}"> |
| | | ${layerTitle} |
| | | </div> |
| | | <div id="${layerId + 'Layer'}"> |
| | | |
| | | </div> |
| | | </li>`; |
| | | |
| | | $(".jimu-widget-Layermanagement .tree-layer-opcity ul").empty(); |
| | | |
| | | $(".jimu-widget-Layermanagement .tree-layer-opcity ul").append(liC) |
| | | |
| | | $(".jimu-widget-Layermanagement .tree-layer-opcity").stop().show(); |
| | | |
| | | layui.use("slider", function () { |
| | | |
| | | layui.slider.render({ |
| | | elem: '#' + layerId + 'Layer', |
| | | min: 0, |
| | | max: 10, |
| | | value: that[layerId].alpha * 10, |
| | | step: 1, |
| | | theme: '#1E9FFF', |
| | | setTips: function (value) { //自定义提示文本 |
| | | return value / 10; |
| | | }, |
| | | change: function (value) { |
| | | that[layerId].alpha = value / 10 |
| | | } |
| | | }); |
| | | |
| | | }) |
| | | |
| | | }) |
| | | |
| | | $(".jimu-widget-Layermanagement .layer-list ul").on("click", "li .setup", function () { |
| | | |
| | | var layerId = $(this).parents('li').attr('itemid'); |
| | | |
| | | that.map.scene.imageryLayers.raise(that[layerId]); |
| | | |
| | | if ($(this).parents('li').prev().length > 0) { |
| | | $(this).parents('li').prev().before($(this).parents('li')); |
| | | } |
| | | |
| | | }) |
| | | |
| | | $(".jimu-widget-Layermanagement .layer-list ul").on("click", "li .setdown", function () { |
| | | |
| | | var layerId = $(this).parents('li').attr('itemid'); |
| | | |
| | | that.map.scene.imageryLayers.lower(that[layerId]); |
| | | |
| | | if ($(this).parents('li').next().length > 0) { |
| | | $(this).parents('li').next().after($(this).parents('li')); |
| | | } |
| | | |
| | | }) |
| | | |
| | | $(".jimu-widget-Layermanagement .tree-layer-opcity .close").click(function () { |
| | | $(".jimu-widget-Layermanagement .tree-layer-opcity").stop().hide(); |
| | | }) |
| | | |
| | | }, |
| | | |
| | | closeZtreeBox: function (item) { |
| | | if (item != this.name) { |
| | | $('#ztree_container').stop().hide(); |
| | | appendItem: function (item, obj, layer) { |
| | | var that = this; |
| | | if (item == this.name) { |
| | | |
| | | $(".jimu-widget-Layermanagement .layer-list ul .no-data").stop().hide(); |
| | | var flag = true; |
| | | var liList = $(".jimu-widget-Layermanagement .layer-list ul li"); |
| | | for (var i = 0; i < liList.length; i++) { |
| | | if ($(liList[i]).attr('itemid') && $(liList[i]).attr('itemid') == obj.id) { |
| | | flag = false |
| | | } |
| | | } |
| | | |
| | | if (flag == true) { |
| | | var liItem = $("<li itemid='" + obj.id + "' itemtitle='" + obj.title + "'> <div>" + |
| | | "<span title='" + obj.title + "'>" + |
| | | obj.title + |
| | | "</span>" + |
| | | "<button type='button' class='layui-btn layui-btn-normal layui-btn-sm control-btn layer-opacity' title='透明度调整'>" + |
| | | "<img src='./images/工具(用以切换图层的透明度).png' alt=''>" + |
| | | "</button>" + |
| | | "<button type='button' class='layui-btn layui-btn-normal layui-btn-sm control-btn setup' title='向上移动图层'>" + |
| | | "<img src='./images/向上移动.png' alt=''>" + |
| | | "</button>" + |
| | | "<button type='button' class='layui-btn layui-btn-normal layui-btn-sm control-btn setdown' title='向下移动图层'>" + |
| | | "<img src='./images/向下移动.png' alt=''>" + |
| | | "</button>" + |
| | | "</div> </li>"); |
| | | |
| | | that[obj.id] = layer; |
| | | |
| | | $(".jimu-widget-Layermanagement .layer-list ul").prepend(liItem); |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | }, |
| | | |
| | | removeItem: function (item, obj) { |
| | | if (item == this.name) { |
| | | var liList = $(".jimu-widget-Layermanagement .layer-list ul li"); |
| | | for (var i = 0; i < liList.length; i++) { |
| | | if ($(liList[i]).attr('itemid') && $(liList[i]).attr('itemid') == obj.id) { |
| | | $(liList[i]).remove(); |
| | | } |
| | | } |
| | | |
| | | if ($(".jimu-widget-Layermanagement .layer-list ul li").length == 1) { |
| | | $(".jimu-widget-Layermanagement .layer-list ul .no-data").stop().show(); |
| | | $(".jimu-widget-Layermanagement .tree-layer-opcity").stop().hide(); |
| | | } |
| | | |
| | | } |
| | | }, |
| | | |
| | | onOpen: function () { |
| | | |
| | | |
| | | }, |
| | | |
| | | onClose: function () { |