POST
|
//Create a menu with a list of operational layers. Each menu item contains a check box
//that allows users to toggle layer visibility.
function addLayerList(layers, operational) {
var layerList = buildLayerVisibleList(layers, operational);
if (layerList.length > 0) {
//create a menu of layers
//layerList.reverse();
var menu = new dijit.Menu({
id: 'layerMenu'
});
menu.addChild(new dijit.CheckedMenuItem({
label: "Elevation",
checked: false,
onChange: function () {
var e1 = map.getLayer("Elevation");
e1.setVisibility(!e1.visible);
var e2 = map2.getLayer("Elevation");
e2.setVisibility(!e2.visible);
}
}));
menu.addChild(new dijit.CheckedMenuItem({
label: "Water Depth",
checked: true,
onChange: function (checked) {
for (var i = 0; i < SBDLayers.length; i++) {
SBDLayers.setVisibility(checked);
var e2 = map2.getLayer(SBDLayers.id);
e2.setVisibility(checked);
}
}
}));
menu.addChild(new dijit.CheckedMenuItem({
label: "Dune Susceptibility",
checked: true,
onChange: function (checked) {
for (var i = 0; i < SBDELayers.length; i++) {
SBDELayers.setVisibility(checked);
var e2 = map2.getLayer(SBDELayers.id);
e2.setVisibility(checked);
}
}
}));
dojo.forEach(layerList, function (layer) {
menu.addChild(new dijit.CheckedMenuItem({
label: layer.title,
checked: layer.visible,
onChange: function (checked) {
if (!operational) {
var e2 = map2.getLayer(layer.layer.id);
e2.setVisibility(checked);
layer.layer.setVisibility(!layer.layer.visible);
} else if (layer.layer.featureCollection) {
//turn off all the layers in the feature collection even
//though only the main layer is listed in the layer list
dojo.forEach(layer.layer.featureCollection.layers, function (layer) {
layer.layerObject.setVisibility(!layer.layerObject.visible);
});
} else {
layer.layer.setVisibility(!layer.layer.visible);
}
}
}));
});
var button = new dijit.form.DropDownButton({
label: i18n.tools.layers.label,
id: "layerBtn",
iconClass: "esriLayerIcon",
title: i18n.tools.layers.title,
dropDown: menu
});
dojo.byId('webmap-toolbar-center').appendChild(button.domNode);
}
}
//build a list of layers for the toggle layer list - this list
//is slightly different than the legend because we don't want to list lines,points,areas etc for each
//feature collection type.
function buildLayerVisibleList(layers, operational) {
var layerInfos = [];
dojo.forEach(layers, function (mapLayer, index) {
if (mapLayer.featureCollection && !mapLayer.layerObject) {
if (mapLayer.featureCollection.layers) {
//add the first layer in the layer collection... not all - when we turn off the layers we'll
//turn them all off
if (mapLayer.featureCollection.layers) {
layerInfos.push({
"layer": mapLayer,
"visible": mapLayer.visibility,
"title": mapLayer.title
});
}
}
} else if (mapLayer.layerObject) {
layerInfos.push({
layer: mapLayer.layerObject,
visible: mapLayer.layerObject.visible,
title: mapLayer.title
});
} else if (!operational) {//reallayers
if (mapLayer.id.indexOf("SBD-") === -1 && mapLayer.id.indexOf("SBDE-") === -1 && mapLayer.id.indexOf("Elevation") === -1) {
layerInfos.push({
"layer": mapLayer,
"visible": mapLayer.visible,
"title": mapLayer.title || mapLayer.displayname || mapLayer.name || mapLayer.folders[0].name
});
}
}
});
return layerInfos.sort(function(a,b){
return (a.layer.id < b.layer.id) ? -1 : 1;
});
}
... View more
06-03-2014
04:56 AM
|
0
|
0
|
360
|
POST
|
Thanks for the respond. The layerlist is the function that they used to compile the list of layers that will be available for display (I assume). You can see the function in the code below. There is a right toolbar with a dropdown menu of layers that can be "checked" to be visible on the map (hopefully you can visualize that). See if you can figure out what they did, here's the code: [HTML]var i18n; dojo.ready(function(){ i18n = dojo.i18n.getLocalization("esriTemplate","template"); var defaults = { layerInfos: [ /*{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":0.7,"type":"MapService","description":"..."} ,*/ {"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":0.7,"type":"FeatureLayer","description":"..."} /*,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} */,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} // ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} /*,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."}*/ ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-50","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-20","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-10","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-05","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-02","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ], layerInfos: [ /*{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":0.7,"type":"MapService","description":"..."} ,*/ {"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":0.7,"type":"FeatureLayer","description":"..."} /*,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} */,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} // ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} /*,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."}*/ ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"FeatureLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":false,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"...","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-50","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-20","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-10","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-05","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ,{"id":"SBDE-02","name":"...","url":"http://...","visibility":true,"opacity":1,"type":"KMLLayer","description":"..."} ], }; [/HTML] Have to attach the js code in another post, went over 10000 characters.
... View more
06-03-2014
04:55 AM
|
0
|
0
|
360
|
POST
|
Thanks! Since no one responded right away, I actually figured it out on http://www.w3schools.com/html/default.asp. I simply used <font size='3'></font>, ('3' being whatever size you want). I was searching js, prior, at the end of the day (which is why I couldn't figure it out, haha). It looks like this: [HTML]description3: "<span style='line-height: 20px;'><b><font size='3'>Map Info:</font></b> <p><a href='http://.....htm'><b>View Methodology</b></a></p> <p><a href='http://.....htm'><b>View Metadata</b></a></p></span>",[/HTML] Thanks though for taking time to respond!
... View more
06-03-2014
03:56 AM
|
0
|
0
|
553
|
POST
|
Can anyone lend their expertise on how to edit what layers are displayed under the layerlist? I have an app that is 95% complete and their are 4 layers that are no longer functioning that I want to remove from the list. The app was prebuilt but not finished and I have been tasked to complete it. I have figured out most of the coding on my own as I have been going along. I can post whatever code you need to assist. I know this is vague but hopefully someone is knowledgeable in this area. Thanks!
... View more
06-02-2014
12:37 PM
|
0
|
3
|
2460
|
POST
|
I have HTML code that I want to split up text sizes (Title is bigger than content underneath). Can anyone lend a hand as to how to add it in to what I already have? Here's what I have: [HTML]description3: "<span style='line-height: 20px;'><b>Map Info:</b></p> <a href='http://.....htm'><b>View Methodology</b></a><p> <a href='http://.....htm'><b>View Metadata</b></a></span>",[/HTML] In this example, the Title is "Map Info" and there are 2 URL links that are the content underneath. Any help is much appreciated.
... View more
05-29-2014
12:35 PM
|
0
|
4
|
914
|
POST
|
Awesome! I used the .set("open",false) from your code which worked perfectly. Here's what I did: var tp1 = new dijit.TitlePane({title: "Description"});
tp1.set('content', configOptions.description).set("open",false);
detailCp.addChild(tp1); Thanks for your help!
... View more
05-28-2014
04:43 AM
|
0
|
0
|
343
|
POST
|
Thanks for that. The way it is set up is that when you click on the toolbar button, the left pane appears. I have figured out in JS where that takes place and have changed some things around already. There is no specific TitlePane HTML code, just the leftpanel code I provided. Utilizing "inspect element" in Chrome, I have figured out the hierarchy of the TP. It goes boardercontainer, stackcontainer,contentpane,tp1,2,3.
... View more
05-27-2014
11:07 AM
|
0
|
0
|
343
|
POST
|
Basically I was given a project that was 75% complete and I have had to reverse engineer to figure out what the company had done. I am completely new to all of this and have been figuring it out as I go along. I posted the HTML code 3 posts ago but here it is again: [HTML]<div data-dojo-type="dijit.layout.BorderContainer" id="leftPane" data-dojo-props="design:'headline', gutters:false,region:'left'" style="height:100%;padding:0;display:none;"> </div>[/HTML] Let me know if you need more than that.
... View more
05-27-2014
10:27 AM
|
0
|
0
|
875
|
POST
|
I cant figure out how to add your suggestion to what I have: [HTML]<div data-dojo-type="dijit.layout.BorderContainer" id="leftPane" data-dojo-props="design:'headline', gutters:false,region:'left'" style="height:100%;padding:0;display:none;"> </div>[/HTML]
... View more
05-27-2014
09:56 AM
|
0
|
0
|
875
|
POST
|
Haha you know what assuming does...:D I figured the slashes for periods from the dojo webpage but can not seem to figure out where to integrate properly into the layout of my HTML. Ill keep messing with it. Thx.
... View more
05-27-2014
08:03 AM
|
0
|
0
|
875
|
POST
|
This should be an easy question that I can not figure out. How do I set the title pane to default closed on startup? Right now the default is open(expanded) when it loads. This is different then .leftpanevisibility to hide the entire content pane. Thanks!
... View more
05-27-2014
06:30 AM
|
0
|
13
|
2243
|
POST
|
I noticed the link you provided was for dojo v1.9 which is AMD? The entire project is in legacy and due to deadlines I can not convert it all to AMD (which I know is better). When I switch dojo to 1.7, which I was told is legacy) there is no code for the array. Am I looking at this correctly?
... View more
05-15-2014
05:53 AM
|
0
|
0
|
629
|
Title | Kudos | Posted |
---|---|---|
1 | 08-27-2014 01:56 PM | |
1 | 08-27-2014 12:44 PM | |
1 | 05-09-2016 12:32 PM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:23 AM
|