postrunner 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1225) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -3
  3. data/lib/postrunner/ActivitiesDB.rb +8 -9
  4. data/lib/postrunner/Activity.rb +7 -1
  5. data/lib/postrunner/ActivityView.rb +10 -2
  6. data/lib/postrunner/DataSources.rb +100 -0
  7. data/lib/postrunner/DeviceList.rb +40 -17
  8. data/lib/postrunner/Log.rb +25 -0
  9. data/lib/postrunner/Main.rb +9 -8
  10. data/lib/postrunner/RuntimeConfig.rb +1 -0
  11. data/lib/postrunner/TrackView.rb +39 -62
  12. data/lib/postrunner/version.rb +1 -1
  13. data/misc/openlayers/ol.css +1 -0
  14. data/misc/openlayers/ol.js +948 -0
  15. data/postrunner.gemspec +2 -2
  16. data/spec/PostRunner_spec.rb +22 -23
  17. data/spec/spec_helper.rb +34 -4
  18. metadata +11 -1214
  19. data/misc/openlayers/.gitignore +0 -7
  20. data/misc/openlayers/OpenLayers.debug.js +0 -85622
  21. data/misc/openlayers/OpenLayers.js +0 -1443
  22. data/misc/openlayers/OpenLayers.light.debug.js +0 -37230
  23. data/misc/openlayers/OpenLayers.light.js +0 -592
  24. data/misc/openlayers/OpenLayers.mobile.debug.js +0 -41831
  25. data/misc/openlayers/OpenLayers.mobile.js +0 -681
  26. data/misc/openlayers/apidoc_config/Languages.txt +0 -113
  27. data/misc/openlayers/apidoc_config/Menu.txt +0 -520
  28. data/misc/openlayers/apidoc_config/OL.css +0 -20
  29. data/misc/openlayers/apidoc_config/Topics.txt +0 -105
  30. data/misc/openlayers/art/arrows.svg +0 -127
  31. data/misc/openlayers/art/layer-switcher-maximize.svg +0 -128
  32. data/misc/openlayers/art/layer-switcher-minimize.svg +0 -142
  33. data/misc/openlayers/art/marker.svg +0 -25
  34. data/misc/openlayers/art/measuring-stick-off.svg +0 -36
  35. data/misc/openlayers/art/measuring-stick-on.svg +0 -36
  36. data/misc/openlayers/art/panning-hand-off.svg +0 -44
  37. data/misc/openlayers/art/panning-hand-on.svg +0 -44
  38. data/misc/openlayers/art/slider.svg +0 -71
  39. data/misc/openlayers/art/zoom-world.svg +0 -193
  40. data/misc/openlayers/art/zoombar.svg +0 -73
  41. data/misc/openlayers/authors.txt +0 -56
  42. data/misc/openlayers/build/README.txt +0 -46
  43. data/misc/openlayers/build/build.py +0 -158
  44. data/misc/openlayers/build/buildUncompressed.py +0 -25
  45. data/misc/openlayers/build/closure-compiler/Externs.js +0 -50
  46. data/misc/openlayers/build/full.cfg +0 -14
  47. data/misc/openlayers/build/license.txt +0 -57
  48. data/misc/openlayers/build/light.cfg +0 -32
  49. data/misc/openlayers/build/lite.cfg +0 -17
  50. data/misc/openlayers/build/mobile.cfg +0 -36
  51. data/misc/openlayers/build/tests.cfg +0 -11
  52. data/misc/openlayers/doc_config/Data/ClassHierarchy.nd +0 -0
  53. data/misc/openlayers/doc_config/Data/ConfigFileInfo.nd +0 -0
  54. data/misc/openlayers/doc_config/Data/FileInfo.nd +0 -323
  55. data/misc/openlayers/doc_config/Data/ImageFileInfo.nd +0 -0
  56. data/misc/openlayers/doc_config/Data/ImageReferenceTable.nd +0 -0
  57. data/misc/openlayers/doc_config/Data/IndexInfo.nd +0 -0
  58. data/misc/openlayers/doc_config/Data/PreviousMenuState.nd +0 -0
  59. data/misc/openlayers/doc_config/Data/PreviousSettings.nd +0 -0
  60. data/misc/openlayers/doc_config/Data/SymbolTable.nd +0 -0
  61. data/misc/openlayers/doc_config/Languages.txt +0 -113
  62. data/misc/openlayers/doc_config/Menu.txt +0 -520
  63. data/misc/openlayers/doc_config/OL.css +0 -20
  64. data/misc/openlayers/doc_config/Topics.txt +0 -102
  65. data/misc/openlayers/examples/Jugl.js +0 -8
  66. data/misc/openlayers/examples/KMLParser.html +0 -57
  67. data/misc/openlayers/examples/SLDSelect.html +0 -202
  68. data/misc/openlayers/examples/WMSDescribeLayerParser.html +0 -52
  69. data/misc/openlayers/examples/accelerometer.html +0 -100
  70. data/misc/openlayers/examples/accessible-click-control.html +0 -69
  71. data/misc/openlayers/examples/accessible-click-control.js +0 -199
  72. data/misc/openlayers/examples/accessible-panel.html +0 -130
  73. data/misc/openlayers/examples/accessible-panel.js +0 -64
  74. data/misc/openlayers/examples/accessible.html +0 -167
  75. data/misc/openlayers/examples/all-overlays-google.html +0 -34
  76. data/misc/openlayers/examples/all-overlays-google.js +0 -19
  77. data/misc/openlayers/examples/all-overlays.html +0 -76
  78. data/misc/openlayers/examples/anchor-permalink.html +0 -29
  79. data/misc/openlayers/examples/anchor-permalink.js +0 -13
  80. data/misc/openlayers/examples/animated_panning.html +0 -98
  81. data/misc/openlayers/examples/animator.js +0 -670
  82. data/misc/openlayers/examples/arcgis93rest.html +0 -69
  83. data/misc/openlayers/examples/arcgiscache_ags.html +0 -221
  84. data/misc/openlayers/examples/arcgiscache_direct.html +0 -108
  85. data/misc/openlayers/examples/arcgiscache_jsonp.html +0 -106
  86. data/misc/openlayers/examples/arcims-thematic.html +0 -82
  87. data/misc/openlayers/examples/arcims.html +0 -57
  88. data/misc/openlayers/examples/attribution.html +0 -60
  89. data/misc/openlayers/examples/behavior-fixed-http-gml.html +0 -56
  90. data/misc/openlayers/examples/bing-tiles-restrictedzoom.html +0 -43
  91. data/misc/openlayers/examples/bing-tiles-restrictedzoom.js +0 -37
  92. data/misc/openlayers/examples/bing-tiles.html +0 -39
  93. data/misc/openlayers/examples/bing-tiles.js +0 -31
  94. data/misc/openlayers/examples/bing.html +0 -64
  95. data/misc/openlayers/examples/bootstrap.html +0 -81
  96. data/misc/openlayers/examples/bootstrap.js +0 -31
  97. data/misc/openlayers/examples/boxes-vector.html +0 -59
  98. data/misc/openlayers/examples/boxes.html +0 -58
  99. data/misc/openlayers/examples/browser.html +0 -152
  100. data/misc/openlayers/examples/browser.js +0 -241
  101. data/misc/openlayers/examples/buffer.html +0 -54
  102. data/misc/openlayers/examples/cache-read.html +0 -36
  103. data/misc/openlayers/examples/cache-read.js +0 -36
  104. data/misc/openlayers/examples/cache-write.html +0 -37
  105. data/misc/openlayers/examples/cache-write.js +0 -46
  106. data/misc/openlayers/examples/canvas-hit-detection.html +0 -31
  107. data/misc/openlayers/examples/canvas-hit-detection.js +0 -88
  108. data/misc/openlayers/examples/canvas-inspector.html +0 -53
  109. data/misc/openlayers/examples/canvas-inspector.js +0 -91
  110. data/misc/openlayers/examples/canvas.html +0 -35
  111. data/misc/openlayers/examples/canvas.js +0 -57
  112. data/misc/openlayers/examples/cartodb-geojson.html +0 -71
  113. data/misc/openlayers/examples/click-handler.html +0 -232
  114. data/misc/openlayers/examples/click.html +0 -91
  115. data/misc/openlayers/examples/clientzoom.html +0 -72
  116. data/misc/openlayers/examples/clientzoom.js +0 -39
  117. data/misc/openlayers/examples/controls.html +0 -86
  118. data/misc/openlayers/examples/cql-format.html +0 -54
  119. data/misc/openlayers/examples/cql-format.js +0 -61
  120. data/misc/openlayers/examples/cross-origin-xml.html +0 -32
  121. data/misc/openlayers/examples/cross-origin-xml.js +0 -25
  122. data/misc/openlayers/examples/cross-origin.html +0 -36
  123. data/misc/openlayers/examples/cross-origin.js +0 -39
  124. data/misc/openlayers/examples/custom-control.html +0 -68
  125. data/misc/openlayers/examples/custom-style.html +0 -66
  126. data/misc/openlayers/examples/data/4_m_citylights_lg.gif +0 -0
  127. data/misc/openlayers/examples/data/line.json +0 -10
  128. data/misc/openlayers/examples/data/point.json +0 -8
  129. data/misc/openlayers/examples/data/poly.json +0 -9
  130. data/misc/openlayers/examples/data/roads.json +0 -349
  131. data/misc/openlayers/examples/data/tazdem.tiff +0 -0
  132. data/misc/openlayers/examples/debug.html +0 -77
  133. data/misc/openlayers/examples/document-drag.html +0 -43
  134. data/misc/openlayers/examples/donut.html +0 -62
  135. data/misc/openlayers/examples/donut.js +0 -44
  136. data/misc/openlayers/examples/drag-feature.html +0 -114
  137. data/misc/openlayers/examples/draw-feature.html +0 -143
  138. data/misc/openlayers/examples/draw-undo-redo.html +0 -38
  139. data/misc/openlayers/examples/draw-undo-redo.js +0 -45
  140. data/misc/openlayers/examples/dynamic-text-layer.html +0 -101
  141. data/misc/openlayers/examples/editing-methods.html +0 -58
  142. data/misc/openlayers/examples/editing-methods.js +0 -83
  143. data/misc/openlayers/examples/editingtoolbar-outside.html +0 -56
  144. data/misc/openlayers/examples/editingtoolbar.html +0 -55
  145. data/misc/openlayers/examples/encoded-polyline.html +0 -47
  146. data/misc/openlayers/examples/events.html +0 -155
  147. data/misc/openlayers/examples/example-list.html +0 -302
  148. data/misc/openlayers/examples/example.html +0 -25
  149. data/misc/openlayers/examples/example.js +0 -23
  150. data/misc/openlayers/examples/feature-events.html +0 -46
  151. data/misc/openlayers/examples/feature-events.js +0 -67
  152. data/misc/openlayers/examples/filter-strategy.html +0 -54
  153. data/misc/openlayers/examples/filter-strategy.js +0 -84
  154. data/misc/openlayers/examples/filter.html +0 -107
  155. data/misc/openlayers/examples/fractional-zoom.html +0 -72
  156. data/misc/openlayers/examples/fullScreen.html +0 -53
  157. data/misc/openlayers/examples/fullScreen.js +0 -20
  158. data/misc/openlayers/examples/fusiontables.html +0 -35
  159. data/misc/openlayers/examples/fusiontables.js +0 -51
  160. data/misc/openlayers/examples/game-accel-ball.html +0 -82
  161. data/misc/openlayers/examples/geojson-reprojected.html +0 -46
  162. data/misc/openlayers/examples/geojson-reprojected.js +0 -27
  163. data/misc/openlayers/examples/geojson-reprojected.json +0 -1
  164. data/misc/openlayers/examples/geojson.html +0 -77
  165. data/misc/openlayers/examples/geolocation.html +0 -41
  166. data/misc/openlayers/examples/geolocation.js +0 -112
  167. data/misc/openlayers/examples/georss-flickr.html +0 -119
  168. data/misc/openlayers/examples/georss-markers.html +0 -45
  169. data/misc/openlayers/examples/georss.html +0 -63
  170. data/misc/openlayers/examples/georss.xml +0 -378
  171. data/misc/openlayers/examples/getfeature-wfs.html +0 -84
  172. data/misc/openlayers/examples/getfeatureinfo-control.html +0 -221
  173. data/misc/openlayers/examples/getfeatureinfo-popup.html +0 -96
  174. data/misc/openlayers/examples/gml-layer.html +0 -48
  175. data/misc/openlayers/examples/gml/line.xml +0 -42
  176. data/misc/openlayers/examples/gml/multipoint.xml +0 -70
  177. data/misc/openlayers/examples/gml/multipolygon.xml +0 -106
  178. data/misc/openlayers/examples/gml/owls.xml +0 -156
  179. data/misc/openlayers/examples/gml/point.xml +0 -42
  180. data/misc/openlayers/examples/gml/polygon.xml +0 -89
  181. data/misc/openlayers/examples/google-static.html +0 -39
  182. data/misc/openlayers/examples/google-static.js +0 -61
  183. data/misc/openlayers/examples/google-v3-alloverlays.html +0 -33
  184. data/misc/openlayers/examples/google-v3-alloverlays.js +0 -35
  185. data/misc/openlayers/examples/google-v3.html +0 -35
  186. data/misc/openlayers/examples/google-v3.js +0 -39
  187. data/misc/openlayers/examples/google.html +0 -69
  188. data/misc/openlayers/examples/graphic-name.html +0 -42
  189. data/misc/openlayers/examples/graphic-name.js +0 -67
  190. data/misc/openlayers/examples/graticule.html +0 -116
  191. data/misc/openlayers/examples/gutter.html +0 -55
  192. data/misc/openlayers/examples/highlight-feature.html +0 -88
  193. data/misc/openlayers/examples/hover-handler.html +0 -216
  194. data/misc/openlayers/examples/image-layer.html +0 -76
  195. data/misc/openlayers/examples/img/check-round-green.png +0 -0
  196. data/misc/openlayers/examples/img/check-round-grey.png +0 -0
  197. data/misc/openlayers/examples/img/list.png +0 -0
  198. data/misc/openlayers/examples/img/locate.png +0 -0
  199. data/misc/openlayers/examples/img/marker_shadow.png +0 -0
  200. data/misc/openlayers/examples/img/minus1.png +0 -0
  201. data/misc/openlayers/examples/img/mobile-layers.png +0 -0
  202. data/misc/openlayers/examples/img/mobile-loc.png +0 -0
  203. data/misc/openlayers/examples/img/mobile-zoombar.png +0 -0
  204. data/misc/openlayers/examples/img/openlayers.png +0 -0
  205. data/misc/openlayers/examples/img/popupMatrix.jpg +0 -0
  206. data/misc/openlayers/examples/img/small.jpg +0 -0
  207. data/misc/openlayers/examples/img/thinlong.jpg +0 -0
  208. data/misc/openlayers/examples/img/widelong.jpg +0 -0
  209. data/misc/openlayers/examples/img/wideshort.jpg +0 -0
  210. data/misc/openlayers/examples/intersects.html +0 -193
  211. data/misc/openlayers/examples/kamap.html +0 -45
  212. data/misc/openlayers/examples/kamap.txt +0 -508
  213. data/misc/openlayers/examples/kinetic.html +0 -44
  214. data/misc/openlayers/examples/kinetic.js +0 -27
  215. data/misc/openlayers/examples/kml-layer.html +0 -36
  216. data/misc/openlayers/examples/kml-layer.js +0 -22
  217. data/misc/openlayers/examples/kml-pointtrack.html +0 -40
  218. data/misc/openlayers/examples/kml-pointtrack.js +0 -52
  219. data/misc/openlayers/examples/kml-track.html +0 -42
  220. data/misc/openlayers/examples/kml-track.js +0 -40
  221. data/misc/openlayers/examples/kml-track.kml +0 -3359
  222. data/misc/openlayers/examples/kml/lines.kml +0 -275
  223. data/misc/openlayers/examples/kml/styles.kml +0 -21
  224. data/misc/openlayers/examples/kml/sundials.kml +0 -2273
  225. data/misc/openlayers/examples/label-scale.html +0 -34
  226. data/misc/openlayers/examples/label-scale.js +0 -72
  227. data/misc/openlayers/examples/late-render.html +0 -48
  228. data/misc/openlayers/examples/layer-opacity.html +0 -95
  229. data/misc/openlayers/examples/layerLoadMonitoring.html +0 -135
  230. data/misc/openlayers/examples/layerswitcher.html +0 -60
  231. data/misc/openlayers/examples/light-basic.html +0 -35
  232. data/misc/openlayers/examples/light-basic.js +0 -67
  233. data/misc/openlayers/examples/lite.html +0 -39
  234. data/misc/openlayers/examples/mapbox.html +0 -30
  235. data/misc/openlayers/examples/mapbox.js +0 -21
  236. data/misc/openlayers/examples/mapguide.html +0 -155
  237. data/misc/openlayers/examples/mapquest.html +0 -28
  238. data/misc/openlayers/examples/mapquest.js +0 -36
  239. data/misc/openlayers/examples/mapserver.html +0 -41
  240. data/misc/openlayers/examples/mapserver_untiled.html +0 -43
  241. data/misc/openlayers/examples/marker-shadow.html +0 -152
  242. data/misc/openlayers/examples/markerResize.html +0 -60
  243. data/misc/openlayers/examples/markers.html +0 -59
  244. data/misc/openlayers/examples/markersTextLayer.html +0 -41
  245. data/misc/openlayers/examples/measure.html +0 -203
  246. data/misc/openlayers/examples/mobile-base.js +0 -167
  247. data/misc/openlayers/examples/mobile-drawing.html +0 -52
  248. data/misc/openlayers/examples/mobile-drawing.js +0 -71
  249. data/misc/openlayers/examples/mobile-jq.html +0 -76
  250. data/misc/openlayers/examples/mobile-jq.js +0 -159
  251. data/misc/openlayers/examples/mobile-layers.html +0 -62
  252. data/misc/openlayers/examples/mobile-layers.js +0 -71
  253. data/misc/openlayers/examples/mobile-navigation.html +0 -52
  254. data/misc/openlayers/examples/mobile-navigation.js +0 -24
  255. data/misc/openlayers/examples/mobile-sencha.html +0 -184
  256. data/misc/openlayers/examples/mobile-sencha.js +0 -198
  257. data/misc/openlayers/examples/mobile-wmts-vienna.css +0 -205
  258. data/misc/openlayers/examples/mobile-wmts-vienna.html +0 -27
  259. data/misc/openlayers/examples/mobile-wmts-vienna.js +0 -281
  260. data/misc/openlayers/examples/mobile.html +0 -56
  261. data/misc/openlayers/examples/mobile.js +0 -39
  262. data/misc/openlayers/examples/modify-feature.html +0 -193
  263. data/misc/openlayers/examples/mouse-position.html +0 -67
  264. data/misc/openlayers/examples/mousewheel-interval.html +0 -63
  265. data/misc/openlayers/examples/multiserver.html +0 -52
  266. data/misc/openlayers/examples/multitouch.html +0 -28
  267. data/misc/openlayers/examples/mvs.html +0 -129
  268. data/misc/openlayers/examples/navigation-control.html +0 -44
  269. data/misc/openlayers/examples/navigation-history.html +0 -62
  270. data/misc/openlayers/examples/navtoolbar-alwaysZoom.html +0 -85
  271. data/misc/openlayers/examples/navtoolbar-outsidemap.html +0 -47
  272. data/misc/openlayers/examples/navtoolbar.html +0 -46
  273. data/misc/openlayers/examples/offline-storage.html +0 -44
  274. data/misc/openlayers/examples/offline-storage.js +0 -199
  275. data/misc/openlayers/examples/openls.html +0 -88
  276. data/misc/openlayers/examples/ordering.html +0 -221
  277. data/misc/openlayers/examples/osm-google.html +0 -32
  278. data/misc/openlayers/examples/osm-google.js +0 -23
  279. data/misc/openlayers/examples/osm-grayscale.html +0 -77
  280. data/misc/openlayers/examples/osm-marker-popup.html +0 -32
  281. data/misc/openlayers/examples/osm-marker-popup.js +0 -39
  282. data/misc/openlayers/examples/osm.html +0 -41
  283. data/misc/openlayers/examples/osm/sutton_coldfield.osm +0 -662
  284. data/misc/openlayers/examples/overviewmap.html +0 -120
  285. data/misc/openlayers/examples/pan-zoom-panels.html +0 -97
  286. data/misc/openlayers/examples/panel.html +0 -99
  287. data/misc/openlayers/examples/point-grid.html +0 -75
  288. data/misc/openlayers/examples/point-grid.js +0 -33
  289. data/misc/openlayers/examples/point-track-markers.html +0 -72
  290. data/misc/openlayers/examples/polar-projections.html +0 -41
  291. data/misc/openlayers/examples/polar-projections.js +0 -84
  292. data/misc/openlayers/examples/popupMatrix.html +0 -652
  293. data/misc/openlayers/examples/proxy.cgi +0 -81
  294. data/misc/openlayers/examples/regular-polygons.html +0 -177
  295. data/misc/openlayers/examples/resize-features.html +0 -101
  296. data/misc/openlayers/examples/restricted-extent.html +0 -77
  297. data/misc/openlayers/examples/rotate-features.html +0 -113
  298. data/misc/openlayers/examples/select-feature-multilayer.html +0 -129
  299. data/misc/openlayers/examples/select-feature-openpopup.html +0 -106
  300. data/misc/openlayers/examples/select-feature.html +0 -170
  301. data/misc/openlayers/examples/setextent.html +0 -39
  302. data/misc/openlayers/examples/simplify-linestring.html +0 -103
  303. data/misc/openlayers/examples/simplify-linestring.js +0 -599
  304. data/misc/openlayers/examples/single-tile.html +0 -33
  305. data/misc/openlayers/examples/single-tile.js +0 -20
  306. data/misc/openlayers/examples/sld-parser.html +0 -70
  307. data/misc/openlayers/examples/sld.html +0 -31
  308. data/misc/openlayers/examples/sld.js +0 -102
  309. data/misc/openlayers/examples/snap-grid.html +0 -78
  310. data/misc/openlayers/examples/snap-grid.js +0 -81
  311. data/misc/openlayers/examples/snap-split.html +0 -281
  312. data/misc/openlayers/examples/snapping.html +0 -324
  313. data/misc/openlayers/examples/sos.html +0 -189
  314. data/misc/openlayers/examples/spherical-mercator.html +0 -120
  315. data/misc/openlayers/examples/split-feature.html +0 -116
  316. data/misc/openlayers/examples/strategy-bbox.html +0 -106
  317. data/misc/openlayers/examples/strategy-cluster-extended.html +0 -125
  318. data/misc/openlayers/examples/strategy-cluster-extended.js +0 -247
  319. data/misc/openlayers/examples/strategy-cluster-threshold.html +0 -149
  320. data/misc/openlayers/examples/strategy-cluster.html +0 -238
  321. data/misc/openlayers/examples/strategy-paging.html +0 -115
  322. data/misc/openlayers/examples/style-rules.html +0 -49
  323. data/misc/openlayers/examples/style-rules.js +0 -99
  324. data/misc/openlayers/examples/style.css +0 -143
  325. data/misc/openlayers/examples/style.mobile-jq.css +0 -62
  326. data/misc/openlayers/examples/stylemap.html +0 -100
  327. data/misc/openlayers/examples/styles-context.html +0 -117
  328. data/misc/openlayers/examples/styles-rotation.html +0 -93
  329. data/misc/openlayers/examples/styles-unique.html +0 -109
  330. data/misc/openlayers/examples/sundials-spherical-mercator.html +0 -111
  331. data/misc/openlayers/examples/sundials.html +0 -107
  332. data/misc/openlayers/examples/symbolizers-fill-stroke-graphic.html +0 -141
  333. data/misc/openlayers/examples/tasmania/TasmaniaCities.xml +0 -40
  334. data/misc/openlayers/examples/tasmania/TasmaniaRoads.xml +0 -204
  335. data/misc/openlayers/examples/tasmania/TasmaniaStateBoundaries.xml +0 -92
  336. data/misc/openlayers/examples/tasmania/TasmaniaWaterBodies.xml +0 -162
  337. data/misc/openlayers/examples/tasmania/sld-tasmania.xml +0 -594
  338. data/misc/openlayers/examples/teleportation.html +0 -76
  339. data/misc/openlayers/examples/textfile.txt +0 -4
  340. data/misc/openlayers/examples/tile-origin.html +0 -38
  341. data/misc/openlayers/examples/tile-origin.js +0 -16
  342. data/misc/openlayers/examples/tilecache.html +0 -58
  343. data/misc/openlayers/examples/tms.html +0 -62
  344. data/misc/openlayers/examples/transform-feature.html +0 -123
  345. data/misc/openlayers/examples/transition.html +0 -70
  346. data/misc/openlayers/examples/using-proj4js.html +0 -109
  347. data/misc/openlayers/examples/using-proj4js.js +0 -132
  348. data/misc/openlayers/examples/utfgrid-geography-class.html +0 -51
  349. data/misc/openlayers/examples/utfgrid-geography-class.js +0 -62
  350. data/misc/openlayers/examples/utfgrid.html +0 -64
  351. data/misc/openlayers/examples/utfgrid.js +0 -61
  352. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/0/0.json +0 -1
  353. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/0/1.json +0 -1
  354. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/0/2.json +0 -1
  355. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/1/0.json +0 -1
  356. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/1/1.json +0 -1
  357. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/1/2.json +0 -1
  358. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/2/0.json +0 -1
  359. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/2/1.json +0 -1
  360. data/misc/openlayers/examples/utfgrid/bio_utfgrid/1/2/2.json +0 -1
  361. data/misc/openlayers/examples/utfgrid/geography-class/0/0/0.grid.json +0 -1
  362. data/misc/openlayers/examples/utfgrid/geography-class/1/0/0.grid.json +0 -1
  363. data/misc/openlayers/examples/utfgrid/geography-class/1/0/1.grid.json +0 -1
  364. data/misc/openlayers/examples/utfgrid/geography-class/1/1/0.grid.json +0 -1
  365. data/misc/openlayers/examples/utfgrid/geography-class/1/1/1.grid.json +0 -1
  366. data/misc/openlayers/examples/utfgrid/geography-class/2/0/0.grid.json +0 -1
  367. data/misc/openlayers/examples/utfgrid/geography-class/2/0/1.grid.json +0 -1
  368. data/misc/openlayers/examples/utfgrid/geography-class/2/0/2.grid.json +0 -1
  369. data/misc/openlayers/examples/utfgrid/geography-class/2/0/3.grid.json +0 -1
  370. data/misc/openlayers/examples/utfgrid/geography-class/2/1/0.grid.json +0 -1
  371. data/misc/openlayers/examples/utfgrid/geography-class/2/1/1.grid.json +0 -1
  372. data/misc/openlayers/examples/utfgrid/geography-class/2/1/2.grid.json +0 -1
  373. data/misc/openlayers/examples/utfgrid/geography-class/2/1/3.grid.json +0 -1
  374. data/misc/openlayers/examples/utfgrid/geography-class/2/2/0.grid.json +0 -1
  375. data/misc/openlayers/examples/utfgrid/geography-class/2/2/1.grid.json +0 -1
  376. data/misc/openlayers/examples/utfgrid/geography-class/2/2/2.grid.json +0 -1
  377. data/misc/openlayers/examples/utfgrid/geography-class/2/2/3.grid.json +0 -1
  378. data/misc/openlayers/examples/utfgrid/geography-class/2/3/0.grid.json +0 -1
  379. data/misc/openlayers/examples/utfgrid/geography-class/2/3/1.grid.json +0 -1
  380. data/misc/openlayers/examples/utfgrid/geography-class/2/3/2.grid.json +0 -1
  381. data/misc/openlayers/examples/utfgrid/geography-class/2/3/3.grid.json +0 -1
  382. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/0/0.json +0 -1
  383. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/0/1.json +0 -1
  384. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/0/2.json +0 -1
  385. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/1/0.json +0 -1
  386. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/1/1.json +0 -1
  387. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/1/2.json +0 -1
  388. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/2/0.json +0 -1
  389. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/2/1.json +0 -1
  390. data/misc/openlayers/examples/utfgrid/world_utfgrid/1/2/2.json +0 -1
  391. data/misc/openlayers/examples/utfgrid_twogrids.html +0 -51
  392. data/misc/openlayers/examples/utfgrid_twogrids.js +0 -70
  393. data/misc/openlayers/examples/vector-features-with-text.html +0 -138
  394. data/misc/openlayers/examples/vector-features.html +0 -149
  395. data/misc/openlayers/examples/vector-formats.html +0 -240
  396. data/misc/openlayers/examples/web-mercator.html +0 -50
  397. data/misc/openlayers/examples/web-mercator.js +0 -37
  398. data/misc/openlayers/examples/wfs-filter.html +0 -35
  399. data/misc/openlayers/examples/wfs-filter.js +0 -48
  400. data/misc/openlayers/examples/wfs-protocol-transactions.html +0 -104
  401. data/misc/openlayers/examples/wfs-protocol-transactions.js +0 -106
  402. data/misc/openlayers/examples/wfs-protocol.html +0 -55
  403. data/misc/openlayers/examples/wfs-reprojection.html +0 -42
  404. data/misc/openlayers/examples/wfs-reprojection.js +0 -60
  405. data/misc/openlayers/examples/wfs-snap-split.html +0 -292
  406. data/misc/openlayers/examples/wfs-spatial-filter.html +0 -37
  407. data/misc/openlayers/examples/wfs-spatial-filter.js +0 -36
  408. data/misc/openlayers/examples/wfs-states.html +0 -34
  409. data/misc/openlayers/examples/wfs-states.js +0 -35
  410. data/misc/openlayers/examples/wmc.html +0 -150
  411. data/misc/openlayers/examples/wms-long-url.html +0 -44
  412. data/misc/openlayers/examples/wms-long-url.js +0 -26
  413. data/misc/openlayers/examples/wms-untiled.html +0 -48
  414. data/misc/openlayers/examples/wms-v13.html +0 -57
  415. data/misc/openlayers/examples/wms.html +0 -49
  416. data/misc/openlayers/examples/wmst.html +0 -63
  417. data/misc/openlayers/examples/wmts-capabilities.html +0 -43
  418. data/misc/openlayers/examples/wmts-capabilities.js +0 -58
  419. data/misc/openlayers/examples/wmts-getfeatureinfo.html +0 -74
  420. data/misc/openlayers/examples/wmts-getfeatureinfo.js +0 -94
  421. data/misc/openlayers/examples/wmts.html +0 -41
  422. data/misc/openlayers/examples/wmts.js +0 -35
  423. data/misc/openlayers/examples/wps-client.html +0 -31
  424. data/misc/openlayers/examples/wps-client.js +0 -75
  425. data/misc/openlayers/examples/wps.html +0 -89
  426. data/misc/openlayers/examples/wps.js +0 -353
  427. data/misc/openlayers/examples/wrapDateLine.html +0 -73
  428. data/misc/openlayers/examples/xhtml.html +0 -42
  429. data/misc/openlayers/examples/xml.html +0 -161
  430. data/misc/openlayers/examples/xml/features.xml +0 -2
  431. data/misc/openlayers/examples/xml/georss-flickr.xml +0 -730
  432. data/misc/openlayers/examples/xml/track1.xml +0 -98
  433. data/misc/openlayers/examples/xml/wmsdescribelayer.xml +0 -5
  434. data/misc/openlayers/examples/xyz-esri.html +0 -45
  435. data/misc/openlayers/examples/yelp-georss.xml +0 -147
  436. data/misc/openlayers/examples/zoom.html +0 -68
  437. data/misc/openlayers/examples/zoom.js +0 -34
  438. data/misc/openlayers/examples/zoomLevels.html +0 -81
  439. data/misc/openlayers/examples/zoomify.html +0 -70
  440. data/misc/openlayers/img/blank.gif +0 -0
  441. data/misc/openlayers/img/cloud-popup-relative.png +0 -0
  442. data/misc/openlayers/img/drag-rectangle-off.png +0 -0
  443. data/misc/openlayers/img/drag-rectangle-on.png +0 -0
  444. data/misc/openlayers/img/east-mini.png +0 -0
  445. data/misc/openlayers/img/layer-switcher-maximize.png +0 -0
  446. data/misc/openlayers/img/layer-switcher-minimize.png +0 -0
  447. data/misc/openlayers/img/marker-blue.png +0 -0
  448. data/misc/openlayers/img/marker-gold.png +0 -0
  449. data/misc/openlayers/img/marker-green.png +0 -0
  450. data/misc/openlayers/img/marker.png +0 -0
  451. data/misc/openlayers/img/measuring-stick-off.png +0 -0
  452. data/misc/openlayers/img/measuring-stick-on.png +0 -0
  453. data/misc/openlayers/img/north-mini.png +0 -0
  454. data/misc/openlayers/img/panning-hand-off.png +0 -0
  455. data/misc/openlayers/img/panning-hand-on.png +0 -0
  456. data/misc/openlayers/img/slider.png +0 -0
  457. data/misc/openlayers/img/south-mini.png +0 -0
  458. data/misc/openlayers/img/west-mini.png +0 -0
  459. data/misc/openlayers/img/zoom-minus-mini.png +0 -0
  460. data/misc/openlayers/img/zoom-plus-mini.png +0 -0
  461. data/misc/openlayers/img/zoom-world-mini.png +0 -0
  462. data/misc/openlayers/img/zoombar.png +0 -0
  463. data/misc/openlayers/lib/Firebug/errorIcon.png +0 -0
  464. data/misc/openlayers/lib/Firebug/firebug.css +0 -209
  465. data/misc/openlayers/lib/Firebug/firebug.html +0 -23
  466. data/misc/openlayers/lib/Firebug/firebug.js +0 -674
  467. data/misc/openlayers/lib/Firebug/firebugx.js +0 -10
  468. data/misc/openlayers/lib/Firebug/infoIcon.png +0 -0
  469. data/misc/openlayers/lib/Firebug/license.txt +0 -30
  470. data/misc/openlayers/lib/Firebug/readme.txt +0 -13
  471. data/misc/openlayers/lib/Firebug/warningIcon.png +0 -0
  472. data/misc/openlayers/lib/OpenLayers.js +0 -429
  473. data/misc/openlayers/lib/OpenLayers/Animation.js +0 -102
  474. data/misc/openlayers/lib/OpenLayers/BaseTypes.js +0 -463
  475. data/misc/openlayers/lib/OpenLayers/BaseTypes/Bounds.js +0 -837
  476. data/misc/openlayers/lib/OpenLayers/BaseTypes/Class.js +0 -121
  477. data/misc/openlayers/lib/OpenLayers/BaseTypes/Date.js +0 -123
  478. data/misc/openlayers/lib/OpenLayers/BaseTypes/Element.js +0 -189
  479. data/misc/openlayers/lib/OpenLayers/BaseTypes/LonLat.js +0 -215
  480. data/misc/openlayers/lib/OpenLayers/BaseTypes/Pixel.js +0 -143
  481. data/misc/openlayers/lib/OpenLayers/BaseTypes/Size.js +0 -89
  482. data/misc/openlayers/lib/OpenLayers/Console.js +0 -250
  483. data/misc/openlayers/lib/OpenLayers/Control.js +0 -371
  484. data/misc/openlayers/lib/OpenLayers/Control/ArgParser.js +0 -182
  485. data/misc/openlayers/lib/OpenLayers/Control/Attribution.js +0 -104
  486. data/misc/openlayers/lib/OpenLayers/Control/Button.js +0 -44
  487. data/misc/openlayers/lib/OpenLayers/Control/CacheRead.js +0 -156
  488. data/misc/openlayers/lib/OpenLayers/Control/CacheWrite.js +0 -257
  489. data/misc/openlayers/lib/OpenLayers/Control/DragFeature.js +0 -366
  490. data/misc/openlayers/lib/OpenLayers/Control/DragPan.js +0 -156
  491. data/misc/openlayers/lib/OpenLayers/Control/DrawFeature.js +0 -229
  492. data/misc/openlayers/lib/OpenLayers/Control/EditingToolbar.js +0 -81
  493. data/misc/openlayers/lib/OpenLayers/Control/Geolocate.js +0 -192
  494. data/misc/openlayers/lib/OpenLayers/Control/GetFeature.js +0 -597
  495. data/misc/openlayers/lib/OpenLayers/Control/Graticule.js +0 -377
  496. data/misc/openlayers/lib/OpenLayers/Control/KeyboardDefaults.js +0 -142
  497. data/misc/openlayers/lib/OpenLayers/Control/LayerSwitcher.js +0 -521
  498. data/misc/openlayers/lib/OpenLayers/Control/Measure.js +0 -379
  499. data/misc/openlayers/lib/OpenLayers/Control/ModifyFeature.js +0 -835
  500. data/misc/openlayers/lib/OpenLayers/Control/MousePosition.js +0 -227
  501. data/misc/openlayers/lib/OpenLayers/Control/NavToolbar.js +0 -57
  502. data/misc/openlayers/lib/OpenLayers/Control/Navigation.js +0 -345
  503. data/misc/openlayers/lib/OpenLayers/Control/NavigationHistory.js +0 -423
  504. data/misc/openlayers/lib/OpenLayers/Control/OverviewMap.js +0 -750
  505. data/misc/openlayers/lib/OpenLayers/Control/Pan.js +0 -95
  506. data/misc/openlayers/lib/OpenLayers/Control/PanPanel.js +0 -73
  507. data/misc/openlayers/lib/OpenLayers/Control/PanZoom.js +0 -233
  508. data/misc/openlayers/lib/OpenLayers/Control/PanZoomBar.js +0 -408
  509. data/misc/openlayers/lib/OpenLayers/Control/Panel.js +0 -431
  510. data/misc/openlayers/lib/OpenLayers/Control/Permalink.js +0 -257
  511. data/misc/openlayers/lib/OpenLayers/Control/PinchZoom.js +0 -157
  512. data/misc/openlayers/lib/OpenLayers/Control/SLDSelect.js +0 -567
  513. data/misc/openlayers/lib/OpenLayers/Control/Scale.js +0 -100
  514. data/misc/openlayers/lib/OpenLayers/Control/ScaleLine.js +0 -220
  515. data/misc/openlayers/lib/OpenLayers/Control/SelectFeature.js +0 -643
  516. data/misc/openlayers/lib/OpenLayers/Control/Snapping.js +0 -560
  517. data/misc/openlayers/lib/OpenLayers/Control/Split.js +0 -494
  518. data/misc/openlayers/lib/OpenLayers/Control/TouchNavigation.js +0 -182
  519. data/misc/openlayers/lib/OpenLayers/Control/TransformFeature.js +0 -624
  520. data/misc/openlayers/lib/OpenLayers/Control/UTFGrid.js +0 -240
  521. data/misc/openlayers/lib/OpenLayers/Control/WMSGetFeatureInfo.js +0 -532
  522. data/misc/openlayers/lib/OpenLayers/Control/WMTSGetFeatureInfo.js +0 -400
  523. data/misc/openlayers/lib/OpenLayers/Control/Zoom.js +0 -138
  524. data/misc/openlayers/lib/OpenLayers/Control/ZoomBox.js +0 -129
  525. data/misc/openlayers/lib/OpenLayers/Control/ZoomIn.js +0 -29
  526. data/misc/openlayers/lib/OpenLayers/Control/ZoomOut.js +0 -29
  527. data/misc/openlayers/lib/OpenLayers/Control/ZoomPanel.js +0 -54
  528. data/misc/openlayers/lib/OpenLayers/Control/ZoomToMaxExtent.js +0 -35
  529. data/misc/openlayers/lib/OpenLayers/Events.js +0 -1170
  530. data/misc/openlayers/lib/OpenLayers/Events/buttonclick.js +0 -206
  531. data/misc/openlayers/lib/OpenLayers/Events/featureclick.js +0 -321
  532. data/misc/openlayers/lib/OpenLayers/Feature.js +0 -225
  533. data/misc/openlayers/lib/OpenLayers/Feature/Vector.js +0 -510
  534. data/misc/openlayers/lib/OpenLayers/Filter.js +0 -87
  535. data/misc/openlayers/lib/OpenLayers/Filter/Comparison.js +0 -267
  536. data/misc/openlayers/lib/OpenLayers/Filter/FeatureId.js +0 -87
  537. data/misc/openlayers/lib/OpenLayers/Filter/Function.js +0 -49
  538. data/misc/openlayers/lib/OpenLayers/Filter/Logical.js +0 -121
  539. data/misc/openlayers/lib/OpenLayers/Filter/Spatial.js +0 -122
  540. data/misc/openlayers/lib/OpenLayers/Format.js +0 -123
  541. data/misc/openlayers/lib/OpenLayers/Format/ArcXML.js +0 -1028
  542. data/misc/openlayers/lib/OpenLayers/Format/ArcXML/Features.js +0 -46
  543. data/misc/openlayers/lib/OpenLayers/Format/Atom.js +0 -712
  544. data/misc/openlayers/lib/OpenLayers/Format/CQL.js +0 -452
  545. data/misc/openlayers/lib/OpenLayers/Format/CSWGetDomain.js +0 -34
  546. data/misc/openlayers/lib/OpenLayers/Format/CSWGetDomain/v2_0_2.js +0 -240
  547. data/misc/openlayers/lib/OpenLayers/Format/CSWGetRecords.js +0 -34
  548. data/misc/openlayers/lib/OpenLayers/Format/CSWGetRecords/v2_0_2.js +0 -457
  549. data/misc/openlayers/lib/OpenLayers/Format/Context.js +0 -334
  550. data/misc/openlayers/lib/OpenLayers/Format/EncodedPolyline.js +0 -557
  551. data/misc/openlayers/lib/OpenLayers/Format/Filter.js +0 -53
  552. data/misc/openlayers/lib/OpenLayers/Format/Filter/v1.js +0 -504
  553. data/misc/openlayers/lib/OpenLayers/Format/Filter/v1_0_0.js +0 -184
  554. data/misc/openlayers/lib/OpenLayers/Format/Filter/v1_1_0.js +0 -222
  555. data/misc/openlayers/lib/OpenLayers/Format/GML.js +0 -923
  556. data/misc/openlayers/lib/OpenLayers/Format/GML/Base.js +0 -645
  557. data/misc/openlayers/lib/OpenLayers/Format/GML/v2.js +0 -193
  558. data/misc/openlayers/lib/OpenLayers/Format/GML/v3.js +0 -477
  559. data/misc/openlayers/lib/OpenLayers/Format/GPX.js +0 -385
  560. data/misc/openlayers/lib/OpenLayers/Format/GeoJSON.js +0 -716
  561. data/misc/openlayers/lib/OpenLayers/Format/GeoRSS.js +0 -409
  562. data/misc/openlayers/lib/OpenLayers/Format/JSON.js +0 -398
  563. data/misc/openlayers/lib/OpenLayers/Format/KML.js +0 -1517
  564. data/misc/openlayers/lib/OpenLayers/Format/OGCExceptionReport.js +0 -108
  565. data/misc/openlayers/lib/OpenLayers/Format/OSM.js +0 -465
  566. data/misc/openlayers/lib/OpenLayers/Format/OWSCommon.js +0 -78
  567. data/misc/openlayers/lib/OpenLayers/Format/OWSCommon/v1.js +0 -318
  568. data/misc/openlayers/lib/OpenLayers/Format/OWSCommon/v1_0_0.js +0 -62
  569. data/misc/openlayers/lib/OpenLayers/Format/OWSCommon/v1_1_0.js +0 -116
  570. data/misc/openlayers/lib/OpenLayers/Format/OWSContext.js +0 -86
  571. data/misc/openlayers/lib/OpenLayers/Format/OWSContext/v0_3_1.js +0 -595
  572. data/misc/openlayers/lib/OpenLayers/Format/QueryStringFilter.js +0 -183
  573. data/misc/openlayers/lib/OpenLayers/Format/SLD.js +0 -81
  574. data/misc/openlayers/lib/OpenLayers/Format/SLD/v1.js +0 -1309
  575. data/misc/openlayers/lib/OpenLayers/Format/SLD/v1_0_0.js +0 -46
  576. data/misc/openlayers/lib/OpenLayers/Format/SLD/v1_0_0_GeoServer.js +0 -149
  577. data/misc/openlayers/lib/OpenLayers/Format/SOSCapabilities.js +0 -48
  578. data/misc/openlayers/lib/OpenLayers/Format/SOSCapabilities/v1_0_0.js +0 -158
  579. data/misc/openlayers/lib/OpenLayers/Format/SOSGetFeatureOfInterest.js +0 -190
  580. data/misc/openlayers/lib/OpenLayers/Format/SOSGetObservation.js +0 -302
  581. data/misc/openlayers/lib/OpenLayers/Format/Text.js +0 -151
  582. data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities.js +0 -47
  583. data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities/v1.js +0 -55
  584. data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities/v1_0_0.js +0 -170
  585. data/misc/openlayers/lib/OpenLayers/Format/WCSCapabilities/v1_1_0.js +0 -109
  586. data/misc/openlayers/lib/OpenLayers/Format/WCSGetCoverage.js +0 -199
  587. data/misc/openlayers/lib/OpenLayers/Format/WFS.js +0 -223
  588. data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities.js +0 -47
  589. data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1.js +0 -129
  590. data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1_0_0.js +0 -115
  591. data/misc/openlayers/lib/OpenLayers/Format/WFSCapabilities/v1_1_0.js +0 -63
  592. data/misc/openlayers/lib/OpenLayers/Format/WFSDescribeFeatureType.js +0 -234
  593. data/misc/openlayers/lib/OpenLayers/Format/WFST.js +0 -34
  594. data/misc/openlayers/lib/OpenLayers/Format/WFST/v1.js +0 -446
  595. data/misc/openlayers/lib/OpenLayers/Format/WFST/v1_0_0.js +0 -174
  596. data/misc/openlayers/lib/OpenLayers/Format/WFST/v1_1_0.js +0 -189
  597. data/misc/openlayers/lib/OpenLayers/Format/WKT.js +0 -392
  598. data/misc/openlayers/lib/OpenLayers/Format/WMC.js +0 -182
  599. data/misc/openlayers/lib/OpenLayers/Format/WMC/v1.js +0 -1267
  600. data/misc/openlayers/lib/OpenLayers/Format/WMC/v1_0_0.js +0 -104
  601. data/misc/openlayers/lib/OpenLayers/Format/WMC/v1_1_0.js +0 -149
  602. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities.js +0 -56
  603. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1.js +0 -368
  604. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1.js +0 -122
  605. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_0.js +0 -57
  606. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_1.js +0 -60
  607. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_1_1_WMSC.js +0 -85
  608. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_3.js +0 -128
  609. data/misc/openlayers/lib/OpenLayers/Format/WMSCapabilities/v1_3_0.js +0 -30
  610. data/misc/openlayers/lib/OpenLayers/Format/WMSDescribeLayer.js +0 -53
  611. data/misc/openlayers/lib/OpenLayers/Format/WMSDescribeLayer/v1_1.js +0 -122
  612. data/misc/openlayers/lib/OpenLayers/Format/WMSGetFeatureInfo.js +0 -296
  613. data/misc/openlayers/lib/OpenLayers/Format/WMTSCapabilities.js +0 -230
  614. data/misc/openlayers/lib/OpenLayers/Format/WMTSCapabilities/v1_0_0.js +0 -251
  615. data/misc/openlayers/lib/OpenLayers/Format/WPSCapabilities.js +0 -48
  616. data/misc/openlayers/lib/OpenLayers/Format/WPSCapabilities/v1_0_0.js +0 -119
  617. data/misc/openlayers/lib/OpenLayers/Format/WPSDescribeProcess.js +0 -185
  618. data/misc/openlayers/lib/OpenLayers/Format/WPSExecute.js +0 -395
  619. data/misc/openlayers/lib/OpenLayers/Format/XLS.js +0 -68
  620. data/misc/openlayers/lib/OpenLayers/Format/XLS/v1.js +0 -304
  621. data/misc/openlayers/lib/OpenLayers/Format/XLS/v1_1_0.js +0 -48
  622. data/misc/openlayers/lib/OpenLayers/Format/XML.js +0 -897
  623. data/misc/openlayers/lib/OpenLayers/Format/XML/VersionedOGC.js +0 -212
  624. data/misc/openlayers/lib/OpenLayers/Geometry.js +0 -500
  625. data/misc/openlayers/lib/OpenLayers/Geometry/Collection.js +0 -563
  626. data/misc/openlayers/lib/OpenLayers/Geometry/Curve.js +0 -89
  627. data/misc/openlayers/lib/OpenLayers/Geometry/LineString.js +0 -646
  628. data/misc/openlayers/lib/OpenLayers/Geometry/LinearRing.js +0 -433
  629. data/misc/openlayers/lib/OpenLayers/Geometry/MultiLineString.js +0 -258
  630. data/misc/openlayers/lib/OpenLayers/Geometry/MultiPoint.js +0 -66
  631. data/misc/openlayers/lib/OpenLayers/Geometry/MultiPolygon.js +0 -42
  632. data/misc/openlayers/lib/OpenLayers/Geometry/Point.js +0 -283
  633. data/misc/openlayers/lib/OpenLayers/Geometry/Polygon.js +0 -255
  634. data/misc/openlayers/lib/OpenLayers/Handler.js +0 -325
  635. data/misc/openlayers/lib/OpenLayers/Handler/Box.js +0 -244
  636. data/misc/openlayers/lib/OpenLayers/Handler/Click.js +0 -505
  637. data/misc/openlayers/lib/OpenLayers/Handler/Drag.js +0 -547
  638. data/misc/openlayers/lib/OpenLayers/Handler/Feature.js +0 -434
  639. data/misc/openlayers/lib/OpenLayers/Handler/Hover.js +0 -180
  640. data/misc/openlayers/lib/OpenLayers/Handler/Keyboard.js +0 -117
  641. data/misc/openlayers/lib/OpenLayers/Handler/MouseWheel.js +0 -264
  642. data/misc/openlayers/lib/OpenLayers/Handler/Path.js +0 -543
  643. data/misc/openlayers/lib/OpenLayers/Handler/Pinch.js +0 -239
  644. data/misc/openlayers/lib/OpenLayers/Handler/Point.js +0 -556
  645. data/misc/openlayers/lib/OpenLayers/Handler/Polygon.js +0 -305
  646. data/misc/openlayers/lib/OpenLayers/Handler/RegularPolygon.js +0 -429
  647. data/misc/openlayers/lib/OpenLayers/Icon.js +0 -243
  648. data/misc/openlayers/lib/OpenLayers/Kinetic.js +0 -178
  649. data/misc/openlayers/lib/OpenLayers/Lang.js +0 -134
  650. data/misc/openlayers/lib/OpenLayers/Lang/ar.js +0 -32
  651. data/misc/openlayers/lib/OpenLayers/Lang/be-tarask.js +0 -54
  652. data/misc/openlayers/lib/OpenLayers/Lang/bg.js +0 -25
  653. data/misc/openlayers/lib/OpenLayers/Lang/br.js +0 -53
  654. data/misc/openlayers/lib/OpenLayers/Lang/ca.js +0 -89
  655. data/misc/openlayers/lib/OpenLayers/Lang/cs-CZ.js +0 -45
  656. data/misc/openlayers/lib/OpenLayers/Lang/da-DK.js +0 -80
  657. data/misc/openlayers/lib/OpenLayers/Lang/de.js +0 -55
  658. data/misc/openlayers/lib/OpenLayers/Lang/el.js +0 -19
  659. data/misc/openlayers/lib/OpenLayers/Lang/en-CA.js +0 -21
  660. data/misc/openlayers/lib/OpenLayers/Lang/en.js +0 -89
  661. data/misc/openlayers/lib/OpenLayers/Lang/es.js +0 -90
  662. data/misc/openlayers/lib/OpenLayers/Lang/fi.js +0 -32
  663. data/misc/openlayers/lib/OpenLayers/Lang/fr.js +0 -53
  664. data/misc/openlayers/lib/OpenLayers/Lang/fur.js +0 -35
  665. data/misc/openlayers/lib/OpenLayers/Lang/gl.js +0 -53
  666. data/misc/openlayers/lib/OpenLayers/Lang/gsw.js +0 -53
  667. data/misc/openlayers/lib/OpenLayers/Lang/hr.js +0 -37
  668. data/misc/openlayers/lib/OpenLayers/Lang/hsb.js +0 -53
  669. data/misc/openlayers/lib/OpenLayers/Lang/hu.js +0 -54
  670. data/misc/openlayers/lib/OpenLayers/Lang/ia.js +0 -53
  671. data/misc/openlayers/lib/OpenLayers/Lang/id.js +0 -54
  672. data/misc/openlayers/lib/OpenLayers/Lang/io.js +0 -19
  673. data/misc/openlayers/lib/OpenLayers/Lang/is.js +0 -27
  674. data/misc/openlayers/lib/OpenLayers/Lang/it.js +0 -80
  675. data/misc/openlayers/lib/OpenLayers/Lang/ja.js +0 -54
  676. data/misc/openlayers/lib/OpenLayers/Lang/km.js +0 -23
  677. data/misc/openlayers/lib/OpenLayers/Lang/ksh.js +0 -53
  678. data/misc/openlayers/lib/OpenLayers/Lang/lt.js +0 -47
  679. data/misc/openlayers/lib/OpenLayers/Lang/nb.js +0 -82
  680. data/misc/openlayers/lib/OpenLayers/Lang/nds.js +0 -37
  681. data/misc/openlayers/lib/OpenLayers/Lang/nl.js +0 -53
  682. data/misc/openlayers/lib/OpenLayers/Lang/nn.js +0 -19
  683. data/misc/openlayers/lib/OpenLayers/Lang/oc.js +0 -53
  684. data/misc/openlayers/lib/OpenLayers/Lang/pl.js +0 -89
  685. data/misc/openlayers/lib/OpenLayers/Lang/pt-BR.js +0 -54
  686. data/misc/openlayers/lib/OpenLayers/Lang/pt.js +0 -55
  687. data/misc/openlayers/lib/OpenLayers/Lang/ro.js +0 -69
  688. data/misc/openlayers/lib/OpenLayers/Lang/ru.js +0 -56
  689. data/misc/openlayers/lib/OpenLayers/Lang/sk.js +0 -44
  690. data/misc/openlayers/lib/OpenLayers/Lang/sv-SE.js +0 -45
  691. data/misc/openlayers/lib/OpenLayers/Lang/te.js +0 -27
  692. data/misc/openlayers/lib/OpenLayers/Lang/vi.js +0 -53
  693. data/misc/openlayers/lib/OpenLayers/Lang/zh-CN.js +0 -80
  694. data/misc/openlayers/lib/OpenLayers/Lang/zh-TW.js +0 -81
  695. data/misc/openlayers/lib/OpenLayers/Layer.js +0 -1377
  696. data/misc/openlayers/lib/OpenLayers/Layer/ArcGIS93Rest.js +0 -225
  697. data/misc/openlayers/lib/OpenLayers/Layer/ArcGISCache.js +0 -480
  698. data/misc/openlayers/lib/OpenLayers/Layer/ArcIMS.js +0 -425
  699. data/misc/openlayers/lib/OpenLayers/Layer/Bing.js +0 -333
  700. data/misc/openlayers/lib/OpenLayers/Layer/Boxes.js +0 -76
  701. data/misc/openlayers/lib/OpenLayers/Layer/EventPane.js +0 -441
  702. data/misc/openlayers/lib/OpenLayers/Layer/FixedZoomLevels.js +0 -319
  703. data/misc/openlayers/lib/OpenLayers/Layer/GeoRSS.js +0 -265
  704. data/misc/openlayers/lib/OpenLayers/Layer/Google.js +0 -809
  705. data/misc/openlayers/lib/OpenLayers/Layer/Google/v3.js +0 -351
  706. data/misc/openlayers/lib/OpenLayers/Layer/Grid.js +0 -1343
  707. data/misc/openlayers/lib/OpenLayers/Layer/HTTPRequest.js +0 -230
  708. data/misc/openlayers/lib/OpenLayers/Layer/Image.js +0 -259
  709. data/misc/openlayers/lib/OpenLayers/Layer/KaMap.js +0 -192
  710. data/misc/openlayers/lib/OpenLayers/Layer/KaMapCache.js +0 -143
  711. data/misc/openlayers/lib/OpenLayers/Layer/MapGuide.js +0 -443
  712. data/misc/openlayers/lib/OpenLayers/Layer/MapServer.js +0 -181
  713. data/misc/openlayers/lib/OpenLayers/Layer/Markers.js +0 -187
  714. data/misc/openlayers/lib/OpenLayers/Layer/OSM.js +0 -123
  715. data/misc/openlayers/lib/OpenLayers/Layer/PointGrid.js +0 -299
  716. data/misc/openlayers/lib/OpenLayers/Layer/PointTrack.js +0 -125
  717. data/misc/openlayers/lib/OpenLayers/Layer/SphericalMercator.js +0 -146
  718. data/misc/openlayers/lib/OpenLayers/Layer/TMS.js +0 -202
  719. data/misc/openlayers/lib/OpenLayers/Layer/Text.js +0 -267
  720. data/misc/openlayers/lib/OpenLayers/Layer/TileCache.js +0 -140
  721. data/misc/openlayers/lib/OpenLayers/Layer/UTFGrid.js +0 -184
  722. data/misc/openlayers/lib/OpenLayers/Layer/Vector.js +0 -1007
  723. data/misc/openlayers/lib/OpenLayers/Layer/Vector/RootContainer.js +0 -154
  724. data/misc/openlayers/lib/OpenLayers/Layer/WMS.js +0 -267
  725. data/misc/openlayers/lib/OpenLayers/Layer/WMTS.js +0 -510
  726. data/misc/openlayers/lib/OpenLayers/Layer/WorldWind.js +0 -105
  727. data/misc/openlayers/lib/OpenLayers/Layer/XYZ.js +0 -172
  728. data/misc/openlayers/lib/OpenLayers/Layer/Zoomify.js +0 -260
  729. data/misc/openlayers/lib/OpenLayers/Map.js +0 -2867
  730. data/misc/openlayers/lib/OpenLayers/Marker.js +0 -241
  731. data/misc/openlayers/lib/OpenLayers/Marker/Box.js +0 -120
  732. data/misc/openlayers/lib/OpenLayers/Popup.js +0 -1065
  733. data/misc/openlayers/lib/OpenLayers/Popup/Anchored.js +0 -195
  734. data/misc/openlayers/lib/OpenLayers/Popup/Framed.js +0 -343
  735. data/misc/openlayers/lib/OpenLayers/Popup/FramedCloud.js +0 -227
  736. data/misc/openlayers/lib/OpenLayers/Projection.js +0 -322
  737. data/misc/openlayers/lib/OpenLayers/Protocol.js +0 -291
  738. data/misc/openlayers/lib/OpenLayers/Protocol/CSW.js +0 -30
  739. data/misc/openlayers/lib/OpenLayers/Protocol/CSW/v2_0_2.js +0 -127
  740. data/misc/openlayers/lib/OpenLayers/Protocol/HTTP.js +0 -580
  741. data/misc/openlayers/lib/OpenLayers/Protocol/SOS.js +0 -33
  742. data/misc/openlayers/lib/OpenLayers/Protocol/SOS/v1_0_0.js +0 -133
  743. data/misc/openlayers/lib/OpenLayers/Protocol/Script.js +0 -377
  744. data/misc/openlayers/lib/OpenLayers/Protocol/WFS.js +0 -86
  745. data/misc/openlayers/lib/OpenLayers/Protocol/WFS/v1.js +0 -453
  746. data/misc/openlayers/lib/OpenLayers/Protocol/WFS/v1_0_0.js +0 -44
  747. data/misc/openlayers/lib/OpenLayers/Protocol/WFS/v1_1_0.js +0 -68
  748. data/misc/openlayers/lib/OpenLayers/Renderer.js +0 -432
  749. data/misc/openlayers/lib/OpenLayers/Renderer/Canvas.js +0 -906
  750. data/misc/openlayers/lib/OpenLayers/Renderer/Elements.js +0 -1053
  751. data/misc/openlayers/lib/OpenLayers/Renderer/SVG.js +0 -1012
  752. data/misc/openlayers/lib/OpenLayers/Renderer/VML.js +0 -985
  753. data/misc/openlayers/lib/OpenLayers/Request.js +0 -429
  754. data/misc/openlayers/lib/OpenLayers/Request/XMLHttpRequest.js +0 -458
  755. data/misc/openlayers/lib/OpenLayers/Rule.js +0 -236
  756. data/misc/openlayers/lib/OpenLayers/SingleFile.js +0 -78
  757. data/misc/openlayers/lib/OpenLayers/Spherical.js +0 -67
  758. data/misc/openlayers/lib/OpenLayers/Strategy.js +0 -121
  759. data/misc/openlayers/lib/OpenLayers/Strategy/BBOX.js +0 -290
  760. data/misc/openlayers/lib/OpenLayers/Strategy/Cluster.js +0 -283
  761. data/misc/openlayers/lib/OpenLayers/Strategy/Filter.js +0 -159
  762. data/misc/openlayers/lib/OpenLayers/Strategy/Fixed.js +0 -135
  763. data/misc/openlayers/lib/OpenLayers/Strategy/Paging.js +0 -233
  764. data/misc/openlayers/lib/OpenLayers/Strategy/Refresh.js +0 -141
  765. data/misc/openlayers/lib/OpenLayers/Strategy/Save.js +0 -231
  766. data/misc/openlayers/lib/OpenLayers/Style.js +0 -448
  767. data/misc/openlayers/lib/OpenLayers/Style2.js +0 -112
  768. data/misc/openlayers/lib/OpenLayers/StyleMap.js +0 -161
  769. data/misc/openlayers/lib/OpenLayers/Symbolizer.js +0 -55
  770. data/misc/openlayers/lib/OpenLayers/Symbolizer/Line.js +0 -74
  771. data/misc/openlayers/lib/OpenLayers/Symbolizer/Point.js +0 -157
  772. data/misc/openlayers/lib/OpenLayers/Symbolizer/Polygon.js +0 -88
  773. data/misc/openlayers/lib/OpenLayers/Symbolizer/Raster.js +0 -34
  774. data/misc/openlayers/lib/OpenLayers/Symbolizer/Text.js +0 -70
  775. data/misc/openlayers/lib/OpenLayers/Tile.js +0 -292
  776. data/misc/openlayers/lib/OpenLayers/Tile/Image.js +0 -510
  777. data/misc/openlayers/lib/OpenLayers/Tile/Image/IFrame.js +0 -233
  778. data/misc/openlayers/lib/OpenLayers/Tile/UTFGrid.js +0 -252
  779. data/misc/openlayers/lib/OpenLayers/TileManager.js +0 -462
  780. data/misc/openlayers/lib/OpenLayers/Tween.js +0 -361
  781. data/misc/openlayers/lib/OpenLayers/Util.js +0 -1773
  782. data/misc/openlayers/lib/OpenLayers/Util/vendorPrefix.js +0 -131
  783. data/misc/openlayers/lib/OpenLayers/WPSClient.js +0 -223
  784. data/misc/openlayers/lib/OpenLayers/WPSProcess.js +0 -501
  785. data/misc/openlayers/lib/Rico/Color.js +0 -253
  786. data/misc/openlayers/lib/Rico/Corner.js +0 -339
  787. data/misc/openlayers/lib/Rico/license.js +0 -19
  788. data/misc/openlayers/lib/deprecated.js +0 -5842
  789. data/misc/openlayers/license.txt +0 -27
  790. data/misc/openlayers/licenses/APACHE-2.0.txt +0 -202
  791. data/misc/openlayers/licenses/BSD-LICENSE.txt +0 -28
  792. data/misc/openlayers/licenses/MIT-LICENSE.txt +0 -18
  793. data/misc/openlayers/notes/2.12.md +0 -391
  794. data/misc/openlayers/notes/2.13.md +0 -159
  795. data/misc/openlayers/readme.md +0 -79
  796. data/misc/openlayers/tests/Animation.html +0 -96
  797. data/misc/openlayers/tests/BaseTypes.html +0 -387
  798. data/misc/openlayers/tests/BaseTypes/Bounds.html +0 -738
  799. data/misc/openlayers/tests/BaseTypes/Class.html +0 -350
  800. data/misc/openlayers/tests/BaseTypes/Date.html +0 -191
  801. data/misc/openlayers/tests/BaseTypes/Element.html +0 -195
  802. data/misc/openlayers/tests/BaseTypes/LonLat.html +0 -241
  803. data/misc/openlayers/tests/BaseTypes/Pixel.html +0 -123
  804. data/misc/openlayers/tests/BaseTypes/Size.html +0 -67
  805. data/misc/openlayers/tests/Console.html +0 -39
  806. data/misc/openlayers/tests/Control.html +0 -107
  807. data/misc/openlayers/tests/Control/ArgParser.html +0 -26
  808. data/misc/openlayers/tests/Control/Attribution.html +0 -60
  809. data/misc/openlayers/tests/Control/Button.html +0 -17
  810. data/misc/openlayers/tests/Control/CacheRead.html +0 -108
  811. data/misc/openlayers/tests/Control/CacheWrite.html +0 -90
  812. data/misc/openlayers/tests/Control/DragFeature.html +0 -383
  813. data/misc/openlayers/tests/Control/DragPan.html +0 -104
  814. data/misc/openlayers/tests/Control/DrawFeature.html +0 -160
  815. data/misc/openlayers/tests/Control/EditingToolbar.html +0 -33
  816. data/misc/openlayers/tests/Control/Geolocate.html +0 -129
  817. data/misc/openlayers/tests/Control/GetFeature.html +0 -177
  818. data/misc/openlayers/tests/Control/Graticule.html +0 -66
  819. data/misc/openlayers/tests/Control/KeyboardDefaults.html +0 -173
  820. data/misc/openlayers/tests/Control/LayerSwitcher.html +0 -249
  821. data/misc/openlayers/tests/Control/Measure.html +0 -386
  822. data/misc/openlayers/tests/Control/ModifyFeature.html +0 -828
  823. data/misc/openlayers/tests/Control/MousePosition.html +0 -109
  824. data/misc/openlayers/tests/Control/NavToolbar.html +0 -45
  825. data/misc/openlayers/tests/Control/Navigation.html +0 -200
  826. data/misc/openlayers/tests/Control/NavigationHistory.html +0 -245
  827. data/misc/openlayers/tests/Control/OverviewMap.html +0 -266
  828. data/misc/openlayers/tests/Control/Pan.html +0 -201
  829. data/misc/openlayers/tests/Control/PanPanel.html +0 -61
  830. data/misc/openlayers/tests/Control/PanZoom.html +0 -244
  831. data/misc/openlayers/tests/Control/PanZoomBar.html +0 -245
  832. data/misc/openlayers/tests/Control/Panel.html +0 -382
  833. data/misc/openlayers/tests/Control/Permalink.html +0 -453
  834. data/misc/openlayers/tests/Control/PinchZoom.html +0 -134
  835. data/misc/openlayers/tests/Control/SLDSelect.html +0 -239
  836. data/misc/openlayers/tests/Control/Scale.html +0 -54
  837. data/misc/openlayers/tests/Control/ScaleLine.html +0 -187
  838. data/misc/openlayers/tests/Control/SelectFeature.html +0 -632
  839. data/misc/openlayers/tests/Control/Snapping.html +0 -448
  840. data/misc/openlayers/tests/Control/Split.html +0 -319
  841. data/misc/openlayers/tests/Control/TouchNavigation.html +0 -155
  842. data/misc/openlayers/tests/Control/TransformFeature.html +0 -129
  843. data/misc/openlayers/tests/Control/UTFGrid.html +0 -120
  844. data/misc/openlayers/tests/Control/WMSGetFeatureInfo.html +0 -644
  845. data/misc/openlayers/tests/Control/WMTSGetFeatureInfo.html +0 -334
  846. data/misc/openlayers/tests/Control/Zoom.html +0 -83
  847. data/misc/openlayers/tests/Control/ZoomBox.html +0 -54
  848. data/misc/openlayers/tests/Control/ZoomIn.html +0 -101
  849. data/misc/openlayers/tests/Control/ZoomOut.html +0 -100
  850. data/misc/openlayers/tests/Control/ZoomToMaxExtent.html +0 -102
  851. data/misc/openlayers/tests/Events.html +0 -487
  852. data/misc/openlayers/tests/Events/buttonclick.html +0 -214
  853. data/misc/openlayers/tests/Events/featureclick.html +0 -91
  854. data/misc/openlayers/tests/Extras.html +0 -21
  855. data/misc/openlayers/tests/Feature.html +0 -205
  856. data/misc/openlayers/tests/Feature/Vector.html +0 -170
  857. data/misc/openlayers/tests/Filter.html +0 -31
  858. data/misc/openlayers/tests/Filter/Comparison.html +0 -373
  859. data/misc/openlayers/tests/Filter/FeatureId.html +0 -67
  860. data/misc/openlayers/tests/Filter/Logical.html +0 -144
  861. data/misc/openlayers/tests/Filter/Spatial.html +0 -112
  862. data/misc/openlayers/tests/Format.html +0 -23
  863. data/misc/openlayers/tests/Format/ArcXML.html +0 -277
  864. data/misc/openlayers/tests/Format/ArcXML/Features.html +0 -69
  865. data/misc/openlayers/tests/Format/Atom.html +0 -450
  866. data/misc/openlayers/tests/Format/CQL.html +0 -364
  867. data/misc/openlayers/tests/Format/CSWGetDomain.html +0 -23
  868. data/misc/openlayers/tests/Format/CSWGetDomain/v2_0_2.html +0 -56
  869. data/misc/openlayers/tests/Format/CSWGetDomain/v2_0_2.js +0 -18
  870. data/misc/openlayers/tests/Format/CSWGetRecords.html +0 -23
  871. data/misc/openlayers/tests/Format/CSWGetRecords/v2_0_2.html +0 -88
  872. data/misc/openlayers/tests/Format/CSWGetRecords/v2_0_2.js +0 -50
  873. data/misc/openlayers/tests/Format/EncodedPolyline.html +0 -372
  874. data/misc/openlayers/tests/Format/Filter.html +0 -21
  875. data/misc/openlayers/tests/Format/Filter/v1.html +0 -404
  876. data/misc/openlayers/tests/Format/Filter/v1_0_0.html +0 -295
  877. data/misc/openlayers/tests/Format/Filter/v1_1_0.html +0 -402
  878. data/misc/openlayers/tests/Format/GML.html +0 -462
  879. data/misc/openlayers/tests/Format/GML/cases.js +0 -232
  880. data/misc/openlayers/tests/Format/GML/v2.html +0 -684
  881. data/misc/openlayers/tests/Format/GML/v3.html +0 -828
  882. data/misc/openlayers/tests/Format/GPX.html +0 -179
  883. data/misc/openlayers/tests/Format/GeoJSON.html +0 -468
  884. data/misc/openlayers/tests/Format/GeoRSS.html +0 -122
  885. data/misc/openlayers/tests/Format/JSON.html +0 -53
  886. data/misc/openlayers/tests/Format/KML.html +0 -1437
  887. data/misc/openlayers/tests/Format/OGCExceptionReport.html +0 -100
  888. data/misc/openlayers/tests/Format/OSM.html +0 -115
  889. data/misc/openlayers/tests/Format/OWSCommon/v1_0_0.html +0 -34
  890. data/misc/openlayers/tests/Format/OWSCommon/v1_1_0.html +0 -34
  891. data/misc/openlayers/tests/Format/OWSContext/v0_3_1.html +0 -278
  892. data/misc/openlayers/tests/Format/QueryStringFilter.html +0 -306
  893. data/misc/openlayers/tests/Format/SLD.html +0 -36
  894. data/misc/openlayers/tests/Format/SLD/v1_0_0.html +0 -1028
  895. data/misc/openlayers/tests/Format/SLD/v1_0_0_GeoServer.html +0 -228
  896. data/misc/openlayers/tests/Format/SOSCapabilities/v1_0_0.html +0 -80
  897. data/misc/openlayers/tests/Format/SOSCapabilities/v1_0_0.js +0 -484
  898. data/misc/openlayers/tests/Format/SOSGetFeatureOfInterest.html +0 -80
  899. data/misc/openlayers/tests/Format/SOSGetObservation.html +0 -183
  900. data/misc/openlayers/tests/Format/Text.html +0 -49
  901. data/misc/openlayers/tests/Format/WCSCapabilities.html +0 -43
  902. data/misc/openlayers/tests/Format/WCSCapabilities/v1.html +0 -87
  903. data/misc/openlayers/tests/Format/WCSGetCoverage.html +0 -80
  904. data/misc/openlayers/tests/Format/WFS.html +0 -81
  905. data/misc/openlayers/tests/Format/WFSCapabilities.html +0 -43
  906. data/misc/openlayers/tests/Format/WFSCapabilities/v1.html +0 -179
  907. data/misc/openlayers/tests/Format/WFSDescribeFeatureType.html +0 -436
  908. data/misc/openlayers/tests/Format/WFST.html +0 -23
  909. data/misc/openlayers/tests/Format/WFST/v1.html +0 -455
  910. data/misc/openlayers/tests/Format/WFST/v1_0_0.html +0 -135
  911. data/misc/openlayers/tests/Format/WFST/v1_1_0.html +0 -236
  912. data/misc/openlayers/tests/Format/WKT.html +0 -297
  913. data/misc/openlayers/tests/Format/WMC.html +0 -315
  914. data/misc/openlayers/tests/Format/WMC/v1.html +0 -266
  915. data/misc/openlayers/tests/Format/WMC/v1_1_0.html +0 -86
  916. data/misc/openlayers/tests/Format/WMSCapabilities.html +0 -20
  917. data/misc/openlayers/tests/Format/WMSCapabilities/v1_1_1.html +0 -5209
  918. data/misc/openlayers/tests/Format/WMSCapabilities/v1_1_1_WMSC.html +0 -348
  919. data/misc/openlayers/tests/Format/WMSCapabilities/v1_3_0.html +0 -614
  920. data/misc/openlayers/tests/Format/WMSDescribeLayer.html +0 -65
  921. data/misc/openlayers/tests/Format/WMSGetFeatureInfo.html +0 -319
  922. data/misc/openlayers/tests/Format/WMTSCapabilities.html +0 -20
  923. data/misc/openlayers/tests/Format/WMTSCapabilities/v1_0_0.html +0 -1042
  924. data/misc/openlayers/tests/Format/WPSCapabilities/v1_0_0.html +0 -30
  925. data/misc/openlayers/tests/Format/WPSCapabilities/v1_0_0.js +0 -112
  926. data/misc/openlayers/tests/Format/WPSDescribeProcess.html +0 -206
  927. data/misc/openlayers/tests/Format/WPSExecute.html +0 -549
  928. data/misc/openlayers/tests/Format/XLS/v1_1_0.html +0 -98
  929. data/misc/openlayers/tests/Format/XML.html +0 -900
  930. data/misc/openlayers/tests/Format/XML/VersionedOGC.html +0 -51
  931. data/misc/openlayers/tests/Geometry.html +0 -356
  932. data/misc/openlayers/tests/Geometry/Collection.html +0 -431
  933. data/misc/openlayers/tests/Geometry/Curve.html +0 -157
  934. data/misc/openlayers/tests/Geometry/LineString.html +0 -443
  935. data/misc/openlayers/tests/Geometry/LinearRing.html +0 -362
  936. data/misc/openlayers/tests/Geometry/MultiLineString.html +0 -267
  937. data/misc/openlayers/tests/Geometry/MultiPoint.html +0 -130
  938. data/misc/openlayers/tests/Geometry/MultiPolygon.html +0 -34
  939. data/misc/openlayers/tests/Geometry/Point.html +0 -244
  940. data/misc/openlayers/tests/Geometry/Polygon.html +0 -420
  941. data/misc/openlayers/tests/Handler.html +0 -265
  942. data/misc/openlayers/tests/Handler/Box.html +0 -106
  943. data/misc/openlayers/tests/Handler/Click.html +0 -735
  944. data/misc/openlayers/tests/Handler/Drag.html +0 -603
  945. data/misc/openlayers/tests/Handler/Feature.html +0 -698
  946. data/misc/openlayers/tests/Handler/Hover.html +0 -136
  947. data/misc/openlayers/tests/Handler/Keyboard.html +0 -150
  948. data/misc/openlayers/tests/Handler/MouseWheel.html +0 -182
  949. data/misc/openlayers/tests/Handler/Path.html +0 -1464
  950. data/misc/openlayers/tests/Handler/Pinch.html +0 -285
  951. data/misc/openlayers/tests/Handler/Point.html +0 -600
  952. data/misc/openlayers/tests/Handler/Polygon.html +0 -1161
  953. data/misc/openlayers/tests/Handler/RegularPolygon.html +0 -235
  954. data/misc/openlayers/tests/Icon.html +0 -68
  955. data/misc/openlayers/tests/Kinetic.html +0 -132
  956. data/misc/openlayers/tests/Lang.html +0 -106
  957. data/misc/openlayers/tests/Layer.html +0 -910
  958. data/misc/openlayers/tests/Layer/ArcGIS93Rest.html +0 -324
  959. data/misc/openlayers/tests/Layer/ArcGISCache.html +0 -256
  960. data/misc/openlayers/tests/Layer/ArcGISCache.json +0 -334
  961. data/misc/openlayers/tests/Layer/ArcIMS.html +0 -123
  962. data/misc/openlayers/tests/Layer/Bing.html +0 -200
  963. data/misc/openlayers/tests/Layer/EventPane.html +0 -172
  964. data/misc/openlayers/tests/Layer/FixedZoomLevels.html +0 -137
  965. data/misc/openlayers/tests/Layer/GeoRSS.html +0 -210
  966. data/misc/openlayers/tests/Layer/Google.html +0 -369
  967. data/misc/openlayers/tests/Layer/Google/v3.html +0 -337
  968. data/misc/openlayers/tests/Layer/Grid.html +0 -1593
  969. data/misc/openlayers/tests/Layer/HTTPRequest.html +0 -229
  970. data/misc/openlayers/tests/Layer/Image.html +0 -164
  971. data/misc/openlayers/tests/Layer/KaMap.html +0 -287
  972. data/misc/openlayers/tests/Layer/MapGuide.html +0 -177
  973. data/misc/openlayers/tests/Layer/MapServer.html +0 -238
  974. data/misc/openlayers/tests/Layer/Markers.html +0 -156
  975. data/misc/openlayers/tests/Layer/OSM.html +0 -16
  976. data/misc/openlayers/tests/Layer/PointGrid.html +0 -232
  977. data/misc/openlayers/tests/Layer/PointTrack.html +0 -79
  978. data/misc/openlayers/tests/Layer/SphericalMercator.html +0 -126
  979. data/misc/openlayers/tests/Layer/TMS.html +0 -262
  980. data/misc/openlayers/tests/Layer/Text.html +0 -211
  981. data/misc/openlayers/tests/Layer/TileCache.html +0 -203
  982. data/misc/openlayers/tests/Layer/UTFGrid.html +0 -131
  983. data/misc/openlayers/tests/Layer/Vector.html +0 -879
  984. data/misc/openlayers/tests/Layer/Vector/RootContainer.html +0 -63
  985. data/misc/openlayers/tests/Layer/WMS.html +0 -583
  986. data/misc/openlayers/tests/Layer/WMTS.html +0 -1491
  987. data/misc/openlayers/tests/Layer/WrapDateLine.html +0 -188
  988. data/misc/openlayers/tests/Layer/XYZ.html +0 -266
  989. data/misc/openlayers/tests/Layer/atom-1.0.xml +0 -34
  990. data/misc/openlayers/tests/Layer/data_Layer_Text_textfile.txt +0 -3
  991. data/misc/openlayers/tests/Layer/data_Layer_Text_textfile_2.txt +0 -3
  992. data/misc/openlayers/tests/Layer/data_Layer_Text_textfile_overflow.txt +0 -3
  993. data/misc/openlayers/tests/Layer/georss.txt +0 -378
  994. data/misc/openlayers/tests/Map.html +0 -2255
  995. data/misc/openlayers/tests/Marker.html +0 -163
  996. data/misc/openlayers/tests/Marker/Box.html +0 -183
  997. data/misc/openlayers/tests/OLLoader.js +0 -26
  998. data/misc/openlayers/tests/OpenLayers1.html +0 -18
  999. data/misc/openlayers/tests/OpenLayers2.html +0 -19
  1000. data/misc/openlayers/tests/OpenLayers3.html +0 -19
  1001. data/misc/openlayers/tests/OpenLayers4.html +0 -18
  1002. data/misc/openlayers/tests/OpenLayersJsFiles.html +0 -27
  1003. data/misc/openlayers/tests/Popup.html +0 -219
  1004. data/misc/openlayers/tests/Popup/Anchored.html +0 -37
  1005. data/misc/openlayers/tests/Popup/FramedCloud.html +0 -18
  1006. data/misc/openlayers/tests/Projection.html +0 -87
  1007. data/misc/openlayers/tests/Protocol.html +0 -63
  1008. data/misc/openlayers/tests/Protocol/CSW.html +0 -90
  1009. data/misc/openlayers/tests/Protocol/HTTP.html +0 -842
  1010. data/misc/openlayers/tests/Protocol/SOS.html +0 -57
  1011. data/misc/openlayers/tests/Protocol/Script.html +0 -282
  1012. data/misc/openlayers/tests/Protocol/WFS.html +0 -471
  1013. data/misc/openlayers/tests/README.txt +0 -16
  1014. data/misc/openlayers/tests/Renderer.html +0 -96
  1015. data/misc/openlayers/tests/Renderer/Canvas.html +0 -501
  1016. data/misc/openlayers/tests/Renderer/Elements.html +0 -651
  1017. data/misc/openlayers/tests/Renderer/SVG.html +0 -441
  1018. data/misc/openlayers/tests/Renderer/VML.html +0 -454
  1019. data/misc/openlayers/tests/Request.html +0 -524
  1020. data/misc/openlayers/tests/Request/XMLHttpRequest.html +0 -59
  1021. data/misc/openlayers/tests/Rule.html +0 -123
  1022. data/misc/openlayers/tests/SingleFile1.html +0 -15
  1023. data/misc/openlayers/tests/SingleFile2.html +0 -15
  1024. data/misc/openlayers/tests/SingleFile3.html +0 -15
  1025. data/misc/openlayers/tests/Strategy.html +0 -94
  1026. data/misc/openlayers/tests/Strategy/BBOX.html +0 -361
  1027. data/misc/openlayers/tests/Strategy/Cluster.html +0 -148
  1028. data/misc/openlayers/tests/Strategy/Filter.html +0 -135
  1029. data/misc/openlayers/tests/Strategy/Fixed.html +0 -253
  1030. data/misc/openlayers/tests/Strategy/Paging.html +0 -113
  1031. data/misc/openlayers/tests/Strategy/Refresh.html +0 -177
  1032. data/misc/openlayers/tests/Strategy/Save.html +0 -127
  1033. data/misc/openlayers/tests/Style.html +0 -426
  1034. data/misc/openlayers/tests/Style2.html +0 -56
  1035. data/misc/openlayers/tests/StyleMap.html +0 -44
  1036. data/misc/openlayers/tests/Symbolizer.html +0 -31
  1037. data/misc/openlayers/tests/Symbolizer/Line.html +0 -42
  1038. data/misc/openlayers/tests/Symbolizer/Point.html +0 -52
  1039. data/misc/openlayers/tests/Symbolizer/Polygon.html +0 -44
  1040. data/misc/openlayers/tests/Symbolizer/Raster.html +0 -32
  1041. data/misc/openlayers/tests/Symbolizer/Text.html +0 -42
  1042. data/misc/openlayers/tests/Test.AnotherWay.baseadditions.js +0 -191
  1043. data/misc/openlayers/tests/Test.AnotherWay.css +0 -243
  1044. data/misc/openlayers/tests/Test.AnotherWay.geom_eq.js +0 -139
  1045. data/misc/openlayers/tests/Test.AnotherWay.js +0 -2498
  1046. data/misc/openlayers/tests/Test.AnotherWay.xml_eq.js +0 -311
  1047. data/misc/openlayers/tests/Tile.html +0 -130
  1048. data/misc/openlayers/tests/Tile/Image.html +0 -490
  1049. data/misc/openlayers/tests/Tile/Image/IFrame.html +0 -183
  1050. data/misc/openlayers/tests/Tile/UTFGrid.html +0 -306
  1051. data/misc/openlayers/tests/TileManager.html +0 -137
  1052. data/misc/openlayers/tests/Tween.html +0 -116
  1053. data/misc/openlayers/tests/Util.html +0 -1180
  1054. data/misc/openlayers/tests/Util/vendorPrefix.html +0 -117
  1055. data/misc/openlayers/tests/Util_common.js +0 -64
  1056. data/misc/openlayers/tests/Util_w3c.html +0 -35
  1057. data/misc/openlayers/tests/WPSClient.html +0 -108
  1058. data/misc/openlayers/tests/WPSProcess.html +0 -188
  1059. data/misc/openlayers/tests/atom-1.0.xml +0 -34
  1060. data/misc/openlayers/tests/auto-tests.html +0 -2447
  1061. data/misc/openlayers/tests/data/geos_wkt_intersects.js +0 -495
  1062. data/misc/openlayers/tests/data/osm.js +0 -14
  1063. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/0/0.json +0 -1
  1064. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/0/1.json +0 -1
  1065. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/0/2.json +0 -1
  1066. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/1/0.json +0 -1
  1067. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/1/1.json +0 -1
  1068. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/1/2.json +0 -1
  1069. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/2/0.json +0 -1
  1070. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/2/1.json +0 -1
  1071. data/misc/openlayers/tests/data/utfgrid/bio_utfgrid/1/2/2.json +0 -1
  1072. data/misc/openlayers/tests/data/utfgrid/demo-1.1.json +0 -1
  1073. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/0/0.json +0 -1
  1074. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/0/1.json +0 -1
  1075. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/0/2.json +0 -1
  1076. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/1/0.json +0 -1
  1077. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/1/1.json +0 -1
  1078. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/1/2.json +0 -1
  1079. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/2/0.json +0 -1
  1080. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/2/1.json +0 -1
  1081. data/misc/openlayers/tests/data/utfgrid/world_utfgrid/1/2/2.json +0 -1
  1082. data/misc/openlayers/tests/data_Layer_Text_textfile.txt +0 -3
  1083. data/misc/openlayers/tests/data_Layer_Text_textfile_2.txt +0 -3
  1084. data/misc/openlayers/tests/data_Layer_Text_textfile_overflow.txt +0 -3
  1085. data/misc/openlayers/tests/deprecated/Ajax.html +0 -28
  1086. data/misc/openlayers/tests/deprecated/BaseTypes/Class.html +0 -142
  1087. data/misc/openlayers/tests/deprecated/BaseTypes/Element.html +0 -56
  1088. data/misc/openlayers/tests/deprecated/Control/MouseToolbar.html +0 -60
  1089. data/misc/openlayers/tests/deprecated/Geometry/Rectangle.html +0 -77
  1090. data/misc/openlayers/tests/deprecated/Layer/GML.html +0 -61
  1091. data/misc/openlayers/tests/deprecated/Layer/MapServer.html +0 -59
  1092. data/misc/openlayers/tests/deprecated/Layer/MapServer/Untiled.html +0 -158
  1093. data/misc/openlayers/tests/deprecated/Layer/WFS.html +0 -178
  1094. data/misc/openlayers/tests/deprecated/Layer/WMS.html +0 -60
  1095. data/misc/openlayers/tests/deprecated/Layer/WMS/Post.html +0 -89
  1096. data/misc/openlayers/tests/deprecated/Layer/Yahoo.html +0 -121
  1097. data/misc/openlayers/tests/deprecated/Layer/mice.xml +0 -156
  1098. data/misc/openlayers/tests/deprecated/Layer/owls.xml +0 -156
  1099. data/misc/openlayers/tests/deprecated/Popup/AnchoredBubble.html +0 -61
  1100. data/misc/openlayers/tests/deprecated/Protocol/SQL.html +0 -24
  1101. data/misc/openlayers/tests/deprecated/Protocol/SQL/Gears.html +0 -474
  1102. data/misc/openlayers/tests/deprecated/Renderer/SVG2.html +0 -399
  1103. data/misc/openlayers/tests/deprecated/Tile/WFS.html +0 -215
  1104. data/misc/openlayers/tests/deprecated/Util.html +0 -20
  1105. data/misc/openlayers/tests/georss.txt +0 -378
  1106. data/misc/openlayers/tests/grid_inittiles.html +0 -30
  1107. data/misc/openlayers/tests/index.html +0 -6
  1108. data/misc/openlayers/tests/list-tests.html +0 -260
  1109. data/misc/openlayers/tests/manual/ajax.html +0 -49
  1110. data/misc/openlayers/tests/manual/ajax.txt +0 -1
  1111. data/misc/openlayers/tests/manual/alloverlays-mixed.html +0 -55
  1112. data/misc/openlayers/tests/manual/arcims-2117.html +0 -103
  1113. data/misc/openlayers/tests/manual/arkansas.rss +0 -9
  1114. data/misc/openlayers/tests/manual/big-georss.html +0 -33
  1115. data/misc/openlayers/tests/manual/box-quirks.html +0 -52
  1116. data/misc/openlayers/tests/manual/box-strict.html +0 -46
  1117. data/misc/openlayers/tests/manual/clip-features-svg.html +0 -128
  1118. data/misc/openlayers/tests/manual/dateline-sketch.html +0 -66
  1119. data/misc/openlayers/tests/manual/dateline-smallextent.html +0 -61
  1120. data/misc/openlayers/tests/manual/draw-feature.html +0 -73
  1121. data/misc/openlayers/tests/manual/feature-handler.html +0 -126
  1122. data/misc/openlayers/tests/manual/geodesic.html +0 -160
  1123. data/misc/openlayers/tests/manual/geojson-geomcoll-reprojection.html +0 -74
  1124. data/misc/openlayers/tests/manual/google-fullscreen-overlay.html +0 -54
  1125. data/misc/openlayers/tests/manual/google-panning.html +0 -122
  1126. data/misc/openlayers/tests/manual/google-resize.html +0 -55
  1127. data/misc/openlayers/tests/manual/google-tilt.html +0 -37
  1128. data/misc/openlayers/tests/manual/google-v3-resize.html +0 -54
  1129. data/misc/openlayers/tests/manual/loadend.html +0 -73
  1130. data/misc/openlayers/tests/manual/map-events.html +0 -38
  1131. data/misc/openlayers/tests/manual/memory/Marker-2258.html +0 -60
  1132. data/misc/openlayers/tests/manual/memory/PanZoom-2323.html +0 -41
  1133. data/misc/openlayers/tests/manual/memory/RemoveChild-2170.html +0 -56
  1134. data/misc/openlayers/tests/manual/memory/VML-2170.html +0 -49
  1135. data/misc/openlayers/tests/manual/multiple-google-layers.html +0 -135
  1136. data/misc/openlayers/tests/manual/overviewmap-projection.html +0 -70
  1137. data/misc/openlayers/tests/manual/page-position.html +0 -103
  1138. data/misc/openlayers/tests/manual/pan-redraw-svg.html +0 -58
  1139. data/misc/openlayers/tests/manual/popup-keepInMap.html +0 -100
  1140. data/misc/openlayers/tests/manual/reflow.html +0 -59
  1141. data/misc/openlayers/tests/manual/renderedDimensions.html +0 -113
  1142. data/misc/openlayers/tests/manual/select-feature-right-click.html +0 -86
  1143. data/misc/openlayers/tests/manual/select-feature.html +0 -75
  1144. data/misc/openlayers/tests/manual/tiles-loading.html +0 -122
  1145. data/misc/openlayers/tests/manual/tween.html +0 -82
  1146. data/misc/openlayers/tests/manual/vector-features-performance.html +0 -149
  1147. data/misc/openlayers/tests/manual/vector-layer-zindex.html +0 -143
  1148. data/misc/openlayers/tests/mice.xml +0 -156
  1149. data/misc/openlayers/tests/node.js/mockdom.js +0 -104
  1150. data/misc/openlayers/tests/node.js/node-tests.cfg +0 -12
  1151. data/misc/openlayers/tests/node.js/node.js +0 -1
  1152. data/misc/openlayers/tests/node.js/run-test.js +0 -26
  1153. data/misc/openlayers/tests/node.js/run.sh +0 -10
  1154. data/misc/openlayers/tests/owls.xml +0 -156
  1155. data/misc/openlayers/tests/run-tests.html +0 -155
  1156. data/misc/openlayers/tests/selenium/remotecontrol/config.cfg +0 -48
  1157. data/misc/openlayers/tests/selenium/remotecontrol/selenium.py +0 -1846
  1158. data/misc/openlayers/tests/selenium/remotecontrol/setup.txt +0 -8
  1159. data/misc/openlayers/tests/selenium/remotecontrol/test_ol.py +0 -95
  1160. data/misc/openlayers/tests/speed/geometry.html +0 -43
  1161. data/misc/openlayers/tests/speed/string_format.html +0 -29
  1162. data/misc/openlayers/tests/speed/vector-renderers.html +0 -25
  1163. data/misc/openlayers/tests/speed/vector-renderers.js +0 -70
  1164. data/misc/openlayers/tests/speed/wmc_speed.html +0 -30
  1165. data/misc/openlayers/tests/speed/wmscaps.html +0 -52
  1166. data/misc/openlayers/tests/speed/wmscaps.js +0 -4956
  1167. data/misc/openlayers/tests/speed/wmscaps.xml +0 -4954
  1168. data/misc/openlayers/tests/throws.js +0 -82
  1169. data/misc/openlayers/theme/default/google.css +0 -9
  1170. data/misc/openlayers/theme/default/google.tidy.css +0 -1
  1171. data/misc/openlayers/theme/default/ie6-style.css +0 -10
  1172. data/misc/openlayers/theme/default/ie6-style.tidy.css +0 -1
  1173. data/misc/openlayers/theme/default/img/add_point_off.png +0 -0
  1174. data/misc/openlayers/theme/default/img/add_point_on.png +0 -0
  1175. data/misc/openlayers/theme/default/img/blank.gif +0 -0
  1176. data/misc/openlayers/theme/default/img/close.gif +0 -0
  1177. data/misc/openlayers/theme/default/img/drag-rectangle-off.png +0 -0
  1178. data/misc/openlayers/theme/default/img/drag-rectangle-on.png +0 -0
  1179. data/misc/openlayers/theme/default/img/draw_line_off.png +0 -0
  1180. data/misc/openlayers/theme/default/img/draw_line_on.png +0 -0
  1181. data/misc/openlayers/theme/default/img/draw_point_off.png +0 -0
  1182. data/misc/openlayers/theme/default/img/draw_point_on.png +0 -0
  1183. data/misc/openlayers/theme/default/img/draw_polygon_off.png +0 -0
  1184. data/misc/openlayers/theme/default/img/draw_polygon_on.png +0 -0
  1185. data/misc/openlayers/theme/default/img/editing_tool_bar.png +0 -0
  1186. data/misc/openlayers/theme/default/img/move_feature_off.png +0 -0
  1187. data/misc/openlayers/theme/default/img/move_feature_on.png +0 -0
  1188. data/misc/openlayers/theme/default/img/navigation_history.png +0 -0
  1189. data/misc/openlayers/theme/default/img/overview_replacement.gif +0 -0
  1190. data/misc/openlayers/theme/default/img/pan-panel-NOALPHA.png +0 -0
  1191. data/misc/openlayers/theme/default/img/pan-panel.png +0 -0
  1192. data/misc/openlayers/theme/default/img/pan_off.png +0 -0
  1193. data/misc/openlayers/theme/default/img/pan_on.png +0 -0
  1194. data/misc/openlayers/theme/default/img/panning-hand-off.png +0 -0
  1195. data/misc/openlayers/theme/default/img/panning-hand-on.png +0 -0
  1196. data/misc/openlayers/theme/default/img/remove_point_off.png +0 -0
  1197. data/misc/openlayers/theme/default/img/remove_point_on.png +0 -0
  1198. data/misc/openlayers/theme/default/img/ruler.png +0 -0
  1199. data/misc/openlayers/theme/default/img/save_features_off.png +0 -0
  1200. data/misc/openlayers/theme/default/img/save_features_on.png +0 -0
  1201. data/misc/openlayers/theme/default/img/view_next_off.png +0 -0
  1202. data/misc/openlayers/theme/default/img/view_next_on.png +0 -0
  1203. data/misc/openlayers/theme/default/img/view_previous_off.png +0 -0
  1204. data/misc/openlayers/theme/default/img/view_previous_on.png +0 -0
  1205. data/misc/openlayers/theme/default/img/zoom-panel-NOALPHA.png +0 -0
  1206. data/misc/openlayers/theme/default/img/zoom-panel.png +0 -0
  1207. data/misc/openlayers/theme/default/style.css +0 -516
  1208. data/misc/openlayers/theme/default/style.mobile.css +0 -70
  1209. data/misc/openlayers/theme/default/style.mobile.tidy.css +0 -1
  1210. data/misc/openlayers/theme/default/style.tidy.css +0 -1
  1211. data/misc/openlayers/tools/BeautifulSoup.py +0 -1767
  1212. data/misc/openlayers/tools/README.txt +0 -14
  1213. data/misc/openlayers/tools/closure_library_jscompiler.py +0 -71
  1214. data/misc/openlayers/tools/closure_ws.py +0 -28
  1215. data/misc/openlayers/tools/exampleparser.py +0 -251
  1216. data/misc/openlayers/tools/jsmin.c +0 -272
  1217. data/misc/openlayers/tools/jsmin.py +0 -216
  1218. data/misc/openlayers/tools/mergejs.py +0 -287
  1219. data/misc/openlayers/tools/minimize.py +0 -47
  1220. data/misc/openlayers/tools/oldot.py +0 -43
  1221. data/misc/openlayers/tools/release.sh +0 -71
  1222. data/misc/openlayers/tools/shrinksafe.py +0 -54
  1223. data/misc/openlayers/tools/toposort.py +0 -35
  1224. data/misc/openlayers/tools/uglify_js.py +0 -35
  1225. data/misc/openlayers/tools/update_dev_dir.sh +0 -103
