Here is my code so, far, I am trying to understand how to identify what RadPanelItem was clicked and fire the OnClientItemClickedEvent accordingly.
My application is to toggle map layers on or off depending on what PanelItem is clicked however I can't seem to figure out how to iterate the PanelItems and toggle the Layers accordingly.
BONUS: How do add a check box or some other UI to each PanelItem to indicate if the Item is toggled on or off?
Any help would be appreciated.
Thanks.
My application is to toggle map layers on or off depending on what PanelItem is clicked however I can't seem to figure out how to iterate the PanelItems and toggle the Layers accordingly.
BONUS: How do add a check box or some other UI to each PanelItem to indicate if the Item is toggled on or off?
Any help would be appreciated.
Thanks.
01.<script type="text/javascript">02. var geocoder;03. var layers = [];04. 05. layers[0] = new google.maps.KmlLayer('OfficeLocations.kml',06. { preserveViewport: true });07. 08. layers[1] = new google.maps.KmlLayer('http://www.geocodezip.com/geoxml3_test/utah-hunt_com_DeerSouthern_kml.xml',09. { preserveViewport: true });10. 11. layers[2] = new google.maps.KmlLayer('police.kml',12. { preserveViewport: true });13. 14. layers[3] = new google.maps.KmlLayer('waste.kml',15. { preserveViewport: true });16. var map;17. 18. function initialize() {19. geocoder = new google.maps.Geocoder();20. var mapOptions = {21. center: { lat: 44.0527524, lng: -80.1875065 },22. zoom: 1123. };24. map = new google.maps.Map(document.getElementById('map-canvas'),25. mapOptions);26. }27. 28. function toggleLayers(i) {29. 30. if (layers[i].getMap() == null) {31. layers[i].setMap(map);32. }33. else {34. layers[i].setMap(null);35. }36. document.getElementById('status').innerHTML += "toggleLayers(" + i + ") [setMap(" + layers[i].getMap() + "] returns status: " + layers[i].getStatus() + "<br>";37. }38. 39. function codeAddress() {40. var address = document.getElementById("address").value;41. geocoder.geocode({ 'address': address }, function (results, status) {42. if (status == google.maps.GeocoderStatus.OK) {43. map.setCenter(results[0].geometry.location);44. marker.setPosition(results[0].geometry.location);45. map.setZoom(14);46. }47. else {48. alert("Geocode was not successful for the following reason: " + status);49. }50. });51. }52. 53. google.maps.event.addDomListener(window, 'load', initialize);54. 55. </script>56.<script>57. function OnClientItemClicked(sender, args) {58. var item = args.get_item(); 59. if (item.get_level() == 0) { 60. toggleLayers(0); } 61. }62. </script>63. <telerik:RadPanelBar ID="RadPanelBar1" runat="server" Width="300px" Skin="Silk" OnClientItemClicked="OnClientItemClicked">64. <Items>65. <telerik:RadPanelItem runat="server" Text="Government Services" Expanded="true" ImageUrl="images/icons/information.gif">66. <Items>67. <telerik:RadPanelItem runat="server" Text="Office Locations" ImageUrl="images/icons/building.gif">68. </telerik:RadPanelItem>69. <telerik:RadPanelItem runat="server" Text="Police Stations" ImageUrl="images/icons/shield.gif">70. </telerik:RadPanelItem>71. <telerik:RadPanelItem runat="server" Text="Waste Disposal" ImageUrl="images/icons/lorry.gif">72. </telerik:RadPanelItem>73. </Items>74. </telerik:RadPanelItem>75. </telerik:RadPanelBar>