Commit Graph

3022 Commits

Author SHA1 Message Date
crschmidt
68f70f750b Add support for a Canvas renderer. This renderer will allow for some new
capabilties in OpenLayers Vector drawing, including: 
 * Vector support for iPhone, Safari 2.x series browsers
 * Improved performance of dragging the map with a large number of 
   geometries.

The Vector layer default renderer order is now SVG, VML, Canvas, so browsers
with Canvas support and no SVG or VML will be able to draw vectors.

The Canvas layer has a number of limitations: getFeatureFromEvent is much
slower than the other types of layer, and any change to any feature requires a
redraw of the entire canvas. Because Canvas is typically a pretty fast 
drawing implementation, the latter is less problematic than it might otherwise
be.

r=pagameba,fred, with glances from a couple other people.
(Closes #1512)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7862 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-26 14:22:59 +00:00
ahocevar
4fcd61f276 Clear point bounds after changing coordinates. Prevents strange behaviour of IE when doing getBounds(). r=elemoine (closes #1690)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7859 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-26 07:39:21 +00:00
euzuro
afecf46652 Small patch to allow an 'id' property to be custom-set on controls -- without being overrided by the default random id generator. Thanks to Stephen I for the bug report. r=elemoine (Closes #1687)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7829 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-22 13:23:16 +00:00
ahocevar
52a5173326 forgot to commit modified tests (references #1679)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7783 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-18 13:20:01 +00:00
ahocevar
5e9965a922 forgot to commit modified examples (references #1679)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7782 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-18 12:57:32 +00:00
ahocevar
8f45e0572e "disable z-indexing of elements in the Elements renderer by default". r=elemoine (closes #1679)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7781 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-18 12:53:06 +00:00
ahocevar
73eb0d5745 use t.eq instead of t.ok when comparing values
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7771 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-16 10:52:01 +00:00
Frédéric Junod
7a462b74ee Give the map a size to pass the tests on IE 7
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7714 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-08 14:39:17 +00:00
Frédéric Junod
f086ba17b4 keep the cursor style to 'move' if the cursor is above a feature. r=elemoine (closes #1673)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7713 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-08 13:34:59 +00:00
Éric Lemoine
3791712a10 maxZIndex becomes NULL when the last feature is removed, p=pvalsecc, r=me (closes #1670)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7712 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-08 12:23:59 +00:00
Frédéric Junod
0493525660 remove local scope variables from global namespace. (closes #1674)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7711 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-08 10:32:49 +00:00
Frédéric Junod
e0ac42ac5c Update copyright year, wrap long line, generate api doc, fix mailing list url. (closes #1618)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7710 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-08 07:09:14 +00:00
Éric Lemoine
d7ab2c0f60 Layer.Vector.removeMap must deactivate the strategies, r=fredj (closes #1649)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7708 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-05 13:59:12 +00:00
Frédéric Junod
39201a0427 Adding OpenLayers.Strategy.Fixed: A simple strategy that requests features once and never requests new data. r=elemoine, (Closes #1664)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7707 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-05 11:55:24 +00:00
Frédéric Junod
4be8c169d4 test Strategy.activate and Strategy.deactivate
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7706 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-05 11:44:36 +00:00
Frédéric Junod
18af32a5ac Remove JSDOC from CLASS_NAME property, (see #853)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7704 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-05 05:54:47 +00:00
Frédéric Junod
14119a6811 Fix a typo in Layer.Vector.destroy and add unit tests for protocol and strategies construct/destroy, r=crschmidt (closes #1659)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7703 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-05 05:39:11 +00:00
Frédéric Junod
a3ffb5734c OpenLayers.Strategy destroy() nullify options property. r=elemoine (closes #1657)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7690 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-04 12:25:47 +00:00
crschmidt
397de6fc6a "Format.GeoJSON does not parse features with null geometries", r=elemoine
(Closes #1145)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7689 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-04 10:38:01 +00:00
Éric Lemoine
21191ad0b9 if scales is set on the map, you cannot use minScale and maxScale on the layer, p=pgiraud, r=me,euzuro (closes #1199)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7688 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-04 09:20:23 +00:00
Frédéric Junod
9e83c720d9 Test if OpenLayers.Protocol::destroy() nullify options property
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7687 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-04 09:11:19 +00:00
crschmidt
91f3c5e652 Improve getRenderedDimensions to take into account a CSS class. Refactor some
popup code to take advantage of this, to provide a better hint to the
getRenderedDimensions call as to what is going on. Patch from sbenthall, r=me,
includes a manual acceptance test (only because the testing framework makes
these kinds of things hard). Manually confirmed to work with the sundials.html
example, tested with that and manual test in IE6, IE7, FF2-Win FF3-Mac FF2-Mac
Safari-Mac Opera-Win, and in all browsers it worked. (Hooray!) Nice one,
sbenthall. (Closes #1500)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7684 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-03 18:47:52 +00:00
crschmidt
cdd4c864ea Flipped a return value here; this should be 'true', not 'false'. (See #1655)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7683 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-03 12:24:18 +00:00
crschmidt
693e6d07e3 Fix for Feature handler uses getFeatureFromEvent on mousemove even without
hover callbacks; r=ahocevar (Closes #1655) 

This means that On the SelectFeature control hover can no longer be set on the
SelectFeature control after the control has been initialized: must be passed at
initialize time. Example has been updated. 


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7682 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-03 02:06:31 +00:00
ahocevar
f0e9c1c6a5 removed wms layer from externalGraphic test. Makes test faster.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7681 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-03 01:30:29 +00:00
ahocevar
8bd5eee49f simplified vector-features-performance test
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7680 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-03 00:30:30 +00:00
crschmidt
d437dec91c Since the Sundials is our primary KML + bubbles example, put in some naive
Javascript <script> injection protection, so that people are at least aware
of the issue. This will search for <script and if it exists, escape the content
so that it doesn't execute. 


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7679 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-02 21:56:25 +00:00
crschmidt
f1882f0efa "panTo should use tween if new center is in the current bounds + a ratio".
Add a bounds.scale method (takes a ratio and an optional center) and 
call it from the panTo to give a ratio we can pan inside of. Patch by
sbenthall, r=me,elemoine (Closes #1341) 


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7678 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-02 01:56:36 +00:00
crschmidt
61225ed98f Fixing an obvious bug in Ajax.js: when we upgraded Prototype, we missed
a pair -> extras, caught by 'falstaff'. (Closes #1559) 


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7677 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-02 01:44:26 +00:00
crschmidt
711d909a14 Update VE script location to new version.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7676 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 22:24:44 +00:00
crschmidt
64fc4fcb1b Patch from funky_c to move all alert()s in the library to a single
OpenLayers.Console.userError function. This allows for easy overriding of this
function for people who need to report errors at an application level (or
hiding these errors entirely), with the same default behavior as previous
releases. Patch from funky_c, r=me, (Closes #1651)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7675 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 22:21:50 +00:00
crschmidt
ba561a9fb5 Improve docs; explicitly mention that this transform is *in place*
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7674 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 22:09:20 +00:00
ahocevar
9588f25ce5 Stroke style of features can now be specified. Both SVG's
stroke-dasharray and VML's dashstyle properties are allowed in the new 
strokeDashstyle symbolizer property. For VML, which does not support 
custom dash styles, one of the 5 matching pre-defined dash styles will 
be guessed. The patch also adds support for the stroke-dasharray 
property in SLD. r=crschmidt (closes #1126)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7673 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 21:56:17 +00:00
ahocevar
7148b10123 do not ignore style.rotation if set to 0 any more. r=crschmidt (closes #1654)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7672 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 21:49:44 +00:00
ahocevar
197043d249 fixed event handling and rendering of graphicName symbols for Safari and Opera. r=crschmidt (closes #1653)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7671 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 21:35:35 +00:00
ahocevar
eddfa62c1f Use getAttributeNS instead of getAttribute. Non-functional change. (references #1650)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7670 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 21:12:56 +00:00
ahocevar
a59e7f0f4e fixed rendering but in FF3 when resizing graphicName symbols.
r=crschmidt (fixes #1650)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7669 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 18:43:31 +00:00
crschmidt
2b8cc7e0fd "WMC: queryable seems implemented but does not actually work", patch from
Bart, tests by me, r=me, (Closes #1447)  


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7668 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 18:30:55 +00:00
Paul Spencer
7f38f22d8f Refactor backBuffer tile code out of generic Tile base class into Tile.Image to make it nicer when subclassing Tile for other needs. (Closes #1645) r=elemoine.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7667 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 18:25:28 +00:00
crschmidt
e7ebdc8aa0 Non unique HTMLElement in Control, fix put together by sbenthall.
Tests pass, etc. (Closes #1396) 


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7666 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 18:21:56 +00:00
crschmidt
76170bf821 making the test div smaller so I don't have to scroll two things to run a
specific test. 


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7665 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 18:15:30 +00:00
crschmidt
232b635b12 replace all spaces with '', so that it matches in SVG + FFox
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7664 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 18:12:09 +00:00
euzuro
6f73b412c2 Get our VirtualEarth layer working again with the latest (6.1) version. Backwards compatible with earlier versions thanks to soft insistence of cr5. Thanks to funkyc for the co-sleuthing. r=cr5 (Closes #1540)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7660 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 15:34:50 +00:00
euzuro
558cd57e41 backing out patch for r7647 as it breaks framedcloud popups. (See #1586)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7656 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 05:06:30 +00:00
Paul Spencer
48e8a981d1 typo in comment.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7655 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 03:03:25 +00:00
Tim Schaub
f3283e9212 Adding gml specific attributes to feature in gml parsing. p=sbenthall r=me (closes #1328)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7654 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 01:30:39 +00:00
Tim Schaub
714b1d7363 Unrequire that which does not exist.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7653 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 00:35:02 +00:00
euzuro
8b98f5acc3 ordering <exclamation point/>. you can now gracefully z-order your vectors... and you can even 'yOrder' them and add background images, making for a nice 3dish look. be sure to check out the two new example html's: marker-shadow.html and ordering.html. Big thanks to tcoulter (funkyc) for a prolonged effort with this patch. It has come a long way and now what a beautiful finish. (Closes #1357)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7652 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-01 00:17:59 +00:00
Tim Schaub
d4a62c630a Adding a filter format for version 1.0.0 filter encoding. The sld parser extends itself to use readers and writers from the filter parser. r=me (closes #1605)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7651 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-07-31 23:34:19 +00:00
Tim Schaub
360d7412f0 Adding strategy and protocol base classes for better vector behavior. This just sets the common API for strategy and protocol. In general, a vector layer can have many strategies. A setLayer method gets called on each of these layers. When a layer is added to a map, any strategies on that layer get activated. When the layer is destroyed, any strategies get destroyed (this could be changed to deactivate for symmetry). A vector layer may also have a protocol. A protocol is typically constructed with a format. The layer doesn't need to know about the format. The protocol doesn't need to know about the layer. Strategies coordinate feature management for a layer. Specific strategies and protocols to follow. r=crschmidt (closes #1646)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7650 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-07-31 21:27:35 +00:00