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
Olivier Guyot
1c5fd62e43
View / refactor how zoom and resolution are computed
...
This commit aims to simplify the computation of zoom and resolution in the
View class.
Previously zoom levels and resolution computations were mixed in different places,
ie resolution constraints, initial values, etc.
Now the View class only has the `getZoomForResolution` and `getResolutionForZoom`
methods to convert from one system to another.
Other than that, most computations use the resolution system internally.
The `constrainResolution` method also does not exist anymore, and is replaced
by `getValidResolution` and `getValidZoomLevel` public methods.
2019-02-22 15:01:30 +01:00
Olivier Guyot
1f379a06a4
View / add support for viewport extent constraint
...
This introduces a breaking change:
The `extent` view option now constrains the whole viewport and not just the
view center.
The option `constrainOnlyCenter` was added to keep the previous behaviour.
Constraining the whole viewport and not only the view center means
that the center and resolution constraints must be applied with a knowledge of
the viewport size.
2019-02-22 15:01:30 +01:00
jahow
e52fab636c
View / apply constraints automatically based on hints
...
All constraints can now function differently if they are applied during
interaction or animation.
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
Olivier Guyot
4e1ece16ed
View / implemented begin- and endInteraction methods
2019-02-22 15:01:30 +01:00
Olivier Guyot
1cb934dbe3
View / implement intermediate values for center/rot/res
...
The view now has targetCenter, targetRotation and targetResolution members.
These hold the new values given by set* methods. The actual view parameters are then changed by
calling `applyParameters_`.
2019-02-22 15:01:30 +01:00
Frederic Junod
b1602877d9
Remove type cast in ol.View
2018-12-12 12:54:41 +01:00
Niklas Alt
4bc9216e41
Add ': void' to non returning functions (error TS7014)
2018-12-06 19:57:45 +01:00
ahocevar
9163558511
Replace instanceof checks with other logic
2018-10-12 20:35:59 +02:00
Frederic Junod
9c52e0d6d9
Remove extra imports in jsdoc
...
The symbols are already imported (es6 import)
2018-09-19 14:52:58 +02:00
Tim Schaub
f6e6878909
Brackets for optional properties
2018-09-06 11:01:59 -06:00
Tim Schaub
895bfcea8e
Optional properties for animation
2018-09-06 09:21:17 -06:00
Tim Schaub
ccfacc5ee6
Transformed types
...
Using the [ts.js codemod](https://gist.github.com/tschaub/1ea498c9d1e5268cf36d212b3949be4e ):
jscodeshift --transform ts.js src
2018-09-05 08:05:29 -06:00
ahocevar
f3cd1d8dfd
Round center in viewState
2018-08-09 18:16:58 +02:00
ahocevar
fc19e3e12e
Avoid block scope issues in transpiled code
2018-08-09 10:22:42 +02:00
Tim Schaub
6cfa2b22a7
Explicit void
2018-07-26 10:46:39 -06:00
Tim Schaub
affbf59b77
Use Object<Foo, Bar> instead of Object.<Foo, Bar>
2018-07-25 18:33:49 -07:00
Tim Schaub
d12ef20b12
Use Array<Foo> instead of Array.<Foo>
2018-07-25 18:32:43 -07:00
Tim Schaub
e5493d1288
Add ol/pixel module for Pixel type
2018-07-19 10:17:00 -06:00
Frederic Junod
5d2cf66380
Add missing 'targetRotation' property in Animation typedef
2018-07-19 16:02:58 +02:00
ahocevar
4f26f145ae
Use extends and super for View
2018-07-17 14:20:48 +02:00
Frederic Junod
f2d0b11d24
Move jsdoc constructor comments
2018-07-17 09:59:00 +02:00
Tim Schaub
f78d0d4cfa
Manual class transform
2018-07-16 17:09:50 -06:00
ahocevar
28409486a5
Make classes in ol/ available as named exports from ol
2018-06-21 18:08:17 +02:00
Frederic Junod
90ce02941a
Better code indentation
2018-05-14 14:58:36 +02:00
Frederic Junod
af1f6836af
Shorter module paths for default exports
2018-05-09 11:24:43 +02:00
Tim Schaub
5b65336328
Remove remaining ol.foo notation from the source
2018-05-07 21:21:50 -06:00
Frederic Junod
c4dba00c54
Add minZoom to the createResolutionConstraint function return type
2018-04-27 16:21:59 +02:00
ahocevar
440d1ad3e1
Shorter module paths for default exports
2018-04-25 17:25:39 +02:00
ahocevar
417dd85f83
Fix some jsdoc path types
2018-04-21 10:17:53 +02:00
Frederic Junod
29b37b179c
Move olx.ViewState to ol/View
2018-03-23 11:42:46 +01:00
Frederic Junod
218ca38f1d
Use path type instead of ol.Coordinate
2018-03-19 08:29:50 +01:00
Frederic Junod
bde23826e2
Use 'module:ol/View~FitOptions' instead of 'olx.view.FitOptions'
2018-03-13 16:24:43 +01:00
Frederic Junod
bb3072153b
Remove undefined type when the property is optional
2018-03-13 12:33:35 +01:00
Frédéric Junod
92d864ee92
Merge pull request #7975 from fredj/jsdoc_default
...
Mark optional property with square brackets
2018-03-13 11:15:35 +01:00
Frederic Junod
813b72251a
Mark optional property with square brackets
2018-03-12 15:58:44 +01:00
Frederic Junod
35158efbf0
Fix spelling
2018-03-12 15:18:58 +01:00
Tim Schaub
57d135e9f6
Move AnimationOptions to ol/View
2018-03-11 10:37:57 -06:00
Tim Schaub
a69a1f3ff4
Coordinate type typo
2018-03-11 08:36:54 -06:00
Andreas Hocevar
95d6251dbb
Get rid of olx.js and typedef.js typedefs for ol
2018-03-08 18:57:24 +01:00
Frederic Junod
500a017faf
Better code indentation
2018-03-05 15:36:40 +01:00
Frederic Junod
b50a47114e
Move the nullFunction to ol/functions
...
And rename it to `UNDEFINED`.
2018-03-01 14:41:18 +01:00
Frederic Junod
73b15ef8d7
Better code indentation
2018-02-28 16:46:45 +01:00
Frederic Junod
f1d32e71cd
Named exports from ol/View
2018-02-21 09:05:40 +01:00
Frederic Junod
a8f4348add
Fix parens grouping in typecasts
2018-02-15 08:44:35 +01:00