Commit Graph

1265 Commits

Author SHA1 Message Date
wirdehall
bd5510b62a Updated docs for Select style.
Updated docs for Select style with new option of false.
2019-10-18 00:20:05 +02:00
wirdehall
a34e7ddd99 Should be able to ovveride defaultvalue of style in selection.
null or false should be able to prevent overriding the style.
As discussed here: https://github.com/openlayers/openlayers/issues/10131
2019-10-17 15:05:30 +02:00
Bobo Häggström
395b59c01e Fix documentation for handleMoveEvent
This fixes #9814
2019-10-10 10:40:47 +02:00
Tim Schaub
80cf76e783 Merge pull request #10043 from tschaub/snap-geographic
User coordinates during snapping
2019-09-27 17:20:16 +02:00
Frederic Junod
f67476dd8f Mark properties as nullable 2019-09-27 13:57:59 +02:00
Tim Schaub
07678d960a User coordinates during snapping 2019-09-27 11:55:48 +02:00
Tim Schaub
6a5f6e4363 Merge pull request #10009 from tschaub/modified
Geometry editing with a user projection
2019-09-26 20:01:19 +02:00
flexJoly
391bae35f2 minor fixes
and keep original parameters in TranslateEvent the same
2019-09-26 19:30:24 +02:00
Tim Schaub
3c7b129106 User coordinates during drawing 2019-09-26 19:29:19 +02:00
flexJoly
180e1c86fc Cache starting coordinates and add mapBrowserEvent to translateEvent 2019-09-26 18:48:51 +02:00
Tim Schaub
e0d24d3af0 User coordinates during modification 2019-09-26 18:46:55 +02:00
Tim Schaub
5d4e77151c Handle event coordinate in the user projection 2019-09-26 17:24:58 +02:00
Tim Schaub
6ec69abdf6 Fewer type casts, minor changes 2019-09-26 16:15:08 +02:00
Tobias Kohr
347f5df32e Fix some cosmetics on Select interaction 2019-09-25 17:34:26 +02:00
Tobias Kohr
2ccaed0ace Add back Select interaction without Overlay 2019-09-25 16:37:28 +02:00
Tobias Kohr
38124d770b Revert delete Select interaction commit 3838b68427 2019-09-25 16:37:28 +02:00
Tobias Kohr
8c4937170b rename external methods to API names 2019-09-24 18:13:57 +02:00
Tobias Kohr
b1196e7601 fix linting 2019-09-24 17:58:56 +02:00
Tobias Kohr
d4c1589a01 Seperate internal and API methods for the map 2019-09-24 17:58:56 +02:00
Tim Schaub
3c38a38570 Merge pull request #9961 from KlausBenndorf/remove-select-interaction
SelectInteraction removal
2019-09-24 10:27:20 +02:00
Simon Seyock
3838b68427 Removed SelectInteraction 2019-09-24 10:12:30 +02:00
Tim Schaub
c03c359a20 Separate internal and API methods for the view 2019-09-21 11:30:14 -06:00
ahocevar
ebfb20440a Simplify events and store listeners only in one place 2019-09-04 16:48:43 +02:00
ahocevar
d416866108 Use pointer events everywhere 2019-08-31 23:40:11 +02:00
ahocevar
74e8e013cf Use pepjs instead of our own pointerevent polyfill 2019-08-29 18:58:53 +02:00
Logan BOUNET
87d80be915 Add minArea typedef and ctor prop in DragZoom 2019-07-03 10:29:13 -04:00
Kai Volland
b6b91abc27 Fixes typing issue in DragPan.js 2019-06-21 13:28:56 +02:00
André Garneau
7817cf31c6 Changes following code review
Add a type for FilterFunction and add tests for filter option.
2019-06-04 17:45:28 -04:00
André Garneau
b42ee8ca0f Add filter function to translate interaction
Add a filter function to the translate interaction. This filter is similar to the one present in the select interaction options and provides the ability to dynamically filter which features to include in the translate interaction. Adding the existing "features" options allows further filtering to take place. In this case the filter is first applied, and features that are passing the filtering need to be present in the "features" options to be further kept. The default filter function always return true (no filtering).
2019-05-31 14:51:13 -04:00
Stéphane Brunner
889b6a9f43 Removes unnecessary type cast 2019-05-27 11:34:33 +02:00
Frederic Junod
ec811bfa1f Add primaryAction condition to DragPan interaction 2019-05-22 15:21:17 +02:00
Tim Schaub
0f998b4522 Link to the extent event instead of the extent event type 2019-04-28 16:36:33 -06:00
ahocevar
86fac0937b Set the interacting flag on pointerdrag instead of pointerdown 2019-04-19 09:42:12 -07:00
Frederic Junod
238fbca650 Add new maxDelta property to MouseWheelZoom constructor 2019-04-08 15:02:21 +02:00
ahocevar
070c1ec029 Resolve constraints for View#animate() API calls 2019-04-05 17:13:55 +02:00
Olivier Guyot
0f73f16cfa View / apply constraints when an interaction starts
Previously, an interaction could begin while target values
(center/resolution) were out of the allowed range, causing a
glitch where the view zoom/position would jump suddenly.
2019-04-05 11:55:35 +02:00
Olivier Guyot
f67baa0dc0 Interactions / fix zoom level when a zoom interaction ends 2019-02-22 15:04:54 +01:00
Olivier Guyot
405e206717 View / better names for getValid* and applyParameters_ methods 2019-02-22 15:04:54 +01:00
Olivier Guyot
78e8f23df5 View / add getValidCenter method to improve interactions
The DragPan, KeyboardPan and DragZoom interactions now make sure to
animate to a valid center/resolution target to avoid
a chained "resolve" animation which looks weird.

