diff --git a/externs/oli.js b/externs/oli.js index a05d12fa0e..8c08fccd2b 100644 --- a/externs/oli.js +++ b/externs/oli.js @@ -17,7 +17,6 @@ oli.CollectionEvent; /** * The element that is added to or removed from the collection. * @type {*} - * @todo api */ oli.CollectionEvent.prototype.element; @@ -29,7 +28,6 @@ oli.DragBoxEvent; /** * @type {ol.Coordinate} - * @todo api */ oli.DragBoxEvent.prototype.coordinate; @@ -42,7 +40,6 @@ oli.DrawEvent; /** * The feature being drawn. * @type {ol.Feature} - * @todo api */ oli.DrawEvent.prototype.feature; @@ -63,21 +60,18 @@ oli.MapBrowserEvent; /** * @type {ol.Coordinate} - * @todo api */ oli.MapBrowserEvent.prototype.coordinate; /** * @type {Event} - * @todo api */ oli.MapBrowserEvent.prototype.originalEvent; /** * @type {ol.Pixel} - * @todo api */ oli.MapBrowserEvent.prototype.pixel; @@ -103,21 +97,18 @@ oli.interaction.DragAndDropEvent; /** * @type {Array.|undefined} - * @todo api */ oli.interaction.DragAndDropEvent.prototype.features; /** * @type {ol.proj.Projection|undefined} - * @todo api */ oli.interaction.DragAndDropEvent.prototype.projection; /** * @type {File} - * @todo api */ oli.interaction.DragAndDropEvent.prototype.file; @@ -130,14 +121,12 @@ oli.render.Event; * Canvas context. Only available when a Canvas renderer is used, null * otherwise. * @type {CanvasRenderingContext2D|null|undefined} - * @todo api */ oli.render.Event.prototype.context; /** * @type {olx.FrameState|undefined} - * @todo api */ oli.render.Event.prototype.frameState; @@ -145,7 +134,6 @@ oli.render.Event.prototype.frameState; /** * WebGL context. Only available when a WebGL renderer is used, null otherwise. * @type {ol.webgl.Context|null|undefined} - * @todo api */ oli.render.Event.prototype.glContext; @@ -153,7 +141,6 @@ oli.render.Event.prototype.glContext; /** * For canvas, this is an instance of {@link ol.render.canvas.Immediate}. * @type {ol.render.IVectorContext|undefined} - * @todo api */ oli.render.Event.prototype.vectorContext; @@ -166,6 +153,5 @@ oli.source.VectorEvent; /** * The feature being added or removed. * @type {ol.Feature} - * @todo api */ oli.source.VectorEvent.prototype.feature; diff --git a/externs/readme.md b/externs/readme.md index 9315b6b6c0..68253b3448 100644 --- a/externs/readme.md +++ b/externs/readme.md @@ -8,14 +8,14 @@ These two files are special externs that belong to ol3, and this document explai ### Prevent class properties from being renamed -For events, we make properties available to the application. Other than methods, which can be made available by just marking them with the `@api` annotation, properties are exported using `oli.js`: +For events, we make properties available to the application. Other than methods, which can be made available by just marking them with the `@api` annotation directly where they are defined, properties need to be added to `oli.js` in addition: + ```js /** @interface */ oli.MapBrowserEvent; /** * @type {ol.Coordinate} - * @todo api */ oli.MapBrowserEvent.prototype.coordinate; ``` @@ -32,6 +32,7 @@ ol.MapBrowserEvent = function(type, map, browserEvent, opt_frameState) { /** * @type {ol.Coordinate} + * @todo api */ this.coordinate = map.getEventCoordinate(this.originalEvent); diff --git a/src/ol/collection.js b/src/ol/collection.js index d3101fb36d..1c64540447 100644 --- a/src/ol/collection.js +++ b/src/ol/collection.js @@ -47,6 +47,7 @@ ol.CollectionEvent = function(type, opt_element, opt_target) { /** * The element that is added to or removed from the collection. * @type {*} + * @todo api */ this.element = opt_element; diff --git a/src/ol/interaction/draganddropinteraction.js b/src/ol/interaction/draganddropinteraction.js index a2e4547024..c3c1adc4c3 100644 --- a/src/ol/interaction/draganddropinteraction.js +++ b/src/ol/interaction/draganddropinteraction.js @@ -205,16 +205,19 @@ ol.interaction.DragAndDropEvent = /** * @type {Array.|undefined} + * @todo api */ this.features = opt_features; /** * @type {File} + * @todo api */ this.file = file; /** * @type {ol.proj.Projection|undefined} + * @todo api */ this.projection = opt_projection; diff --git a/src/ol/interaction/dragboxinteraction.js b/src/ol/interaction/dragboxinteraction.js index 67540e9647..c016f974b5 100644 --- a/src/ol/interaction/dragboxinteraction.js +++ b/src/ol/interaction/dragboxinteraction.js @@ -59,6 +59,7 @@ ol.DragBoxEvent = function(type, coordinate) { * The coordinate of the drag event. * @const * @type {ol.Coordinate} + * @todo api */ this.coordinate = coordinate; diff --git a/src/ol/interaction/drawinteraction.js b/src/ol/interaction/drawinteraction.js index 722b99cae6..f06df46bfd 100644 --- a/src/ol/interaction/drawinteraction.js +++ b/src/ol/interaction/drawinteraction.js @@ -56,6 +56,7 @@ ol.DrawEvent = function(type, feature) { /** * The feature being drawn. * @type {ol.Feature} + * @todo api */ this.feature = feature; diff --git a/src/ol/mapbrowserevent.js b/src/ol/mapbrowserevent.js index e2dfb5dab1..5704354ca3 100644 --- a/src/ol/mapbrowserevent.js +++ b/src/ol/mapbrowserevent.js @@ -41,16 +41,19 @@ ol.MapBrowserEvent = function(type, map, browserEvent, opt_frameState) { /** * @const * @type {Event} + * @todo api */ this.originalEvent = browserEvent.getBrowserEvent(); /** * @type {ol.Coordinate} + * @todo api */ this.coordinate = map.getEventCoordinate(this.originalEvent); /** * @type {ol.Pixel} + * @todo api */ this.pixel = map.getEventPixel(this.originalEvent); diff --git a/src/ol/render/renderevent.js b/src/ol/render/renderevent.js index 69ab5aedcc..a152b5d6fa 100644 --- a/src/ol/render/renderevent.js +++ b/src/ol/render/renderevent.js @@ -47,11 +47,13 @@ ol.render.Event = function( /** * @type {ol.render.IVectorContext|undefined} + * @todo api */ this.vectorContext = opt_vectorContext; /** * @type {olx.FrameState|undefined} + * @todo api */ this.frameState = opt_frameState; @@ -59,6 +61,7 @@ ol.render.Event = function( * Canvas context. Only available when a Canvas renderer is used, * null otherwise. * @type {CanvasRenderingContext2D|null|undefined} + * @todo api */ this.context = opt_context; @@ -66,6 +69,7 @@ ol.render.Event = function( * WebGL context. Only available when a WebGL renderer is used, null * otherwise. * @type {ol.webgl.Context|null|undefined} + * @todo api */ this.glContext = opt_glContext; diff --git a/src/ol/source/vectorsource.js b/src/ol/source/vectorsource.js index e16c38130b..92b726bb8f 100644 --- a/src/ol/source/vectorsource.js +++ b/src/ol/source/vectorsource.js @@ -404,6 +404,7 @@ ol.source.VectorEvent = function(type, opt_feature) { /** * The feature being added or removed. * @type {ol.Feature|undefined} + * @todo api */ this.feature = opt_feature;