Commit Graph

54 Commits

Author SHA1 Message Date
Tim Schaub
10672ad303 Standardizing color ranges (see #129) 2013-01-17 14:19:50 -07:00
Tim Schaub
141e5aa9fc Trim search string before use
The `window.location.search` string includes the "?" symbol.  Without this change, `createFromQueryData` only works if the "renderer" parameter is not in first position (see 4037bafc45).
2013-01-17 13:05:47 -07:00
Tom Payne
54327fb750 Add canvas renderer 2013-01-17 13:54:52 +01:00
Tom Payne
9fbabc3696 Refactor attribution control 2013-01-16 16:34:31 +01:00
Tom Payne
505987869e Fire postrender events 2013-01-15 18:38:12 +01:00
Tom Payne
4037bafc45 Add function to chose renderer from query string 2013-01-15 10:26:16 +01:00
Tom Payne
183aac90fa Remove unused requires 2013-01-14 20:52:47 +01:00
Tom Payne
9764e76975 Move pixel/coordinate matrices into frame state, remove canRotate 2013-01-14 12:46:39 +01:00
Tom Payne
5d31a44c12 Implement view hints architecture 2013-01-14 12:35:53 +01:00
Tom Payne
52df441cf8 Add tile queue 2013-01-11 16:18:07 +01:00
Tom Payne
2a6cc1ae70 Flag 2D-specific code, thanks @elemoine 2013-01-11 16:06:30 +01:00
Tom Payne
f00e299039 Register post-render functions instead of using an event 2013-01-11 15:49:21 +01:00
Tom Payne
f3cace499c Implement frame state and animation architecture 2013-01-11 15:48:24 +01:00
Éric Lemoine
927cffb2b7 Add view abstraction 2013-01-09 14:03:16 +01:00
Tom Payne
80e4c46805 Fix non-view-related typecasts in ol.Map 2013-01-07 13:19:00 +01:00
Tom Payne
756792b8db Pass time to render functions and rename them to renderFrame_ 2013-01-03 12:23:50 +01:00
Tom Payne
12099bab56 Implement @elemoine's requestRenderFrame architecture 2013-01-03 12:23:49 +01:00
ahocevar
eb4a8683e2 Projection handling improvements
* The Map's private createProjection_ method is now a public
  method of the Projection. It is also used by TiledWMSSource
  to calculate the appropriate projection from the user
  configuration.
* ol.Projection.addProjection now adds the transformation for
  the source == target case. This makes it easy for the user
  to create custom projection maps without including proj4js and
  without adding a custom transformation, as long as the
  userProjection equals the projection.
* The TiledWMSSource now uses the same default resolutions as
  the map (i.e. the OSM resolutions)
* The modulo calculation for wrapping extents now works for all
  grid configurations, by not calculating the number of columns
  based on an assumption about the way the zoom levels relate to
  resolutions.
* The wms-custom-proj example now shows how to properly
  configure a custom resolution, i.e. by using the validity
  extent of the projection as its extent.
2012-10-31 13:17:58 +01:00
Tom Payne
af872e25c3 Remove incorrect property export 2012-10-26 11:24:25 +02:00
Tom Payne
0392d898c3 Merge pull request #56 from twpayne/interaction-conditions
Abstract out key conditions for interactions, fixes #51, see also #54
2012-10-12 11:04:12 -07:00
Éric Lemoine
0b411ad69c Have disposeInternal call parent 2012-10-11 17:46:22 +02:00
Éric Lemoine
dc491f9114 disposeInternal implementation for ol.Map 2012-10-10 20:24:18 +02:00
Tom Payne
8df0cfb9d9 Abstract out key conditions for interactions, fixes #51, see also #54 2012-10-08 12:55:20 +02:00
Tom Payne
9d253ab6bb Refactor exports and externs 2012-10-04 15:11:26 +02:00
Frederic Junod
e700ed99be Travese the interaction array in reverse order.
The interactions added via getInteractions().push(...) are evaluated
first.
2012-10-03 16:52:38 +02:00
Frederic Junod
488a8224c3 Remove interactions from MapProperty 2012-10-03 11:39:04 +02:00
Tom Payne
5a51087526 Re-order declarations for clarity, thanks @elemoine 2012-09-30 15:18:16 +02:00
Tim Schaub
0e27f31785 Avoid undefined rotation 2012-09-29 17:47:44 -06:00
Tom Payne
1a5375fa51 Move target container in to map options 2012-09-29 13:58:15 +02:00
Tom Payne
71e42b2448 Refactor build system
This rather large commit refactors the build system to solve a number of
problems:
- Object literal types are now declared in just one place
- There are no more circular dependencies
- There is no need for concealed subclasses in build-standalone mode

When building in standalone mode, you need to include the source in
build/src/external.  This declares object literal types as externs so
that their properties are not renamed.

When building with the application, you need to include the source in
build/src/internal.  This declares object literal types as typedefs so
that their properties can be renamed and removed.

Note also that ol.MapOptions has been merged into ol.Map, with some
renaming.
2012-09-29 11:51:53 +02:00
ahocevar
6b395cafb5 Stop click event, as previously promised
This should have gone in with 3910318f1b.
2012-09-28 16:47:54 +02:00
Tom Payne
0bf17f64f7 Initialize controls after map has been configured 2012-09-28 13:48:20 +02:00
ahocevar
3d62b67172 Introducing ol.overlay.Overlay and an overlayContainer
ol.overlay.Overlay can be used to bind DOM elements to a
coordinate on the map. It has positioning options to support
e.g. popups or image markers that have an anchor at the bottom
and an unknown size.

The overlayContainer stops propagation on mousedown and
touchstart events, so clicks and gestures on overlays don't
trigger any MapBrowserEvent. To make this work reliably, we now
only fire dblclick in mapbrowserevent.js when there was a
previous mousedown or touchstart. The default container for
controls is now the overlayContainer.
2012-09-28 13:01:56 +02:00
Tom Payne
e2e983728e Add controls to map 2012-09-28 12:52:54 +02:00
Tim Schaub
eb29e6a43c Using null instead of null or object or undefined 2012-09-28 12:08:21 +02:00
Tom Payne
7dbc70bcac Don't try to be too clever with size changes 2012-09-27 14:05:19 +02:00
Tom Payne
ac0e02039c s/POST_RENDER/POSTRENDER/ 2012-09-27 14:05:19 +02:00
Éric Lemoine
f78cad0d77 Merge pull request #27 from elemoine/constraints
Refactoring to make constraints work at the map level
2012-09-27 01:42:45 -07:00
ahocevar
1b18dbedb7 Dispatch MapBrowserEvent before interactions get it
By doing so, application event handlers can preventDefault on the event, and interactions won't get the event any more. This means that interactions are default behavior that can be prevented by application event handlers.
2012-09-27 09:54:16 +02:00
Éric Lemoine
cf20fd3e49 Replace map.zoomIn and map.zoomOut by map.zoom(delta) 2012-09-27 09:37:19 +02:00
Tom Payne
ccf8eb3c97 Don't pass viewport size monitor to ol.Map constructor 2012-09-27 09:36:55 +02:00
Éric Lemoine
79166dc1d6 Constraint objects moved to ol namespace from ol.interaction namespace 2012-09-27 00:10:54 +02:00
Éric Lemoine
b6bb05bf76 Refactoring to set the constraints to the map 2012-09-27 00:09:29 +02:00
Tom Payne
e7063953d7 Don't create a class for map options 2012-09-26 12:54:53 +02:00
Tom Payne
b73b2d12c4 Replace ol.createMap with friendlier ol.Map constructor 2012-09-26 12:54:53 +02:00
ahocevar
3bd204fb6a DragBox control provides visual shiftdragzoom feedback
Adding a new DragBox control and using it in the shiftdragzoom interaction to provide visual feedback of the zoom box. The control is nicely separated from the interaction - it only draws the box and does not perform any action.
2012-09-26 12:50:14 +02:00
Tom Payne
9f1743cb4d Remove unused @export tags 2012-09-26 11:28:26 +02:00
ahocevar
3c099a96b7 No longer tap-selecting elements on touch devices
This finalizes the effort to improve map browser event handling.
2012-09-25 19:32:08 +02:00
ahocevar
ce977e5364 Map browser event handling for touch devices
By handling click, dblckick and drag sequences in MapBrowserEvent, we can overcome closure issues with touch events. In particular, these issues were double drag events (from mousemove and touchmove) and a missing dblclick event on touch devices.
2012-09-25 17:28:01 +02:00
Tom Payne
b435ccc026 Satisfy gjslint 2012-09-25 10:26:10 +02:00