@@ -1,337 +0,0 @@
1
- <html>
2
- <head>
3
- <script src="http://maps.google.com/maps/api/js?sensor=false&amp;v=3.6"></script>
4
- <script src="../../OLLoader.js"></script>
5
- <script type="text/javascript">
6
-
7
- var layer;
8
-
9
- function test_Layer_Google_constructor (t) {
10
- t.plan( 5 );
11
-
12
- var map = new OpenLayers.Map('map');
13
- var layer = new OpenLayers.Layer.Google('Goog Layer');
14
- map.addLayer(layer);
15
-
16
-
17
- t.ok( layer instanceof OpenLayers.Layer.Google, "new OpenLayers.Layer.Google returns object" );
18
- t.eq( layer.CLASS_NAME, "OpenLayers.Layer.Google", "CLASS_NAME variable set correctly");
19
-
20
- t.eq( layer.name, "Goog Layer", "layer.name is correct" );
21
-
22
- t.ok ( layer.mapObject != null, "GMap Object correctly loaded");
23
-
24
- t.eq(layer.version, "3", "API version 3 detected.");
25
- }
26
-
27
- function test_clone(t) {
28
- t.plan(2);
29
- var layer, clone;
30
-
31
- // test default layer
32
- layer = new OpenLayers.Layer.Google();
33
- clone = layer.clone();
34
- t.ok(clone instanceof OpenLayers.Layer.Google, "[default] good instance");
35
-
36
- layer.destroy();
37
- clone.destroy();
38
-
39
- // test with alt type
40
- layer = new OpenLayers.Layer.Google(null, {type: google.maps.MapTypeId.SATELLITE});
41
- clone = layer.clone();
42
- t.ok(clone.type === google.maps.MapTypeId.SATELLITE, "[sat] correct type");
43
-
44
- layer.destroy();
45
- clone.destroy();
46
- }
47
-
48
- function test_Layer_Google_isBaseLayer (t) {
49
- t.plan(1);
50
-
51
- var layer = new OpenLayers.Layer.Google('Goog Layer');
52
-
53
- t.ok(layer.isBaseLayer, "a default load of google layer responds as a base layer");
54
- }
55
-
56
- function test_Layer_Google_Translation_lonlat (t) {
57
- t.plan( 4 );
58
-
59
- var map = new OpenLayers.Map('map');
60
- var layer = new OpenLayers.Layer.Google('Goog Layer');
61
- map.addLayer(layer);
62
-
63
- // these two lines specify an appropriate translation.
64
- // the code afterwards works by itself to test that translation
65
- // works correctly both ways.
66
- var gLatLng = new google.maps.LatLng(50,100);
67
- // v3 uses sphericalMercator by default
68
- var correspondingOLLonLat = layer.forwardMercator(100, 50);
69
-
70
- olLonLat = layer.getOLLonLatFromMapObjectLonLat(gLatLng);
71
- t.ok(olLonLat.equals(correspondingOLLonLat), "Translation from GLatLng to OpenLayers.LonLat works");
72
-
73
- var transGLatLng = layer.getMapObjectLonLatFromOLLonLat(olLonLat);
74
- t.ok( transGLatLng.equals(gLatLng), "Translation from OpenLayers.LonLat to GLatLng works");
75
-
76
- t.ok( layer.getMapObjectLonLatFromOLLonLat(null) == null, "getGLatLngFromOLLonLat(null) returns null");
77
- t.ok( layer.getOLLonLatFromMapObjectLonLat(null) == null, "getOLLonLatFromGLatLng(null) returns null");
78
- }
79
-
80
- function test_Layer_Google_Translation_pixel (t) {
81
- t.plan( 4 );
82
-
83
- var map = new OpenLayers.Map('map');
84
- var layer = new OpenLayers.Layer.Google('Goog Layer');
85
- map.addLayer(layer);
86
-
87
- // these two lines specify an appropriate translation.
88
- // the code afterwards works by itself to test that translation
89
- // works correctly both ways.
90
- var gPoint = new google.maps.Point(50,100);
91
- var correspondingOLPixel = new OpenLayers.Pixel(50, 100);
92
-
93
-
94
- olPixel = layer.getOLPixelFromMapObjectPixel(gPoint);
95
- t.ok( olPixel.equals(correspondingOLPixel), "Translation from GPoint to OpenLayers.Pixel works");
96
-
97
- var transGPoint = layer.getMapObjectPixelFromOLPixel(olPixel);
98
- t.ok( transGPoint.equals(gPoint), "Translation from OpenLayers.Pixel to GPoint works");
99
-
100
- t.ok( layer.getMapObjectPixelFromOLPixel(null) == null, "getGPointFromOLPixel(null) returns null");
101
- t.ok( layer.getOLPixelFromMapObjectPixel(null) == null, "getOLPixelFromGPoint(null) returns null");
102
- }
103
-
104
- function test_Layer_destroy (t) {
105
- t.plan( 5 );
106
-
107
- var map = new OpenLayers.Map('map');
108
-
109
- layer = new OpenLayers.Layer.Google('Test Layer');
110
- map.addLayer(layer);
111
-
112
- layer.destroy();
113
-
114
- t.eq( layer.name, null, "layer.name is null after destroy" );
115
- t.eq( layer.div, null, "layer.div is null after destroy" );
116
- t.eq( layer.map, null, "layer.map is null after destroy" );
117
- t.eq( layer.options, null, "layer.options is null after destroy" );
118
- t.eq( layer.gmap, null, "layer.gmap is null after destroy" );
119
- }
120
-
121
- function test_Layer_Goole_forwardMercator(t){
122
- t.plan(2);
123
- //Just test that the fowardMercator function still exists.
124
- var layer = new OpenLayers.Layer.Google('Test Layer', {'sphericalMercator': true});
125
- layer.forwardMercator = function(evt) {
126
- t.ok(true,
127
- "GoogleMercator.forwardMercator was called and executed." );
128
- return;
129
- }
130
- layer.forwardMercator();
131
- //Now test the fowardMercator returns the expected LonLat object
132
- var layer = new OpenLayers.Layer.Google('Test Layer', {'sphericalMercator': true});
133
- var lonlat2 = new OpenLayers.LonLat(Math.random(),Math.random());
134
- var result = layer.forwardMercator(lonlat2.lon, lonlat2.lat);
135
- t.ok(result instanceof OpenLayers.LonLat, "OpenLayers.Google.fowardMercator returns LonLat object" );
136
- }
137
-
138
- function test_Layer_Google_overlay(t) {
139
- // Test for #849.
140
- t.plan(1);
141
- var map = new OpenLayers.Map( 'map' ,
142
- { controls: [] , 'numZoomLevels':20});
143
-
144
- var satellite = new OpenLayers.Layer.Google( "Google Satellite" , {type: google.maps.MapTypeId.SATELLITE, 'maxZoomLevel':18} );
145
- var layer = new OpenLayers.Layer.WMS( "OpenLayers WMS",
146
- "http://labs.metacarta.com/wms/vmap0", {layers: 'basic', 'transparent':true},
147
- {isBaseLayer: false, singleTile: true, displayOutsideMaxExtent: true} );
148
-
149
- map.addLayers([satellite, layer]);
150
- map.setCenter(new OpenLayers.LonLat(10.205188,48.857593), 5);
151
- map.zoomIn();
152
- var size = map.getSize();
153
- var px = new OpenLayers.Pixel(size.w, size.h);
154
- var br = map.getLonLatFromPixel(px);
155
- t.ok(layer.grid[0][0].bounds.containsLonLat(br), "Bottom right pixel is covered by untiled WMS layer");
156
- }
157
- function test_Layer_Google_isBaseLayer (t) {
158
- t.plan(3);
159
- var map = new OpenLayers.Map( 'map' ,
160
- { controls: [] , 'numZoomLevels':20});
161
-
162
- var satellite = new OpenLayers.Layer.Google( "Google Satellite" , {type: google.maps.MapTypeId.SATELLITE, 'maxZoomLevel':18} );
163
- map.addLayers([satellite]);
164
- map.zoomToMaxExtent();
165
-
166
- t.eq(satellite.div.style.display, "", "Satellite layer is visible.");
167
- satellite.setVisibility(false);
168
- t.eq(satellite.div.style.display, "none", "Satellite layer is not visible.");
169
- satellite.setVisibility(true);
170
- t.eq(satellite.div.style.display, "block", "Satellite layer is visible.");
171
- }
172
-
173
- function test_allOverlays_invisible(t) {
174
-
175
- t.plan(1);
176
-
177
- var map = new OpenLayers.Map('map', {allOverlays: true});
178
-
179
- var osm = new OpenLayers.Layer.OSM();
180
- var gmap = new OpenLayers.Layer.Google("Google Streets", {visibility: false});
181
-
182
- // keep track of last argument to setGMapVisibility
183
- var visible;
184
- var original = gmap.setGMapVisibility;
185
- gmap.setGMapVisibility = function(vis) {
186
- visible = vis;
187
- original.apply(gmap, arguments);
188
- }
189
-
190
- map.addLayers([osm, gmap]);
191
- map.zoomToMaxExtent();
192
-
193
- t.ok(visible === false, "setGMapVisibility last called with false");
194
-
195
- map.destroy();
196
-
197
- }
198
-
199
- function test_allOverlays_pan(t) {
200
-
201
- t.plan(8);
202
-
203
- var origPrecision = OpenLayers.Util.DEFAULT_PRECISION;
204
- // GMaps v3 seems to use a default precision of 13, which is lower
205
- // than what we use in OpenLayers.
206
- // See http://trac.osgeo.org/openlayers/ticket/3059
207
- OpenLayers.Util.DEFAULT_PRECISION = 13;
208
-
209
- var map = new OpenLayers.Map('map', {allOverlays: true});
210
-
211
- var gmap = new OpenLayers.Layer.Google("Google Streets");
212
- var osm = new OpenLayers.Layer.OSM();
213
- map.addLayers([gmap, osm]);
214
-
215
- var origin = new OpenLayers.LonLat(1000000, 6000000);
216
- map.setCenter(origin, 4);
217
- var resolution = map.getResolution();
218
-
219
- var dx, dy, center, expected;
220
-
221
- // confirm that panning works with Google visible
222
- dx = 100, dy = -100;
223
- map.pan(dx, dy, {animate: false});
224
- center = map.getCenter();
225
- expected = new OpenLayers.LonLat(
226
- origin.lon + (resolution * dx),
227
- origin.lat - (resolution * dy)
228
- );
229
- t.eq(center.lon, expected.lon, "x panning with Google visible " + dx + ", " + dy);
230
- t.eq(center.lat, expected.lat, "y panning with Google visible " + dx + ", " + dy);
231
- map.pan(-dx, -dy, {animate: false});
232
- center = map.getCenter();
233
- t.eq(center.lon, origin.lon, "x panning with Google visible " + (-dx) + ", " + (-dy));
234
- t.eq(center.lat, origin.lat, "y panning with Google visible " + (-dx) + ", " + (-dy));
235
-
236
- // confirm that panning works with Google invisible
237
- gmap.setVisibility(false);
238
- dx = 100, dy = -100;
239
- map.pan(dx, dy, {animate: false});
240
- center = map.getCenter();
241
- expected = new OpenLayers.LonLat(
242
- origin.lon + (resolution * dx),
243
- origin.lat - (resolution * dy)
244
- );
245
- t.eq(center.lon, expected.lon, "x panning with Google invisible " + dx + ", " + dy);
246
- t.eq(center.lat, expected.lat, "y panning with Google invisible " + dx + ", " + dy);
247
- map.pan(-dx, -dy, {animate: false});
248
- center = map.getCenter();
249
- t.eq(center.lon, origin.lon, "x panning with Google invisible " + (-dx) + ", " + (-dy));
250
- t.eq(center.lat, origin.lat, "y panning with Google invisible " + (-dx) + ", " + (-dy));
251
-
252
- map.destroy();
253
- OpenLayers.Util.DEFAULT_PRECISION = origPrecision;
254
- }
255
-
256
- function test_wrapDateLine(t) {
257
- t.plan(2);
258
-
259
- var origPrecision = OpenLayers.Util.DEFAULT_PRECISION;
260
- // Our default precision is very high - millimeters should be enough.
261
- // See http://trac.osgeo.org/openlayers/ticket/3059
262
- OpenLayers.Util.DEFAULT_PRECISION = 12;
263
-
264
- var map = new OpenLayers.Map("map");
265
-
266
- var gmap = new OpenLayers.Layer.Google("Google Streets");
267
- map.addLayer(gmap);
268
- map.setCenter(new OpenLayers.LonLat(0, 0), 1);
269
-
270
- var center;
271
-
272
- // pan to the edge of the world
273
- map.pan(256, 0, {animate: false});
274
- center = map.getCenter();
275
- t.eq(center.lon, 20037508.34, "edge of the world");
276
- // pan off the edge of the world
277
- map.pan(100, 0, {animate: false});
278
- center = map.getCenter();
279
- var expect = OpenLayers.Util.toFloat(100 * map.getResolution() - 20037508.34);
280
- t.eq(center.lon, expect, "magically back in the western hemisphere");
281
-
282
- map.destroy();
283
- OpenLayers.Util.DEFAULT_PRECISION = origPrecision;
284
- }
285
-
286
- function test_respectDateLine(t) {
287
- t.plan(2);
288
-
289
- var map = new OpenLayers.Map("map");
290
-
291
- var gmap = new OpenLayers.Layer.Google("Google Streets", {wrapDateLine: false});
292
- map.addLayer(gmap);
293
- map.setCenter(new OpenLayers.LonLat(0, 0), 1);
294
-
295
- var center;
296
-
297
- // pan to the edge of the world
298
- map.pan(256, 0, {animate: false});
299
- center = map.getCenter();
300
- t.eq(center.lon, 20037508.34, "edge of the world");
301
- // pan off the edge of the world
302
- map.pan(100, 0, {animate: false});
303
- center = map.getCenter();
304
- t.eq(center.lon, 20037508.34, "whew, still on the edge");
305
-
306
- map.destroy();
307
-
308
- }
309
-
310
- function test_moveViewportDiv(t) {
311
- t.plan(2);
312
-
313
- var map = new OpenLayers.Map('map', {
314
- projection: 'EPSG:3857',
315
- center: [0, 0],
316
- zoom: 1
317
- });
318
- var gmap = new OpenLayers.Layer.Google();
319
- map.addLayer(gmap);
320
-
321
- t.delay_call(4, function() {
322
- t.ok(map.viewPortDiv.parentNode !== map.div, 'viewport moved inside GMaps');
323
-
324
- var osm = new OpenLayers.Layer.OSM();
325
- map.addLayer(osm);
326
- map.setBaseLayer(osm);
327
-
328
- t.ok(map.viewPortDiv.parentNode === map.div, 'viewport moved back');
329
- });
330
- }
331
-
332
- </script>
333
- </head>
334
- <body>
335
- <div id="map" style="width:500px; height: 500px"></div>
336
- </body>
337
- </html>
@@ -1,1593 +0,0 @@
1
- <html>
2
- <head>
3
- <script src="../OLLoader.js"></script>
4
- <script type="text/javascript">
5
-
6
- var isMozilla = (navigator.userAgent.indexOf("compatible") == -1);
7
- var layer;
8
-
9
- var name = 'Test Layer';
10
- var url = "http://vmap0.tiles.osgeo.org/wms/vmap0";
11
- var params = {layers: 'basic', format: 'image/png'};
12
-
13
- /**
14
- * NOTE TO READER:
15
- *
16
- * Some of the tests on the Grid class actually use the WMS class.
17
- * This is because WMS is a subclass of Grid and it implements the
18
- * core functions which are necessary to test the tile-generation
19
- * mechanism.
20
- *
21
- */
22
-
23
-
24
- function test_constructor (t) {
25
- t.plan( 7 );
26
-
27
- layer = new OpenLayers.Layer.Grid(name, url, params, null);
28
- t.ok( layer instanceof OpenLayers.Layer.Grid, "returns OpenLayers.Layer.Grid object" );
29
- t.eq( layer.buffer, 0, "buffer default is 0");
30
- t.eq( layer.ratio, 1.5, "ratio default is 1.5");
31
- t.eq( layer.numLoadingTiles, 0, "numLoadingTiles starts at 0");
32
- t.ok( layer.tileClass === OpenLayers.Tile.Image, "tileClass default is OpenLayers.Tile.Image");
33
- t.eq( layer.className, 'olLayerGrid', "className default is olLayerGrid");
34
-
35
- var obj = {};
36
- var func = function() {};
37
- layer.events.register('tileloaded', obj, func);
38
-
39
- t.ok( layer.events.listeners['tileloaded'].length == 1, "one listener for tileloaded after register");
40
- }
41
-
42
- function test_constructor_singleTile(t) {
43
- t.plan(2);
44
- layer = new OpenLayers.Layer.Grid(name, url, params, {singleTile: true});
45
- t.eq( layer.className, 'olLayerGridSingleTile', "className default is olLayerGridSingleTile");
46
- t.eq( layer.removeBackBufferDelay, 0, "removeBackBufferDelay default is 0");
47
- }
48
-
49
- function test_setMap(t) {
50
- t.plan(1);
51
- var map = new OpenLayers.Map('map', {tileManager: null});
52
- layer = new OpenLayers.Layer.Grid(name, url, params, null);
53
- map.addLayer(layer);
54
- t.ok(OpenLayers.Element.hasClass(layer.div, "olLayerGrid"),
55
- "olLayerGrid class assigned to layer div");
56
- map.destroy();
57
- }
58
-
59
- function test_setMap_singleTile(t) {
60
- t.plan(1);
61
- var map = new OpenLayers.Map('map');
62
- layer = new OpenLayers.Layer.Grid(name, url, params, {singleTile: true});
63
- map.addLayer(layer);
64
- t.ok(OpenLayers.Element.hasClass(layer.div, "olLayerGridSingleTile"),
65
- "olLayerGridSingleTile class assigned to layer div");
66
- map.destroy();
67
- }
68
-
69
- function test_Layer_Grid_inittiles (t) {
70
- t.plan( 2 );
71
- var map = new OpenLayers.Map('map');
72
- layer = new OpenLayers.Layer.WMS(name, url, params, {buffer:2});
73
- map.addLayer(layer);
74
- map.setCenter(new OpenLayers.LonLat(0,0),5);
75
- t.eq( layer.grid.length, 8, "Grid rows is correct." );
76
- t.eq( layer.grid[0].length, 7, "Grid cols is correct." );
77
-
78
- }
79
-
80
- function test_Layer_Grid_tileClass(t) {
81
- t.plan(2);
82
-
83
- var myTileClass = OpenLayers.Class(OpenLayers.Tile, {});
84
- var map = new OpenLayers.Map('map');
85
- layer = new OpenLayers.Layer.WMS(name, url, params, {
86
- tileClass: myTileClass
87
- });
88
- map.addLayer(layer);
89
-
90
- t.ok(layer.tileClass === myTileClass, "tileClass is set");
91
- var instance = layer.addTile(new OpenLayers.Bounds(-10, 10, 50, 100),
92
- new OpenLayers.Pixel(10, 12));
93
-
94
- t.ok(instance instanceof myTileClass, "addTile returns type is correct");
95
-
96
- map.destroy();
97
- }
98
-
99
- function test_Layer_Grid_clearTiles (t) {
100
- t.plan(4);
101
-
102
- var map = new OpenLayers.Map('map');
103
- layer = new OpenLayers.Layer.WMS(name, url, params);
104
- map.addLayer(layer);
105
-
106
- map.setCenter(new OpenLayers.LonLat(0,0));
107
-
108
- var numTiles = layer.grid.length * layer.grid[0].length;
109
-
110
- //our count of how many times tile.destroy() is called
111
- tilesDeleted = 0;
112
-
113
- //this will get set to false if we try to destroy a tile that has
114
- // not been unhookedv
115
- allTilesUnhooked = true;
116
-
117
- OpenLayers.Tile.Image.prototype._destroy =
118
- OpenLayers.Tile.Image.prototype.destroy;
119
-
120
- OpenLayers.Tile.Image.prototype.destroy = function() {
121
- if (!this.unhooked) {
122
- allTilesUnhooked = false;
123
- }
124
- tilesDeleted++;
125
- }
126
-
127
- layer.removeTileMonitoringHooks = function(tile) {
128
- tile.unhooked = true;
129
- }
130
-
131
- layer.clearGrid();
132
-
133
- t.ok( layer.grid != null, "layer.grid does not get nullified" );
134
- t.eq(tilesDeleted, numTiles, "all tiles destroy()ed properly");
135
- t.ok(allTilesUnhooked, "all tiles unhooked before being destroyed");
136
- t.eq(layer.gridResolution, null, "gridResolution set to null");
137
-
138
- OpenLayers.Tile.Image.prototype.destroy =
139
- OpenLayers.Tile.Image.prototype._destroy;
140
-
141
- }
142
-
143
-
144
- function test_Layer_Grid_getTilesBounds(t) {
145
- t.plan(4);
146
-
147
- layer = new OpenLayers.Layer.WMS(name, url, params);
148
-
149
-
150
- //normal grid
151
- var bl = { bounds: new OpenLayers.Bounds(1,2,2,3)};
152
- var tr = { bounds: new OpenLayers.Bounds(2,3,3,4)};
153
- layer.grid = [ [6, tr],
154
- [bl, 7]];
155
-
156
- var bounds = layer.getTilesBounds();
157
- var testBounds = new OpenLayers.Bounds(1,2,3,4);
158
-
159
- t.ok( bounds.equals(testBounds), "getTilesBounds() returns correct bounds");
160
-
161
- //no tiles
162
- layer.grid = [];
163
- bounds = layer.getTilesBounds();
164
-
165
- t.ok(bounds == null, "getTilesBounds() on a tile-less grid returns null");
166
-
167
-
168
- //singleTile
169
- var singleTile = { bounds: new OpenLayers.Bounds(1,2,3,4)};
170
- layer.grid = [ [ singleTile ] ];
171
- bounds = layer.getTilesBounds();
172
-
173
- t.ok( bounds.equals(testBounds), "getTilesBounds() returns correct bounds");
174
-
175
- //world wrapped around the dateline
176
- var bl = { bounds: new OpenLayers.Bounds(0,-90,180,90)};
177
- var tr = { bounds: new OpenLayers.Bounds(-180,-90,0,90)};
178
- layer.grid = [[bl, tr]];
179
-
180
- var bounds = layer.getTilesBounds();
181
- var testBounds = new OpenLayers.Bounds(0,-90,360,90);
182
-
183
- t.ok( bounds.equals(testBounds), "getTilesBounds() returns correct bounds");
184
-
185
- }
186
-
187
- function test_Layer_Grid_getResolution(t) {
188
- t.plan( 1 );
189
-
190
- var map = new OpenLayers.Map('map');
191
- layer = new OpenLayers.Layer.WMS(name, url, params);
192
- map.addLayer(layer);
193
-
194
- map.zoom = 5;
195
-
196
- t.eq( layer.getResolution(), 0.0439453125, "getResolution() returns correct value");
197
- }
198
-
199
- function test_Layer_Grid_getZoomForExtent(t) {
200
- t.plan( 2 );
201
- var bounds, zoom;
202
-
203
- var map = new OpenLayers.Map('map');
204
- layer = new OpenLayers.Layer.WMS(name, url, params);
205
- map.addLayer(layer);
206
-
207
- bounds = new OpenLayers.Bounds(10,10,12,12);
208
- zoom = layer.getZoomForExtent(bounds);
209
-
210
- t.eq( zoom, 8, "getZoomForExtent() returns correct value");
211
-
212
- bounds = new OpenLayers.Bounds(10,10,100,100);
213
- zoom = layer.getZoomForExtent(bounds);
214
-
215
- t.eq( zoom, 2, "getZoomForExtent() returns correct value");
216
- }
217
-
218
- function test_moveGriddedTiles(t) {
219
- t.plan(1);
220
- var map = new OpenLayers.Map('map');
221
- layer = new OpenLayers.Layer.WMS(name, url, params, {buffer: 2});
222
- map.addLayer(layer);
223
- map.setCenter([0, 0], 5);
224
- var count = 0;
225
- layer.shiftColumn = function(prepend) {
226
- ++count;
227
- OpenLayers.Layer.WMS.prototype.shiftColumn.apply(this, arguments);
228
- }
229
- map.moveTo([15, 0]);
230
- t.delay_call(.5, function() {
231
- t.eq(count, 1, "column shifted once");
232
- });
233
- }
234
-
235
- function test_Layer_Grid_moveTo(t) {
236
-
237
- t.plan(13);
238
-
239
- var map = new OpenLayers.Map('map');
240
- layer = new OpenLayers.Layer.WMS(name, url, params);
241
- layer.destroy = function() {}; //we're going to do funky things with the grid
242
- layer.applyBackBuffer = function() {}; // backbuffering isn't under test here
243
- map.addLayer(layer);
244
- map.setCenter([-10, 0], 5);
245
-
246
- var log = [];
247
-
248
- //make sure null bounds doesnt cause script error.
249
- // no test necessary, just action
250
- map.getExtent = function() { return null; }
251
- layer.singleTile = false;
252
- layer.moveTo(); //checks to make sure null bounds doesnt break us
253
-
254
-
255
- //observing globals
256
- layer.initSingleTile = function(bounds) {
257
- g_WhichFunc = "InitSingle";
258
- g_Bounds = bounds;
259
- };
260
- layer.initGriddedTiles = function(bounds) {
261
- g_WhichFunc = "InitGridded";
262
- g_Bounds = bounds;
263
- };
264
- layer.moveGriddedTiles = function() {
265
- g_WhichFunc = "MoveGridded";
266
- g_Bounds = layer.map.getExtent();
267
- };
268
- var clearTestBounds = function() {
269
- g_WhichFunc = null;
270
- g_Bounds = null;
271
- };
272
-
273
- //default map extent (tested every time below)
274
- b = new OpenLayers.Bounds(0,0,100,100);
275
- map.getExtent = function() {
276
- return b;
277
- };
278
- var tilesBounds = null;
279
- layer.getTilesBounds = function() {
280
- return tilesBounds;
281
- }
282
-
283
-
284
- //FORCE
285
-
286
- //empty grid
287
- layer.grid = [];
288
- //grid
289
- clearTestBounds();
290
- layer.singleTile = false;
291
- layer.moveTo()
292
- t.ok(g_Bounds.equals(b), "if grid is empty, initGridded called");
293
-
294
- //singletile
295
- clearTestBounds();
296
- layer.singleTile = true;
297
- layer.moveTo()
298
- t.ok(g_Bounds.equals(b), "if grid is empty, initSingleTile called");
299
-
300
- //zoomChanged
301
- zoomChanged = true;
302
- layer.grid = [ [ {} ] ];
303
-
304
- //grid
305
- clearTestBounds();
306
- layer.singleTile = false;
307
- layer.moveTo(null, zoomChanged);
308
- t.ok(g_Bounds.equals(b), "if layer has grid but zoomChanged is called, initGridded called");
309
-
310
- //singletile
311
- clearTestBounds();
312
- layer.singleTile = true;
313
- layer.moveTo(null, zoomChanged);
314
- t.ok(g_Bounds.equals(b), "if layer has grid but zoomChanged is called, initSingleTile called");
315
-
316
-
317
- //NO FORCE
318
- zoomChanged = false;
319
- layer.grid = [ [ {} ] ];
320
-
321
- //single tile
322
- layer.singleTile = true;
323
-
324
- //DRAGGING
325
- var dragging = true;
326
-
327
- //in bounds
328
- clearTestBounds();
329
- tilesBounds = new OpenLayers.Bounds(-10,-10,110,110);
330
- layer.moveTo(null, zoomChanged, dragging);
331
- t.ok(g_Bounds == null, "if dragging and tile in bounds, no init()");
332
-
333
- //out bounds
334
- clearTestBounds();
335
- tilesBounds = new OpenLayers.Bounds(10,10,120,120);
336
- layer.moveTo(null, zoomChanged, dragging);
337
- t.ok(g_Bounds == null, "if dragging and tile out of bounds, no init()");
338
-
339
- //NOT DRAGGING
340
- dragging = false;
341
-
342
- //in bounds
343
- clearTestBounds();
344
- tilesBounds = new OpenLayers.Bounds(-10,-10,110,110);
345
- layer.moveTo(null, zoomChanged, dragging);
346
- t.ok(g_Bounds == null, "if dragging and tile in bounds, no init()");
347
-
348
- //out bounds
349
- clearTestBounds();
350
- tilesBounds = new OpenLayers.Bounds(10,10,120,120);
351
- layer.moveTo(null, zoomChanged, dragging);
352
- t.ok(g_WhichFunc == "InitSingle", "if not dragging and tile out of bounds, we call initSingleTile()");
353
- t.ok(g_Bounds.equals(b), "if not dragging and tile out of bounds, we call initSingleTile() with correct bounds");
354
-
355
-
356
- //gridded
357
- layer.grid = [ [ {position: new OpenLayers.Pixel(0,0)} ] ];
358
- layer.singleTile = false;
359
-
360
- //regular move
361
- clearTestBounds();
362
- tilesBounds = new OpenLayers.Bounds(10,10,120,120);
363
- g_WhichFunc = null;
364
- layer.moveTo(null, zoomChanged);
365
- t.eq(g_WhichFunc, "MoveGridded", "if tiles not drastically out of bounds, we call moveGriddedTile()");
366
- t.ok(g_Bounds.equals(b), "if tiles not drastically out of bounds, we call moveGriddedTile() with correct bounds");
367
-
368
- // drastic pan
369
- clearTestBounds();
370
- tilesBounds = new OpenLayers.Bounds(-150,-150,-120,-120);
371
- layer.moveTo(null, zoomChanged);
372
- t.ok(g_WhichFunc == "InitGridded", "if tiles drastically out of bounds, we call initGriddedTile()");
373
- t.ok(g_Bounds.equals(b), "if tiles drastically out of bounds, we call initGriddedTile() with correct bounds");
374
- }
375
-
376
- /** THIS WOULD BE WHERE THE TESTS WOULD GO FOR
377
- *
378
- * -insertColumn
379
- * -insertRow
380
- *
381
-
382
- function 08_Layer_Grid_insertColumn(t) {
383
- }
384
-
385
- function 09_Layer_Grid_insertRow(t) {
386
- }
387
-
388
- *
389
- */
390
-
391
- function test_Layer_Grid_clone(t) {
392
- t.plan(7);
393
-
394
- var options = {tileSize: new OpenLayers.Size(500,50)};
395
- var map = new OpenLayers.Map('map', options);
396
- layer = new OpenLayers.Layer.Grid(name, url, params);
397
- map.addLayer(layer);
398
-
399
- layer.grid = [ [6, 7],
400
- [8, 9]];
401
-
402
- // if we clone when tiles are still loading, this should not influence the clone
403
- layer.numLoadingTiles = 1;
404
- var clone = layer.clone();
405
- t.eq( clone.numLoadingTiles, 0, "numLoadingTiles should be reset");
406
- t.ok( clone.grid != layer.grid, "clone does not copy grid");
407
- t.ok( clone.grid.length == 0, "clone creates a new array instead");
408
-
409
- t.eq(clone.backBuffer, null, "no backbuffer from original");
410
-
411
- t.ok( clone.tileSize.equals(layer.tileSize), "tileSize correctly cloned");
412
-
413
- layer.tileSize.w += 40;
414
-
415
- t.eq( clone.tileSize.w, 500, "changing layer.tileSize does not change clone.tileSize -- a fresh copy was made, not just copied reference");
416
-
417
- t.eq( clone.alpha, layer.alpha, "alpha copied correctly");
418
-
419
- layer.grid = null;
420
- }
421
-
422
- function test_Layer_Grid_setTileSize(t) {
423
- t.plan(1);
424
-
425
- OpenLayers.Layer.HTTPRequest.prototype._setTileSize =
426
- OpenLayers.Layer.HTTPRequest.prototype.setTileSize;
427
-
428
- OpenLayers.Layer.HTTPRequest.prototype.setTileSize = function(size) {
429
- g_Size = size;
430
- };
431
-
432
-
433
- layer = new OpenLayers.Layer.Grid(name, url, params, {
434
- singleTile: true
435
- });
436
- mapSize = new OpenLayers.Size(100,1000);
437
- layer.map = {
438
- getSize: function() { return mapSize; }
439
- }
440
-
441
- g_Size = null;
442
- layer.setTileSize();
443
-
444
- var idealSize = new OpenLayers.Size(150,1500);
445
- t.ok( g_Size && g_Size.equals(idealSize), "correctly calculated tile size passed to superclass setTileSize() function");
446
-
447
- OpenLayers.Layer.HTTPRequest.prototype.setTileSize =
448
- OpenLayers.Layer.HTTPRequest.prototype._setTileSize;
449
- }
450
-
451
- function test_Layer_Grid_initSingleTile(t) {
452
- t.plan( 11 );
453
-
454
- layer = new OpenLayers.Layer.Grid(name, url, params, {
455
- singleTile: true,
456
- ratio: 2
457
- });
458
-
459
- var bounds = new OpenLayers.Bounds(-10,10,50,100);
460
-
461
- var desiredTileBounds = new OpenLayers.Bounds(-40,-35,80,145);
462
- var desiredUL = new OpenLayers.LonLat(-40,145);
463
-
464
- translatedPX = {};
465
- layer.map = {
466
- getLayerPxFromLonLat: function(ul) {
467
- t.ok(ul.lon === desiredUL.lon && ul.lat === desiredUL.lat, "correct ul passed to translation");
468
- return translatedPX;
469
- },
470
- getResolution: function() {
471
- }
472
- }
473
-
474
- var newTile = {
475
- draw: function() {
476
- t.ok(true, "newly created tile has been drawn");
477
- }
478
- };
479
- layer.addTile = function(tileBounds, px) {
480
- t.ok(tileBounds.equals(desiredTileBounds), "correct tile bounds passed to addTile to create new tile");
481
- t.ok(px == translatedPX, "correct tile px passed to addTile to create new tile");
482
- return newTile;
483
- };
484
- layer.addTileMonitoringHooks = function(tile) {
485
- t.ok(tile == newTile, "adding monitoring hooks to the newly added tile");
486
- };
487
- layer.removeExcessTiles = function(x,y) {
488
- t.ok(x == 1 && y == 1, "removeExcessTiles called")
489
- };
490
-
491
-
492
- layer.grid = [];
493
- layer.initSingleTile(bounds);
494
-
495
- t.ok(layer.grid[0][0] == newTile, "grid's 0,0 is set to the newly created tile");
496
-
497
- var tile = {
498
- moveTo: function(tileBounds, px) {
499
- t.ok(tileBounds.equals(desiredTileBounds), "correct tile bounds passed to tile.moveTo()");
500
- t.ok(px == translatedPX, "correct tile px passed to tile.moveTo()");
501
- }
502
- };
503
- layer.grid = [[ tile ]];
504
- layer.initSingleTile(bounds);
505
-
506
- }
507
-
508
- function test_Layer_Grid_addTileMonitoringHooks(t) {
509
- t.plan(18);
510
-
511
- layer = new OpenLayers.Layer.Grid();
512
- layer.events = {
513
- 'triggerEvent': function(str, evt) {
514
- g_events.push([str, evt]);
515
- }
516
- }
517
-
518
- var tile = {
519
- events: {
520
- register: function(name, obj, func) {
521
- g_registered[name] = [obj, func];
522
- },
523
- on: function(obj) {
524
- for (var o in obj) {
525
- if (obj.hasOwnProperty(o)) {
526
- tile.events.register(o, obj.scope, obj[o]);
527
- }
528
- }
529
- }
530
- },
531
- imgDiv: {className: ''}
532
- }
533
-
534
- g_registered = {};
535
- g_events = [];
536
-
537
- layer.addTileMonitoringHooks(tile);
538
-
539
- //loadstart
540
- t.ok(tile.onLoadStart != null, "onLoadStart function created and added to tile");
541
- entry = g_registered["loadstart"];
542
- t.ok( entry && entry[0] == layer && entry[1] == tile.onLoadStart, "loadstart correctly registered");
543
-
544
- layer.numLoadingTiles = 0;
545
- g_events = [];
546
- tile.onLoadStart.apply(layer);
547
-
548
- t.eq(g_events[0][0], "loadstart", "loadstart event triggered when numLoadingTiles is 0");
549
- t.eq(layer.numLoadingTiles, 1, "numLoadingTiles incremented");
550
- t.eq(g_events[1][0], "tileloadstart", "tileloadstart event triggered");
551
-
552
- g_events = [];
553
- tile.onLoadStart.apply(layer);
554
- t.eq(g_events.length, 1, "tileloadstart, but not loadstart triggered when numLoadingTiles is not 0");
555
- t.eq(layer.numLoadingTiles, 2, "numLoadingTiles incremented");
556
-
557
-
558
- //loadend
559
- t.ok(tile.onLoadEnd != null, "onLoadEnd function created and added to tile");
560
- entry = g_registered["loadend"];
561
- t.ok( entry && entry[0] == layer && entry[1] == tile.onLoadEnd, "loadend correctly registered");
562
-
563
- g_events = [];
564
- tile.onLoadError.apply(layer);
565
- t.eq(g_events[0][0], "tileerror", "tileerror triggered");
566
- t.ok(g_events[0][1].tile === tile, "tile passed as tile property to event object");
567
-
568
- layer.numLoadingTiles = 2;
569
- g_events = [];
570
- tile.onLoadEnd.apply(layer, [{}]);
571
- t.eq(g_events[0][0], "tileloaded", "tileloaded triggered when numLoadingTiles is > 0");
572
- t.ok(g_events[0][1].tile === tile, "tile passed as tile property to event object");
573
- t.eq(g_events.length, 1, "loadend event not triggered when numLoadingTiles is > 0");
574
- t.eq(layer.numLoadingTiles, 1, "numLoadingTiles decremented");
575
-
576
-
577
- g_events = [];
578
- layer.grid = [[{}]]; // to prevent error in updateBackBuffer
579
- tile.onLoadEnd.apply(layer, [{}]);
580
- t.eq(g_events[0][0], "tileloaded", "tileloaded triggered when numLoadingTiles is 0");
581
- t.eq(g_events[1][0], "loadend", "loadend event triggered when numLoadingTiles is 0");
582
- t.eq(layer.numLoadingTiles, 0, "numLoadingTiles decremented");
583
- }
584
-
585
- function test_Layer_Grid_removeTileMonitoringHooks(t) {
586
- t.plan(2);
587
-
588
- layer = new OpenLayers.Layer.Grid();
589
-
590
- var tile = {
591
- onLoadStart: {},
592
- onLoadEnd: {},
593
- unload: function() {},
594
- events: {
595
- unregister: function(name, obj, func) {
596
- g_unregistered[name] = [obj, func];
597
- },
598
- un: OpenLayers.Events.prototype.un
599
- }
600
- }
601
-
602
- g_unregistered = {};
603
-
604
- layer.removeTileMonitoringHooks(tile);
605
-
606
- entry = g_unregistered["loadstart"];
607
- t.ok( entry && entry[0] == layer && entry[1] == tile.onLoadStart, "loadstart correctly unregistered");
608
-
609
- entry = g_unregistered["loadend"];
610
- t.ok( entry && entry[0] == layer && entry[1] == tile.onLoadEnd, "loadend correctly unregistered");
611
- }
612
-
613
- function test_Layer_Grid_tileSizeIsInteger(t) {
614
- t.plan(1);
615
-
616
- var map = new OpenLayers.Map('map');
617
- var layer = new OpenLayers.Layer.Grid(name, url, params, {
618
- singleTile: true,
619
- ratio: 1.5
620
- });
621
- map.addLayers([layer]);
622
-
623
- width = layer.tileSize.w;
624
- height = layer.tileSize.h;
625
- t.ok(width == parseInt(width) && height == parseInt(height), "calculated tileSize width/height are integer values");
626
- }
627
- function test_Layer_Grid_getTileBounds(t) {
628
- t.plan(2);
629
- var map = new OpenLayers.Map("map2", {zoomMethod: null});
630
- var url = "http://octo.metacarta.com/cgi-bin/mapserv";
631
- layer = new OpenLayers.Layer.WMS(name, url, params);
632
-
633
- var newParams = { layers: 'sooper',
634
- chickpeas: 'image/png'};
635
-
636
- map.addLayer(layer);
637
- map.zoomToMaxExtent();
638
- map.zoomIn();
639
- var bounds = layer.getTileBounds(new OpenLayers.Pixel(200,200));
640
- t.eq(bounds.toBBOX(), "-180,-90,0,90", "get tile bounds returns correct bounds");
641
- map.pan(200,0, {animate:false});
642
- var bounds = layer.getTileBounds(new OpenLayers.Pixel(200,200));
643
- t.eq(bounds.toBBOX(), "0,-90,180,90", "get tile bounds returns correct bounds after pan");
644
- }
645
-
646
- function test_Layer_Grid_moveTo_buffer_calculation (t) {
647
- t.plan(6);
648
-
649
- var map = new OpenLayers.Map( 'map3' ); // odd map size
650
- var layer0 = new OpenLayers.Layer.WMS( "0 buffer: OpenLayers WMS",
651
- "http://labs.metacarta.com/wms/vmap0",
652
- {layers: 'basic'}, {'buffer':0} );
653
- map.addLayer(layer0);
654
-
655
- var layer1 = new OpenLayers.Layer.WMS( "1 buffer: OpenLayers WMS",
656
- "http://labs.metacarta.com/wms/vmap0",
657
- {layers: 'basic'}, {'buffer':1} );
658
- map.addLayer(layer1);
659
-
660
- var layer2 = new OpenLayers.Layer.WMS( "2 buffer: OpenLayers WMS",
661
- "http://labs.metacarta.com/wms/vmap0",
662
- {layers: 'basic'}, {'buffer':2} );
663
- map.addLayer(layer2);
664
-
665
- map.setCenter(new OpenLayers.LonLat(0, 0), 4);
666
- t.eq( layer0.grid.length, 3, "Grid rows with buffer:0" );
667
- map.setBaseLayer(layer1);
668
- t.eq( layer1.grid.length, 5, "Grid rows with buffer:1" );
669
- map.setBaseLayer(layer2);
670
- t.eq( layer2.grid.length, 7, "Grid rows with buffer:2" );
671
-
672
- // zooming in on Greenland exercises the bug from pre-r4313
673
- map.setCenter(new OpenLayers.LonLat(0, 90), 4);
674
- t.eq( layer0.grid.length, 3, "Grid rows with buffer:0" );
675
- map.setBaseLayer(layer1);
676
- t.eq( layer1.grid.length, 5, "Grid rows with buffer:1" );
677
- map.setBaseLayer(layer2);
678
- t.eq( layer2.grid.length, 7, "Grid rows with buffer:2" );
679
- }
680
-
681
- function test_Layer_Grid_destroy (t) {
682
-
683
- t.plan( 9 );
684
-
685
- var map = new OpenLayers.Map('map', {tileManager: null});
686
- layer = new OpenLayers.Layer.Grid(name, url, params);
687
- map.addLayer(layer);
688
- layer.destroy();
689
- t.eq( layer.grid, null, "layer.grid is null after destroy" );
690
- t.eq( layer.tileSize, null, "layer.tileSize is null after destroy" );
691
-
692
-
693
- //test with tile creation
694
- layer = new OpenLayers.Layer.WMS(name, url, params);
695
- map.addLayer(layer);
696
-
697
- map.setCenter(new OpenLayers.LonLat(0,0), 10);
698
- map.setCenter(new OpenLayers.LonLat(1,1));
699
-
700
- //grab a reference to one of the tiles
701
- var tile = layer.grid[1][1];
702
- t.eq( tile.imgDiv.className, "olTileImage", "Tile has an image" );
703
-
704
- var removeBackBufferCalled = false;
705
- layer.removeBackBuffer = function() {
706
- removeBackBufferCalled = true;
707
- };
708
-
709
- layer.destroy();
710
- t.eq( tile.imgDiv, null, "Tile destroyed" );
711
- t.eq( layer.timerId, null, "Tile loading timeout cleared");
712
- t.ok( layer.grid == null, "tiles appropriately destroyed")
713
- t.ok( removeBackBufferCalled, "destroy calls removeBackBuffer");
714
-
715
- // destroy after remove from map
716
- layer = new OpenLayers.Layer.WMS(name, url, params);
717
- map.addLayer(layer);
718
- map.setCenter(new OpenLayers.LonLat(0,0), 10);
719
- map.removeLayer(layer);
720
- layer.destroy();
721
- t.eq( layer.grid, null, "layer.grid is null after destroy" );
722
- t.eq( layer.tileSize, null, "layer.tileSize is null after destroy" );
723
- }
724
-
725
- function test_setOpacity(t) {
726
- t.plan(5);
727
-
728
- var map = new OpenLayers.Map('map');
729
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
730
- isBaseLayer: true,
731
- opacity: '0.6'
732
- });
733
- map.addLayer(layer);
734
- // setCenter adds tiles to the layer's grid
735
- map.setCenter(new OpenLayers.LonLat(0, 0), 5);
736
-
737
- var tile = layer.grid[0][0], tileImg = tile.imgDiv;
738
-
739
- tile.onImageLoad(); // simulate an image load event
740
- t.eq(layer.opacity, '0.6', 'layer opacity value is correct');
741
- t.eq(parseFloat(tileImg.style.opacity), 0.6, 'tile opacity is correct');
742
-
743
- layer.setOpacity('0.2');
744
- t.eq(layer.opacity, '0.2', 'layer opacity value is correct');
745
- t.eq(parseFloat(tileImg.style.opacity), 0.2, 'tile opacity is correct');
746
-
747
- tile = layer.addTile(new OpenLayers.Bounds(1, 2, 3, 4),
748
- new OpenLayers.Pixel(5, 6));
749
- tile.draw(); // add tile to the grid
750
- tile.onImageLoad(); // simulate an image load event
751
- t.eq(parseFloat(tile.imgDiv.style.opacity), 0.2, "tile opacity is correc");
752
-
753
- map.destroy();
754
- }
755
-
756
- function test_getServerResolution(t) {
757
-
758
- t.plan(4);
759
-
760
- var layer = new OpenLayers.Layer.Grid('', '', {}, {});
761
- var res;
762
-
763
- res = layer.getServerResolution(1);
764
- t.eq(res, 1, '[1] getServerResolution return value is correct');
765
-
766
- layer.serverResolutions = [2, 1];
767
- res = layer.getServerResolution(1);
768
- t.eq(res, 1, '[2] getServerResolution return value is correct');
769
-
770
- layer.serverResolutions = [2];
771
- res = layer.getServerResolution(1);
772
- t.eq(res, 2, '[3] getServerResolution return value is correct');
773
-
774
- var exc;
775
- layer.serverResolutions = [0.5];
776
- res = layer.getServerResolution(1);
777
- t.eq(res, 0.5, '[4] getServerResolution return value is correct');
778
- }
779
-
780
- function test_getServerZoom(t) {
781
-
782
- t.plan(5);
783
-
784
- var resolution, zoom;
785
- var map = new OpenLayers.Map('map', {
786
- resolutions: [8, 4, 2, 1, 0.5],
787
- getResolution: function() {
788
- return resolution;
789
- }
790
- });
791
- var layer = new OpenLayers.Layer.WMS('', '', {}, {isBaseLayer: true});
792
- map.addLayer(layer);
793
-
794
- resolution = 8;
795
- zoom = layer.getServerZoom();
796
- t.eq(zoom, 0, '[1] getServerZoom return value is correct');
797
-
798
- resolution = 4;
799
- zoom = layer.getServerZoom();
800
- t.eq(zoom, 1, '[2] getServerZoom return value is correct');
801
-
802
- layer.serverResolutions = [2, 1];
803
- resolution = 1;
804
- zoom = layer.getServerZoom();
805
- t.eq(zoom, 1, '[3] getServerZoom return value is correct');
806
-
807
- layer.serverResolutions = [2];
808
- resolution = 0.5;
809
- zoom = layer.getServerZoom();
810
- t.eq(zoom, 0, '[4] getServerZoom return value is correct');
811
-
812
- var exc;
813
- layer.serverResolutions = [0.5];
814
- resolution = 1;
815
- zoom = layer.getServerZoom();
816
- t.eq(zoom, 0, '[4] getServerZoom return value is correct');
817
-
818
- map.destroy();
819
- }
820
-
821
- function test_moveTo_scale(t) {
822
-
823
- t.plan(11);
824
-
825
- var map = new OpenLayers.Map('map', {
826
- resolutions: [32, 16, 8, 4, 2, 1],
827
- zoomMethod: null
828
- });
829
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
830
- isBaseLayer: true,
831
- serverResolutions: [32, 16, 8]
832
- });
833
- map.addLayer(layer);
834
-
835
- // initial resolution is 8
836
- map.setCenter(new OpenLayers.LonLat(0, 0), 2);
837
-
838
- // test initial conditions
839
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 1, 'layer div scale is 1');
840
-
841
- // change from resolution 8 to 4
842
- map.zoomTo(3);
843
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 2, '[8->4] layer div scale is 2');
844
-
845
- // change from resolution 8 to 2
846
- map.zoomTo(2); map.zoomTo(4);
847
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 4, '[8->2] layer div scale is 4');
848
-
849
- // change from resolution 8 to 1
850
- map.zoomTo(2); map.zoomTo(5);
851
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 8, '[8->1] layer div scale is 8');
852
-
853
- // change from resolution 4 to 2
854
- map.zoomTo(3); map.zoomTo(4);
855
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 4, '[4->2] layer div scale is 4');
856
-
857
- // change from resolution 4 to 1
858
- map.zoomTo(3); map.zoomTo(5);
859
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 8, '[4->1] layer div scale is 8');
860
-
861
- // change from resolution 2 to 1
862
- map.zoomTo(4); map.zoomTo(5);
863
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 8, '[2->1] layer div scale is 8');
864
-
865
- // change from resolution 1 to 2
866
- map.zoomTo(5); map.zoomTo(4);
867
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 4, '[1->2] layer div scale is 4');
868
-
869
- // change from resolution 1 to 4
870
- map.zoomTo(5); map.zoomTo(3);
871
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 2, '[1->4] layer div scale is 2');
872
-
873
- // change from resolution 1 to 8
874
- map.zoomTo(5); map.zoomTo(2);
875
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 1, '[1->8] layer div scale is 1');
876
-
877
- // change from resolution 1 to 16
878
- map.zoomTo(5); map.zoomTo(1);
879
- t.eq(parseInt(layer.div.lastChild.style.width) / layer.tileSize.w, 1, '[1->16] layer div scale is 1');
880
-
881
- map.destroy();
882
- }
883
-
884
- function test_moveTo_backbuffer_singletile(t) {
885
- t.plan(4);
886
-
887
- var map = new OpenLayers.Map('map', {
888
- resolutions: [1, 0.5, 0.025],
889
- zoomMethod: null
890
- });
891
- var resolution;
892
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
893
- singleTile: true,
894
- isBaseLayer: true,
895
- transitionEffect: 'resize',
896
- applyBackBuffer: function(res) {
897
- resolution = res;
898
- }
899
- });
900
- map.addLayer(layer);
901
-
902
- // initial resolution is 0.025
903
- resolution = undefined;
904
- map.setCenter(new OpenLayers.LonLat(0, 0), 2);
905
- t.eq(resolution, 0.025,
906
- 'applyBackBuffer not called on first moveTo');
907
-
908
- // move to (-90, 45)
909
- resolution = undefined;
910
- map.setCenter(new OpenLayers.LonLat(-90, 45));
911
- t.eq(resolution, 0.025,
912
- 'applyBackBuffer called when map is moved');
913
-
914
- // change to resolution 1
915
- resolution = undefined;
916
- map.zoomTo(0);
917
- t.eq(resolution, 1,
918
- 'applyBackBuffer called when map is zoomed out');
919
-
920
- // change to resolution 0.5
921
- resolution = undefined;
922
- map.zoomTo(1);
923
- t.eq(resolution, 0.5,
924
- 'applyBackBuffer called when map is zoomed out');
925
-
926
- map.destroy();
927
- }
928
-
929
- function test_moveTo_backbuffer(t) {
930
- t.plan(4);
931
-
932
- var map = new OpenLayers.Map('map', {
933
- resolutions: [1, 0.5, 0.025],
934
- zoomMethod: null
935
- });
936
- var resolution;
937
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
938
- isBaseLayer: true,
939
- transitionEffect: 'resize',
940
- applyBackBuffer: function(res) {
941
- resolution = res;
942
- }
943
- });
944
- map.addLayer(layer);
945
-
946
- // initial resolution is 0.025
947
- resolution = undefined;
948
- map.setCenter(new OpenLayers.LonLat(0, 0), 2);
949
- t.eq(resolution, 0.025,
950
- 'applyBackBuffer not called on first moveTo');
951
-
952
- // move to (-90, 45)
953
- resolution = undefined;
954
- map.setCenter(new OpenLayers.LonLat(-90, 45));
955
- t.eq(resolution, undefined,
956
- 'applyBackBuffer not called when map is moved');
957
-
958
- // change to resolution 1
959
- resolution = undefined;
960
- map.zoomTo(0);
961
- t.eq(resolution, 1,
962
- 'applyBackBuffer called when map is zoomed out');
963
-
964
- // change to resolution 0.5
965
- map.zoomTo(1);
966
- t.eq(resolution, 0.5,
967
- 'applyBackBuffer called when map is zoomed out');
968
-
969
- map.destroy();
970
- }
971
-
972
- function test_applyBackBuffer(t) {
973
- t.plan(12);
974
-
975
- var map = new OpenLayers.Map('map2');
976
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
977
- isBaseLayer: true
978
- });
979
- map.addLayer(layer);
980
- map.zoomToMaxExtent();
981
-
982
- var backBuffer;
983
-
984
- // test #1
985
- layer.createBackBuffer = function() {
986
- return;
987
- };
988
- layer.applyBackBuffer(2);
989
- t.eq(layer.backBuffer, undefined,
990
- 'back buffer not created if createBackBuffer returns undefined');
991
-
992
- // test #2
993
- layer.createBackBuffer = function() {
994
- backBuffer = document.createElement('div');
995
- return backBuffer;
996
- };
997
- layer.gridResolution = 32;
998
- layer.backBufferResolution = 2;
999
- layer.grid[0][0].bounds = new OpenLayers.Bounds(0, 1, 1, 0);
1000
- layer.applyBackBuffer(2);
1001
- t.ok(layer.backBuffer === backBuffer,
1002
- 'back buffer set in layer');
1003
- t.ok(map.layerContainerDiv.firstChild === backBuffer,
1004
- 'back buffer inserted as first child');
1005
- t.eq(layer.backBuffer.style.left, '250px',
1006
- 'back buffer has correct left');
1007
- t.eq(layer.backBuffer.style.top, '275px',
1008
- 'back buffer has correct top');
1009
-
1010
- // test #3
1011
- layer.createBackBuffer = function() {
1012
- backBuffer = document.createElement('div');
1013
- return backBuffer;
1014
- };
1015
- layer.gridResolution = 32;
1016
- layer.backBufferResolution = 2;
1017
- layer.grid[0][0].bounds = new OpenLayers.Bounds(0, 1, 1, 0);
1018
- map.layerContainerOriginPx.x = 20;
1019
- map.layerContainerOriginPx.y = -20;
1020
- layer.applyBackBuffer(2);
1021
- t.ok(layer.backBuffer === backBuffer,
1022
- 'back buffer set in layer');
1023
- t.ok(map.layerContainerDiv.firstChild === backBuffer,
1024
- 'back buffer inserted as first child');
1025
- t.eq(layer.backBuffer.style.left, '230px',
1026
- 'back buffer has correct left');
1027
- t.eq(layer.backBuffer.style.top, '295px',
1028
- 'back buffer has correct top');
1029
-
1030
- // test #4
1031
- // and a back buffer in the layer and do as if back buffer removal
1032
- // has been scheduled, and test that applyBackBuffer removes the
1033
- // back buffer and clears the timer
1034
- layer.createBackBuffer = function() {
1035
- return;
1036
- };
1037
- backBuffer = document.createElement('div');
1038
- map.layerContainerDiv.insertBefore(backBuffer, map.baseLayer.div);
1039
- layer.backBuffer = backBuffer;
1040
- layer.backBufferTimerId = 'fake';
1041
- layer.applyBackBuffer(2);
1042
- t.ok(backBuffer !== map.layerContainerDiv.firstChild,
1043
- 'back buffer is not first child of layer container div');
1044
- t.eq(layer.backBuffer, null,
1045
- 'back buffer not set in layer');
1046
- t.eq(layer.backBufferTimerId, null,
1047
- 'back buffer timer cleared');
1048
- map.destroy();
1049
- }
1050
-
1051
- function test_createBackBuffer(t) {
1052
- t.plan(9);
1053
-
1054
- var map = new OpenLayers.Map('map');
1055
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
1056
- isBaseLayer: true
1057
- });
1058
- map.addLayer(layer);
1059
- map.zoomToMaxExtent();
1060
-
1061
- var createBackBuffer = OpenLayers.Tile.Image.prototype.createBackBuffer;
1062
-
1063
- var backBuffer;
1064
-
1065
- OpenLayers.Tile.Image.prototype.createBackBuffer = function() {
1066
- return;
1067
- };
1068
- backBuffer = layer.createBackBuffer();
1069
- t.ok(backBuffer != undefined,
1070
- 'createBackBuffer returns a back buffer');
1071
- t.eq(backBuffer.childNodes.length, 0,
1072
- 'returned back buffer has no child nodes');
1073
-
1074
- OpenLayers.Tile.Image.prototype.createBackBuffer = function() {
1075
- return document.createElement('div');
1076
- };
1077
-
1078
- layer.transitionEffect = 'map-resize';
1079
- backBuffer = layer.createBackBuffer();
1080
- t.ok(backBuffer.style.zIndex == 99, 'z-index of backbuffer correct for "map-resize".');
1081
- layer.removeBackBuffer();
1082
-
1083
- layer.transitionEffect = 'resize';
1084
- backBuffer = layer.createBackBuffer();
1085
- t.ok(backBuffer.style.zIndex == layer.getZIndex() - 1, 'z-index of backbuffer correct for "resize",');
1086
-
1087
- layer.backBufferResolution = 1;
1088
- layer.gridResolution = 1;
1089
- layer.backBuffer = backBuffer;
1090
- layer.div.appendChild(backBuffer);
1091
- layer.backBufferLonLat = {lon: 0, lat: 0};
1092
- layer.applyBackBuffer(1);
1093
- t.ok(backBuffer != undefined,
1094
- 'createBackBuffer returns a back buffer');
1095
- t.eq(backBuffer.childNodes[0].style.left, '0px',
1096
- 'first tile has correct left');
1097
- t.eq(backBuffer.childNodes[0].style.top, '0px',
1098
- 'first tile has correct top');
1099
- t.eq(backBuffer.childNodes[1].style.left, '256px',
1100
- 'second tile has correct left');
1101
- t.eq(backBuffer.childNodes[1].style.top, '0px',
1102
- 'second tile has correct top');
1103
-
1104
- map.destroy();
1105
- OpenLayers.Tile.Image.prototype.createBackBuffer = createBackBuffer;
1106
- }
1107
-
1108
- function test_removeBackBuffer(t) {
1109
- t.plan(3);
1110
-
1111
- var map = new OpenLayers.Map('map');
1112
- var layer = new OpenLayers.Layer.WMS('', '', {}, {isBaseLayer: true});
1113
- map.addLayer(layer);
1114
-
1115
- // add a fake back buffer
1116
- var backBuffer = document.createElement('div');
1117
- layer.backBuffer = backBuffer;
1118
- layer.div.appendChild(backBuffer);
1119
- layer.backBufferResolution = 32;
1120
-
1121
- layer.removeBackBuffer();
1122
- t.eq(layer.backBuffer, null, 'backBuffer set to null in layer');
1123
- t.eq(layer.backBufferResolution, null,
1124
- 'backBufferResolution set to null in layer');
1125
- t.ok(backBuffer.parentNode !== layer.div,
1126
- 'back buffer removed from layer');
1127
-
1128
- map.destroy();
1129
- }
1130
-
1131
- function test_backbuffer_replace(t) {
1132
- t.plan(6);
1133
- var map = new OpenLayers.Map('map', {tileManager: null});
1134
- var layer = new OpenLayers.Layer.WMS('', '../../img/blank.gif');
1135
- map.addLayer(layer);
1136
- map.zoomToMaxExtent();
1137
-
1138
- layer.grid[1][1].onImageLoad();
1139
- layer.mergeNewParams({foo: 'bar'});
1140
- var tile = layer.grid[1][1];
1141
- t.ok(OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile is marked for being replaced');
1142
- t.ok(document.getElementById(tile.id + '_bb'), 'backbuffer created for tile');
1143
- // simulate a css declaration where '.olTileReplacing' sets display
1144
- // to none.
1145
- tile.imgDiv.style.display = 'none';
1146
- tile.onImageLoad();
1147
- t.ok(!OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile replaced, no longer marked');
1148
- t.ok(!document.getElementById(tile.id + '_bb'), 'backbuffer removed for tile');
1149
-
1150
- layer.mergeNewParams({foo: 'baz'});
1151
- tile = layer.grid[1][1];
1152
- // simulate a css declaration where '.olTileReplacing' does not set
1153
- // display to none.
1154
- tile.imgDiv.style.display = 'block';
1155
- tile.onImageLoad();
1156
- t.ok(!OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile replaced, no longer marked');
1157
- t.ok(document.getElementById(tile.id + '_bb'), 'backbuffer not removed for visible tile');
1158
- }
1159
-
1160
- function test_backbuffer_replace_singleTile(t) {
1161
- t.plan(1);
1162
- var map = new OpenLayers.Map('map');
1163
- var layer = new OpenLayers.Layer.WMS('', '../../img/blank.gif', null, {
1164
- singleTile: true,
1165
- transitionEffect: 'resize'
1166
- });
1167
- map.addLayer(layer);
1168
- map.zoomToMaxExtent();
1169
-
1170
- t.delay_call(1, function() {
1171
- map.zoomIn();
1172
- var tile = layer.grid[0][0];
1173
- t.ok(!OpenLayers.Element.hasClass(tile.imgDiv, 'olTileReplacing'), 'tile is not marked for being replaced for singleTile layers');
1174
- });
1175
- }
1176
-
1177
- function test_singleTile_move_and_zoom(t) {
1178
-
1179
- //
1180
- // In single tile mode with no transition effect, we insert a non-scaled
1181
- // backbuffer when the layer is moved. But if a zoom occurs right after
1182
- // a move, i.e. before the new image is received, we need to remove the
1183
- // backbuffer, or an ill-positioned image will be visible during the
1184
- // zoom transition.
1185
- //
1186
-
1187
- t.plan(4);
1188
-
1189
- var map = new OpenLayers.Map('map', {zoomMethod: null});
1190
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
1191
- isBaseLayer: true,
1192
- transitionEffect: null,
1193
- singleTile: true,
1194
- ratio: 1.1
1195
- });
1196
- map.addLayer(layer);
1197
- map.setCenter(new OpenLayers.LonLat(0, 0), 0);
1198
-
1199
- // move
1200
- map.setCenter(new OpenLayers.LonLat(50, 50));
1201
- t.ok(layer.backBuffer && layer.backBuffer.parentNode === layer.div,
1202
- 'backbuffer inserted after map move');
1203
- t.eq(layer.backBuffer.style.left, '-25px');
1204
- t.eq(layer.backBuffer.style.top, '-28px');
1205
- // zoom
1206
- map.zoomTo(1);
1207
- t.eq(layer.backBuffer, null,
1208
- 'back buffer removed when zooming');
1209
-
1210
- map.destroy();
1211
- }
1212
-
1213
- function test_backbuffer_scaled_layer(t) {
1214
- t.plan(12);
1215
-
1216
- //
1217
- // set up
1218
- //
1219
-
1220
- var map = new OpenLayers.Map('map', {
1221
- resolutions: [32, 16, 8, 4, 2, 1],
1222
- zoomMethod: null,
1223
- tileManager: null
1224
- });
1225
- var layer = new OpenLayers.Layer.WMS(
1226
- "WMS",
1227
- window.location.href + "#",
1228
- null,
1229
- {transitionEffect: "resize"}
1230
- );
1231
-
1232
- layer.serverResolutions = [32, 16, 8];
1233
-
1234
- map.addLayer(layer);
1235
- map.setCenter(new OpenLayers.LonLat(0, 0), 2);
1236
-
1237
- var origCreateBackBuffer = OpenLayers.Tile.Image.prototype.createBackBuffer;
1238
- OpenLayers.Tile.Image.prototype.createBackBuffer = function() {
1239
- return document.createElement('div');
1240
- };
1241
-
1242
- // we want to control when the back buffer is removed
1243
- var removeBackBuffer = OpenLayers.Function.bind(
1244
- layer.removeBackBuffer, layer);
1245
- layer.removeBackBuffer = function() {};
1246
-
1247
- //
1248
- // test
1249
- //
1250
-
1251
- // change resolution from 8 to 4
1252
- map.zoomTo(3);
1253
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
1254
- '[8->4] back buffer not scaled');
1255
- removeBackBuffer();
1256
-
1257
- // change resolution from 8 to 2
1258
- map.zoomTo(2); removeBackBuffer(); map.zoomTo(4);
1259
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
1260
- '[8->2] back buffer not scaled');
1261
- removeBackBuffer();
1262
-
1263
- // change resolution from 16 to 4
1264
- map.zoomTo(1); removeBackBuffer(); map.zoomTo(3);
1265
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 2,
1266
- '[16->4] back buffer width is as expected');
1267
- t.eq(parseInt(layer.backBuffer.firstChild.style.height) / parseInt(layer.div.lastChild.style.height), 2,
1268
- '[16->4] back buffer height is as expected');
1269
- removeBackBuffer();
1270
-
1271
- // change resolution from 32 to 1
1272
- map.zoomTo(0); removeBackBuffer(); map.zoomTo(5);
1273
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 4,
1274
- '[32->1] back buffer width is as expected');
1275
- t.eq(parseInt(layer.backBuffer.firstChild.style.height) / parseInt(layer.div.lastChild.style.height), 4,
1276
- '[32->1] back buffer height is as expected');
1277
- removeBackBuffer();
1278
-
1279
- // change resolution from 4 to 2
1280
- map.zoomTo(3); removeBackBuffer(); map.zoomTo(4);
1281
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
1282
- '[4->2] back buffer not scaled');
1283
- removeBackBuffer();
1284
-
1285
- // change resolution from 4 to 1
1286
- map.zoomTo(3); removeBackBuffer(); map.zoomTo(5);
1287
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
1288
- '[4->1] back buffer not scaled');
1289
- removeBackBuffer();
1290
-
1291
- // change resolution from 1 to 4
1292
- map.zoomTo(5); removeBackBuffer(); map.zoomTo(3);
1293
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
1294
- '[1->4] back buffer not scaled');
1295
- removeBackBuffer();
1296
-
1297
- // change resolution from 4 to 8
1298
- map.zoomTo(3); removeBackBuffer(); map.zoomTo(2);
1299
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 1,
1300
- '[4->8] back buffer not scaled');
1301
- removeBackBuffer();
1302
-
1303
- // change resolution from 4 to 16
1304
- map.zoomTo(3); removeBackBuffer(); map.zoomTo(1);
1305
- t.eq(parseInt(layer.backBuffer.firstChild.style.width) / parseInt(layer.div.lastChild.style.width), 0.5,
1306
- '[4->16] back buffer width is as expected');
1307
- t.eq(parseInt(layer.backBuffer.firstChild.style.height) / parseInt(layer.div.lastChild.style.height), 0.5,
1308
- '[4->16] back buffer height is as expected');
1309
- removeBackBuffer();
1310
-
1311
- //
1312
- // tear down
1313
- //
1314
-
1315
- map.destroy();
1316
- OpenLayers.Tile.Image.prototype.createBackBuffer = origCreateBackBuffer
1317
- }
1318
-
1319
-
1320
- function test_delayed_back_buffer_removal(t) {
1321
- //
1322
- // Test that the delaying of the back buffer removal behaves
1323
- // as expected.
1324
- //
1325
-
1326
- t.plan(5);
1327
-
1328
- // set up
1329
-
1330
- var map = new OpenLayers.Map('map', {
1331
- resolutions: [32, 16, 8, 4, 2, 1],
1332
- zoomMethod: null
1333
- });
1334
- var layer = new OpenLayers.Layer.WMS('', '', {}, {
1335
- isBaseLayer: true,
1336
- transitionEffect: 'resize'
1337
- });
1338
- map.addLayer(layer);
1339
- map.setCenter(new OpenLayers.LonLat(0, 0), 0);
1340
-
1341
- map.zoomTo(1);
1342
-
1343
- t.ok(layer.backBuffer === map.layerContainerDiv.firstChild,
1344
- '[a] back buffer is first child of layer container div');
1345
-
1346
- // Mark one tile loaded and add an element to the backbuffer, to see if
1347
- // backbuffer removal gets scheduled.
1348
- layer.backBuffer.appendChild(document.createElement('img'));
1349
- layer.grid[1][1].onImageLoad();
1350
-
1351
- t.ok(layer.backBufferTimerId !== null,
1352
- '[a] back buffer scheduled for removal');
1353
-
1354
- var backBuffer = layer.backBuffer;
1355
-
1356
- map.zoomTo(2);
1357
-
1358
- t.ok(layer.backBuffer !== backBuffer,
1359
- '[b] a new back buffer was created');
1360
- t.ok(layer.backBuffer === map.layerContainerDiv.firstChild,
1361
- '[b] back buffer is first child of layer container div');
1362
- t.ok(layer.backBufferTimerId === null,
1363
- '[b] back buffer no longer scheduled for removal');
1364
-
1365
- // tear down
1366
-
1367
- map.destroy();
1368
- }
1369
-
1370
- function test_getGridData(t) {
1371
- t.plan(12);
1372
-
1373
- var layer = new OpenLayers.Layer.Grid(null, null, null, {
1374
- isBaseLayer: true, getURL: function() {
1375
- return "/bogus/path/to/tile";
1376
- }
1377
- });
1378
- var map = new OpenLayers.Map({
1379
- div: "map",
1380
- layers: [layer],
1381
- controls: [],
1382
- center: [0, 0],
1383
- zoom: 1
1384
- });
1385
-
1386
- // get tile data for [0, 0]
1387
- var data = layer.getTileData({lon: 0, lat: 0});
1388
- t.ok(data && data.tile, "[0, 0]: got tile data");
1389
- t.eq(data.i, 0, "[0, 0]: i");
1390
- t.eq(data.j, 128, "[0, 0]: j");
1391
- t.ok(
1392
- data.tile.bounds.equals({left: 0, bottom: -90, right: 180, top: 90}),
1393
- "[0, 0]: tile bounds " + data.tile.bounds.toString()
1394
- );
1395
-
1396
- // get tile data for [-110, 45]
1397
- data = layer.getTileData({lon: -110, lat: 45});
1398
- t.ok(data && data.tile, "[-110, 45]: got tile data");
1399
- t.eq(data.i, 99, "[-110, 45]: i");
1400
- t.eq(data.j, 64, "[-110, 45]: j");
1401
- t.ok(
1402
- data.tile.bounds.equals({left: -180, bottom: -90, right: 0, top: 90}),
1403
- "[-110, 45]: tile bounds " + data.tile.bounds.toString()
1404
- );
1405
-
1406
- // get tile data for [0, 300] (north of grid)
1407
- data = layer.getTileData({lon: 0, lat: 300})
1408
- t.eq(data, null, "[0, 300]: north of grid");
1409
-
1410
- // get tile data for [400, 0] (east of grid)
1411
- data = layer.getTileData({lon: 400, lat: 0})
1412
- t.eq(data, null, "[400, 0]: east of grid");
1413
-
1414
- // get tile data for [0, -500] (south of grid)
1415
- data = layer.getTileData({lon: 0, lat: -500})
1416
- t.eq(data, null, "[0, -500]: south of grid");
1417
-
1418
- // get tile data for [-200, 0] (west of grid)
1419
- data = layer.getTileData({lon: -200, lat: 0})
1420
- t.eq(data, null, "[-200, 0]: west of grid");
1421
-
1422
- map.destroy();
1423
-
1424
- }
1425
-
1426
- function test_getGridData_wrapped(t) {
1427
- t.plan(18);
1428
-
1429
- var layer = new OpenLayers.Layer.Grid(null, null, null, {
1430
- isBaseLayer: true, getURL: function() {
1431
- return "/bogus/path/to/tile";
1432
- },
1433
- wrapDateLine: true
1434
- });
1435
- var map = new OpenLayers.Map({
1436
- div: "map",
1437
- layers: [layer],
1438
- controls: [],
1439
- center: [-50, 0],
1440
- zoom: 1
1441
- });
1442
-
1443
- // get tile data for [0, 0]
1444
- var data = layer.getTileData({lon: 0, lat: 0});
1445
- t.ok(data && data.tile, "[0, 0]: got tile data");
1446
- t.eq(data.i, 0, "[0, 0]: i");
1447
- t.eq(data.j, 128, "[0, 0]: j");
1448
- t.ok(
1449
- data.tile.bounds.equals({left: 0, bottom: -90, right: 180, top: 90}),
1450
- "[0, 0]: tile bounds " + data.tile.bounds.toString()
1451
- );
1452
-
1453
- // get tile data for [-110, 45]
1454
- data = layer.getTileData({lon: -110, lat: 45});
1455
- t.ok(data && data.tile, "[-110, 45]: got tile data");
1456
- t.eq(data.i, 99, "[-110, 45]: i");
1457
- t.eq(data.j, 64, "[-110, 45]: j");
1458
- t.ok(
1459
- data.tile.bounds.equals({left: -180, bottom: -90, right: 0, top: 90}),
1460
- "[-110, 45]: tile bounds " + data.tile.bounds.toString()
1461
- );
1462
-
1463
- // get tile data for [0, 300] (north of grid)
1464
- data = layer.getTileData({lon: 0, lat: 300})
1465
- t.eq(data, null, "[0, 300]: north of grid");
1466
-
1467
- // get tile data for [400, 0] (equivalent to [40, 0] and visible on map)
1468
- data = layer.getTileData({lon: 400, lat: 0})
1469
- t.ok(data && data.tile, "[400, 0]: got tile data");
1470
- t.eq(data.i, 56, "[400, 0]: i");
1471
- t.eq(data.j, 128, "[400, 0]: j");
1472
- t.ok(
1473
- data.tile.bounds.equals({left: 0, bottom: -90, right: 180, top: 90}),
1474
- "[400, 0]: tile bounds " + data.tile.bounds.toString()
1475
- );
1476
-
1477
- // get tile data for [0, -500] (south of grid)
1478
- data = layer.getTileData({lon: 0, lat: -500})
1479
- t.eq(data, null, "[0, -500]: south of grid");
1480
-
1481
- // get tile data for [-200, 0] (equivalent to [160, 0] and wrapped to west side map)
1482
- data = layer.getTileData({lon: -200, lat: 0})
1483
- t.ok(data && data.tile, "[-200, 0]: got tile data");
1484
- t.eq(data.i, 227, "[-200, 0]: i");
1485
- t.eq(data.j, 128, "[-200, 0]: j");
1486
- t.ok(
1487
- data.tile.bounds.equals({left: 0, bottom: -90, right: 180, top: 90}),
1488
- "[-200, 0]: tile bounds " + data.tile.bounds.toString()
1489
- );
1490
-
1491
- map.destroy();
1492
-
1493
- }
1494
-
1495
- function test_removeExcessTiles(t) {
1496
- t.plan(15);
1497
-
1498
- /*
1499
- * Set up
1500
- */
1501
-
1502
- var map = new OpenLayers.Map('map');
1503
- var layer = new OpenLayers.Layer.Grid('name', '/url',
1504
- {}, {isBaseLayer: true});
1505
- map.addLayer(layer);
1506
-
1507
- function newTile(id) {
1508
- var t = new OpenLayers.Tile(layer,
1509
- new OpenLayers.Pixel(1, 1),
1510
- new OpenLayers.Bounds(1, 1, 1, 1));
1511
- t._id = id;
1512
- return t;
1513
- }
1514
-
1515
- layer.grid = [
1516
- [newTile(1), newTile(2), newTile(3)],
1517
- [newTile(4), newTile(5)],
1518
- [newTile(6), newTile(7), newTile(8)]
1519
- ];
1520
-
1521
- // create a clone to be able to test whether
1522
- // tiles have been destroyed or not
1523
- var grid = [
1524
- layer.grid[0].slice(),
1525
- layer.grid[1].slice(),
1526
- layer.grid[2].slice()
1527
- ];
1528
-
1529
- /*
1530
- * Test
1531
- */
1532
-
1533
- layer.removeExcessTiles(2, 2);
1534
-
1535
- t.eq(layer.grid.length, 2, 'grid has two rows');
1536
- t.eq(layer.grid[0].length, 2, 'row #1 has two columns');
1537
- t.eq(layer.grid[0][0]._id, 1, 'row #1 col #1 includes expected tile');
1538
- t.eq(layer.grid[0][1]._id, 2, 'row #1 col #2 includes expected tile');
1539
- t.eq(layer.grid[1].length, 2, 'row #2 has two columns');
1540
- t.eq(layer.grid[1][0]._id, 4, 'row #2 col #1 includes expected tile');
1541
- t.eq(layer.grid[1][1]._id, 5, 'row #2 col #2 includes expected tile');
1542
-
1543
- t.ok(grid[0][0].events != null, 'tile 0,0 not destroyed');
1544
- t.ok(grid[0][1].events != null, 'tile 0,1 not destroyed');
1545
- t.ok(grid[0][2].events == null, 'tile 0,2 destroyed');
1546
- t.ok(grid[1][0].events != null, 'tile 1,0 not destroyed');
1547
- t.ok(grid[1][1].events != null, 'tile 1,1 not destroyed');
1548
- t.ok(grid[2][0].events == null, 'tile 2,0 destroyed');
1549
- t.ok(grid[2][1].events == null, 'tile 2,1 destroyed');
1550
- t.ok(grid[2][2].events == null, 'tile 2,2 destroyed');
1551
-
1552
- /*
1553
- * Tear down
1554
- */
1555
-
1556
- map.destroy();
1557
- }
1558
-
1559
- function test_addOptions(t) {
1560
- t.plan(15);
1561
- var map = new OpenLayers.Map('map');
1562
- layer = new OpenLayers.Layer.WMS(name, url, params, {buffer:2});
1563
- map.addLayer(layer);
1564
- t.eq(layer.tileSize, map.getTileSize(), "layer's tile size is equal to the map's tile size");
1565
- t.ok(layer.removeBackBufferDelay !== 0, "removeBackBufferDelay should not be 0 since we are not singleTile");
1566
- t.eq(layer.className, "olLayerGrid", "className correct for gridded mode");
1567
- map.setCenter(new OpenLayers.LonLat(0,0),5);
1568
- t.eq(layer.grid.length, 8, "Grid rows is correct.");
1569
- t.eq(layer.grid[0].length, 7, "Grid cols is correct.");
1570
- t.eq(layer.singleTile, false, "singleTile is false by default");
1571
- layer.addOptions({singleTile: true});
1572
- t.eq(layer.removeBackBufferDelay, 0, "removeBackBufferDelay set to 0 since singleTile is true");
1573
- t.eq(layer.singleTile, true, "singleTile set to true");
1574
- t.eq(layer.className, "olLayerGridSingleTile", "className correct for singleTile mode");
1575
- t.eq(layer.grid.length, 1, "Grid rows is correct.");
1576
- t.eq(layer.grid[0].length, 1, "Grid cols is correct.");
1577
- t.eq(layer.tileSize, new OpenLayers.Size(748, 823), "tile size changed");
1578
- layer.addOptions({singleTile: false});
1579
- t.eq(layer.grid.length, 8, "Grid rows is correct.");
1580
- t.eq(layer.grid[0].length, 7, "Grid cols is correct.");
1581
- t.eq(layer.tileSize, map.getTileSize(), "layer's tile size is equal to the map's tile size");
1582
- map.destroy();
1583
- }
1584
-
1585
- </script>
1586
- </head>
1587
- <body>
1588
- <div id="map" style="width:499px;height:549px;display:none"></div>
1589
- <div id="map2" style="width:500px;height:550px;display:none"></div>
1590
- <div id="map3" style="width:594px;height:464px;display:none"></div>
1591
- <div id="map4" style="width:768px;height:512px;display:none"></div>
1592
- </body>
1593
- </html>