[Users] Disable Nodes on Zoom Event
IT Intern
itintern12 at gmail.com
Thu Oct 28 17:17:25 CEST 2010
My apologies, just realized it is a patch file not a .js, but I still need
to know where exactly it goes...
On Thu, Oct 28, 2010 at 11:15 AM, IT Intern <itintern12 at gmail.com> wrote:
> That's quite awesome! Thanks Matt. So now where do I apply this patch :p
>
> Do I just copy the file into
> lib/GeoExt/widgets/treeand override the old LayerNode.js no worries???
>
> cheers,
>
> elshae
>
>
>
> On Thu, Oct 28, 2010 at 10:46 AM, Matt Priour <mpriour at kestrelcomputer.com
> > wrote:
>
>> OpenLayers already has a Map moveend event handler that will check to
>> see if the layer is still in range (maxExtent, minResolution, maxResolution,
>> minScale & maxScale are all tested)
>> You should use one of these configuration options (maxResolution,
>> minResolution are easiest) on the layers and let OL do the turning on/off
>> layers for you.
>>
>> To have your GeoExt LayerNodes respond by enabling/disabling when layers
>> are in/out of range, you can apply the autoDisable patch [1] attached to
>> Ticket #235 (http://trac.geoext.org/attachment/ticket/235)
>>
>> [1]
>> http://trac.geoext.org/attachment/ticket/235/autoDisableLayerNode.patch
>>
>> Matt Priour
>> Kestrel Computer Consulting
>>
>>
>>
>> *From:* IT Intern <itintern12 at gmail.com>
>> *Sent:* Thursday, October 28, 2010 9:08 AM
>> *To:* users at geoext.org
>> *Subject:* [Users] Disable Nodes on Zoom Event
>>
>> Hello GeoExt Users,
>>
>> I have a zoom event that when a user zoom in and out of my map certain
>> layers I setVisibility(false). Now what I would like to do is have another
>> event inside that event which disables the nodes of those layers when their
>> setVisibilty(false) and enables them back when setVisibility(true). I have
>> some code and it kinda works, but the problem is the checkchange event does
>> not only work when the zoomend event is done, but also anytime a user clicks
>> the layer nodes. I played a little with stopPropagation and that didn't do
>> anything for me. Actually I think my zoomend event could be much better
>> coded and I would really love some suggestions. I appreciate everyone
>> taking their time to help me :)
>>
>> elshae
>>
>> Code:
>>
>> map.events.on({ "zoomend": function (e) {
>>
>> layerTree.on("checkchange", function (node, checked) {
>> alert(node.text + "Inside event");
>> if(checked == false)
>> node.disable();
>> else if(checked == true)
>> node.enable();
>>
>> });
>>
>> if (this.getZoom() > 7) {
>> tib_villages.setVisibility(true);
>> tib_lakes.setVisibility(true);
>> tib_townships.setVisibility(true);
>>
>>
>> }
>> else {
>>
>> tib_villages.setVisibility(false);
>> tib_lakes.setVisibility(false);
>> tib_townships.setVisibility(false);
>>
>> //alert(layerTree.tib_villages.node.text);
>>
>> if (this.getZoom() > 5) {
>> infrastructure.setVisibility(true);
>> geography.setVisibility(true);
>> geography2.setVisibility(true);
>> tib_countys.setVisibility(true);
>>
>> }
>> else{
>> infrastructure.setVisibility(false);
>> geography.setVisibility(false);
>> geography2.setVisibility(false);
>> tib_countys.setVisibility(false);
>> }
>> }//end else
>>
>> }//end function (e)
>>
>> }); //end map.events.on
>>
>> ------------------------------
>>
>> _______________________________________________
>> Users mailing list
>> Users at geoext.org
>> http://www.geoext.org/cgi-bin/mailman/listinfo/users
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.geoext.org/pipermail/users/attachments/20101028/f5c3b3d4/attachment.htm
More information about the Users
mailing list