The `View.fit` method was also fixed to use this.
2019-02-22 15:01:30 +01:00
Olivier Guyot
433bccd207 Linting and fixes for unit tests 2019-02-22 15:01:30 +01:00
Olivier Guyot
ef6d17d817 View / add a 'smoothResolutionConstraint' options
When enabled (true by default), the resolution min/max values will be applied with
a smoothing effect for a better user experience.
2019-02-22 15:01:30 +01:00
Olivier Guyot
e023c144bb View / add adjust* methods to manipulate the view more easily
API changes:
* (breaking) the `rotate` method is gone
* the `adjustRotation`, `adjustResolution` and `adjustZoom` methods are now
  available and allow using an anchor.

This means interactions do not have to do the anchor computation themselves
and this also fix anchor computation when constraints must be applied.
2019-02-22 15:01:30 +01:00
Olivier Guyot
49662b019c View / add a constrainResolution option
This introduces a breaking change.

This options replaces the various `constrainResolution` options on interactions
and the `fit` method.

Since constraints are now the responsibility of the View, the fact that intermediary
zoom levels are allowed or not is now set in the view options.

By default, the view resolution is unconstrained.
2019-02-22 15:01:30 +01:00
jahow
48ad1ffcbf View / implement a smooth rebound effect when a max extent is given
This is done by applying the center constraint differently when we're in the
middle of an interaction/animation or not.

When the view is moving, the center constraint will restrain the given value
in an "elastic" way, using a logarithmic function.

This can be disabled using the `smoothCenterConstrain` view parameter.
2019-02-22 15:01:30 +01:00
jahow
cd186ada7f Add new tests for View & Interaction w/ fixes 2019-02-22 15:01:30 +01:00
Olivier Guyot
a6f65df8c4 View / add a resolveConstraints method to end interactions
This will help making sure that the view will come back to a "rested" state
once the interactions are over.

Interactions no longer need to handle the animation back to a rested state,
they simply call `endInteraction` with the desired duration and direction.
2019-02-22 15:01:30 +01:00
jahow
d991dfa54a View / remove constrainCenter method 2019-02-22 15:01:30 +01:00
jahow
c2c1aa01d3 View / removed the constrainRotation method 2019-02-22 15:01:30 +01:00
Olivier Guyot
e6c4b2ffd1 View / make the constrainResolution function private
Other classes should not need to worry about constraining the resolution
or not, as the View will eventually do this on its own.
2019-02-22 15:01:30 +01:00
Olivier Guyot
3c1e3779e2 View / add a method to compute a valid zoom level
The `getValidZoomLevel` apply the current resolution constraint to return
a value that is guaranteed valid.

This is used for interactions & controls which need a target value to work:
the +/- buttons, the zoom clider, the dragbox zoom and the mouse wheel zoom.
2019-02-22 15:01:30 +01:00