Commit Graph

3209 Commits

Author SHA1 Message Date
ahocevar
467bcc8b62 Protect from features without geometry 2013-11-11 21:51:58 +01:00
ahocevar
03e20ce6f1 Do not fail on non-vector layers 2013-11-09 16:12:13 +01:00
ahocevar
26c8c954c3 Make selectedFeaturesFilter available to other components 2013-11-09 16:03:30 +01:00
ahocevar
97d38820fb Removing no longer used getFeatureWithUid method 2013-11-09 14:44:40 +01:00
ahocevar
d9fd459654 Do not use a temporary layer for selected features 2013-11-09 14:15:35 +01:00
ahocevar
9fca2c407d Add a getFeatures method on the vector layer 2013-11-09 14:15:35 +01:00
ahocevar
7cf636147b Call setRenderIntent on the feature, not the layer 2013-11-09 14:15:35 +01:00
Tim Schaub
009f7b53a1 Make interactions event targets 2013-11-07 16:39:05 -07:00
Frédéric Junod
7fb7a472b7 Merge pull request #1249 from fredj/apidoc_function
More precise {function} jsdoc definition
2013-11-07 13:22:30 -08:00
Tim Schaub
dbc3109ddb Only call expireTiles_ if already rendered 2013-11-07 10:30:58 -07:00
Frederic Junod
01cc19af80 More precise {function} jsdoc definition 2013-11-07 16:03:19 +01:00
Frederic Junod
09e4c985a0 Export ol.coordinate.rotate 2013-11-06 08:58:06 +01:00
Frederic Junod
a31a28278d Sort exports alphabetically 2013-11-06 08:57:15 +01:00
Tom Payne
ee53fa7174 Merge pull request #1230 from glennvorhes/for_loop_iter
Remove declared iteration variables before for-loop
2013-11-05 02:00:23 -08:00
Glenn Vorhes
0fc727f989 Remove declared iteration variables before for-loop 2013-11-04 22:31:04 -06:00
Tim Schaub
dcf510fe48 The code generated from objectliterals.jsdoc requires name on same line
Without this change, the `interactions` property is renamed on map options (see #1210).
2013-11-04 17:17:43 -07:00
Tim Schaub
e207e80257 Merge pull request #1226 from tschaub/dirty-buffer
Buffer dirty extent when rendering,
2013-11-04 14:28:46 -08:00
ahocevar
32bf851957 Merge pull request #1225 from ahocevar/closest-on-segment
squaredDistanceToSegment and footOfPerpendicularToSegment
2013-11-04 13:43:42 -08:00
Tim Schaub
b355c1f412 When expiring tiles, consider max symbol size
When an extent is invalidated, we have to expire tiles outside of that extent to account for symbolizer size.
2013-11-04 13:21:23 -07:00
Tim Schaub
b0cea7139b Function to buffer an extent 2013-11-04 13:21:11 -07:00
ahocevar
e9b934d041 Let closestOnSegment return nothing more than a coordinate
Since we do not use the 'along' property anywhere, and the
resulting array returned by closestOnSegment could cause trouble
when working with 3d coodinates, now only the closest point is
returned, and the squared distance to the segment is calculated
by squaredDistanceToSegment instead.
2013-11-04 20:54:07 +01:00
Tom Payne
bfd40bd43d Merge pull request #1224 from twpayne/faster-object-getkeys
Make ol.Object#getKeys about 10x faster
2013-11-04 10:40:23 -08:00
ahocevar
1670b31142 Moving squaredDistanceToSegment to the coordinate package 2013-11-04 19:19:54 +01:00
Tom Payne
60245a57d8 Make ol.Object#getKeys about 10x faster 2013-11-04 18:18:31 +01:00
Peter Robins
341ea92323 Correct docs for map.getTarget 2013-11-03 04:54:31 -05:00
Tim Schaub
10b6b5f2c5 Merge pull request #1173 from tschaub/map-interaction
Give interactions a reference to their map.
2013-11-01 15:30:19 -07:00
Tim Schaub
d5d005ba3f Allow interactions to deal directly with browser events
The relayEvent_ method wraps goog's browser events in our MapBrowserEvent.  This allows interactions to deal with real browser events in addition to our emulated events.
2013-11-01 13:07:44 -06:00
Paul Spencer
7df3c7506f Add support for passing interactions as an array for consistency. 2013-11-01 08:03:06 -04:00
Éric Lemoine
0f71323c05 Merge pull request #1203 from elemoine/touch
Map browser event handler refactoring
2013-11-01 01:51:38 -07:00
Frédéric Junod
a05c426212 Merge pull request #1186 from fredj/validate_valueAsNumber
mouse-position example: Projection select issue
2013-10-31 23:49:48 -07:00
Paul Spencer
5af671b5f7 Merge pull request #1181 from pagameba/doc-observables
Add `@todo observable` documentation for observable properties
2013-10-31 10:51:20 -07:00
Bart van den Eijnden
8b085514b1 add Terms of Service to the Bing attribution
make sure the epsg4326Extent is constructed with the correct arguments
2013-10-31 16:49:46 +01:00
Tim Schaub
7fb56579c5 Add addInteraction and removeInteraction methods to the map
This is in line with how we add/remove controls and overlays.
2013-10-31 09:26:28 -06:00
Tim Schaub
7d2d68c011 Give interactions a reference to the map
This is in line with what we do for controls and overlays.  A follow-up change will add calls to `setMap` when interactions are added to a map.
2013-10-31 09:25:52 -06:00
Éric Lemoine
d81fe5ac95 Map browser event handler refactoring
This commit refactors the code of the map browser event handler. The changes are the following:

Previously the `handleTouch*_` listener functions handled both `touch*` and `mspointer*` events. With this commit we use per-event type listeners. This duplicates some code (could be avoidable), but makes it easier to introduce mouse/touch/pointer specific treatments in the future.

We now listen to pointermove, pointerup, touchmove and touchend only when needed. In this way we're assured that a `down` event was received (and that `this.down_` is set) when the `up` or `move` listeners are called. This fixes the bug @oterral reported on the mailing list: https://groups.google.com/d/msg/ol3-dev/jR844F7Nlg8/eN9dt4uATK0J.

To avoid problems in browsers that trigger different types of events (e.g. both mouse and pointer events) the `down` listeners unregister the other `down` listeners. For example, the `pointerdown` listener unregisters the `mousedown` and `touchstart` listeners, for ever.
2013-10-31 13:35:01 +01:00
Éric Lemoine
d211f65203 Merge pull request #1195 from elemoine/click
Emulated click events on mouse devices
2013-10-31 01:50:34 -07:00
Éric Lemoine
8402eee0c3 Map "click" event renamed to "singleclick"
As discussed with @tschaub in #1195.
2013-10-31 09:37:16 +01:00
Tim Schaub
8e892a633d Merge pull request #1188 from tschaub/gfi-extent
Correctly generate BBOX in URL for GetFeatureInfo in ol.source.ImageWMS.
2013-10-30 09:10:48 -07:00
Frederic Junod
a2b9f1d0ac Only set the 'valueAsNumber' property is the value is valid 2013-10-30 14:15:59 +01:00
Éric Lemoine
2c930d74b5 clickOnly condition checks map clicks 2013-10-30 13:17:12 +01:00
Éric Lemoine
0fa66cc7e7 Remove mousedown listener on first touchstart 2013-10-30 13:16:09 +01:00
Éric Lemoine
9f7ead5ef4 Remove unused ol.MapBrowserEventHandler#relayEvent_ func 2013-10-30 13:16:09 +01:00
Éric Lemoine
a85b82090d Emulate click events only on mouse "action"
`click` events are fired only if the mouse action button is pressed. This prevents `click` events from being fired when the middle mouse button is used.

Also, without this commit, in Chrome with emulated touch events enabled, double-clicking the map doesn't zoom the map. This is because `ol.BrowserFeature.HAS_TOUCH` is `false` in that environment. The commit fixes it by testing `isMouseActionButton` on mouse devices only.
2013-10-30 13:16:09 +01:00
Éric Lemoine
0c212fdcb5 Emulated click events on mouse devices
The map already emits emulated `click` and `dblclick` events on touch and pointer devices. With this commit the map emits emulated `click` and `dblclick` events on mouse devices as well.
2013-10-30 13:16:09 +01:00
Frederic Junod
a9159ecac3 Rename ol.interaction.condition to ol.events.condition 2013-10-30 12:13:44 +01:00
ahocevar
4b7b95fc2f Handle dragend after resetting view hint and dragging flag
When we start dragging, we first handle dragstart and then set
the INTERACTING view hint and the dragging flag. To end dragging
in a symmetric manner, we have to first reset the INTERACTING
hint and dragging flag, and then handle dragend.

This flaw becomes obvious when using an interaction where no
animation is performed after the interaction. This can be seen
in the style-rules example when using the dragzoom interaction
(i.e. zoom using a drag box): the vector renderer will not
render the new resolution, because the INTERACTING view hint is
still set when the zoom box dragend is handled.
2013-10-30 11:45:34 +01:00
Éric Lemoine
16b817b830 Overlay stopEvent and insertFirst default to true 2013-10-30 09:49:38 +01:00
Bruno Binet
d7c696fc76 Improve doc for stopEvent and insertFirst options 2013-10-30 09:28:56 +01:00
Bruno Binet
71097d9cfc Insert or append overlay based on insertFirst option
This is to fix z-index issues with overlays that pass above ol3 default
controls.
2013-10-30 09:28:25 +01:00
Bruno Binet
69cee6a410 Add insertFirst option in ol.OverlayOptions typedef 2013-10-30 09:28:25 +01:00