Commit Graph

12721 Commits

Author SHA1 Message Date
ahocevar
7b56abdac7 Get rid of compiler warnings 2014-02-23 01:50:59 +01:00
ahocevar
696425af36 Documentation and cleanup 2014-02-21 22:49:33 +01:00
ahocevar
480a6a85ba Add trk serialization for ol.format.GPX 2014-02-21 20:27:04 +01:00
ahocevar
791cb2415b Simplify annotations 2014-02-21 20:22:44 +01:00
ahocevar
1354d8ce78 Added rte serialization for ol.format.GPX 2014-02-21 16:55:48 +01:00
ahocevar
13b4f07cd9 New makeChildrenAppender function and Node factory refactoring
The makeChildAppender function is used for adding a node of a
type with maxOccurs=1. For adding nodes of a type with
maxOccurs>1, the new makeChildrenAppender function was added.

With this new function, it turned out that more convenience for
creating node factories is required. The makeChildNodeFactory
function was renamed to makeSimpleNodeFactory, and it now can
create node factories where not only the namespace, but also the
node name can be fixed.
2014-02-21 16:55:05 +01:00
ahocevar
b4043398eb Added wpt serialization for ol.format.GPX 2014-02-21 07:18:42 +01:00
ahocevar
45860f4552 Framework for serializing structures to XML
This adds several helper functions for serializing to XML:

* ol.xml.serialize: Counterpart to ol.xml.parse. By splitting
  the serialization process up into a node factory and a node
  writer, note writers can easily be used for different
  namespaces.

* ol.xml.pushSerializeAndPop: Counterpart to
  ol.xml.pushParseAndPop.

* ol.xml.makeStructureNS: Works like ol.xml.createParsersNS,
  but works for arbitrary structures.

* ol.xml.makeChildAppender: If the top item of the stack has
  the new ol.xml.NodeStackItem type, this helper function
  can be used to create a serializer that appends the current
  node to its designated parent.

* ol.xml.makeChildNodeFactory: Creates a node factory which
  produces child nodes from an array of node names which are
  passed to ol.xml.serialize.

* ol.xml.makeSequence: A convenience function for creating
  xsd:sequence structures. Takes an object literal and an
  ordered list of the keys, and returns an array that can be
  passed as values to ol.xml.serialize.

* ol.xml.makeSimpleTypeWriter: Using e.g. the new write*TextNode
  functions from ol.format.XSD, this function creates a node
  writer that writes simple type nodes for values like strings
  or numbers.

