Merge pull request #6365 from gberaudo/public_enums_for_draw_modify_interactions

Make enums for draw and modify interactions public
This commit is contained in:
Frédéric Junod
2017-01-31 16:57:47 +01:00
committed by GitHub
8 changed files with 124 additions and 120 deletions
+24 -41
View File
@@ -4,6 +4,7 @@ goog.provide('ol.Geolocation');
goog.require('ol'); goog.require('ol');
goog.require('ol.Object'); goog.require('ol.Object');
goog.require('ol.GeolocationProperty');
goog.require('ol.events'); goog.require('ol.events');
goog.require('ol.events.EventType'); goog.require('ol.events.EventType');
goog.require('ol.geom.Polygon'); goog.require('ol.geom.Polygon');
@@ -65,10 +66,10 @@ ol.Geolocation = function(opt_options) {
this.watchId_ = undefined; this.watchId_ = undefined;
ol.events.listen( ol.events.listen(
this, ol.Object.getChangeEventType(ol.Geolocation.Property_.PROJECTION), this, ol.Object.getChangeEventType(ol.GeolocationProperty.PROJECTION),
this.handleProjectionChanged_, this); this.handleProjectionChanged_, this);
ol.events.listen( ol.events.listen(
this, ol.Object.getChangeEventType(ol.Geolocation.Property_.TRACKING), this, ol.Object.getChangeEventType(ol.GeolocationProperty.TRACKING),
this.handleTrackingChanged_, this); this.handleTrackingChanged_, this);
if (options.projection !== undefined) { if (options.projection !== undefined) {
@@ -103,7 +104,7 @@ ol.Geolocation.prototype.handleProjectionChanged_ = function() {
ol.proj.get('EPSG:4326'), projection); ol.proj.get('EPSG:4326'), projection);
if (this.position_) { if (this.position_) {
this.set( this.set(
ol.Geolocation.Property_.POSITION, this.transform_(this.position_)); ol.GeolocationProperty.POSITION, this.transform_(this.position_));
} }
} }
}; };
@@ -134,13 +135,13 @@ ol.Geolocation.prototype.handleTrackingChanged_ = function() {
*/ */
ol.Geolocation.prototype.positionChange_ = function(position) { ol.Geolocation.prototype.positionChange_ = function(position) {
var coords = position.coords; var coords = position.coords;
this.set(ol.Geolocation.Property_.ACCURACY, coords.accuracy); this.set(ol.GeolocationProperty.ACCURACY, coords.accuracy);
this.set(ol.Geolocation.Property_.ALTITUDE, this.set(ol.GeolocationProperty.ALTITUDE,
coords.altitude === null ? undefined : coords.altitude); coords.altitude === null ? undefined : coords.altitude);
this.set(ol.Geolocation.Property_.ALTITUDE_ACCURACY, this.set(ol.GeolocationProperty.ALTITUDE_ACCURACY,
coords.altitudeAccuracy === null ? coords.altitudeAccuracy === null ?
undefined : coords.altitudeAccuracy); undefined : coords.altitudeAccuracy);
this.set(ol.Geolocation.Property_.HEADING, coords.heading === null ? this.set(ol.GeolocationProperty.HEADING, coords.heading === null ?
undefined : ol.math.toRadians(coords.heading)); undefined : ol.math.toRadians(coords.heading));
if (!this.position_) { if (!this.position_) {
this.position_ = [coords.longitude, coords.latitude]; this.position_ = [coords.longitude, coords.latitude];
@@ -149,13 +150,13 @@ ol.Geolocation.prototype.positionChange_ = function(position) {
this.position_[1] = coords.latitude; this.position_[1] = coords.latitude;
} }
var projectedPosition = this.transform_(this.position_); var projectedPosition = this.transform_(this.position_);
this.set(ol.Geolocation.Property_.POSITION, projectedPosition); this.set(ol.GeolocationProperty.POSITION, projectedPosition);
this.set(ol.Geolocation.Property_.SPEED, this.set(ol.GeolocationProperty.SPEED,
coords.speed === null ? undefined : coords.speed); coords.speed === null ? undefined : coords.speed);
var geometry = ol.geom.Polygon.circular( var geometry = ol.geom.Polygon.circular(
ol.sphere.WGS84, this.position_, coords.accuracy); ol.sphere.WGS84, this.position_, coords.accuracy);
geometry.applyTransform(this.transform_); geometry.applyTransform(this.transform_);
this.set(ol.Geolocation.Property_.ACCURACY_GEOMETRY, geometry); this.set(ol.GeolocationProperty.ACCURACY_GEOMETRY, geometry);
this.changed(); this.changed();
}; };
@@ -185,7 +186,7 @@ ol.Geolocation.prototype.positionError_ = function(error) {
*/ */
ol.Geolocation.prototype.getAccuracy = function() { ol.Geolocation.prototype.getAccuracy = function() {
return /** @type {number|undefined} */ ( return /** @type {number|undefined} */ (
this.get(ol.Geolocation.Property_.ACCURACY)); this.get(ol.GeolocationProperty.ACCURACY));
}; };
@@ -197,7 +198,7 @@ ol.Geolocation.prototype.getAccuracy = function() {
*/ */
ol.Geolocation.prototype.getAccuracyGeometry = function() { ol.Geolocation.prototype.getAccuracyGeometry = function() {
return /** @type {?ol.geom.Geometry} */ ( return /** @type {?ol.geom.Geometry} */ (
this.get(ol.Geolocation.Property_.ACCURACY_GEOMETRY) || null); this.get(ol.GeolocationProperty.ACCURACY_GEOMETRY) || null);
}; };
@@ -210,7 +211,7 @@ ol.Geolocation.prototype.getAccuracyGeometry = function() {
*/ */
ol.Geolocation.prototype.getAltitude = function() { ol.Geolocation.prototype.getAltitude = function() {
return /** @type {number|undefined} */ ( return /** @type {number|undefined} */ (
this.get(ol.Geolocation.Property_.ALTITUDE)); this.get(ol.GeolocationProperty.ALTITUDE));
}; };
@@ -223,7 +224,7 @@ ol.Geolocation.prototype.getAltitude = function() {
*/ */
ol.Geolocation.prototype.getAltitudeAccuracy = function() { ol.Geolocation.prototype.getAltitudeAccuracy = function() {
return /** @type {number|undefined} */ ( return /** @type {number|undefined} */ (
this.get(ol.Geolocation.Property_.ALTITUDE_ACCURACY)); this.get(ol.GeolocationProperty.ALTITUDE_ACCURACY));
}; };
@@ -235,7 +236,7 @@ ol.Geolocation.prototype.getAltitudeAccuracy = function() {
*/ */
ol.Geolocation.prototype.getHeading = function() { ol.Geolocation.prototype.getHeading = function() {
return /** @type {number|undefined} */ ( return /** @type {number|undefined} */ (
this.get(ol.Geolocation.Property_.HEADING)); this.get(ol.GeolocationProperty.HEADING));
}; };
@@ -248,7 +249,7 @@ ol.Geolocation.prototype.getHeading = function() {
*/ */
ol.Geolocation.prototype.getPosition = function() { ol.Geolocation.prototype.getPosition = function() {
return /** @type {ol.Coordinate|undefined} */ ( return /** @type {ol.Coordinate|undefined} */ (
this.get(ol.Geolocation.Property_.POSITION)); this.get(ol.GeolocationProperty.POSITION));
}; };
@@ -261,7 +262,7 @@ ol.Geolocation.prototype.getPosition = function() {
*/ */
ol.Geolocation.prototype.getProjection = function() { ol.Geolocation.prototype.getProjection = function() {
return /** @type {ol.proj.Projection|undefined} */ ( return /** @type {ol.proj.Projection|undefined} */ (
this.get(ol.Geolocation.Property_.PROJECTION)); this.get(ol.GeolocationProperty.PROJECTION));
}; };
@@ -274,7 +275,7 @@ ol.Geolocation.prototype.getProjection = function() {
*/ */
ol.Geolocation.prototype.getSpeed = function() { ol.Geolocation.prototype.getSpeed = function() {
return /** @type {number|undefined} */ ( return /** @type {number|undefined} */ (
this.get(ol.Geolocation.Property_.SPEED)); this.get(ol.GeolocationProperty.SPEED));
}; };
@@ -286,7 +287,7 @@ ol.Geolocation.prototype.getSpeed = function() {
*/ */
ol.Geolocation.prototype.getTracking = function() { ol.Geolocation.prototype.getTracking = function() {
return /** @type {boolean} */ ( return /** @type {boolean} */ (
this.get(ol.Geolocation.Property_.TRACKING)); this.get(ol.GeolocationProperty.TRACKING));
}; };
@@ -301,7 +302,7 @@ ol.Geolocation.prototype.getTracking = function() {
*/ */
ol.Geolocation.prototype.getTrackingOptions = function() { ol.Geolocation.prototype.getTrackingOptions = function() {
return /** @type {GeolocationPositionOptions|undefined} */ ( return /** @type {GeolocationPositionOptions|undefined} */ (
this.get(ol.Geolocation.Property_.TRACKING_OPTIONS)); this.get(ol.GeolocationProperty.TRACKING_OPTIONS));
}; };
@@ -313,7 +314,7 @@ ol.Geolocation.prototype.getTrackingOptions = function() {
* @api stable * @api stable
*/ */
ol.Geolocation.prototype.setProjection = function(projection) { ol.Geolocation.prototype.setProjection = function(projection) {
this.set(ol.Geolocation.Property_.PROJECTION, projection); this.set(ol.GeolocationProperty.PROJECTION, projection);
}; };
@@ -324,7 +325,7 @@ ol.Geolocation.prototype.setProjection = function(projection) {
* @api stable * @api stable
*/ */
ol.Geolocation.prototype.setTracking = function(tracking) { ol.Geolocation.prototype.setTracking = function(tracking) {
this.set(ol.Geolocation.Property_.TRACKING, tracking); this.set(ol.GeolocationProperty.TRACKING, tracking);
}; };
@@ -338,23 +339,5 @@ ol.Geolocation.prototype.setTracking = function(tracking) {
* @api stable * @api stable
*/ */
ol.Geolocation.prototype.setTrackingOptions = function(options) { ol.Geolocation.prototype.setTrackingOptions = function(options) {
this.set(ol.Geolocation.Property_.TRACKING_OPTIONS, options); this.set(ol.GeolocationProperty.TRACKING_OPTIONS, options);
};
/**
* @enum {string}
* @private
*/
ol.Geolocation.Property_ = {
ACCURACY: 'accuracy',
ACCURACY_GEOMETRY: 'accuracyGeometry',
ALTITUDE: 'altitude',
ALTITUDE_ACCURACY: 'altitudeAccuracy',
HEADING: 'heading',
POSITION: 'position',
PROJECTION: 'projection',
SPEED: 'speed',
TRACKING: 'tracking',
TRACKING_OPTIONS: 'trackingOptions'
}; };
+18
View File
@@ -0,0 +1,18 @@
goog.provide('ol.GeolocationProperty');
/**
* @enum {string}
*/
ol.GeolocationProperty = {
ACCURACY: 'accuracy',
ACCURACY_GEOMETRY: 'accuracyGeometry',
ALTITUDE: 'altitude',
ALTITUDE_ACCURACY: 'altitudeAccuracy',
HEADING: 'heading',
POSITION: 'position',
PROJECTION: 'projection',
SPEED: 'speed',
TRACKING: 'tracking',
TRACKING_OPTIONS: 'trackingOptions'
};
+6 -25
View File
@@ -18,6 +18,7 @@ goog.require('ol.geom.MultiPoint');
goog.require('ol.geom.MultiPolygon'); goog.require('ol.geom.MultiPolygon');
goog.require('ol.geom.Point'); goog.require('ol.geom.Point');
goog.require('ol.geom.Polygon'); goog.require('ol.geom.Polygon');
goog.require('ol.interaction.DrawEventType');
goog.require('ol.interaction.Pointer'); goog.require('ol.interaction.Pointer');
goog.require('ol.interaction.Property'); goog.require('ol.interaction.Property');
goog.require('ol.layer.Vector'); goog.require('ol.layer.Vector');
@@ -483,7 +484,7 @@ ol.interaction.Draw.prototype.startDrawing_ = function(event) {
this.sketchFeature_.setGeometry(geometry); this.sketchFeature_.setGeometry(geometry);
this.updateSketchFeatures_(); this.updateSketchFeatures_();
this.dispatchEvent(new ol.interaction.Draw.Event( this.dispatchEvent(new ol.interaction.Draw.Event(
ol.interaction.Draw.EventType_.DRAWSTART, this.sketchFeature_)); ol.interaction.DrawEventType.DRAWSTART, this.sketchFeature_));
}; };
@@ -609,7 +610,7 @@ ol.interaction.Draw.prototype.removeLastPoint = function() {
/** /**
* Stop drawing and add the sketch feature to the target layer. * Stop drawing and add the sketch feature to the target layer.
* The {@link ol.interaction.Draw.EventType_.DRAWEND} event is dispatched before * The {@link ol.interaction.DrawEventType.DRAWEND} event is dispatched before
* inserting the feature. * inserting the feature.
* @api * @api
*/ */
@@ -639,7 +640,7 @@ ol.interaction.Draw.prototype.finishDrawing = function() {
// First dispatch event to allow full set up of feature // First dispatch event to allow full set up of feature
this.dispatchEvent(new ol.interaction.Draw.Event( this.dispatchEvent(new ol.interaction.Draw.Event(
ol.interaction.Draw.EventType_.DRAWEND, sketchFeature)); ol.interaction.DrawEventType.DRAWEND, sketchFeature));
// Then insert feature // Then insert feature
if (this.features_) { if (this.features_) {
@@ -686,7 +687,7 @@ ol.interaction.Draw.prototype.extend = function(feature) {
this.sketchCoords_.push(last.slice()); this.sketchCoords_.push(last.slice());
this.updateSketchFeatures_(); this.updateSketchFeatures_();
this.dispatchEvent(new ol.interaction.Draw.Event( this.dispatchEvent(new ol.interaction.Draw.Event(
ol.interaction.Draw.EventType_.DRAWSTART, this.sketchFeature_)); ol.interaction.DrawEventType.DRAWSTART, this.sketchFeature_));
}; };
@@ -842,7 +843,7 @@ ol.interaction.Draw.Mode_ = {
* @constructor * @constructor
* @extends {ol.events.Event} * @extends {ol.events.Event}
* @implements {oli.DrawEvent} * @implements {oli.DrawEvent}
* @param {ol.interaction.Draw.EventType_} type Type. * @param {ol.interaction.DrawEventType} type Type.
* @param {ol.Feature} feature The feature drawn. * @param {ol.Feature} feature The feature drawn.
*/ */
ol.interaction.Draw.Event = function(type, feature) { ol.interaction.Draw.Event = function(type, feature) {
@@ -858,23 +859,3 @@ ol.interaction.Draw.Event = function(type, feature) {
}; };
ol.inherits(ol.interaction.Draw.Event, ol.events.Event); ol.inherits(ol.interaction.Draw.Event, ol.events.Event);
/**
* @enum {string}
* @private
*/
ol.interaction.Draw.EventType_ = {
/**
* Triggered upon feature draw start
* @event ol.interaction.Draw.Event#drawstart
* @api stable
*/
DRAWSTART: 'drawstart',
/**
* Triggered upon feature draw end
* @event ol.interaction.Draw.Event#drawend
* @api stable
*/
DRAWEND: 'drawend'
};
+20
View File
@@ -0,0 +1,20 @@
goog.provide('ol.interaction.DrawEventType');
/**
* @enum {string}
*/
ol.interaction.DrawEventType = {
/**
* Triggered upon feature draw start
* @event ol.interaction.Draw.Event#drawstart
* @api stable
*/
DRAWSTART: 'drawstart',
/**
* Triggered upon feature draw end
* @event ol.interaction.Draw.Event#drawend
* @api stable
*/
DRAWEND: 'drawend'
};
+5 -24
View File
@@ -15,6 +15,7 @@ goog.require('ol.events.condition');
goog.require('ol.extent'); goog.require('ol.extent');
goog.require('ol.geom.GeometryType'); goog.require('ol.geom.GeometryType');
goog.require('ol.geom.Point'); goog.require('ol.geom.Point');
goog.require('ol.interaction.ModifyEventType');
goog.require('ol.interaction.Pointer'); goog.require('ol.interaction.Pointer');
goog.require('ol.layer.Vector'); goog.require('ol.layer.Vector');
goog.require('ol.source.Vector'); goog.require('ol.source.Vector');
@@ -214,7 +215,7 @@ ol.interaction.Modify.prototype.willModifyFeatures_ = function(evt) {
if (!this.modified_) { if (!this.modified_) {
this.modified_ = true; this.modified_ = true;
this.dispatchEvent(new ol.interaction.Modify.Event( this.dispatchEvent(new ol.interaction.Modify.Event(
ol.interaction.Modify.EventType_.MODIFYSTART, this.features_, evt)); ol.interaction.ModifyEventType.MODIFYSTART, this.features_, evt));
} }
}; };
@@ -633,7 +634,7 @@ ol.interaction.Modify.handleUpEvent_ = function(evt) {
} }
if (this.modified_) { if (this.modified_) {
this.dispatchEvent(new ol.interaction.Modify.Event( this.dispatchEvent(new ol.interaction.Modify.Event(
ol.interaction.Modify.EventType_.MODIFYEND, this.features_, evt)); ol.interaction.ModifyEventType.MODIFYEND, this.features_, evt));
this.modified_ = false; this.modified_ = false;
} }
return false; return false;
@@ -828,7 +829,7 @@ ol.interaction.Modify.prototype.removePoint = function() {
this.willModifyFeatures_(evt); this.willModifyFeatures_(evt);
this.removeVertex_(); this.removeVertex_();
this.dispatchEvent(new ol.interaction.Modify.Event( this.dispatchEvent(new ol.interaction.Modify.Event(
ol.interaction.Modify.EventType_.MODIFYEND, this.features_, evt)); ol.interaction.ModifyEventType.MODIFYEND, this.features_, evt));
this.modified_ = false; this.modified_ = false;
return true; return true;
} }
@@ -1004,7 +1005,7 @@ ol.interaction.Modify.getDefaultStyleFunction = function() {
* @constructor * @constructor
* @extends {ol.events.Event} * @extends {ol.events.Event}
* @implements {oli.ModifyEvent} * @implements {oli.ModifyEvent}
* @param {ol.interaction.Modify.EventType_} type Type. * @param {ol.interaction.ModifyEventType} type Type.
* @param {ol.Collection.<ol.Feature>} features The features modified. * @param {ol.Collection.<ol.Feature>} features The features modified.
* @param {ol.MapBrowserPointerEvent} mapBrowserPointerEvent Associated * @param {ol.MapBrowserPointerEvent} mapBrowserPointerEvent Associated
* {@link ol.MapBrowserPointerEvent}. * {@link ol.MapBrowserPointerEvent}.
@@ -1028,23 +1029,3 @@ ol.interaction.Modify.Event = function(type, features, mapBrowserPointerEvent) {
this.mapBrowserEvent = mapBrowserPointerEvent; this.mapBrowserEvent = mapBrowserPointerEvent;
}; };
ol.inherits(ol.interaction.Modify.Event, ol.events.Event); ol.inherits(ol.interaction.Modify.Event, ol.events.Event);
/**
* @enum {string}
* @private
*/
ol.interaction.Modify.EventType_ = {
/**
* Triggered upon feature modification start
* @event ol.interaction.Modify.Event#modifystart
* @api
*/
MODIFYSTART: 'modifystart',
/**
* Triggered upon feature modification end
* @event ol.interaction.Modify.Event#modifyend
* @api
*/
MODIFYEND: 'modifyend'
};
+20
View File
@@ -0,0 +1,20 @@
goog.provide('ol.interaction.ModifyEventType');
/**
* @enum {string}
*/
ol.interaction.ModifyEventType = {
/**
* Triggered upon feature modification start
* @event ol.interaction.Modify.Event#modifystart
* @api
*/
MODIFYSTART: 'modifystart',
/**
* Triggered upon feature modification end
* @event ol.interaction.Modify.Event#modifyend
* @api
*/
MODIFYEND: 'modifyend'
};
+5 -30
View File
@@ -6,6 +6,7 @@ goog.require('ol.events.Event');
goog.require('ol.functions'); goog.require('ol.functions');
goog.require('ol.array'); goog.require('ol.array');
goog.require('ol.interaction.Pointer'); goog.require('ol.interaction.Pointer');
goog.require('ol.interaction.TranslateEventType');
/** /**
@@ -101,7 +102,7 @@ ol.interaction.Translate.handleDownEvent_ = function(event) {
this.dispatchEvent( this.dispatchEvent(
new ol.interaction.Translate.Event( new ol.interaction.Translate.Event(
ol.interaction.Translate.EventType_.TRANSLATESTART, features, ol.interaction.TranslateEventType.TRANSLATESTART, features,
event.coordinate)); event.coordinate));
return true; return true;
} }
@@ -124,7 +125,7 @@ ol.interaction.Translate.handleUpEvent_ = function(event) {
this.dispatchEvent( this.dispatchEvent(
new ol.interaction.Translate.Event( new ol.interaction.Translate.Event(
ol.interaction.Translate.EventType_.TRANSLATEEND, features, ol.interaction.TranslateEventType.TRANSLATEEND, features,
event.coordinate)); event.coordinate));
return true; return true;
} }
@@ -154,7 +155,7 @@ ol.interaction.Translate.handleDragEvent_ = function(event) {
this.lastCoordinate_ = newCoordinate; this.lastCoordinate_ = newCoordinate;
this.dispatchEvent( this.dispatchEvent(
new ol.interaction.Translate.Event( new ol.interaction.Translate.Event(
ol.interaction.Translate.EventType_.TRANSLATING, features, ol.interaction.TranslateEventType.TRANSLATING, features,
newCoordinate)); newCoordinate));
} }
}; };
@@ -240,7 +241,7 @@ ol.interaction.Translate.prototype.setHitTolerance = function(hitTolerance) {
* @constructor * @constructor
* @extends {ol.events.Event} * @extends {ol.events.Event}
* @implements {oli.interaction.TranslateEvent} * @implements {oli.interaction.TranslateEvent}
* @param {ol.interaction.Translate.EventType_} type Type. * @param {ol.interaction.TranslateEventType} type Type.
* @param {ol.Collection.<ol.Feature>} features The features translated. * @param {ol.Collection.<ol.Feature>} features The features translated.
* @param {ol.Coordinate} coordinate The event coordinate. * @param {ol.Coordinate} coordinate The event coordinate.
*/ */
@@ -264,29 +265,3 @@ ol.interaction.Translate.Event = function(type, features, coordinate) {
this.coordinate = coordinate; this.coordinate = coordinate;
}; };
ol.inherits(ol.interaction.Translate.Event, ol.events.Event); ol.inherits(ol.interaction.Translate.Event, ol.events.Event);
/**
* @enum {string}
* @private
*/
ol.interaction.Translate.EventType_ = {
/**
* Triggered upon feature translation start.
* @event ol.interaction.Translate.Event#translatestart
* @api
*/
TRANSLATESTART: 'translatestart',
/**
* Triggered upon feature translation.
* @event ol.interaction.Translate.Event#translating
* @api
*/
TRANSLATING: 'translating',
/**
* Triggered upon feature translation end.
* @event ol.interaction.Translate.Event#translateend
* @api
*/
TRANSLATEEND: 'translateend'
};
+26
View File
@@ -0,0 +1,26 @@
goog.provide('ol.interaction.TranslateEventType');
/**
* @enum {string}
*/
ol.interaction.TranslateEventType = {
/**
* Triggered upon feature translation start.
* @event ol.interaction.Translate.Event#translatestart
* @api
*/
TRANSLATESTART: 'translatestart',
/**
* Triggered upon feature translation.
* @event ol.interaction.Translate.Event#translating
* @api
*/
TRANSLATING: 'translating',
/**
* Triggered upon feature translation end.
* @event ol.interaction.Translate.Event#translateend
* @api
*/
TRANSLATEEND: 'translateend'
};