Ticket #712: namespace.patch
| File namespace.patch, 46.8 kB (added by tschaub, 1 year ago) |
|---|
-
tests/test_Util.html
old new 11 11 "getImagesLocation()" ); 12 12 } 13 13 14 function test_02_Util_Strings(t) {15 t.plan(5);16 17 var str = " chicken pox ";18 19 t.ok(str.contains("chicken"), "contains() function correctly finds an embedded string");20 t.ok(!str.contains("marsupial"), "contains() function correctly does not finds an random string");21 22 23 var trimmedStr = str.trim();24 25 t.eq(trimmedStr, "chicken pox", "String.trim works correctly");26 27 t.eq(trimmedStr.startsWith("chicken"), true, "String.startsWith correctly finds chicken");28 t.eq(trimmedStr.startsWith("dolphin"), false, "String.startsWith correctly does not find turkey");29 30 31 }32 33 14 function test_03_Util_Array(t) { 34 15 t.plan( 1 ); 35 16 … … 423 404 t.plan(2); 424 405 425 406 var id = OpenLayers.Util.createUniqueID(); 426 t.ok( id.startsWith("id_"), "default OpenLayers.Util.createUniqueID starts id correctly"); 407 t.ok(OpenLayers.String.startsWith(id, "id_"), 408 "default OpenLayers.Util.createUniqueID starts id correctly"); 427 409 428 410 var id = OpenLayers.Util.createUniqueID("chicken"); 429 t.ok( id.startsWith("chicken"), "OpenLayers.Util.createUniqueID starts id correctly"); 411 t.ok(OpenLayers.String.startsWith(id, "chicken"), 412 "OpenLayers.Util.createUniqueID starts id correctly"); 430 413 } 431 432 function test_12_Util_limitSigDigs(t) { 433 t.plan(7); 434 435 var x; 436 437 x = 123456; 438 t.eq(x.limitSigDigs(3), 123000, "correctly rounds down"); 439 440 x = 555555; 441 t.eq(x.limitSigDigs(3), 556000, "correctly rounds up"); 442 443 x = 66; 444 t.eq(x.limitSigDigs(3), 66, "correctly handles number smaller than sigdig"); 445 446 t.eq(x.limitSigDigs(null), 0, "correctly handles null sigdig"); 447 t.eq(x.limitSigDigs(0), 0, "correctly handles 0 sigdig"); 448 t.eq(x.limitSigDigs(-1), 0, "correctly handles negative sigdig"); 449 450 x = 0; 451 t.eq(x.limitSigDigs(2), 0, "correctly handles 0 number"); 452 } 453 414 454 415 function test_13_Util_normalizeScale(t) { 455 416 t.plan(2); 456 417 -
tests/test_Geometry.html
old new 10 10 var g = new OpenLayers.Geometry(); 11 11 12 12 t.eq(g.CLASS_NAME, "OpenLayers.Geometry", "correct CLASS_NAME") 13 t.ok(g.id.startsWith("OpenLayers.Geometry_"), "id correctly set"); 13 t.ok(OpenLayers.String.startsWith(g.id, "OpenLayers.Geometry_"), 14 "id correctly set"); 14 15 } 15 16 16 17 … … 20 21 var clone = geometry.clone(); 21 22 22 23 t.eq(clone.CLASS_NAME, "OpenLayers.Geometry", "correct CLASS_NAME") 23 t.ok(clone.id.startsWith("OpenLayers.Geometry_"), "id correctly set"); 24 t.ok(OpenLayers.String.startsWith(clone.id, "OpenLayers.Geometry_"), 25 "id correctly set"); 24 26 } 25 27 26 28 function test_02_Geometry_setBounds(t) { -
tests/test_BaseTypes.html
old new 11 11 var test1 = "chicken"; 12 12 var test2 = "beet"; 13 13 14 t.ok(str.startsWith("chicken"), " 'chickenHead' starts with 'chicken'"); 15 t.ok(!str.startsWith("Head"), " 'chickenHead' contains 'Head' but does *not* start with it"); 16 t.ok(!str.startsWith("beet"), "'chickenHead' doesnt start with 'beet'"); 14 t.ok(OpenLayers.String.startsWith(str, "chicken"), 15 "'chickenHead' starts with 'chicken'"); 16 t.ok(!OpenLayers.String.startsWith(str, "Head"), 17 "'chickenHead' does not start with 'Head'"); 18 t.ok(!OpenLayers.String.startsWith(str, "beet"), 19 "'chickenHead' doesnt start with 'beet'"); 17 20 } 18 21 19 22 function test_02_String_contains(t) { … … 21 24 22 25 var str = "chickenHead"; 23 26 24 t.ok(str.contains("chicken"), "(beginning) 'chickenHead' contains with 'chicken'"); 25 t.ok(str.contains("ick"), "(middle) 'chickenHead' contains with 'ick'"); 26 t.ok(str.contains("Head"), "(end) 'chickenHead' contains with 'Head'"); 27 t.ok(!str.startsWith("beet"), "'chickenHead' doesnt start with 'beet'"); 27 t.ok(OpenLayers.String.contains(str, "chicken"), 28 "(beginning) 'chickenHead' contains with 'chicken'"); 29 t.ok(OpenLayers.String.contains(str, "ick"), 30 "(middle) 'chickenHead' contains with 'ick'"); 31 t.ok(OpenLayers.String.contains(str, "Head"), 32 "(end) 'chickenHead' contains with 'Head'"); 33 t.ok(!OpenLayers.String.startsWith(str, "beet"), 34 "'chickenHead' doesnt start with 'beet'"); 28 35 } 29 36 30 37 function test_03_String_trim(t) { 31 38 t.plan(5); 32 39 33 40 var str = "chickenHead"; 34 t.eq(str.trim(), "chickenHead", "string with no extra whitespace is left alone"); 41 t.eq(OpenLayers.String.trim(str), 42 "chickenHead", "string with no extra whitespace is left alone"); 35 43 36 44 str = " chickenHead"; 37 t.eq(str.trim(), "chickenHead", "string with extra whitespace at beginning is trimmed correctly"); 45 t.eq(OpenLayers.String.trim(str), 46 "chickenHead", "string with extra whitespace at beginning is trimmed correctly"); 38 47 39 48 str = "chickenHead "; 40 t.eq(str.trim(), "chickenHead", "string with extra whitespace at end is trimmed correctly"); 49 t.eq(OpenLayers.String.trim(str), 50 "chickenHead", "string with extra whitespace at end is trimmed correctly"); 41 51 42 52 str = " chickenHead "; 43 t.eq(str.trim(), "chickenHead", "string with extra whitespace at beginning and end is trimmed correctly"); 53 t.eq(OpenLayers.String.trim(str), 54 "chickenHead", "string with extra whitespace at beginning and end is trimmed correctly"); 44 55 45 56 str = " "; 46 t.eq( str.trim(), "", "whitespace string is trimmed correctly");57 t.eq(OpenLayers.String.trim(str), "", "whitespace string is trimmed correctly"); 47 58 } 48 59 49 60 function test_05_String_camelize(t) { 50 61 t.plan(7); 51 62 52 63 var str = "chickenhead"; 53 t.eq( str.camelize(), "chickenhead", "string with no hyphens is left alone");64 t.eq(OpenLayers.String.camelize(str), "chickenhead", "string with no hyphens is left alone"); 54 65 55 66 str = "chicken-head"; 56 t.eq( str.camelize(), "chickenHead", "string with one middle hyphen is camelized correctly");67 t.eq(OpenLayers.String.camelize(str), "chickenHead", "string with one middle hyphen is camelized correctly"); 57 68 58 69 str = "chicken-head-man"; 59 t.eq( str.camelize(), "chickenHeadMan", "string with multiple middle hyphens is camelized correctly");70 t.eq(OpenLayers.String.camelize(str), "chickenHeadMan", "string with multiple middle hyphens is camelized correctly"); 60 71 61 72 str = "-chickenhead"; 62 t.eq( str.camelize(), "Chickenhead", "string with starting hyphen is camelized correctly (capitalized)");73 t.eq(OpenLayers.String.camelize(str), "Chickenhead", "string with starting hyphen is camelized correctly (capitalized)"); 63 74 64 75 str = "-chicken-head-man"; 65 t.eq( str.camelize(), "ChickenHeadMan", "string with starting hypen and multiple middle hyphens is camelized correctly");76 t.eq(OpenLayers.String.camelize(str), "ChickenHeadMan", "string with starting hypen and multiple middle hyphens is camelized correctly"); 66 77 67 78 str = "chicken-"; 68 t.eq( str.camelize(), "chicken", "string ending in hyphen is camelized correctly (hyphen dropped)");79 t.eq(OpenLayers.String.camelize(str), "chicken", "string ending in hyphen is camelized correctly (hyphen dropped)"); 69 80 70 81 str = "chicken-head-man-"; 71 t.eq( str.camelize(), "chickenHeadMan", "string with multiple middle hyphens and end hyphen is camelized correctly (end hyphen dropped)");82 t.eq(OpenLayers.String.camelize(str), "chickenHeadMan", "string with multiple middle hyphens and end hyphen is camelized correctly (end hyphen dropped)"); 72 83 73 84 74 85 } 75 86 76 87 function test_06_Number_limitSigDigs(t) { 77 t.plan( 10);88 t.plan(9); 78 89 79 90 var num = 123456789; 80 t.eq( num.limitSigDigs(), 0, "passing 'null' as sig returns 0");81 t.eq( num.limitSigDigs(-1), 0, "passing -1 as sig returns 0");82 t.eq( num.limitSigDigs(0), 0, "passing 0 as sig returns 0");91 t.eq(OpenLayers.Number.limitSigDigs(num), 0, "passing 'null' as sig returns 0"); 92 t.eq(OpenLayers.Number.limitSigDigs(num, -1), 0, "passing -1 as sig returns 0"); 93 t.eq(OpenLayers.Number.limitSigDigs(num, 0), 0, "passing 0 as sig returns 0"); 83 94 84 t.eq( num.limitSigDigs(15), 123456789, "passing sig greater than num digits in number returns number unmodified");95 t.eq(OpenLayers.Number.limitSigDigs(num, 15), 123456789, "passing sig greater than num digits in number returns number unmodified"); 85 96 86 t.eq( num.limitSigDigs(1), 100000000, "passing sig 1 works");87 t.eq( num.limitSigDigs(3), 123000000, "passing middle sig works (rounds down)");88 t.eq( num.limitSigDigs(5), 123460000, "passing middle sig works (rounds up)");89 t.eq( num.limitSigDigs(9), 123456789, "passing sig equal to num digits in number works");97 t.eq(OpenLayers.Number.limitSigDigs(num, 1), 100000000, "passing sig 1 works"); 98 t.eq(OpenLayers.Number.limitSigDigs(num, 3), 123000000, "passing middle sig works (rounds down)"); 99 t.eq(OpenLayers.Number.limitSigDigs(num, 5), 123460000, "passing middle sig works (rounds up)"); 100 t.eq(OpenLayers.Number.limitSigDigs(num, 9), 123456789, "passing sig equal to num digits in number works"); 90 101 91 var temp = OpenLayers.Console.error;92 OpenLayers.Console.error = function() {93 t.ok(true, "error reported when run on floating point number")94 }95 102 num = 1234.56789; 96 t. ok(num.limitSigDigs(5) == null, "running limSigDig() on a floating point number returns null");103 t.eq(OpenLayers.Number.limitSigDigs(num, 5), 1234.6, "running limSigDig() on a floating point number works fine"); 97 104 98 OpenLayers.Console.error = temp;99 105 } 100 106 101 107 function test_07_Function_bind(t) { … … 115 121 t.eq(arguments.length, 4, "correct number of arguments ((regression test for #876))"); 116 122 }; 117 123 118 var newFoo = foo.bind(g_obj, g_Arg1, g_Arg2);124 var newFoo = OpenLayers.Function.bind(foo, g_obj, g_Arg1, g_Arg2); 119 125 120 126 newFoo(g_Arg3, g_Arg4); 121 127 … … 135 141 g_X = x; 136 142 }; 137 143 138 var newFoo = foo.bindAsEventListener(g_obj);144 var newFoo = OpenLayers.Function.bindAsEventListener(foo, g_obj); 139 145 140 146 141 147 g_X = null; -
tests/test_Popup.html
old new 13 13 popup = new OpenLayers.Popup(); 14 14 15 15 t.ok( popup instanceof OpenLayers.Popup, "new OpenLayers.Popup returns Popup object" ); 16 t.ok(popup.id.startsWith("OpenLayers.Popup"), "valid default popupid"); 16 t.ok(OpenLayers.String.startsWith(popup.id, "OpenLayers.Popup"), 17 "valid default popupid"); 17 18 var firstID = popup.id; 18 19 t.ok(popup.size.equals(size), "good default popup.size"); 19 20 t.eq(popup.contentHTML, "", "good default popup.contentHTML"); -
tests/Geometry/test_Surface.html
old new 9 9 var g = new OpenLayers.Geometry.Surface(); 10 10 11 11 t.eq(g.CLASS_NAME, "OpenLayers.Geometry.Surface", "correct CLASS_NAME") 12 t.ok(g.id.startsWith("OpenLayers.Geometry.Surface_"), "id correctly set"); 12 t.ok(OpenLayers.String.startsWith(g.id, "OpenLayers.Geometry.Surface_"), 13 "id correctly set"); 13 14 } 14 15 15 16 -
tests/test_Feature.html
old new 21 21 22 22 t.ok( feature instanceof OpenLayers.Feature, "new OpenLayers.Feature returns Feature object" ); 23 23 t.eq( feature.layer, layer, "feature.layer set correctly" ); 24 t.ok( feature.id.startsWith("OpenLayers.Feature_"), "feature.id set correctly" ); 24 t.ok(OpenLayers.String.startsWith(feature.id, "OpenLayers.Feature_"), 25 "feature.id set correctly"); 25 26 t.ok( feature.lonlat.equals(lonlat), "feature.lonlat set correctly" ); 26 27 t.eq( feature.data.iconURL, iconURL, "feature.data.iconURL set correctly" ); 27 28 t.ok( feature.data.iconSize.equals(iconSize), "feature.data.iconSize set correctly" ); -
tests/test_Tile.html
old new 23 23 t.ok( tile.size.equals(size), "tile.size is set correctly" ); 24 24 25 25 t.ok( tile.id != null, "tile is given an id"); 26 t.ok( tile.id.startsWith("Tile_"), "tile's id starts correctly"); 26 t.ok(OpenLayers.String.startsWith(tile.id, "Tile_"), 27 "tile's id starts correctly"); 27 28 t.ok( tile.events != null, "tile's events intitialized"); 28 29 } 29 30 -
lib/OpenLayers/Events.js
old new 404 404 405 405 // keep a bound copy of handleBrowserEvent() so that we can 406 406 // pass the same function to both Event.observe() and .stopObserving() 407 this.eventHandler = this.handleBrowserEvent.bindAsEventListener(this); 407 this.eventHandler = OpenLayers.Function.bindAsEventListener( 408 this.handleBrowserEvent, this 409 ); 408 410 409 411 // if eventTypes is specified, create a listeners list for each 410 412 // custom application event. -
lib/OpenLayers/Control/OverviewMap.js
old new 218 218 'absolute'); 219 219 this.maximizeDiv.style.display = 'none'; 220 220 this.maximizeDiv.className = this.displayClass + 'MaximizeButton'; 221 OpenLayers.Event.observe(this.maximizeDiv, 222 'click', 223 this.maximizeControl.bindAsEventListener(this)); 221 OpenLayers.Event.observe(this.maximizeDiv, 'click', 222 OpenLayers.Function.bindAsEventListener(this.maximizeControl, 223 this) 224 ); 224 225 this.div.appendChild(this.maximizeDiv); 225 226 226 227 // minimize button div … … 233 234 'absolute'); 234 235 this.minimizeDiv.style.display = 'none'; 235 236 this.minimizeDiv.className = this.displayClass + 'MinimizeButton'; 236 OpenLayers.Event.observe(this.minimizeDiv, 237 'click', 238 this.minimizeControl.bindAsEventListener(this)); 237 OpenLayers.Event.observe(this.minimizeDiv, 'click', 238 OpenLayers.Function.bindAsEventListener(this.minimizeControl, 239 this) 240 ); 239 241 this.div.appendChild(this.minimizeDiv); 240 242 241 243 var eventsToStop = ['dblclick','mousedown']; -
lib/OpenLayers/Control/MouseDefaults.js
old new 84 84 */ 85 85 registerWheelEvents: function() { 86 86 87 this.wheelObserver = this.onWheelEvent.bindAsEventListener(this); 87 this.wheelObserver = OpenLayers.Function.bindAsEventListener( 88 this.onWheelEvent, this 89 ); 88 90 89 91 //register mousewheel events specifically on the window and document 90 92 OpenLayers.Event.observe(window, "DOMMouseScroll", this.wheelObserver); -
lib/OpenLayers/Control/PanZoom.js
old new 112 112 this.div.appendChild(btn); 113 113 114 114 OpenLayers.Event.observe(btn, "mousedown", 115 this.buttonDown.bindAsEventListener(btn));115 OpenLayers.Function.bindAsEventListener(this.buttonDown, btn)); 116 116 OpenLayers.Event.observe(btn, "dblclick", 117 this.doubleClick.bindAsEventListener(btn));117 OpenLayers.Function.bindAsEventListener(this.doubleClick, btn)); 118 118 OpenLayers.Event.observe(btn, "click", 119 this.doubleClick.bindAsEventListener(btn));119 OpenLayers.Function.bindAsEventListener(this.doubleClick, btn)); 120 120 btn.action = id; 121 121 btn.map = this.map; 122 122 btn.slideFactor = this.slideFactor; -
lib/OpenLayers/Control/LayerSwitcher.js
old new 279 279 'layerSwitcher': this 280 280 } 281 281 OpenLayers.Event.observe(inputElem, "mouseup", 282 this.onInputClick.bindAsEventListener(context)); 282 OpenLayers.Function.bindAsEventListener(this.onInputClick, 283 context) 284 ); 283 285 284 286 // create span 285 287 var labelSpan = document.createElement("span"); … … 290 292 labelSpan.style.verticalAlign = (baseLayer) ? "bottom" 291 293 : "baseline"; 292 294 OpenLayers.Event.observe(labelSpan, "click", 293 this.onInputClick.bindAsEventListener(context)); 295 OpenLayers.Function.bindAsEventListener(this.onInputClick, 296 context) 297 ); 294 298 // create line break 295 299 var br = document.createElement("br"); 296 300 … … 463 467 this.div.style.backgroundColor = "transparent"; 464 468 465 469 OpenLayers.Event.observe(this.div, "mouseup", 466 this.mouseUp.bindAsEventListener(this));470 OpenLayers.Function.bindAsEventListener(this.mouseUp, this)); 467 471 OpenLayers.Event.observe(this.div, "click", 468 472 this.ignoreEvent); 469 473 OpenLayers.Event.observe(this.div, "mousedown", 470 this.mouseDown.bindAsEventListener(this));474 OpenLayers.Function.bindAsEventListener(this.mouseDown, this)); 471 475 OpenLayers.Event.observe(this.div, "dblclick", this.ignoreEvent); 472 476 473 477 … … 496 500 this.baseLayersDiv = document.createElement("div"); 497 501 this.baseLayersDiv.style.paddingLeft = "10px"; 498 502 /*OpenLayers.Event.observe(this.baseLayersDiv, "click", 499 this.onLayerClick.bindAsEventListener(this));503 OpenLayers.Function.bindAsEventListener(this.onLayerClick, this)); 500 504 */ 501 505 502 506 … … 545 549 this.maximizeDiv.style.right = "0px"; 546 550 this.maximizeDiv.style.left = ""; 547 551 this.maximizeDiv.style.display = "none"; 548 OpenLayers.Event.observe(this.maximizeDiv, 549 "click",550 this.maximizeControl.bindAsEventListener(this));552 OpenLayers.Event.observe(this.maximizeDiv, "click", 553 OpenLayers.Function.bindAsEventListener(this.maximizeControl, this) 554 ); 551 555 552 556 this.div.appendChild(this.maximizeDiv); 553 557 … … 564 568 this.minimizeDiv.style.right = "0px"; 565 569 this.minimizeDiv.style.left = ""; 566 570 this.minimizeDiv.style.display = "none"; 567 OpenLayers.Event.observe(this.minimizeDiv, 568 "click",569 this.minimizeControl.bindAsEventListener(this));571 OpenLayers.Event.observe(this.minimizeDiv, "click", 572 OpenLayers.Function.bindAsEventListener(this.minimizeControl, this) 573 ); 570 574 571 575 this.div.appendChild(this.minimizeDiv); 572 576 }, -
lib/OpenLayers/Control/Panel.js
old new 170 170 var textNode = document.createTextNode(" "); 171 171 controls[i].panel_div = element; 172 172 OpenLayers.Event.observe(controls[i].panel_div, "click", 173 this.onClick.bind(this, controls[i]));173 OpenLayers.Function.bind(this.onClick, this, controls[i])); 174 174 OpenLayers.Event.observe(controls[i].panel_div, "mousedown", 175 OpenLayers.Event.stop.bindAsEventListener());175 OpenLayers.Function.bindAsEventListener(OpenLayers.Event.stop)); 176 176 } 177 177 178 178 if (this.map) { // map.addControl() has already been called on the panel -
lib/OpenLayers/Util.js
old new 255 255 if(delayDisplay) { 256 256 image.style.display = "none"; 257 257 OpenLayers.Event.observe(image, "load", 258 OpenLayers.Util.onImageLoad.bind(image));258 OpenLayers.Function.bind(OpenLayers.Util.onImageLoad, image)); 259 259 OpenLayers.Event.observe(image, "error", 260 OpenLayers.Util.onImageLoadError.bind(image));260 OpenLayers.Function.bind(OpenLayers.Util.onImageLoadError, image)); 261 261 262 262 } 263 263 … … 453 453 if (delayDisplay) { 454 454 img.style.display = "none"; 455 455 OpenLayers.Event.observe(img, "load", 456 OpenLayers.Util.onImageLoad.bind(div));456 OpenLayers.Function.bind(OpenLayers.Util.onImageLoad, div)); 457 457 OpenLayers.Event.observe(img, "error", 458 OpenLayers.Util.onImageLoadError.bind(div));458 OpenLayers.Function.bind(OpenLayers.Util.onImageLoadError, div)); 459 459 } 460 460 461 461 OpenLayers.Util.modifyAlphaImageDiv(div, id, px, sz, imgURL, position, … … 791 791 792 792 //parse out parameters portion of url string 793 793 var paramsString = ""; 794 if ( url.contains('?')) {794 if (OpenLayers.String.contains(url, '?')) { 795 795 var start = url.indexOf('?') + 1; 796 var end = url.contains("#") ? url.indexOf('#') : url.length; 796 var end = OpenLayers.String.contains(url, "#") ? 797 url.indexOf('#') : url.length; 797 798 paramsString = url.substring(start, end); 798 799 } 799 800 -
lib/OpenLayers/Map.js
old new 301 301 302 302 // Because Mozilla does not support the "resize" event for elements 303 303 // other than "window", we need to put a hack here. 304 if ( navigator.appName.contains("Microsoft")) {304 if (OpenLayers.String.contains(navigator.appName, "Microsoft")) { 305 305 // If IE, register the resize on the div 306 306 this.events.register("resize", this, this.updateSize); 307 307 } else { 308 308 // Else updateSize on catching the window's resize 309 309 // Note that this is ok, as updateSize() does nothing if the 310 310 // map's size has not actually changed. 311 OpenLayers.Event.observe(window, 'resize', 312 this.updateSize.bind(this));311 OpenLayers.Event.observe(window, 'resize', 312 OpenLayers.Function.bind(this.updateSize, this)); 313 313 } 314 314 315 315 // only append link stylesheet if the theme property is set … … 354 354 355 355 this.popups = []; 356 356 357 this.unloadDestroy = this.destroy.bind(this);357 this.unloadDestroy = OpenLayers.Function.bind(this.destroy, this); 358 358 359 359 360 360 // always call map.destroy() -
lib/OpenLayers/Format/WKT.js
old new 208 208 * @private 209 209 */ 210 210 'point': function(str) { 211 var coords = str.trim().split(this.regExes.spaces);211 var coords = OpenLayers.String.trim(str).split(this.regExes.spaces); 212 212 return new OpenLayers.Feature.Vector( 213 213 new OpenLayers.Geometry.Point(coords[0], coords[1]) 214 214 ); … … 221 221 * @private 222 222 */ 223 223 'multipoint': function(str) { 224 var points = str.trim().split(',');224 var points = OpenLayers.String.trim(str).split(','); 225 225 var components = []; 226 226 for(var i=0; i<points.length; ++i) { 227 227 components.push(this.parse.point.apply(this, [points[i]]).geometry); … … 238 238 * @private 239 239 */ 240 240 'linestring': function(str) { 241 var points = str.trim().split(',');241 var points = OpenLayers.String.trim(str).split(','); 242 242 var components = []; 243 243 for(var i=0; i<points.length; ++i) { 244 244 components.push(this.parse.point.apply(this, [points[i]]).geometry); … … 256 256 */ 257 257 'multilinestring': function(str) { 258 258 var line; 259 var lines = str.trim().split(this.regExes.parenComma);259 var lines = OpenLayers.String.trim(str).split(this.regExes.parenComma); 260 260 var components = []; 261 261 for(var i=0; i<lines.length; ++i) { 262 262 line = lines[i].replace(this.regExes.trimParens, '$1'); … … 275 275 */ 276 276 'polygon': function(str) { 277 277 var ring, linestring, linearring; 278 var rings = str.trim().split(this.regExes.parenComma);278 var rings = OpenLayers.String.trim(str).split(this.regExes.parenComma); 279 279 var components = []; 280 280 for(var i=0; i<rings.length; ++i) { 281 281 ring = rings[i].replace(this.regExes.trimParens, '$1'); … … 296 296 */ 297 297 'multipolygon': function(str) { 298 298 var polygon; 299 var polygons = str.trim().split(this.regExes.doubleParenComma);299 var polygons = OpenLayers.String.trim(str).split(this.regExes.doubleParenComma); 300 300 var components = []; 301 301 for(var i=0; i<polygons.length; ++i) { 302 302 polygon = polygons[i].replace(this.regExes.trimParens, '$1'); … … 316 316 'geometrycollection': function(str) { 317 317 // separate components of the collection with | 318 318 str = str.replace(/,\s*([A-Za-z])/g, '|$1'); 319 var wktArray = str.trim().split('|');319 var wktArray = OpenLayers.String.trim(str).split('|'); 320 320 var components = []; 321 321 for(var i=0; i<wktArray.length; ++i) { 322 322 components.push(OpenLayers.Format.WKT.prototype.read.apply(this,[wktArray[i]])); -
lib/OpenLayers/Format/XML.js
old new 60 60 text = text.substring(index); 61 61 } 62 62 var node = OpenLayers.Util.Try( 63 (function() { 64 var xmldom; 65 /** 66 * Since we want to be able to call this method on the prototype 67 * itself, this.xmldom may not exist even if in IE. 68 */ 69 if(window.ActiveXObject && !this.xmldom) { 70 xmldom = new ActiveXObject("Microsoft.XMLDOM"); 71 } else { 72 xmldom = this.xmldom; 73 63 OpenLayers.Function.bind(( 64 function() { 65 var xmldom; 66 /** 67 * Since we want to be able to call this method on the prototype 68 * itself, this.xmldom may not exist even if in IE. 69 */ 70 if(window.ActiveXObject && !this.xmldom) { 71 xmldom = new ActiveXObject("Microsoft.XMLDOM"); 72 } else { 73 xmldom = this.xmldom; 74 75 } 76 xmldom.loadXML(text); 77 return xmldom; 74 78 } 75 xmldom.loadXML(text); 76 return xmldom; 77 }).bind(this), 79 ), this), 78 80 function() { 79 81 return new DOMParser().parseFromString(text, 'text/xml'); 80 82 }, -
lib/OpenLayers/Tile/Image.js
old new 177 177 http://openlayers.org/pipermail/dev/2007-January/000205.html 178 178 179 179 OpenLayers.Event.observe( this.imgDiv, "load", 180 this.checkImgURL.bind(this) );180 OpenLayers.Function.bind(this.checkImgURL, this) ); 181 181 */ 182 182 this.frame.appendChild(this.imgDiv); 183 183 this.layer.div.appendChild(this.frame); … … 206 206 this.events.triggerEvent("loadend"); 207 207 } 208 208 } 209 OpenLayers.Event.observe(this.imgDiv, 'load', onload.bind(this)); 209 OpenLayers.Event.observe(this.imgDiv, 'load', 210 OpenLayers.Function.bind(onload, this)); 210 211 211 212 }, 212 213 -
lib/OpenLayers/Ajax.js
old new 53 53 OpenLayers.loadURL = function(uri, params, caller, 54 54 onComplete, onFailure) { 55 55 56 if (OpenLayers.ProxyHost && uri.startsWith("http")) {56 if (OpenLayers.ProxyHost && OpenLayers.String.startsWith(uri, "http")) { 57 57 uri = OpenLayers.ProxyHost + escape(uri); 58 58 } 59 59 60 var success = (onComplete) ? onComplete.bind(caller)60 var success = (onComplete) ? OpenLayers.Function.bind(onComplete, caller) 61 61 : OpenLayers.nullHandler; 62 62 63 var failure = (onFailure) ? onFailure.bind(caller)63 var failure = (onFailure) ? OpenLayers.Function.bind(onFailure, caller) 64 64 : OpenLayers.nullHandler; 65 65 66 66 // from prototype.js … … 307 307 308 308 if (this.options.asynchronous) { 309 309 this.transport.onreadystatechange = 310 this.onStateChange.bind(this);310 OpenLayers.Function.bind(this.onStateChange, this); 311 311 312 setTimeout( (function() {313 this.respondToReadyState(1)314 }).bind(this), 10);312 setTimeout(OpenLayers.Function.bind( 313 (function() {this.respondToReadyState(1)}),this), 10 314 ); 315 315 } 316 316 317 317 this.setRequestHeaders(); -
lib/OpenLayers/BaseTypes/Element.js
old new 135 135 */ 136 136 getStyle: function(element, style) { 137 137 element = OpenLayers.Util.getElement(element); 138 var value = element.style[ style.camelize()];138 var value = element.style[OpenLayers.String.camelize(style)]; 139 139 if (!value) { 140 140 if (document.defaultView && 141 141 document.defaultView.getComputedStyle) { … … 143 143 var css = document.defaultView.getComputedStyle(element, null); 144 144 value = css ? css.getPropertyValue(style) : null; 145 145 } else if (element.currentStyle) { 146 value = element.currentStyle[ style.camelize()];146 value = element.currentStyle[OpenLayers.String.camelize(style)]; 147 147 } 148 148 } 149 149 -
lib/OpenLayers/BaseTypes.js
old new 4 4 5 5 /** 6 6 * Header: OpenLayers Base Types 7 * Modifications to standard JavaScript types are described here.7 * OpenLayers custom string, number and function functions are described here. 8 8 */ 9 9 10 10 /********************* … … 13 13 * * 14 14 *********************/ 15 15 16 OpenLayers.String = { 17 /** 18 * APIMethod: OpenLayers.String.startsWith 19 * Whether or not a string starts with another string. 20 * 21 * Parameters: 22 * str - {String} The string to test. 23 * sub - {Sring} The substring to look for. 24 * 25 * Returns: 26 * {Boolean} The first string starts with the second. 27 */ 28 startsWith: function(str, sub) { 29 return (str.indexOf(sub) == 0); 30 }, 16 31 32 /** 33 * APIMethod: OpenLayers.String.contains 34 * Whether or not a string contains another string. 35 * 36 * Parameters: 37 * str - {String} The string to test. 38 * sub - {String} The substring to look for. 39 * 40 * Returns: 41 * {Boolean} The first string contains the second. 42 */ 43 contains: function(str, sub) { 44 return (str.indexOf(sub) != -1); 45 }, 46 47 /** 48 * APIMethod: OpenLayers.String.trim 49 * Removes leading and trailing whitespace characters from a string. 50 * 51 * Parameters: 52 * str - {String} The (potentially) space padded string. This string is not 53 * modified. 54 * 55 * Returns: 56 * {String} A trimmed version of the string - all leading and 57 * trailing spaces removed. 58 */ 59 trim: function(str) { 60 return str.replace(/^\s*(.*?)\s*$/, "$1"); 61 }, 62 63 /** 64 * APIMethod: OpenLayers.String.camelize 65 * Camel-case a hyphenated string. 66 * Ex. "chicken-head" becomes "chickenHead", and 67 * "-chicken-head" becomes "ChickenHead". 68 * 69 * Parameters: 70 * str - {String} The string to be camelized. The original is not modified. 71 * 72 * Returns: 73 * {String} The string, camelized 74 */ 75 camelize: function(str) { 76 var oStringList = str.split('-'); 77 var camelizedString = oStringList[0]; 78 for (var i = 1; i < oStringList.length; i++) { 79 var s = oStringList[i]; 80 camelizedString += s.charAt(0).toUpperCase() + s.substring(1); 81 } 82 return camelizedString; 83 } 84 }; 85 17 86 /** 18 87 * APIMethod: String.startsWith 19 * Whether or not a string starts with another string.88 * Deprecated. Whether or not a string starts with another string. 20 89 * 21 90 * Parameters: 22 91 * sStart - {Sring} The string we're testing for. … … 25 94 * {Boolean} Whether or not this string starts with the string passed in. 26 95 */ 27 96 String.prototype.startsWith = function(sStart) { 28 return (this.substr(0,sStart.length) == sStart); 97 OpenLayers.Console.warn( 98 "This method has been deprecated and will be removed in 3.0. " + 99 "Please use OpenLayers.String.startsWith instead" 100 ); 101 return OpenLayers.String.startsWith(this, sStart); 29 102 }; 30 103 31 104 /** 32 105 * APIMethod: String.contains 33 * Whether or not a string contains another string.106 * Deprecated. Whether or not a string contains another string. 34 107 * 35 108 * Parameters: 36 109 * str - {String} The string that we're testing for. … … 39 112 * {Boolean} Whether or not this string contains with the string passed in. 40 113 */ 41 114 String.prototype.contains = function(str) { 42 return (this.indexOf(str) != -1); 115 OpenLayers.Console.warn( 116 "This method has been deprecated and will be removed in 3.0. " + 117 "Please use OpenLayers.String.contains instead" 118 ); 119 return OpenLayers.String.contains(this, str); 43 120 }; 44 121 45 122 /** 46 123 * APIMethod: String.trim 47 * Removes leading and trailing whitespace characters from a string.124 * Deprecated. Removes leading and trailing whitespace characters from a string. 48 125 * 49 126 * Returns: 50 127 * {String} A trimmed version of the string - all leading and 51 128 * trailing spaces removed 52 129 */ 53 130 String.prototype.trim = function() { 54 return this.replace(/^\s+/, '').replace(/\s+$/, ''); 131 OpenLayers.Console.warn( 132 "This method has been deprecated and will be removed in 3.0. " + 133 "Please use OpenLayers.String.trim instead" 134 ); 135 return OpenLayers.String.trim(this); 55 136 }; 56 137 57 138 /** 58 139 * APIMethod: camelize 59 * Camel-case a hyphenated string.140 * Deprecated. Camel-case a hyphenated string. 60 141 * Ex. "chicken-head" becomes "chickenHead", and 61 142 * "-chicken-head" becomes "ChickenHead". 62 143 * … … 64 145 * {String} The string, camelized 65 146 */ 66 147 String.prototype.camelize = function() { 67 var oStringList = this.split('-'); 68 var camelizedString = oStringList[0]; 69 for (var i = 1; i < oStringList.length; i++) { 70 var s = oStringList[i]; 71 camelizedString += s.charAt(0).toUpperCase() + s.substring(1); 72 } 73 return camelizedString; 148 OpenLayers.Console.warn( 149 "This method has been deprecated and will be removed in 3.0. " + 150 "Please use OpenLayers.String.camelize instead" 151 ); 152 return OpenLayers.String.camelize(this); 74 153 }; 75 154 76 155 … … 80 159 * * 81 160 *********************/ 82 161 162 OpenLayers.Number = { 163 /** 164 * APIMethod: OpenLayers.Number.limitSigDigs 165 * Limit the number of significant digits on an integer. 166 * 167 * Parameters: 168 * num - {Integer} 169 * sig - {Integer} 170 * 171 * Returns: 172 * {Integer} The number, rounded to the specified number of significant 173 * digits. 174 */ 175 limitSigDigs: function(num, sig) { 176 var fig; 177 if(sig > 0) { 178 fig = parseFloat(num.toPrecision(sig)); 179 } else { 180 fig = 0; 181 } 182 return fig; 183 } 184 }; 185 83 186 /** 84 187 * APIMethod: Number.limitSigDigs 85 * Limit the number of significant digits on an integer. Does *not* work86 * w ith floats!188 * Deprecated. Limit the number of significant digits on an integer. Does *not* 189 * work with floats! 87 190 * 88 191 * Parameters: 89 192 * sig - {Integer} … … 93 196 * If null, 0, or negative value passed in, returns 0 94 197 */ 95 198 Number.prototype.limitSigDigs = function(sig) { 96 var numStr = (sig > 0) ? this.toString() : "0"; 97 if (numStr.contains(".")) { 98 var msg = "limitSigDig can not be called on a floating point number"; 99 OpenLayers.Console.error(msg); 100 return null; 101 } 102 if ( (sig > 0) && (sig < numStr.length) ) { 103 var exp = numStr.length - sig; 104 numStr = Math.round( this / Math.pow(10, exp)) * Math.pow(10, exp); 105 } 106 return parseInt(numStr); 199 OpenLayers.Console.warn( 200 "This method has been deprecated and will be removed in 3.0. " + 201 "Please use OpenLayers.Number.limitSigDigs inst