The following commits will be using this new framework for
implementing ol.format.GPX.writeFeatures, and prose
documentation with instructions based on what was said above
will be added.
2014-02-21 07:18:36 +01:00
ahocevar
3463defd9c Merge pull request #1707 from ahocevar/css-transform-detection
CSS transform detection when DOM is ready
2014-02-16 02:47:02 +01:00
ahocevar
f3c099de8a Simplifying has2d and has3d check 2014-02-16 02:29:14 +01:00
ahocevar
91a736954d Properly cache the css transform support result 2014-02-15 17:37:37 +01:00
Tom Payne
1baf63cebe Merge pull request #1709 from twpayne/fix-immediate-text-style
Set text style in ol.render.canvas.Immediate
2014-02-15 16:14:57 +01:00
Tom Payne
a5fd5667b6 Set text style in ol.render.canvas.Immediate 2014-02-15 14:17:10 +01:00
ahocevar
81f7ea106b CSS transform detection when DOM is ready
The code to detect CSS transforms requires a DOM to append an
element to. By performing this action when first called instead
of unconditionally upon library load, we can load OpenLayers in
the document's head again.
2014-02-15 10:48:04 +01:00
Tim Schaub
a549df459b Merge pull request #1690 from tschaub/style
Accept a style option and provide setStyle and getStyle methods.
v3.0.0-beta.2
2014-02-14 13:44:15 -07:00
Bart van den Eijnden
d71ccf64b9 Merge pull request #1682 from bartvde/issue-1682
better description for function typedef's params and return (r=@ahocevar)
2014-02-14 15:41:47 +01:00
Bart van den Eijnden
87d651af04 Add documentation for API typedef functions 2014-02-14 15:32:12 +01:00
Antoine Abt
1970285066 Merge pull request #1704 from tonio/fix_fullscreen
Prevent OSX Safari to display distorted map
2014-02-14 13:55:28 +01:00
Antoine Abt
bb50d5936f Prevent OSX Safari to display distorded map 2014-02-14 11:32:00 +01:00
ahocevar
f5c80f40bd Merge pull request #1700 from ahocevar/document-browserfeature
Make ol.BrowserFeature appear in API docs
2014-02-14 11:05:28 +01:00
ahocevar
7c29fe974b Merge pull request #1693 from ahocevar/no-load-on-interacting
Do not load tiles while interacting
2014-02-13 23:29:00 +01:00
ahocevar
adad57d481 Make the default effectively truthy 2014-02-13 22:52:48 +01:00
ahocevar
aa5a08a377 No typecast needed 2014-02-13 22:29:20 +01:00
ahocevar
3cc1dad2e0 Make loading parameters configurable 2014-02-13 22:08:26 +01:00
ahocevar
877e881a52 Do not load tiles while interacting
Especially on mobile devices, loading just a single tile can
cause major janks. During animations, it is fine to just skip
frames. But during user interaction (e.g. dragging), a more
instant visual feedback is desirable.
2014-02-13 21:03:21 +01:00
ahocevar
0200ee4f48 Make ol.BrowserFeature appear in API docs 2014-02-13 21:00:57 +01:00
ahocevar
4d0d2500a2 Merge pull request #1699 from ahocevar/logo-position
Fix logo position in apps without Bootstrap
2014-02-13 20:54:09 +01:00
Tim Schaub
e9b4e42d84 Create anonymous functions in an execution context with limited scope 2014-02-13 10:49:01 -07:00
Tim Schaub
0ec5201f3a Documentation and exports 2014-02-13 10:37:10 -07:00
Tim Schaub
66d5d1d277 Export setStyle for vector layer 2014-02-13 10:25:17 -07:00
Tim Schaub
f4585331f2 Add setStyle and getStyle to ol.Feature
As with vector layers and feature overlays, feature style can be set by calling
setStyle.  Calling getStyle returns what was passed to setStyle.  Internally, we call getStyleFunction.
2014-02-13 10:25:17 -07:00
Tim Schaub
477c369f6c As with the vector layer, feature overlays have getStyle and setStyle 2014-02-13 10:25:17 -07:00
Tim Schaub
a1f714f7dc Add setStyle and getStyle methods to ol.layer.Vector
The setStyle method accepts a single style, an array of styles, or a style function.  The getStyle method returns what was set.  Internally, we use the getStyleFunction method which always returns a function.  When calling setStyle, a change event is dispatched (fixes #1671).
2014-02-13 10:25:17 -07:00
Tim Schaub
a185fc963d Tests for get/setStyleFunction
It would be nice to also test the following:

    it('does not return user set property with the same name', function() {
      var feature = new ol.Feature({
        whatever: 'some value',
        styleFunction: 'another value'
      });
      expect(feature.getStyleFunction()).to.be(undefined);
    });

Unfortunately, in uncompiled code (or if we export `setStyleFunction`) this does not work.  Same goes for user set `id` properties (this will set our internal `id_` property).  See #1672.
2014-02-13 10:25:17 -07:00
Tim Schaub
620a38d3e9 Avoid clashing with user property names
Features are records with any number of user set values.  Separate from this, we rely on feature properties like the feature identifier and feature style.  The two (user properties and our internal properties) should not be mixed.
2014-02-13 10:25:17 -07:00
Tim Schaub
10d5073732 Give the draw interaction a style option 2014-02-13 10:25:17 -07:00
Tim Schaub
76f6961f83 Delete style option before passing to base 2014-02-13 10:25:16 -07:00
Tim Schaub
c64c24d3dc Common code for creating a style function 2014-02-13 10:25:16 -07:00
Tim Schaub
6abb691224 Give feature overlays a style option 2014-02-13 10:25:16 -07:00
Tim Schaub
b309c44020 Give vector image source a style option 2014-02-13 10:25:16 -07:00
Tim Schaub
1072f6dfa7 Use style option in vector layer examples
Providing a styleFunction option still works because the layer property is still named styleFunction.
2014-02-13 10:25:16 -07:00
Tim Schaub
5c21f24df5 Add tests for vector layer 2014-02-13 10:25:16 -07:00
Tim Schaub
499ba4ac8f Add a style option for vector layers
This can be a single ol.style.Style, and array of styles, or a style function.
2014-02-13 10:25:16 -07:00
ahocevar
672fc681ec Fix logo position in apps without Bootstrap 2014-02-13 18:12:26 +01:00
Bart van den Eijnden
990a852d4f Merge pull request #1675 from bartvde/wmts-example-fix
WMTS example is broken (r=@twpayne)
2014-02-13 16:25:59 +01:00
Bart van den Eijnden
56a39e936f Use APOLLO imagery WMTS in the WMTS example 2014-02-13 16:14:39 +01:00
Tom Payne
03beeafc21 Merge pull request #1681 from twpayne/line-dash
Fix management of line dash state
2014-02-13 15:40:39 +01:00
Tom Payne
dfc57e9db4 Fix handling of line dash state in ol.render.canvas.Immediate 2014-02-13 15:30:04 +01:00
Tom Payne
32e527458b Merge pull request #1694 from twpayne/protocol-relative-url
Use protocol relative URL in tile sources
2014-02-13 15:26:38 +01:00
Tom Payne
c31d423717 Merge pull request #1695 from twpayne/fix-render-node-leak
Save replay group, even if empty
2014-02-13 15:25:56 +01:00