Merge branch 'master' of github.com:systemed/potlatch2
[potlatch2.git] / net / systemeD / halcyon / connection / actions / ReplaceNodeWithNewAction.as
1 package net.systemeD.halcyon.connection.actions {
2
3     import net.systemeD.halcyon.connection.*;
4
5     /** Action that creates a new node, then replaces an existing one with the new one in all the ways and relations that that node was part of. */
6     public class ReplaceNodeWithNewAction extends ReplaceNodeAction {
7
8         private var connection:Connection;
9         private var lat:Number;
10         private var lon:Number;
11         private var tags:Object;
12
13         /**
14         * @param node The node we're getting rid of
15         * @param connection, lat, lon, tags: Properties to define the new node.
16         */
17         public function ReplaceNodeWithNewAction(node:Node, connection:Connection, lat:Number, lon:Number, tags:Object) {
18                         super(node,null);
19             this.connection = connection;
20             this.lat = lat;
21             this.lon = lon;
22             this.tags = tags;
23         }
24
25         /** Create new node, then as for ReplaceNodeAction.doAction() */
26         public override function doAction():uint {
27             replacement = connection.createNode(tags,lat,lon,push);
28                         return super.doAction();
29         }
30     }
31 }
32