diff --git a/Vector-Editing.md b/Vector-Editing.md index af66cc5..7efd71d 100644 --- a/Vector-Editing.md +++ b/Vector-Editing.md @@ -2,12 +2,13 @@ Assumptions: * User created vector layers may have many thousands of features. During editing, it will be more efficient to frequently re-render a sketch layer with a subset of features involved in editing. * Users will want to edit features associated with raster layers (e.g. a WMS layer with an associated WFS feature type, or a XYZ layer paired with a RESTful feature service). + * A single control may work on touch and non-touch devices, but the optimal touch editing workflow will likely require a dedicated control. ## Controls ### `ol.control.Select` -(Could also be named `ol.control.SelectFeature` or the plural.) When active, this control allows users to select features by clicking or dragging (select in a box). Should allow addition to the current selection (shift-click, shift-drag), removal from the current selection (alt-click, alt-drag), and clearing of the current selection (click or drag outside a feature). Selected features are (generally) rendered with a different style than unselected features. +When active, this control allows users to select features by clicking or dragging (select in a box). Should allow addition to the current selection (shift-click, shift-drag), removal from the current selection (alt-click, alt-drag), and clearing of the current selection (click or drag outside a feature). Selected features are (generally) rendered with a different style than unselected features. The control should be configurable with an array of layers. The control should create an anchor/button element for toggling activation. @@ -15,7 +16,7 @@ The control should be configurable with an array of layers. The control should When activated, the control creates a new vector layer. This layer should have a property (e.g. `temp`) that indicates that it is temporary (so it will not be shown in things like a layer switcher). -When the user clicks or drags, the control calls `readFeatures` on all configured layers (see below for `readFeatures` discussion). The provided callbacks will be called with selected features (per layer). +When the user clicks or drags, the control calls `readFeatures` on all configured layers' sources (see below for `readFeatures` discussion). The provided callbacks will be called with selected features (per layer). For configured vector layers with selected features, the control calls `setRenderIntent('hidden', features)`. This signals to the layer that it should be re-rendered without the selected features.