Revision 38 org.gvsig.vectorediting/trunk/org.gvsig.vectorediting/org.gvsig.vectorediting.lib/org.gvsig.vectorediting.lib.prov/org.gvsig.vectorediting.lib.prov.insertpoint/src/main/java/org/gvsig/vectorediting/lib/prov/insertpoint/InsertPointEditingProvider.java

View differences:

InsertPointEditingProvider.java
6 6
 */
7 7
package org.gvsig.vectorediting.lib.prov.insertpoint;
8 8

  
9
import java.awt.geom.Point2D;
10
import java.util.HashMap;
9
import java.util.ArrayList;
11 10
import java.util.List;
12
import java.util.Map;
13 11

  
14 12
import org.gvsig.fmap.geom.Geometry;
15 13
import org.gvsig.fmap.geom.primitive.Point;
......
31 29
  private final static String PROVIDER_DESCRIPTION = "Inserts points on the view";
32 30

  
33 31
  private EditingServiceParameter point = new DefaultEditingServiceParameter(
34
      PROVIDER_NAME, PROVIDER_DESCRIPTION, EditingServiceParameter.TYPE_POINT, "Inserte un punto");
32
      PROVIDER_NAME, PROVIDER_DESCRIPTION, EditingServiceParameter.TYPE_POINT,
33
      "Inserte un punto");
35 34

  
36
  private Map<EditingServiceParameter, Object> values;
35
  private Point valuePoint;
37 36

  
38 37
  private FLyrVect layer;
39 38

  
40 39
  public InsertPointEditingProvider(ProviderServices services,
41 40
      DynObject parameters) {
42
    // TODO Auto-generated constructor stub
43 41
    super(services);
44 42
    this.layer = (FLyrVect) parameters
45 43
        .getDynValue(EditingProviderFactory.LAYER_FIELD);
......
50 48

  
51 49
  }
52 50

  
53
  public Geometry drawOperation(Point mousePosition) {
54
    // TODO Auto-generated method stub
51
  public Geometry draw(Point mousePosition) {
55 52
    return null;
56 53
  }
57 54

  
58
  public void stopEditingAndSave() {
59
    // TODO Auto-generated method stub
60

  
55
  public void stop(){
56
    
61 57
  }
62 58

  
63
  public void stopEditingAndDiscard() {
64
    // TODO Auto-generated method stub
65

  
66
  }
67

  
68 59
  private boolean isValidValue(EditingServiceParameter param, Object value) {
69
    // TODO Auto-generated method stub
70
    return true;
60
    return (value instanceof Point) ? true : false;
71 61
  }
72 62

  
73
  public EditingServiceParameter getNextParameter() {
74
    if (values.get(this.point) == null) {
63
  public EditingServiceParameter next() {
64
    if (valuePoint == null) {
75 65
      return this.point;
76 66
    }
77 67
    return null;
78 68
  }
79 69

  
80 70
  public List<EditingServiceParameter> getParameters() {
81
    // TODO Auto-generated method stub
82
    return null;
71
    List<EditingServiceParameter> list = new ArrayList<EditingServiceParameter>();
72
    list.add(point);
73
    return list;
83 74
  }
84 75

  
85
  public void setValueParameter(EditingServiceParameter param, Object value) {
86
    if(isValidValue(param, value)){
87
      values.put(param, value);
76
  public void value(Object value) {
77
    EditingServiceParameter param = next();
78
    if (isValidValue(param, value)) {
79
      this.valuePoint = (Point) value;
88 80
    }
89 81
  }
90 82

  
91
  public void finishOperation() {
92
    // TODO Auto-generated method stub
93
    Point value = (Point) values.get(point);
94
    Point geometry = createPoint(value.getX(), value.getY(),
83
  public void finish() {
84
    Point geometry = createPoint(valuePoint.getX(), valuePoint.getY(),
95 85
        layer.getFeatureStore());
96 86
    ((EditingProviderServices) getProviderServices())
97 87
        .insertGeometryIntoFeatureStore(geometry, layer.getFeatureStore());
98 88
  }
99 89

  
100 90
  public void start() {
101
    // TODO Auto-generated method stub
102
    this.values = new HashMap<EditingServiceParameter, Object>();
91
    this.valuePoint = null;
103 92
  }
104 93

  
105 94
  public String getName() {
106
    // TODO Auto-generated method stub
107 95
    return this.PROVIDER_NAME;
108 96
  }
109 97
}

Also available in: Unified diff