Commit Graph

49 Commits

Author SHA1 Message Date
Maximilian Krög
b29ab8f104 Link to class instead of module pages 2022-02-14 21:53:07 +01:00
EvertEt
25e1d6c5d6 Improve some null types for strictNullChecks 2022-02-06 19:36:30 +01:00
Simon Seyock
ce4f6ccb0d OnSignatures return more specific type 2021-09-10 16:11:38 +02:00
Andreas Hocevar
e9e664f3c9 Add typed signature for Observable#un() 2021-07-10 11:28:50 +02:00
Simon Seyock
d914006d51 Add signatures for once. 2021-07-10 11:28:49 +02:00
Simon Seyock
1870a64984 Add CombinedOnSignature. 2021-07-10 11:28:49 +02:00
Simon Seyock
e9a161740a controls and interactions. 2021-07-10 11:28:48 +02:00
Simon Seyock
c8f43050c4 Revert "Merge pull request #12416 from ahocevar/eventtype-generics"
This reverts commit b6c143deb2, reversing
changes made to 7777821df5.
2021-07-10 11:28:46 +02:00
Andreas Hocevar
018ad97f25 Use generics to limit event types in on(), once() and un() 2021-06-20 22:25:47 +02:00
Simon Seyock
8facb252f1 Replace google closure syntax = with brackets around name 2021-02-03 14:06:02 +01:00
Andreas Hocevar
8ba051add3 Fix private scope issues in ol/interaction/* 2020-04-15 10:53:25 +02:00
Tim Schaub
054af09032 Make code prettier
This updates ESLint and our shared eslint-config-openlayers to use Prettier.  Most formatting changes were automatically applied with this:

    npm run lint -- --fix

A few manual changes were required:

 * In `examples/offscreen-canvas.js`, the `//eslint-disable-line` comment needed to be moved to the appropriate line to disable the error about the `'worker-loader!./offscreen-canvas.worker.js'` import.
 * In `examples/webpack/exapmle-builder.js`, spaces could not be added after a couple `function`s for some reason.  While editing this, I reworked `ExampleBuilder` to be a class.
 * In `src/ol/format/WMSGetFeatureInfo.js`, the `// @ts-ignore` comment needed to be moved down one line so it applied to the `parsersNS` argument.
2020-04-06 12:54:09 -06:00
Tim Schaub
5d4e77151c Handle event coordinate in the user projection 2019-09-26 17:24:58 +02:00
Tim Schaub
c03c359a20 Separate internal and API methods for the view 2019-09-21 11:30:14 -06: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
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
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
jahow
cd186ada7f Add new tests for View & Interaction w/ fixes 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
simonseyock
c18a833880 event chain documentation 2019-01-28 20:50:33 +01:00
Frederic Junod
6d608c361a Simplify import path in ol/interaction/ 2018-11-05 16:26:45 +01:00
Kevin Schmidt
942a0976be Move interaction event handlers to class methods 2018-10-03 06:30:09 -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
bbe0a66d07 Set api annotation on classdesc, not constructor 2018-07-21 17:25:22 +02:00
ahocevar
e79add2e77 Use extends, super and proper constructor jsdoc for ol/interaction 2018-07-17 21:09:06 +02:00
Tim Schaub
7b4a73f3b9 Automated class transform
npx lebab --replace src --transform class
2018-07-16 16:18:16 -06:00
ahocevar
28409486a5 Make classes in ol/ available as named exports from ol 2018-06-21 18:08:17 +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
Andreas Hocevar
95d6251dbb Get rid of olx.js and typedef.js typedefs for ol 2018-03-08 18:57:24 +01:00
Andreas Hocevar
07cd7ba325 New typedef syntax and constructor options for Interaction 2018-03-07 13:56:17 +01:00
Tim Schaub
1404e9d61d Remove remaining static members from Interaction 2018-02-25 12:46:57 -07:00
Tim Schaub
244fbbbb8d Remove some of the static members from Interaction 2018-02-25 10:17:21 -07:00
Frederic Junod
a8f4348add Fix parens grouping in typecasts 2018-02-15 08:44:35 +01:00
Tim Schaub
ad62739a6e Use blocked scoped variables
In addition to using const and let, this also upgrades our linter config and removes lint (mostly whitespace).
2018-01-12 00:50:30 -07:00
Frederic Junod
f0d4fdd98e Rename _ol_interaction_Property_ to InteractionProperty 2018-01-11 14:01:51 +01:00
Tim Schaub
24dd0ca924 Rename _ol_Object_ to BaseObject 2018-01-10 09:35:43 -07:00
Ron Young
a11208d126 rename _ol_math_ imports 2017-12-20 19:31:00 -06:00
Tim Schaub
98959b224d Redistribute a few types and docs 2017-12-15 23:10:53 -07:00
Marc Jansen
4a1d50730b Rename _ol_interaction_Interaction_ to Interaction 2017-12-15 09:39:10 -07:00
Frederic Junod
061e0b6618 Named exports from ol/easing 2017-12-14 08:56:38 +01:00
Tim Schaub
87295a74dd Use named exports from ol/index.js 2017-12-12 12:34:23 -07:00
Tim Schaub
7f47883c48 Transformed 2017-12-12 06:53:18 -07:00
Tim Schaub
1cdb6a66f0 Imports cased like the filename 2017-12-12 06:53:17 -07:00