Merge branch 'master' of https://github.com/systemed/potlatch2 into drawquad
authorRichard Fairhurst <richard@systemeD.net>
Tue, 5 Apr 2011 14:18:31 +0000 (15:18 +0100)
committerRichard Fairhurst <richard@systemeD.net>
Tue, 5 Apr 2011 14:18:31 +0000 (15:18 +0100)
69 files changed:
CODING.txt
TODO.txt
build.xml
l10n/locale/de_DE/help_dialog.properties [new file with mode: 0644]
l10n/locale/de_DE/p2_main.properties [new file with mode: 0644]
l10n/locale/en_GB/p2_main.properties
l10n/locale/en_US/p2_main.properties
l10n/locale/fr_FR/p2_main.properties
l10n/locale/pl_PL/help_dialog.properties [new file with mode: 0644]
l10n/locale/pl_PL/p2_main.properties [new file with mode: 0644]
l10n/map/LocalizationMap.mxml
lib/Framework_BabelFx-g400a96.swc [new file with mode: 0644]
lib/Framework_BabelFx.swc [deleted file]
net/systemeD/controls/AutoComplete.as
net/systemeD/halcyon/NodeUI.as
net/systemeD/halcyon/connection/Relation.as
net/systemeD/halcyon/connection/XMLConnection.as
net/systemeD/halcyon/connection/actions/AddMemberToRelationAction.as
net/systemeD/halcyon/connection/actions/SetTagAction.as
net/systemeD/potlatch2/TagGrid.mxml
net/systemeD/potlatch2/TagViewer.mxml
net/systemeD/potlatch2/Toolbox.mxml
net/systemeD/potlatch2/controller/ControllerState.as
net/systemeD/potlatch2/save/SaveDialog.mxml
potlatch2.mxml
resources/features/pois/amenity_vendingmachine.png [deleted file]
resources/features/pois/barrier_generic.24.png [deleted file]
resources/features/pois/boat-launch-24.png [deleted file]
resources/features/pois/power_substation.n.24.png [new file with mode: 0644]
resources/features/pois/power_tower_high2.n.24.png [new file with mode: 0644]
resources/features/pois/power_tower_low.n.24.png [new file with mode: 0644]
resources/features/pois/power_transformer.n.24.png [new file with mode: 0644]
resources/features/pois/shopping_kiosk.n.24.png [new file with mode: 0644]
resources/features/pois/shopping_marketplace.n.24.png [new file with mode: 0644]
resources/features/pois/shopping_toy.n.24.png [deleted file]
resources/features/pois/shopping_toys.n.24.png [new file with mode: 0644]
resources/features/pois/shopping_vending_machine.n.24.png [new file with mode: 0644]
resources/features/pois/sport_shooting.n.24.png
resources/features/pois/sport_stadium.n.24.png [new file with mode: 0644]
resources/features/pois/transport_mini_roundabout.n.24.png [deleted file]
resources/features/pois/transport_miniroundabout_anticlockwise.n.24.png [new file with mode: 0644]
resources/features/pois/transport_slipway.n.24.png
resources/features/pois/transport_speedbump.n.24.png [new file with mode: 0644]
resources/features/pois/water_generic.24.png [deleted file]
resources/icons/bollard.png [deleted file]
resources/icons/power_blank.png [deleted file]
resources/icons/power_pole_24.png [deleted file]
resources/icons/power_tower_24.png [deleted file]
resources/icons/tourist_blank.png [deleted file]
resources/icons/transport_airport_48.png [deleted file]
resources/icons/transport_blank.png [deleted file]
resources/icons/transport_helipad_48.png [deleted file]
resources/map_features/amenities.xml
resources/map_features/buildings.xml
resources/map_features/landuse.xml
resources/map_features/power.xml
resources/map_features/roads.xml
resources/map_features/shopping.xml
resources/stylesheets/opencyclemap.css
resources_src/amenity_vendingmachine.svg [deleted file]
resources_src/sport_shooting.svg [deleted file]
resources_src/transport_mini_roundabout.svg [deleted file]
resources_src/transport_slipway.svg [deleted file]
resources_src/transport_traffic_calming.svg [deleted file]
resources_src/water_generic.svg [deleted file]
tests/src/AllHalcyonTests.as
tests/src/net/systemeD/halcyon/connection/actions/AddMemberToRelationActionTest.as [new file with mode: 0644]
tests/src/net/systemeD/halcyon/connection/actions/SetTagActionTest.as [new file with mode: 0644]
version.as.template

index 30a4c22ee8efc56a1be855128ba9a5fe5e4cd6a1..4cb2fb27594b95f8f96906305ecf27138eac8b4f 100644 (file)
@@ -46,3 +46,7 @@ package net.systemed.potlatch2.indentation {
 * Way icons for map_features are 75x45 and have up to now generally been drawn by Richard (see way_icons.ai)
 * All features must have a unique icon, and all icons must be in the correct style. Do not add a feature without a matching icon.
 * Only deployable files go in resources/ . Vector source files go in resources_src/
+
+== babelFx ==
+
+* Currently using forked version from https://github.com/gravitystorm/l10n_Injection
index f83d73244eb9f311d11bba9c92fe49327995334d..91b3fe81946d869830ff278aaca20177e12820b8 100644 (file)
--- a/TODO.txt
+++ b/TODO.txt
@@ -69,6 +69,9 @@ Potlatch 2: main outstanding issues
 == Reverse Button ==
 * Doesn't look like a button
 
+== l10n ==
+* Fix the en_US / default locale problem
+
 Requested enhancements
 ----------------------
 
index f335490ab5a4dec90c0596838e1c1eaf4a790cad..19b91a5a218b1fead6a01be5e570b3509b13412d 100644 (file)
--- a/build.xml
+++ b/build.xml
     <compileLocale locale="en_US" />
     <compileLocale locale="en_GB" />
     <compileLocale locale="fr_FR" />
+    <compileLocale locale="de_DE" />
+    <compileLocale locale="pl_PL" />
   </target>
 
 
     <deployLocale locale="en_US" />
     <deployLocale locale="en_GB" />
     <deployLocale locale="fr_FR" />
+    <deployLocale locale="de_DE" />
+    <deployLocale locale="pl_PL" />
   </target>
 
 </project>
diff --git a/l10n/locale/de_DE/help_dialog.properties b/l10n/locale/de_DE/help_dialog.properties
new file mode 100644 (file)
index 0000000..369a9e4
--- /dev/null
@@ -0,0 +1,4 @@
+# de resources file
+
+help.gettingStarted = So geht's los
+help.welcome = Willkommen
diff --git a/l10n/locale/de_DE/p2_main.properties b/l10n/locale/de_DE/p2_main.properties
new file mode 100644 (file)
index 0000000..f179e69
--- /dev/null
@@ -0,0 +1,25 @@
+# de resources file
+
+main.undo = Rückgängig
+main.redo = Wiederholen
+main.background = Hintergrund
+main.map_style = Map-Stil
+main.gps_data = GPS-Daten
+main.my_tracks = Meine Tracks
+main.help = Hilfe
+main.options = Optionen
+main.save = Speichern
+
+tag_viewer.dndprompt = Neue Punkte durch Ziehen auf die Karte hinzufügen
+
+toolbox.delete_node = Knoten löschen (Entf)
+toolbox.delete_area = Fläche löschen (Umsch+Entf)
+toolbox.delete_way = Weg löschen (Umsch+Entf)
+toolbox.delete_item = Objekt löschen
+toolbox.reverse_direction = Richtung umkehren (V)
+toolbox.split_way = Weg teilen (X)
+toolbox.merge_ways = Wege verbinden
+toolbox.straighten_way = Weg begradigen
+toolbox.make_circular = Kreisförmig anordnen
+toolbox.make_right_angled = Rechtwinklig anordnen (Q)
+toolbox.create_parrallel_way = Parallelen Weg erstellen (P)
\ No newline at end of file
index 3ab35931733c27c7110c6bd5fc60439bb6da3d8c..5093576fe7b1faba55897e65efe62a0bef35677a 100644 (file)
@@ -2,3 +2,24 @@
 
 main.undo = Undo
 main.redo = Redo
+main.background = Background
+main.map_style = Map Style
+main.gps_data = GPS Data
+main.my_tracks = My Tracks
+main.help = Help
+main.options = Options
+main.save = Save
+
+tag_viewer.dndprompt = Add new points by dragging them onto the map
+
+toolbox.delete_node = Delete Node (Delete)
+toolbox.delete_area = Delete Area (Shift+Delete)
+toolbox.delete_way = Delete Way (Shift+Delete)
+toolbox.delete_item = Delete Item
+toolbox.reverse_direction = Reverse direction (V)
+toolbox.split_way = Split way (X)
+toolbox.merge_ways = Merge ways
+toolbox.straighten_way = Straighten Way
+toolbox.make_circular = Make circular
+toolbox.make_right_angled = Make right-angled (Q)
+toolbox.create_parrallel_way = Create parallel way (P)
\ No newline at end of file
index b265c1a2b30ae2b15531e1089429c01e69a4ea34..90372126637aac551302d15017aac2e2229e19b4 100644 (file)
@@ -2,3 +2,10 @@
 
 main.undo = Undo
 main.redo = Redo
+main.background = Background
+main.map_style = Map Style
+main.gps_data = GPS Data
+main.my_tracks = My Tracks
+main.help = Help
+main.options = Options
+main.save = Save
index 9c4955814270556120295906cae7fe59f0e15b03..28100c4412400013cc51d064d5a2e8a9f9cd54b3 100644 (file)
@@ -2,3 +2,12 @@
 
 main.undo = Défaire
 main.redo = Refaire
+main.background = Arrière-plan
+main.map_style = Style de Carte
+main.gps_data = GPS Informations
+main.my_tracks = Mes Pistes
+main.help = Assistance
+main.options = Options
+main.save = Enregistrer
+
+tag_viewer.dndprompt = Ajouter de nouveaux points en les faisant glisser sur la carte
diff --git a/l10n/locale/pl_PL/help_dialog.properties b/l10n/locale/pl_PL/help_dialog.properties
new file mode 100644 (file)
index 0000000..c0c0ebd
--- /dev/null
@@ -0,0 +1,4 @@
+# pl_PL resources file
+
+help.gettingStarted = Pierwsze kroki
+help.welcome = Witaj
diff --git a/l10n/locale/pl_PL/p2_main.properties b/l10n/locale/pl_PL/p2_main.properties
new file mode 100644 (file)
index 0000000..3f88753
--- /dev/null
@@ -0,0 +1,25 @@
+# pl_PL resources file
+
+main.undo = Cofnij
+main.redo = Ponów
+main.background = Tło
+main.map_style = Styl mapy
+main.gps_data = Dane GPS
+main.my_tracks = Moje ślady
+main.help = Pomoc
+main.options = Opcje
+main.save = Zapisz
+
+tag_viewer.dndprompt = Dodaj nowy punkt poprzez przeniesienie go na mapę
+
+toolbox.delete_node = Usuń węzeł (Delete)
+toolbox.delete_area = Usuń obszar (Shift+Delete)
+toolbox.delete_way = Usuń drogę (Shift+Delete)
+toolbox.delete_item = Usuń obiekt
+toolbox.reverse_direction = Odwróć kierunek (V)
+toolbox.split_way = Przetnij drogę (X)
+toolbox.merge_ways = Połącz drogi
+toolbox.straighten_way = Prosta droga
+toolbox.make_circular = Utwórz okrąg
+toolbox.make_right_angled = Utwórz kąty proste (Q)
+toolbox.create_parrallel_way = Stwórz drogę równoległą (P)
index b9a3d7541d0cc56bebbc4816d13bd196768f82a4..843a8a966ae73f250e42807de1df1b4fe06634dd 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<LocaleMap enableLog="true"
+<LocaleMap enableLog="false"
     xmlns:mx="http://www.adobe.com/2006/mxml"
     xmlns:factory="mx.core.*"
     xmlns="library://ns.babelfx.org/l10n/flex/" >
@@ -8,8 +8,27 @@
   <mx:Script>
     <![CDATA[
       import com.mindspace.l10n.commands.ExternalLocaleCommand;
+      import mx.resources.ResourceManager;
+      import mx.resources.IResourceManager;
 
       import net.systemeD.potlatch2.help.HelpDialog;
+      import net.systemeD.potlatch2.TagViewer;
+      import net.systemeD.potlatch2.Toolbox;
+
+      private function onLocaleChanged(event:Event):void {
+          var rMngr : IResourceManager = ResourceManager.getInstance();
+          var sri : SmartResourceInjector = event.target as SmartResourceInjector;
+          var options : Array = [
+                                  { label : rMngr.getString('p2_main','main.gps_data') },
+                                  { label : rMngr.getString('p2_main','main.my_tracks') }
+                                ];
+
+          // Iterate all view instances and inject new dataProvider
+          for each (var inst:potlatch2 in sri.targetInstances) {
+              if (inst == null) continue;
+              inst.gpsButton.dataProvider = options;
+          }
+      }
     ]]>
   </mx:Script>
 
     <ResourceProxy property="welcome.label" key="help.welcome" />
   </SmartResourceInjector>
 
-  <SmartResourceInjector bundleName="p2_main" target="{potlatch2}">
+  <SmartResourceInjector bundleName="p2_main" target="{potlatch2}" localeChange="onLocaleChanged(event)">
+    <ResourceProxy property="bgButton.label" key="main.background" />
+    <ResourceProxy property="styleButton.label" key="main.map_style" />
     <ResourceProxy property="undo.label" key="main.undo" />
     <ResourceProxy property="redo.label" key="main.redo" />
+    <ResourceProxy property="helpButton.label" key="main.help" />
+    <ResourceProxy property="optionsButton.label" key="main.options" />
+    <ResourceProxy property="saveButton.label" key="main.save" />
+  </SmartResourceInjector>
+
+  <SmartResourceInjector bundleName="p2_main" target="{TagViewer}">
+    <ResourceProxy property="dndPrompt" key="tag_viewer.dndprompt" />
+  </SmartResourceInjector>
+
+  <SmartResourceInjector bundleName="p2_main" target="{Toolbox}">
+    <ResourceProxy property="deleteNode" key="toolbox.delete_node" />
+    <ResourceProxy property="deleteWay" key="toolbox.delete_way" />
+    <ResourceProxy property="deleteArea" key="toolbox.delete_area" />
+    <ResourceProxy property="deleteItem" key="toolbox.delete_item" />
+    <ResourceProxy property="reverseButton.toolTip" key="toolbox.reverse_direction" />
+    <ResourceProxy property="splitButton.toolTip" key="toolbox.split_way" />
+    <ResourceProxy property="mergeButton.toolTip" key="toolbox.merge_ways" />
+    <ResourceProxy property="straightenButton.toolTip" key="toolbox.straighten_way" />
+    <ResourceProxy property="circulariseButton.toolTip" key="toolbox.make_circular" />
+    <ResourceProxy property="quadrilateraliseButton.toolTip" key="toolbox.make_right_angled" />
+    <ResourceProxy property="parralleliseButton.toolTip" key="toolbox.create_parrallel_way" />
   </SmartResourceInjector>
 
 </LocaleMap>
\ No newline at end of file
diff --git a/lib/Framework_BabelFx-g400a96.swc b/lib/Framework_BabelFx-g400a96.swc
new file mode 100644 (file)
index 0000000..ccba27d
Binary files /dev/null and b/lib/Framework_BabelFx-g400a96.swc differ
diff --git a/lib/Framework_BabelFx.swc b/lib/Framework_BabelFx.swc
deleted file mode 100644 (file)
index 2f84eb7..0000000
Binary files a/lib/Framework_BabelFx.swc and /dev/null differ
index a3eaa241708e124a69d3165efa29537010cede8d..527b80490d790922535c97dbd4e9b8d2263d57cc 100644 (file)
@@ -81,6 +81,8 @@ package net.systemeD.controls {
                        setStyle("paddingLeft",0);
                        setStyle("paddingRight",0);
                        rowCount = 7;
+                       
+                       if (maxChars) textInput.maxChars=maxChars;
                }
                
                //--------------------------------------------------------------------------
@@ -93,6 +95,7 @@ package net.systemeD.controls {
                private var showingDropdown:Boolean=false;
                private var tempCollection:Object;
                private var dropdownClosed:Boolean=true;
+               public var maxChars:uint=0;
 
                //--------------------------------------------------------------------------
                //      Overridden Properties
index 4d842438b4f890ad39b63f7bbce709ff3302b9d6..204c14f8ab2f2647c17e117d76c9bd5ea405910a 100644 (file)
@@ -70,6 +70,7 @@ package net.systemeD.halcyon {
 
                        var tags:Object = entity.getTagsCopy();
                        setStateClass('poi', !entity.hasParentWays);
+                       setStateClass('junction', entity.numParentWays>1);
             setStateClass('hasTags', entity.hasInterestingTags());
             setStateClass('dupe', Node(entity).isDupe());
                        tags=applyStateClasses(tags);
index e6bdbd155389d00a3e82dc4886091c629835643f..795dd7810cd8486c01ff0f648c30859cf9dff141 100644 (file)
@@ -60,13 +60,11 @@ package net.systemeD.halcyon.connection {
             return members[index];
         }
 
-        public function setMember(index:uint, member:RelationMember):void {
-            var oldMember:RelationMember = getMember(index);
-            
-                       members.splice(index, 1, member);
-            oldMember.entity.removeParent(this);
-                       member.entity.addParent(this);
-                       markDirty();
+        public function setMember(index:uint, member:RelationMember, performAction:Function):void {
+            var composite:CompositeUndoableAction = new CompositeUndoableAction("Set Member at index "+index);
+            composite.push(new RemoveMemberByIndexAction(this, members, index));
+            composite.push(new AddMemberToRelationAction(this, index, member, members));
+            performAction(composite);
         }
 
                public function findMembersByRole(role:String, entityType:Class=null):Array {
index cd0b4ae927eab751a6a1e68e8c47c7238a03c9c0..0bf342d1e08852e5aa9dc6a5b09a0de315c780fd 100644 (file)
@@ -63,6 +63,7 @@ package net.systemeD.halcyon.connection {
 
         private function errorOnMapLoad(event:Event):void {
                        dispatchEvent(new MapEvent(MapEvent.ERROR, { message: "Couldn't load the map" } ));
+                       dispatchEvent(new Event(LOAD_COMPLETED));
         }
         private function mapLoadStatus(event:HTTPStatusEvent):void {
             trace("loading map status = "+event.status);
index b41cfde8409e15f199c489c5c681371aa4f31399..a5d9a689b694a28368cc039df5583e4cc3c40949 100644 (file)
@@ -4,7 +4,7 @@ package net.systemeD.halcyon.connection.actions {
     
     public class AddMemberToRelationAction extends UndoableEntityAction {
         private var rel:Relation;
-        private var index:uint;
+        private var index:int;
         private var member:RelationMember;
         private var memberList:Array;
         
@@ -17,6 +17,8 @@ package net.systemeD.halcyon.connection.actions {
         }
         
         public override function doAction():uint {
+            if ( index == -1 )
+                index = memberList.length;
             memberList.splice(index, 0, member);
             member.entity.addParent(rel);
             markDirty();
@@ -27,7 +29,9 @@ package net.systemeD.halcyon.connection.actions {
         
         public override function undoAction():uint {
             memberList.splice(index, 1);
-            member.entity.removeParent(rel);
+            if (rel.findEntityMemberIndex(member.entity)==-1) {
+                member.entity.removeParent(rel);
+            }
             markClean();
             rel.dispatchEvent(new RelationMemberEvent(Connection.RELATION_MEMBER_REMOVED, member.entity, rel, index));
             
index 625d039c98353437f2d665df5cce98f10de6f774..9f1b90cea7232c9edb8e91342f68547e6c51c00c 100644 (file)
@@ -11,7 +11,7 @@ package net.systemeD.halcyon.connection.actions {
         public function SetTagAction(entity:Entity, key:String, value:String) {
             super(entity, "Set "+key+"="+value);
             this.key = key;
-            this.value = value;
+            this.value = value ? value.substr(0,255): null;
         }
 
         public override function doAction():uint {
index 6abbd69e7a9cbc143b4321801133774ca20a27e0..adc4982fa6b2acd32d8827c36f39dcf36acdc7c9 100644 (file)
@@ -19,6 +19,7 @@
                                                labelField="name"
                                                rowCount="10"
                                                restrict="&#x0020;-&#x10FFFF;"
+                                               maxChars="255" 
                                                typedText="{outerDocument.selectedItem.key}">
                                        <mx:Script><![CDATA[ import net.systemeD.potlatch2.mapfeatures.*; ]]></mx:Script>
                                        </controls:AutoComplete>
@@ -36,6 +37,7 @@
                                                labelField="name"
                                                rowCount="10"
                                                restrict="&#x0020;-&#x10FFFF;"
+                                               maxChars="255" 
                                                typedText="{outerDocument.selectedItem.value}">
                                        <mx:Script><![CDATA[ import net.systemeD.potlatch2.mapfeatures.*; ]]></mx:Script>
                                        </controls:AutoComplete>
                                        }
                                }
                        }
+                       if (!set && event.newValue) tagDataProvider.addItem(new Tag(event.entity,event.key,event.newValue));
+
                        // tell Flex to redraw the grid because we've changed a tag
                        invalidateList();
                }
index 3c4c9c0c306ec8eac1ac52455b671175478eb2b1..b107fe0da2988a5bc608f1cca9a4a3c257da73f7 100644 (file)
       import mx.core.DragSource;
       import flexlib.containers.SuperTabNavigator;
 
-      private static const dndPrompt:String="Add new points by dragging them onto the map";
+      [Bindable]
+      public var dndPrompt:String="Add new points by dragging them onto the map";
 
       private var editorStackTabNavigator:SuperTabNavigator;
       private var editorStackAccordion:Accordion;
                        for each (var entity:Entity in EntityCollection(selectedEntity).entities) {
                                var indexes:Array=relation.findEntityMemberIndexes(entity);
                                for each (var index:int in indexes) {
-                                       relation.setMember(index, new RelationMember(entity,newRole));
+                                       relation.setMember(index, new RelationMember(entity,newRole), MainUndoStack.getGlobalStack().addAction);
                                }
                        }
                } else {
-                       relation.setMember(props['index'], new RelationMember(selectedEntity,newRole));
+                       relation.setMember(props['index'], new RelationMember(selectedEntity,newRole), MainUndoStack.getGlobalStack().addAction);
                }
       }
 
index e15b50f9591de85814f43fe78824d6279357b9ff..a553ab6a26ee6b7be38e1db1e0e386dbac23adcf 100644 (file)
                        toolTip="{deleteToolTipText()}" 
                        width="28" height="28" textAlign="left" y="4" x="6" paddingLeft="6" paddingRight="0" />
 
-        <mx:HBox width="28" height="28" y="4" x="36" borderStyle="solid" cornerRadius="4" click="reverseClicked();" horizontalAlign="center" verticalAlign="middle">
-            <mx:ViewStack id="rotateButtonStack">
+        <mx:HBox id="reverseButton" width="28" height="28" y="4" x="36" borderStyle="solid" cornerRadius="4"
+                  click="reverseClicked();" horizontalAlign="center" verticalAlign="middle" toolTip="Reverse direction (V)">
+            <mx:ViewStack id="rotateButtonStack" creationPolicy="all">
                 <mx:HBox id="arrowBoxWrapper"><!-- changing the viewstack back onto a rotated hbox causes positioning glitches, hence this wrapper -->
                     <!-- I can totally recommend adding borderStyle="solid" to arrowBox when debugging -->
                     <mx:HBox id="arrowBox" horizontalAlign="center" verticalAlign="middle" width="24" height="24">
                         <mx:Image id="arrow" source="@Embed('../../../embedded/arrow.svg')"
                             alpha="{getAlpha('reverseDirection')}"
-                            toolTip="Reverse direction (V)"
                             width="22" height="22"/>
                     </mx:HBox>
                 </mx:HBox>
                 <mx:HBox id="clockwiseBox" horizontalAlign="center" verticalAlign="middle">
                     <mx:Image id="clockwise" source="@Embed('../../../embedded/clockwise.svg')"
                         alpha="{getAlpha('reverseDirection')}"
-                        toolTip="Reverse direction (V)"
                         width="22" height="22" x="2" y="2"/>
                 </mx:HBox>
                 <mx:HBox id="antiClockwiseBox" horizontalAlign="center" verticalAlign="middle">
                         click='doReverseDirection();'
                         enabled="{canDo('reverseDirection')}"
                         alpha="{getAlpha('reverseDirection')}"
-                        toolTip="Reverse direction (V)"
                         width="22" height="22" x="2" y="2"/>
                 </mx:HBox>
             </mx:ViewStack>
         </mx:HBox>
                <mx:Button icon="@Embed('../../../embedded/cut.svg')" 
+                       id="splitButton"
                        click='doSplit();'
                        enabled="{canDo('split')}" 
                        alpha="{getAlpha('split')}" 
                        toolTip="Split way (X)" 
                        width="28" height="28" textAlign="left" y="4" x="66" paddingLeft="8" paddingRight="0" />
                <mx:Button icon="@Embed('../../../embedded/merge.svg')" 
+                       id="mergeButton"
                        click='doMerge();'
                        enabled="{canDo('merge')}" 
                        alpha="{getAlpha('merge')}" 
                <!-- Second row -->
 
                <mx:Button icon="@Embed('../../../embedded/straighten.svg')" 
+                       id="straightenButton"
                        click='doStraighten();' 
                        enabled="{canDo('straighten')}" 
                        alpha="{getAlpha('straighten')}" 
                        toolTip="Straighten way" 
                        width="28" height="28" textAlign="left" y="34" x="6" paddingLeft="5" paddingRight="0" />
                <mx:Button icon="@Embed('../../../embedded/circle.svg')" 
+                       id="circulariseButton"
                        click='doCircularise();' 
                        enabled="{canDo('circularise')}" 
                        alpha="{getAlpha('circularise')}" 
                        toolTip="Make circular" 
                        width="28" height="28" textAlign="left" y="34" x="36" paddingLeft="4" paddingRight="0" />
                <mx:Button icon="@Embed('../../../embedded/quadrilateralise.svg')" 
+                       id="quadrilateraliseButton"
                        click='doQuadrilateralise();' 
                        enabled="{canDo('quadrilateralise')}" 
                        alpha="{getAlpha('quadrilateralise')}" 
                        toolTip="Make right-angled (Q)"
                        width="28" height="28" textAlign="left" y="34" x="66" paddingLeft="6" paddingRight="0" />
                <mx:Button icon="@Embed('../../../embedded/parallel.svg')" 
+                       id="parralleliseButton"
                        click='doParallelise();' 
                        enabled="{canDo('parallelise')}" 
                        alpha="{getAlpha('parallelise')}" 
         [Bindable]
         public var angle:int=0;
 
+        public var deleteNode:String = "Delete Node (Delete)";
+        public var deleteArea:String = "Delete Area (Shift+Delete)";
+        public var deleteWay:String = "Delete Way (Shift+Delete)";
+        public var deleteItem:String = "Delete Item"; // When nothing is selected
+
                public function init(controller:EditController):void {
                        this.controller=controller;
                        /* check if the toolbox was explictly turned off in a previous session */
                [Bindable(event="updateSkin")]
                private function deleteToolTipText():String {
                        var entity:Entity=controller.state.firstSelected;
-                       if (entity is Node) { return "Delete Node (Delete)"; }
-                       if (entity is Way && Way(entity).isArea()) { return "Delete Area (Shift+Delete)"; }
-                       if (entity is Way) { return "Delete Way (Shift+Delete)"; }
-                       return "Delete Item"; // When nothing is selected
+                       if (entity is Node) { return deleteNode; }
+                       if (entity is Way && Way(entity).isArea()) { return deleteArea; }
+                       if (entity is Way) { return deleteWay; }
+                       return deleteItem; // When nothing is selected
                }
 
         private function updateDirectionArrow():void {
index 56c0722ff8a37b770bd77e722097dfa61b7152e1..94e60aaa8313d720908941d753de77cec5be99f0 100644 (file)
@@ -67,7 +67,8 @@ package net.systemeD.potlatch2.controller {
                                case 68:        controller.map.paint.alpha=1.3-controller.map.paint.alpha; return null; // D - dim
                                case 83:        SaveManager.saveChanges(); break;                                                                               // S - save
                                case 84:        controller.tagViewer.togglePanel(); return null;                                                // T - toggle tags panel
-                               case 90:        MainUndoStack.getGlobalStack().undo(); return null;                                             // Z - undo
+                               case 90:        if (!event.shiftKey) { MainUndoStack.getGlobalStack().undo(); return null;}// Z - undo
+                                           else { MainUndoStack.getGlobalStack().redo(); return null;  }           // Shift-Z - redo                                           
                                case Keyboard.ESCAPE:   revertSelection(); break;                                                                       // ESC - revert to server version
                                case Keyboard.NUMPAD_ADD:                                                                                                                       // + - add tag
                                case 187:       controller.tagViewer.selectAdvancedPanel();                                                             //   |
index ef2100e1f8ea08b303c202362fa32e87346a8619..9d121a2691cb1c834dab08fd7d960259156a6e1c 100644 (file)
@@ -9,7 +9,6 @@
     <mx:Object k="created_by" v="Potlatch 2"/>
     <mx:Object k="version" v="{Application.application.version}"/>
     <mx:Object k="build" v="{Application.application.build_number}"/>
-    <mx:Object k="comment" v=""/>
   </mx:ArrayCollection>
   
   <mx:ViewStack id="processSequence" width="100%" height="100%" 
                for (var i:int=changesetTags.length-1; i>0; i--) {
                        if (changesetTags[i]['k']=='comment') { changesetTags.removeItemAt(i); }
                }
-               changesetTags.addItem( { k:'comment', v: event.target.text } );
+               if (event.target.text!='') changesetTags.addItem( { k:'comment', v: event.target.text } );
     }
 
        private function monitorEnter(event:TextEvent):void {
index a00c46d79ef2defdb1e6441e3fe31cb0a9d4b8bf..fbf700e56f28d06f559188ed520809e240d8f6ba 100644 (file)
@@ -9,7 +9,9 @@
        horizontalAlign="center" 
        addedToStage="initApp()"
        preloader="net.systemeD.potlatch2.Preloader">
-       
+
+    <map:LocalizationMap xmlns:map="l10n.map.*" />
+
        <mx:Style source="styles/Application.css"/>
 
     <mx:Glow id="glowImage" duration="100" 
@@ -38,9 +40,9 @@
                                                     theMap.removeVectorLayer(theMap.findVectorLayer('GPS tracks')); }">
                        <mx:dataProvider>
                                <mx:Array>
-                                       <mx:Object label="GPS data" />
-                                       <mx:Object label="My tracks" />
-                                       <mx:Object label="Clear" />
+                                       <mx:Object label="GPS data" id="gpsData" />
+                                       <mx:Object label="My tracks" id="myTracks" />
+                                       <mx:Object label="Clear" id="clearGps" />
                                </mx:Array>
                        </mx:dataProvider>
                </mx:PopUpMenuButton>
         <mx:Button id="redo" label="Redo" click="MainUndoStack.getGlobalStack().redo();" styleName="appBarButton"
             enabled="{MainUndoStack.getGlobalStack().canRedo()}"/>
         <mx:Spacer width="100%"/>
-        <mx:Button label="Help" click="new HelpDialog().init();" styleName="appBarButton" />
-        <mx:Button label="Options" click="new OptionsDialog().init();" styleName="appBarButton" /> 
+        <mx:Button id="helpButton" label="Help" click="new HelpDialog().init();" styleName="appBarButton" />
+        <mx:Button id="optionsButton" label="Options" click="new OptionsDialog().init();" styleName="appBarButton" />
         <mx:Button label="Save" icon="@Embed('embedded/upload.svg')" disabledIcon="@Embed('embedded/upload_disabled.svg')" styleName="appBarButton"
                        click="SaveManager.saveChanges();" id="saveButton" enabled="false"/>
     </mx:ApplicationControlBar>
-
-    <map:LocalizationMap xmlns:map="l10n.map.*" />
     
     <mx:HDividedBox width="100%" height="100%">
 
 
                private function initApp():void {
 
-            /* For reasons that I don't yet understand, the en_US locale is the default and doesn't work at all. Use en_GB instead. */
-            /* Change this to another locale (e.g. fr_FR) to see the differences. This will obviously become done differently at some point. */
-            dispatchEvent(new LocaleEvent(LocaleEvent.LOAD_LOCALE,'en_GB'));
+            /* For reasons that I don't yet understand, the en_US locale is the default and doesn't work at all. */
+            /* Change this to another locale (e.g. fr_FR) to see the differences. */
+            if (loaderInfo.parameters['locale']) {
+              dispatchEvent(new LocaleEvent(LocaleEvent.LOAD_LOCALE,loaderInfo.parameters['locale']));
+            }
 
                        Globals.vars.map_area = map_area;
                        Globals.vars.root = map_area.rawChildren;                       // set up global reference to root level
diff --git a/resources/features/pois/amenity_vendingmachine.png b/resources/features/pois/amenity_vendingmachine.png
deleted file mode 100644 (file)
index 58f0333..0000000
Binary files a/resources/features/pois/amenity_vendingmachine.png and /dev/null differ
diff --git a/resources/features/pois/barrier_generic.24.png b/resources/features/pois/barrier_generic.24.png
deleted file mode 100644 (file)
index a57de17..0000000
Binary files a/resources/features/pois/barrier_generic.24.png and /dev/null differ
diff --git a/resources/features/pois/boat-launch-24.png b/resources/features/pois/boat-launch-24.png
deleted file mode 100644 (file)
index 62312b9..0000000
Binary files a/resources/features/pois/boat-launch-24.png and /dev/null differ
diff --git a/resources/features/pois/power_substation.n.24.png b/resources/features/pois/power_substation.n.24.png
new file mode 100644 (file)
index 0000000..3cf3bff
Binary files /dev/null and b/resources/features/pois/power_substation.n.24.png differ
diff --git a/resources/features/pois/power_tower_high2.n.24.png b/resources/features/pois/power_tower_high2.n.24.png
new file mode 100644 (file)
index 0000000..98822fa
Binary files /dev/null and b/resources/features/pois/power_tower_high2.n.24.png differ
diff --git a/resources/features/pois/power_tower_low.n.24.png b/resources/features/pois/power_tower_low.n.24.png
new file mode 100644 (file)
index 0000000..de3d6db
Binary files /dev/null and b/resources/features/pois/power_tower_low.n.24.png differ
diff --git a/resources/features/pois/power_transformer.n.24.png b/resources/features/pois/power_transformer.n.24.png
new file mode 100644 (file)
index 0000000..87a43eb
Binary files /dev/null and b/resources/features/pois/power_transformer.n.24.png differ
diff --git a/resources/features/pois/shopping_kiosk.n.24.png b/resources/features/pois/shopping_kiosk.n.24.png
new file mode 100644 (file)
index 0000000..de4ab5a
Binary files /dev/null and b/resources/features/pois/shopping_kiosk.n.24.png differ
diff --git a/resources/features/pois/shopping_marketplace.n.24.png b/resources/features/pois/shopping_marketplace.n.24.png
new file mode 100644 (file)
index 0000000..4fba55a
Binary files /dev/null and b/resources/features/pois/shopping_marketplace.n.24.png differ
diff --git a/resources/features/pois/shopping_toy.n.24.png b/resources/features/pois/shopping_toy.n.24.png
deleted file mode 100644 (file)
index 08d7db0..0000000
Binary files a/resources/features/pois/shopping_toy.n.24.png and /dev/null differ
diff --git a/resources/features/pois/shopping_toys.n.24.png b/resources/features/pois/shopping_toys.n.24.png
new file mode 100644 (file)
index 0000000..6350002
Binary files /dev/null and b/resources/features/pois/shopping_toys.n.24.png differ
diff --git a/resources/features/pois/shopping_vending_machine.n.24.png b/resources/features/pois/shopping_vending_machine.n.24.png
new file mode 100644 (file)
index 0000000..1a18e63
Binary files /dev/null and b/resources/features/pois/shopping_vending_machine.n.24.png differ
index 9e50b0029d222223e16e0acb867dde5e53a4842f..f26d78de43b5de300dce4344afe7051b2bcc0141 100644 (file)
Binary files a/resources/features/pois/sport_shooting.n.24.png and b/resources/features/pois/sport_shooting.n.24.png differ
diff --git a/resources/features/pois/sport_stadium.n.24.png b/resources/features/pois/sport_stadium.n.24.png
new file mode 100644 (file)
index 0000000..f1349e4
Binary files /dev/null and b/resources/features/pois/sport_stadium.n.24.png differ
diff --git a/resources/features/pois/transport_mini_roundabout.n.24.png b/resources/features/pois/transport_mini_roundabout.n.24.png
deleted file mode 100644 (file)
index f52dc06..0000000
Binary files a/resources/features/pois/transport_mini_roundabout.n.24.png and /dev/null differ
diff --git a/resources/features/pois/transport_miniroundabout_anticlockwise.n.24.png b/resources/features/pois/transport_miniroundabout_anticlockwise.n.24.png
new file mode 100644 (file)
index 0000000..41b1de3
Binary files /dev/null and b/resources/features/pois/transport_miniroundabout_anticlockwise.n.24.png differ
index f7d07a678f1961f22a268a8d1cc01998e682fd62..5a34dcbc7ce267ccc8be64d220fa72fc3832c11e 100644 (file)
Binary files a/resources/features/pois/transport_slipway.n.24.png and b/resources/features/pois/transport_slipway.n.24.png differ
diff --git a/resources/features/pois/transport_speedbump.n.24.png b/resources/features/pois/transport_speedbump.n.24.png
new file mode 100644 (file)
index 0000000..a4f5efd
Binary files /dev/null and b/resources/features/pois/transport_speedbump.n.24.png differ
diff --git a/resources/features/pois/water_generic.24.png b/resources/features/pois/water_generic.24.png
deleted file mode 100644 (file)
index c04dd77..0000000
Binary files a/resources/features/pois/water_generic.24.png and /dev/null differ
diff --git a/resources/icons/bollard.png b/resources/icons/bollard.png
deleted file mode 100644 (file)
index 7714a3f..0000000
Binary files a/resources/icons/bollard.png and /dev/null differ
diff --git a/resources/icons/power_blank.png b/resources/icons/power_blank.png
deleted file mode 100644 (file)
index 32ee9af..0000000
Binary files a/resources/icons/power_blank.png and /dev/null differ
diff --git a/resources/icons/power_pole_24.png b/resources/icons/power_pole_24.png
deleted file mode 100644 (file)
index 9259040..0000000
Binary files a/resources/icons/power_pole_24.png and /dev/null differ
diff --git a/resources/icons/power_tower_24.png b/resources/icons/power_tower_24.png
deleted file mode 100644 (file)
index 0aa2720..0000000
Binary files a/resources/icons/power_tower_24.png and /dev/null differ
diff --git a/resources/icons/tourist_blank.png b/resources/icons/tourist_blank.png
deleted file mode 100644 (file)
index 35d4888..0000000
Binary files a/resources/icons/tourist_blank.png and /dev/null differ
diff --git a/resources/icons/transport_airport_48.png b/resources/icons/transport_airport_48.png
deleted file mode 100644 (file)
index fc38eab..0000000
Binary files a/resources/icons/transport_airport_48.png and /dev/null differ
diff --git a/resources/icons/transport_blank.png b/resources/icons/transport_blank.png
deleted file mode 100644 (file)
index 6fa7955..0000000
Binary files a/resources/icons/transport_blank.png and /dev/null differ
diff --git a/resources/icons/transport_helipad_48.png b/resources/icons/transport_helipad_48.png
deleted file mode 100644 (file)
index 362bc9a..0000000
Binary files a/resources/icons/transport_helipad_48.png and /dev/null differ
index 561c0f5d0ae8cf5f02a9b9a3216342a2194ffd2b..1ca1ddd12630dc166ec677906ea62794df4827b8 100644 (file)
   <feature name="Vending machine">\r
     <category>amenity</category>\r
     <category>foodanddrink</category>\r
-    <icon image="features/pois/amenity_vendingmachine.png">A vending machine.</icon>\r
+    <icon image="features/pois/shopping_vending_machine.n.24.png">A vending machine.</icon>\r
 \r
     <point/>\r
     <tag k="amenity" v="vending_machine"/>\r
index 69812a35428cd4a6c35a4681d31f285b626f3873..dc6dc3c255b7d7680c2eabb6e25729c3a8d57c81 100644 (file)
 \r
   <feature name="Stadium">\r
     <category>buildings</category>\r
-    <icon image="icons/tourist_blank.png">\r
+    <icon image="features/pois/sport_stadium.n.24.png">\r
       <b>${name} ${addr:housename}</b><br/>\r
       ${addr:housenumber} ${addr:street} ${addr:postcode}\r
     </icon>\r
index 7ed3548f0cf05cb0d84c625350870b73089dd3f0..e297d2e65ff37f0fb5a62e75bde7ea27cf32e48b 100644 (file)
@@ -61,7 +61,7 @@
     <category>shopping</category>\r
     <point />\r
     <area/>\r
-    <icon image="features/pois/shopping_greengrocer.n.24.png">\r
+    <icon image="features/pois/shopping_marketplace.n.24.png">\r
       <b>${name}</b>\r
     </icon>\r
     <tag k="amenity" v="marketplace"/>\r
index 7d7ce1c8b4eec2cf38945a58ddc3fa4c7a7bfbaa..2fafc86f8839e912162bc3bf1f0fce058c25e43f 100644 (file)
@@ -21,7 +21,7 @@
 \r
   <feature name="High-voltage pylon">\r
     <category>power</category>\r
-    <icon image="icons/power_tower_24.png"/>\r
+    <icon image="features/pois/power_tower_high2.n.24.png"/>\r
     <point/>\r
     <tag k="power" v="tower"/>\r
     <inputSet ref="common"/>\r
@@ -30,7 +30,7 @@
 \r
   <feature name="Power pole">\r
     <category>power</category>\r
-    <icon image="icons/power_pole_24.png"/>\r
+    <icon image="features/pois/power_tower_low.n.24.png"/>\r
     <point/>\r
     <tag k="power" v="pole"/>\r
     <inputSet ref="common"/>\r
@@ -63,7 +63,7 @@
 \r
   <feature name="Substation">\r
     <category>power</category>\r
-    <icon image="icons/power_blank.png"/>"\r
+    <icon image="features/pois/power_substation.n.24.png"/>"\r
     <area/>\r
     <point/>\r
     <tag k="power" v="station"/>\r
@@ -73,7 +73,7 @@
 \r
   <feature name="Transformer">\r
     <category>power</category>\r
-    <icon image="icons/power_blank.png"/>\r
+    <icon image="features/pois/power_transformer.n.24.png"/>\r
     <area/>\r
     <point/>\r
     <tag k="power" v="sub_station"/>\r
index a9da30379d0c5eb84a20b7ab533906aabdbc4e31..8fe62ba82a8027e67761d7cce86e918627f259bf 100644 (file)
 
   <feature name="Mini Roundabout">
     <category>transport</category>
-    <icon image="features/pois/transport_mini_roundabout.n.24.png"/>
+    <icon image="features/pois/transport_miniroundabout_anticlockwise.n.24.png"/>
     <help>http://wiki.openstreetmap.org/wiki/Tag:highway%3Dmini_roundabout</help>
     <point/>
     <tag k="highway" v="mini_roundabout"/>
 
   <feature name="Traffic calming">
     <category>transport</category>
-    <icon image="features/pois/transport_traffic_calming.n.24.png"/>
+    <icon image="features/pois/transport_speedbump.n.24.png"/>
 <!--    <help>http://wiki.openstreetmap.org/wiki/Key:traffic_calming</help>-->
     <point/>
     <tag k="traffic_calming" v="yes" vmatch="*"/>
index f3e6758f45870b7b18c1066dc37d9a4ca96fcd82..865138bef670d485c9a635773845f11fd188ecdb 100644 (file)
     <inputSet ref="simpleName"/>\r
     <inputSet ref="web"/>\r
     <inputSet ref="buildingAddress"/>\r
-    <icon image="features/pois/shopping_jewelry.n.24.png"/>\r
+    <icon image="features/pois/shopping_kiosk.n.24.png"/>\r
     <tag k="shop" v="kiosk"/>\r
     <inputSet ref="common"/>\r
   </feature>\r
 \r
   <feature name="Toy shop">\r
     <category>shopping</category>\r
-    <icon image="features/pois/shopping_toy.n.24.png" />\r
+    <icon image="features/pois/shopping_toys.n.24.png" />\r
     <point/>\r
     <area/>\r
     <inputSet ref="simpleName"/>\r
index 25d7fe1cadbaa20f76cde6199af447dd19d95cbc..194d9101d63323c2b1efbc8e9582ac7f62ca27c4 100644 (file)
@@ -103,7 +103,6 @@ node[amenity=school] { icon-image: icons/school.png; }
 node[amenity=taxi] { icon-image: icons/taxi.png; }
 node[amenity=telephone] { icon-image: icons/telephone.png; }
 way node[barrier=gate], way node[highway=gate] { icon-image: icons/gate.png; }
-way node[barrier=bollard] { icon-image: icons/bollard.png; }
 node[barrier=cattle_grid] { icon-image: icons/cattle_grid.png; }*/
        
 /* We can stack styles at different z-index (depth) */
diff --git a/resources_src/amenity_vendingmachine.svg b/resources_src/amenity_vendingmachine.svg
deleted file mode 100644 (file)
index 07bad2a..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="744.09448819"
-   height="1052.3622047"
-   id="svg5535"
-   version="1.1"
-   inkscape:version="0.48+devel r9797"
-   sodipodi:docname="amenity_vendingmachine.svg">
-  <defs
-     id="defs5537" />
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="0.98994949"
-     inkscape:cx="260.79121"
-     inkscape:cy="382.9676"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer1"
-     showgrid="true"
-     inkscape:window-width="1680"
-     inkscape:window-height="990"
-     inkscape:window-x="-4"
-     inkscape:window-y="-4"
-     inkscape:window-maximized="1">
-    <inkscape:grid
-       type="xygrid"
-       id="grid5569" />
-  </sodipodi:namedview>
-  <metadata
-     id="metadata5540">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1">
-    <rect
-       style="fill:#784421;fill-opacity:1;fill-rule:evenodd;stroke:none"
-       id="rect3069"
-       width="360"
-       height="360"
-       x="195"
-       y="352.36218"
-       ry="39.359997"
-       inkscape:export-filename="I:\OSM\pot2b\potlatch2\resources\features\pois\amenity_vendingmachine.png"
-       inkscape:export-xdpi="5.9039998"
-       inkscape:export-ydpi="5.9039998" />
-    <path
-       style="fill:#ffffff;stroke:#ffffff;stroke-width:20;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:0.50802141000000001;stroke-miterlimit:4;stroke-dasharray:none"
-       d="m 280,412.36218 0,260 140,0 0,-260 z"
-       id="path5571"
-       inkscape:connector-curvature="0"
-       inkscape:export-filename="I:\OSM\pot2b\potlatch2\resources\features\pois\amenity_vendingmachine.png"
-       inkscape:export-xdpi="5.9039998"
-       inkscape:export-ydpi="5.9039998" />
-    <path
-       sodipodi:type="arc"
-       style="fill:#ffffff;fill-opacity:0.79144383;fill-rule:evenodd;stroke:#ffffff;stroke-width:15;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
-       id="path6091"
-       sodipodi:cx="640"
-       sodipodi:cy="412.36218"
-       sodipodi:rx="60"
-       sodipodi:ry="60"
-       d="m 611.04566,464.91355 a 60,60 0 1 1 0.2425,0.13288"
-       sodipodi:start="2.0743857"
-       sodipodi:end="8.3529623"
-       sodipodi:open="true"
-       transform="matrix(0.49536774,0,0,0.64460671,160.82179,217.67579)"
-       inkscape:export-filename="I:\OSM\pot2b\potlatch2\resources\features\pois\amenity_vendingmachine.png"
-       inkscape:export-xdpi="5.9039998"
-       inkscape:export-ydpi="5.9039998" />
-    <rect
-       style="fill:#ffffff;fill-opacity:0.79144383;fill-rule:evenodd;stroke:#ffffff;stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
-       id="rect6095"
-       width="140"
-       height="100"
-       x="280"
-       y="412.36218"
-       ry="40"
-       rx="0"
-       inkscape:export-filename="I:\OSM\pot2b\potlatch2\resources\features\pois\amenity_vendingmachine.png"
-       inkscape:export-xdpi="5.9039998"
-       inkscape:export-ydpi="5.9039998" />
-    <path
-       style="fill:#ffffff;fill-opacity:0.79144383;fill-rule:evenodd;stroke:#ffffff;stroke-width:3.89500713;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
-       id="path6099"
-       d="m 483.13867,471.14976 c -2.49614,-0.0739 -4.99355,-0.079 -7.49033,-0.0683 -2.11347,0.0102 -4.22191,-0.0874 -6.31756,0.26433 -2.79416,1.16402 -8.50384,5.42194 2.88049,-2.36288 -1.11015,0.8867 -2.15929,1.95167 -2.89006,3.29849 -0.58462,1.27229 -0.69811,2.67202 -0.59413,4.09218 0.2467,1.58019 0.735,3.08193 1.27691,4.5458 0.64332,2.01761 1.57436,3.81699 2.82848,5.36047 2.04816,2.17781 4.45786,3.79033 6.86661,5.31788 2.34296,1.65139 4.81925,2.92372 7.45488,3.71121 1.18122,0.25052 0.60248,0.14856 1.73549,0.31163 0,0 -6.10265,5.15146 -6.10265,5.15146 l 0,0 c -1.14854,-0.23595 -0.56138,-0.0962 -1.7604,-0.42562 -2.61934,-0.94721 -5.09182,-2.31385 -7.46886,-3.93572 -2.46924,-1.59145 -4.95767,-3.24048 -7.05285,-5.49914 -1.32224,-1.62522 -2.32,-3.47376 -3.02286,-5.59045 -0.57392,-1.54584 -1.10331,-3.1255 -1.41088,-4.78181 -0.15088,-1.56516 -0.12524,-3.11577 0.40021,-4.5923 0.58391,-1.43748 0.80265,-1.51501 1.71253,-2.57359 0.99847,-1.16162 -0.0577,-0.1792 1.03868,-1.12392 2.07212,-1.44872 6.75277,-5.53127 10.11503,-6.26154 2.07983,-0.2373 4.17205,-0.024 6.25773,-0.0824 2.5491,0.011 5.09875,0.003 7.64726,-0.0683 0,0 -6.10372,5.3126 -6.10372,5.3126 z"
-       inkscape:connector-curvature="0"
-       inkscape:export-filename="I:\OSM\pot2b\potlatch2\resources\features\pois\amenity_vendingmachine.png"
-       inkscape:export-xdpi="5.9039998"
-       inkscape:export-ydpi="5.9039998" />
-  </g>
-</svg>
diff --git a/resources_src/sport_shooting.svg b/resources_src/sport_shooting.svg
deleted file mode 100644 (file)
index e51c16f..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.0"
-   width="580"
-   height="580"
-   id="svg2"
-   sodipodi:version="0.32"
-   inkscape:version="0.48.0 r9654"
-   sodipodi:docname="sport_archery.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <metadata
-     id="metadata2975">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <cc:license
-           rdf:resource="http://web.resource.org/cc/PublicDomain" />
-        <dc:language>en</dc:language>
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <sodipodi:namedview
-     inkscape:window-height="1021"
-     inkscape:window-width="1680"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     guidetolerance="10.0"
-     gridtolerance="10.0"
-     objecttolerance="10.0"
-     borderopacity="1.0"
-     bordercolor="#666666"
-     pagecolor="#ffffff"
-     id="base"
-     inkscape:zoom="1.3034483"
-     inkscape:cx="301.5186"
-     inkscape:cy="281.19503"
-     inkscape:window-x="1280"
-     inkscape:window-y="0"
-     inkscape:current-layer="svg2"
-     showgrid="false"
-     inkscape:window-maximized="1" />
-  <defs
-     id="defs4">
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 290 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="580 : 290 : 1"
-       inkscape:persp3d-origin="290 : 193.33333 : 1"
-       id="perspective2441" />
-    <inkscape:perspective
-       id="perspective3452"
-       inkscape:persp3d-origin="30 : 20 : 1"
-       inkscape:vp_z="60 : 30 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 30 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <symbol
-       viewBox="244.5 110 489 219.9"
-       id="symbol-university">
-      <path
-         id="path4460"
-         d="M79,43l57,119c0,0,21-96,104-96s124,106,124,106l43-133l82-17L0,17L79,43z" />
-      <path
-         id="path4462"
-         d="M94,176l-21,39"
-         stroke-width="20"
-         stroke="#000000"
-         fill="none" />
-      <path
-         id="path4464"
-         d="M300,19c0,10.5-22.6,19-50.5,19S199,29.5,199,19s22.6-19,50.5-19S300,8.5,300,19z" />
-      <path
-         id="path4466"
-         d="M112,216l-16-38L64,88c0,0-9-8-4-35s16-24,16-24"
-         stroke-width="20"
-         stroke="#000000"
-         ill="none" />
-    </symbol>
-    <inkscape:perspective
-       id="perspective4471"
-       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
-       inkscape:vp_z="744.09448 : 526.18109 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 526.18109 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <inkscape:perspective
-       id="perspective4668"
-       inkscape:persp3d-origin="6 : 4 : 1"
-       inkscape:vp_z="12 : 6 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 6 : 1"
-       sodipodi:type="inkscape:persp3d" />
-  </defs>
-  <g
-     id="g1327">
-    <path
-       d="M 66.275,1.768 C 24.94,1.768 1.704,23.139 1.704,66.804 L 1.704,516.927 C 1.704,557.771 22.599,579.156 63.896,579.156 L 515.92,579.156 C 557.227,579.156 578.149,558.841 578.149,516.927 L 578.149,66.804 C 578.149,24.203 557.227,1.768 514.628,1.768 C 514.624,1.768 66.133,1.625 66.275,1.768 z "
-       style="fill:#111;stroke:#eee;stroke-width:3.40799999"
-       id="path1329" />
-  </g>
-  <g
-     id="layer3"
-     inkscape:label="Layout"
-     style="display:none;stroke:#757575;stroke-opacity:1"
-     transform="matrix(48.14969,0,0,48.14969,-536.27327,-33.306752)">
-    <rect
-       style="fill:none;stroke:#757575;stroke-width:0.10000000000000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
-       id="rect4134"
-       width="10"
-       height="10"
-       x="1"
-       y="1" />
-    <rect
-       style="fill:none;stroke:#757575;stroke-width:0.10000000000000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
-       id="rect4136"
-       width="8"
-       height="8"
-       x="2"
-       y="2" />
-  </g>
-  <path
-     style="font-size:144px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;font-family:NPSPICT3;-inkscape-font-specification:NPSPICT3"
-     d="m 208.85418,132.62505 c 12.02355,3.4e-4 22.28808,-4.24912 30.79365,-12.74843 8.50497,-8.49858 12.75759,-18.96878 12.75794,-31.410652 -3.5e-4,-12.036085 -4.25297,-22.303803 -12.75794,-30.803159 -8.50557,-8.498492 -18.7701,-12.747997 -30.79365,-12.748386 -12.02407,3.89e-4 -22.39301,4.249894 -31.1069,12.748386 -8.71433,8.499356 -13.07136,18.767074 -13.07115,30.803159 -2.1e-4,12.441872 4.35682,22.912072 13.07115,31.410652 8.71389,8.49931 19.08283,12.74877 31.1069,12.74843 z m 29.23689,27.37638 c -1.65833,9.12573 -7.4614,13.68844 -17.40925,13.68814 l -103.90484,0 c -12.44166,3e-4 -18.662402,-5.3914 -18.662232,-16.17521 -1.7e-4,-4.56872 1.45537,-8.30244 4.366542,-11.20112 -7.885252,2.89868 -11.827762,8.0816 -11.827632,15.5487 -1.3e-4,10.78376 6.42944,16.17551 19.288732,16.1752 l 108.85995,0 c 13.69419,3.1e-4 20.12377,-6.0116 19.28873,-18.03571 z m -121.31409,13.68814 103.90484,0 c 9.94785,3e-4 15.75092,-4.56241 17.40925,-13.68814 -0.41797,-10.78316 -6.84755,-16.17491 -19.28873,-16.17521 l -108.85995,0 c -0.4178,3e-4 -2.90486,0.82934 -7.4611,2.48702 -2.911172,2.89868 -4.366712,6.6324 -4.366542,11.20112 -1.7e-4,10.78381 6.220572,16.17551 18.662232,16.17521 z m 108.87891,166.09968 0,-1.86055 c -2.5e-4,1.3e-4 -2.5e-4,0.20266 0,0.60754 z m -1.25301,12.43518 0,-1.86056 c -2.6e-4,0.41781 -2.6e-4,0.62664 0,0.62651 z m 19.91528,-206.5377 c 0.40471,0.41802 0.81603,0.83565 1.23401,1.25301 1.65772,3.31636 2.90438,7.05008 3.74003,11.20113 0.41737,4.13904 -0.62046,8.90428 -3.11353,14.29569 -3e-4,0.83564 -0.41797,1.87351 -1.25301,3.11357 -5.79702,8.70806 -14.50482,13.06194 -26.12332,13.06163 l -59.72679,0 0,160.4991 0,0 -34.21093,170.46622 c -1.24057,6.63202 0.006,12.74834 3.74003,18.34897 3.73351,5.6005 8.91643,9.02097 15.5487,10.26141 6.63189,1.24027 12.74822,-0.003 18.34898,-3.73057 5.60037,-3.72746 9.22963,-8.91352 10.88791,-15.5582 l 34.83743,-176.67426 16.17521,0 0,0 34.83748,176.67426 c 1.24,6.64468 4.66048,11.83074 10.26136,15.5582 5.60024,3.72733 11.9254,4.97084 18.97552,3.73057 6.22671,-1.24044 11.30836,-4.66091 15.24491,-10.26141 3.93586,-5.60063 5.07496,-11.71695 3.41732,-18.34897 l -34.21097,-171.70022 0,-143.71635 22.45101,-29.0605 23.21983,-1.54239 18.47168,-24.02565 155.7997,-8.68174 -0.7082,-15.5865 -238.53891,5.12778 c 0,0 -17.22065,6.29771 -23.88214,9.92447 z m -18.66227,194.10252 0,-1.25301 c -2.5e-4,1.3e-4 -2.5e-4,-0.2024 0,-0.60754 z"
-     id="flowRoot2391"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="cscccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" />
-</svg>
diff --git a/resources_src/transport_mini_roundabout.svg b/resources_src/transport_mini_roundabout.svg
deleted file mode 100644 (file)
index 177097c..0000000
+++ /dev/null
@@ -1,161 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.0"
-   width="580"
-   height="580"
-   id="svg2"
-   sodipodi:version="0.32"
-   inkscape:version="0.48.0 r9654"
-   sodipodi:docname="transport_mini_roundabout.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <metadata
-     id="metadata10">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <cc:license
-           rdf:resource="http://web.resource.org/cc/PublicDomain" />
-        <dc:language>en</dc:language>
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <sodipodi:namedview
-     inkscape:window-height="1021"
-     inkscape:window-width="1680"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     guidetolerance="10.0"
-     gridtolerance="10.0"
-     objecttolerance="10.0"
-     borderopacity="1.0"
-     bordercolor="#666666"
-     pagecolor="#ffffff"
-     id="base"
-     showgrid="false"
-     inkscape:zoom="0.25"
-     inkscape:cx="-351.1477"
-     inkscape:cy="-289.42787"
-     inkscape:window-x="1280"
-     inkscape:window-y="0"
-     inkscape:current-layer="svg2"
-     inkscape:window-maximized="1">
-    <inkscape:grid
-       type="xygrid"
-       id="grid3779" />
-  </sodipodi:namedview>
-  <defs
-     id="defs4">
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 290 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="580 : 290 : 1"
-       inkscape:persp3d-origin="290 : 193.33333 : 1"
-       id="perspective12" />
-    <style
-       type="text/css"
-       id="style6">
-   
-    .fil0 {fill:#EF7900}
-   
-  </style>
-    <inkscape:perspective
-       id="perspective6807"
-       inkscape:persp3d-origin="29.116032 : 19.410688 : 1"
-       inkscape:vp_z="58.232063 : 29.116032 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 29.116032 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <inkscape:perspective
-       id="perspective6954"
-       inkscape:persp3d-origin="290 : 193.33333 : 1"
-       inkscape:vp_z="580 : 290 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 290 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <marker
-       viewBox="0 0 10 10"
-       refY="5"
-       refX="10"
-       orient="auto"
-       markerWidth="4"
-       markerUnits="strokeWidth"
-       markerHeight="3"
-       id="ArrowStart">
-      <path
-         id="path2295"
-         d="M 10 0 L 0 5 L 10 10 z" />
-    </marker>
-    <marker
-       viewBox="0 0 10 10"
-       refY="5"
-       refX="0"
-       orient="auto"
-       markerWidth="4"
-       markerUnits="strokeWidth"
-       markerHeight="3"
-       id="ArrowEnd">
-      <path
-         id="path2292"
-         d="M 0 0 L 10 5 L 0 10 z" />
-    </marker>
-    <inkscape:perspective
-       id="perspective7597"
-       inkscape:persp3d-origin="178.5405 : 158.483 : 1"
-       inkscape:vp_z="357.08099 : 237.7245 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 237.7245 : 1"
-       sodipodi:type="inkscape:persp3d" />
-  </defs>
-  <g
-     id="g1327">
-    <path
-       d="M 66.275,1.768 C 24.94,1.768 1.704,23.139 1.704,66.804 L 1.704,516.927 C 1.704,557.771 22.598,579.156 63.896,579.156 L 515.92,579.156 C 557.227,579.156 578.149,558.84 578.149,516.927 L 578.149,66.804 C 578.149,24.203 557.227,1.768 514.627,1.768 C 514.624,1.768 66.133,1.625 66.275,1.768 z"
-       style="fill:#111111;stroke:#eeeeee;stroke-width:3.40799999"
-       id="path1329" />
-  </g>
-  <g
-     id="g2319"
-     transform="translate(879.29125,36.805119)">
-    <path
-       id="path2323"
-       style="fill:#ffffff;stroke:none"
-       d="" />
-  </g>
-  <g
-     id="g2325"
-     transform="translate(879.29125,36.805119)">
-    <path
-       id="path2329"
-       style="fill:#ffffff;stroke:none"
-       d="" />
-  </g>
-  <path
-     inkscape:connector-curvature="0"
-     d="m 110.97935,343.63334 72.14862,-73.37816 -0.33141,-42.8298 -53.10716,51.9294 C 127.92789,196.28923 199.45316,126.52371 266.63225,117.55081 L 260.68052,81.609344 C 142.72643,104.95683 95.225062,197.16788 92.955492,279.05068 l -53.611969,-52.12297 -0.243959,44.53925 71.879786,72.16638 z"
-     style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none"
-     id="path2806" />
-  <path
-     inkscape:connector-curvature="0"
-     d="m 441.92231,409.21474 -99.72534,-25.38975 -36.83777,21.85128 71.6063,19.73759 c -70.88115,43.34575 -167.17131,16.6756 -208.74876,-36.84878 l -28.05646,23.23891 c 79.56239,90.15597 183.14921,84.76823 255.03812,45.50083 l -18.04006,72.56448 38.60444,-22.2149 26.15953,-98.43966 z"
-     style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none"
-     id="path3753" />
-  <path
-     inkscape:connector-curvature="0"
-     d="m 332.91506,90.757192 28.11428,98.991738 37.39335,20.88636 -18.88391,-71.83618 c 73.07503,39.53519 98.35723,136.19905 72.94453,199.03009 l 34.18431,12.59541 c 38.02007,-114.0734 -18.64979,-200.9514 -88.7038,-243.40583 L 469.77631,86.185749 431.18147,63.954176 332.91506,90.757192 z"
-     style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none"
-     id="path3755" />
-</svg>
diff --git a/resources_src/transport_slipway.svg b/resources_src/transport_slipway.svg
deleted file mode 100644 (file)
index 88e120f..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.0"
-   width="580"
-   height="580"
-   id="svg2"
-   sodipodi:version="0.32"
-   inkscape:version="0.48.0 r9654"
-   sodipodi:docname="transport_slipway.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <metadata
-     id="metadata2975">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <cc:license
-           rdf:resource="http://web.resource.org/cc/PublicDomain" />
-        <dc:language>en</dc:language>
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <sodipodi:namedview
-     inkscape:window-height="722"
-     inkscape:window-width="1048"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     guidetolerance="10.0"
-     gridtolerance="10.0"
-     objecttolerance="10.0"
-     borderopacity="1.0"
-     bordercolor="#666666"
-     pagecolor="#ffffff"
-     id="base"
-     inkscape:zoom="0.16293104"
-     inkscape:cx="302.11525"
-     inkscape:cy="217.23037"
-     inkscape:window-x="1403"
-     inkscape:window-y="100"
-     inkscape:current-layer="svg2"
-     showgrid="false"
-     inkscape:snap-global="true"
-     showguides="false"
-     inkscape:window-maximized="0">
-    <inkscape:grid
-       type="xygrid"
-       id="grid4670" />
-  </sodipodi:namedview>
-  <defs
-     id="defs4">
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 290 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="580 : 290 : 1"
-       inkscape:persp3d-origin="290 : 193.33333 : 1"
-       id="perspective2441" />
-    <inkscape:perspective
-       id="perspective3452"
-       inkscape:persp3d-origin="30 : 20 : 1"
-       inkscape:vp_z="60 : 30 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 30 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <symbol
-       viewBox="244.5 110 489 219.9"
-       id="symbol-university">
-      <path
-         id="path4460"
-         d="M79,43l57,119c0,0,21-96,104-96s124,106,124,106l43-133l82-17L0,17L79,43z" />
-      <path
-         id="path4462"
-         d="M94,176l-21,39"
-         stroke-width="20"
-         stroke="#000000"
-         fill="none" />
-      <path
-         id="path4464"
-         d="M300,19c0,10.5-22.6,19-50.5,19S199,29.5,199,19s22.6-19,50.5-19S300,8.5,300,19z" />
-      <path
-         id="path4466"
-         d="M112,216l-16-38L64,88c0,0-9-8-4-35s16-24,16-24"
-         stroke-width="20"
-         stroke="#000000"
-         ill="none" />
-    </symbol>
-    <inkscape:perspective
-       id="perspective4471"
-       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
-       inkscape:vp_z="744.09448 : 526.18109 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 526.18109 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <inkscape:perspective
-       id="perspective4668"
-       inkscape:persp3d-origin="6 : 4 : 1"
-       inkscape:vp_z="12 : 6 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 6 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <marker
-       viewBox="0 0 10 10"
-       refY="5"
-       refX="10"
-       orient="auto"
-       markerWidth="4"
-       markerUnits="strokeWidth"
-       markerHeight="3"
-       id="ArrowStart">
-      <path
-         id="path3634"
-         d="M 10 0 L 0 5 L 10 10 z" />
-    </marker>
-    <marker
-       viewBox="0 0 10 10"
-       refY="5"
-       refX="0"
-       orient="auto"
-       markerWidth="4"
-       markerUnits="strokeWidth"
-       markerHeight="3"
-       id="ArrowEnd">
-      <path
-         id="path3631"
-         d="M 0 0 L 10 5 L 0 10 z" />
-    </marker>
-    <inkscape:perspective
-       id="perspective2510"
-       inkscape:persp3d-origin="306.082 : 204.39034 : 1"
-       inkscape:vp_z="612.164 : 306.58551 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 306.58551 : 1"
-       sodipodi:type="inkscape:persp3d" />
-  </defs>
-  <path
-     inkscape:connector-curvature="0"
-     id="path1329"
-     style="fill:#111111;stroke:#eeeeee;stroke-width:3.40799999"
-     d="M 66.275,1.768 C 24.94,1.768 1.704,23.139 1.704,66.804 l 0,450.123 c 0,40.844 20.895,62.229 62.192,62.229 l 452.024,0 c 41.307,0 62.229,-20.315 62.229,-62.229 l 0,-450.123 c 0,-42.601 -20.922,-65.036 -63.521,-65.036 -0.004,0 -448.495,-0.143 -448.353,0 z" />
-  <g
-     id="layer3"
-     inkscape:label="Layout"
-     style="display:none;stroke:#757575;stroke-opacity:1"
-     transform="matrix(48.14969,0,0,48.14969,-536.27327,-33.306752)">
-    <rect
-       style="fill:none;stroke:#757575;stroke-width:0.10000000000000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
-       id="rect4134"
-       width="10"
-       height="10"
-       x="1"
-       y="1" />
-    <rect
-       style="fill:none;stroke:#757575;stroke-width:0.10000000000000001;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
-       id="rect4136"
-       width="8"
-       height="8"
-       x="2"
-       y="2" />
-  </g>
-  <path
-     style="fill:#ffffff;fill-opacity:1;stroke:none"
-     d="m 48.51278,320.63371 0,194.22696 494.14877,1.12462 0.93184,-50.59538 z"
-     id="path3206"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccc" />
-  <path
-     style="fill:#ffffff;fill-opacity:1;stroke:none"
-     d="M 87.358171,252.65428 524.36882,388.61315 514.65748,408.03584 77.646824,272.07697 z"
-     id="path3976"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccc" />
-  <path
-     inkscape:connector-curvature="0"
-     style="fill:none;stroke:#ffffff;stroke-width:17.45149612;stroke-miterlimit:4;stroke-opacity:1"
-     d="M 343.74281,369.19134 C 343.74281,386.20651 328.63565,400 310,400 c -18.63565,0 -33.74282,-13.79349 -33.74282,-30.80866 0,-17.01517 15.10717,-30.8087 33.74282,-30.8087 18.63565,0 33.74281,13.79353 33.74281,30.8087 z"
-     id="path3978" />
-  <path
-     style="fill:#ffffff;fill-opacity:1;stroke:none"
-     d="m 139.90709,152.92648 c 0,0 -14.56738,69.87308 81.41584,102.28303 l 269.39475,89.86952 50.24178,-62.58177 -276.7702,-93.43196 32.61304,-39.66455 -22.03586,-8.81436 -37.02021,38.78313 z"
-     id="path3980"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccccccc" />
-</svg>
diff --git a/resources_src/transport_traffic_calming.svg b/resources_src/transport_traffic_calming.svg
deleted file mode 100644 (file)
index f8b79d1..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   version="1.0"
-   width="580"
-   height="580"
-   id="svg2"
-   sodipodi:version="0.32"
-   inkscape:version="0.48.0 r9654"
-   sodipodi:docname="transport_traffic_calming.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <metadata
-     id="metadata10">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <cc:license
-           rdf:resource="http://web.resource.org/cc/PublicDomain" />
-        <dc:language>en</dc:language>
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <sodipodi:namedview
-     inkscape:window-height="1021"
-     inkscape:window-width="1680"
-     inkscape:pageshadow="2"
-     inkscape:pageopacity="0.0"
-     guidetolerance="10.0"
-     gridtolerance="10.0"
-     objecttolerance="10.0"
-     borderopacity="1.0"
-     bordercolor="#666666"
-     pagecolor="#ffffff"
-     id="base"
-     showgrid="true"
-     inkscape:zoom="0.70710678"
-     inkscape:cx="-162.1272"
-     inkscape:cy="-25.120471"
-     inkscape:window-x="1280"
-     inkscape:window-y="0"
-     inkscape:current-layer="svg2"
-     inkscape:window-maximized="1">
-    <inkscape:grid
-       type="xygrid"
-       id="grid3779" />
-  </sodipodi:namedview>
-  <defs
-     id="defs4">
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 290 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="580 : 290 : 1"
-       inkscape:persp3d-origin="290 : 193.33333 : 1"
-       id="perspective12" />
-    <style
-       type="text/css"
-       id="style6">
-   
-    .fil0 {fill:#EF7900}
-   
-  </style>
-    <inkscape:perspective
-       id="perspective6807"
-       inkscape:persp3d-origin="29.116032 : 19.410688 : 1"
-       inkscape:vp_z="58.232063 : 29.116032 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 29.116032 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <inkscape:perspective
-       id="perspective6954"
-       inkscape:persp3d-origin="290 : 193.33333 : 1"
-       inkscape:vp_z="580 : 290 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 290 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <marker
-       viewBox="0 0 10 10"
-       refY="5"
-       refX="10"
-       orient="auto"
-       markerWidth="4"
-       markerUnits="strokeWidth"
-       markerHeight="3"
-       id="ArrowStart">
-      <path
-         id="path2295"
-         d="M 10 0 L 0 5 L 10 10 z" />
-    </marker>
-    <marker
-       viewBox="0 0 10 10"
-       refY="5"
-       refX="0"
-       orient="auto"
-       markerWidth="4"
-       markerUnits="strokeWidth"
-       markerHeight="3"
-       id="ArrowEnd">
-      <path
-         id="path2292"
-         d="M 0 0 L 10 5 L 0 10 z" />
-    </marker>
-    <inkscape:perspective
-       id="perspective7597"
-       inkscape:persp3d-origin="178.5405 : 158.483 : 1"
-       inkscape:vp_z="357.08099 : 237.7245 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 237.7245 : 1"
-       sodipodi:type="inkscape:persp3d" />
-  </defs>
-  <g
-     id="g1327">
-    <path
-       d="M 66.275,1.768 C 24.94,1.768 1.704,23.139 1.704,66.804 L 1.704,516.927 C 1.704,557.771 22.598,579.156 63.896,579.156 L 515.92,579.156 C 557.227,579.156 578.149,558.84 578.149,516.927 L 578.149,66.804 C 578.149,24.203 557.227,1.768 514.627,1.768 C 514.624,1.768 66.133,1.625 66.275,1.768 z"
-       style="fill:#111111;stroke:#eeeeee;stroke-width:3.40799999"
-       id="path1329" />
-  </g>
-  <g
-     id="g2319"
-     transform="translate(879.29125,36.805119)">
-    <path
-       id="path2323"
-       style="fill:#ffffff;stroke:none"
-       d="" />
-  </g>
-  <g
-     id="g2325"
-     transform="translate(879.29125,36.805119)">
-    <path
-       id="path2329"
-       style="fill:#ffffff;stroke:none"
-       d="" />
-  </g>
-  <path
-     style="fill:#ffffff;fill-opacity:1;stroke:none"
-     d="m 60,490 480,0 0,-30 c 0,0 -80,0 -100,-20 -40,-80 -240,-80 -280,0 -20,20 -100,20 -100,20 z"
-     id="path2997"
-     inkscape:connector-curvature="0"
-     sodipodi:nodetypes="ccccccc" />
-</svg>
diff --git a/resources_src/water_generic.svg b/resources_src/water_generic.svg
deleted file mode 100644 (file)
index fcfbc24..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="744.09448819"
-   height="1052.3622047"
-   id="svg2"
-   version="1.1"
-   inkscape:version="0.47pre4 r22446"
-   sodipodi:docname="New document 1">
-  <defs
-     id="defs4">
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 526.18109 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="744.09448 : 526.18109 : 1"
-       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
-       id="perspective10" />
-    <inkscape:perspective
-       id="perspective3602"
-       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
-       inkscape:vp_z="1 : 0.5 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 0.5 : 1"
-       sodipodi:type="inkscape:persp3d" />
-    <inkscape:perspective
-       id="perspective3602-1"
-       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
-       inkscape:vp_z="1 : 0.5 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_x="0 : 0.5 : 1"
-       sodipodi:type="inkscape:persp3d" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="0.7"
-     inkscape:cx="259.38208"
-     inkscape:cy="445.21264"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:window-width="1680"
-     inkscape:window-height="1026"
-     inkscape:window-x="1280"
-     inkscape:window-y="0"
-     inkscape:window-maximized="1" />
-  <metadata
-     id="metadata7">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title></dc:title>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1">
-    <rect
-       style="fill:#6fc3ff;fill-opacity:1;stroke:none"
-       id="rect3590"
-       width="274.28571"
-       height="274.28571"
-       x="152.85715"
-       y="240.93361"
-       ry="32.857143" />
-    <path
-       style="fill:none;stroke:#ffffff;stroke-width:14.30000000000000071;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
-       d="m 191.42857,353.79075 c 0,0 27.14285,-52.85714 62.85714,-51.42857 42.85714,1.42857 50.00001,55.71429 85.71429,57.14286 34.28572,0 44.28571,-54.28571 44.28571,-54.28571"
-       id="path3592"
-       sodipodi:nodetypes="cccc" />
-    <path
-       style="fill:none;stroke:#ffffff;stroke-width:14.30000019;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
-       d="m 196.42857,400.94783 c 0,0 27.14285,-52.85714 62.85714,-51.42857 42.85714,1.42857 50.00001,55.71429 85.71429,57.14286 34.28572,0 44.28571,-54.28571 44.28571,-54.28571"
-       id="path3592-8"
-       sodipodi:nodetypes="cccc" />
-    <path
-       style="fill:none;stroke:#ffffff;stroke-width:14.30000019;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
-       d="m 200.71429,446.66212 c 0,0 27.14285,-52.85714 62.85714,-51.42857 42.85714,1.42857 50.00001,55.71429 85.71429,57.14286 34.28572,0 44.28571,-54.28571 44.28571,-54.28571"
-       id="path3592-9"
-       sodipodi:nodetypes="cccc" />
-  </g>
-</svg>
index 7b26996bb245bdf5765048f7d65d1a7b1add3244..d43f5849ccf865c9c40bba65abdf4a2063a37579 100644 (file)
@@ -2,6 +2,8 @@ package {
 
     import net.systemeD.halcyon.connection.NodeTest;
     import net.systemeD.halcyon.connection.actions.JoinNodeActionTest;
+    import net.systemeD.halcyon.connection.actions.AddMemberToRelationActionTest;
+    import net.systemeD.halcyon.connection.actions.SetTagActionTest;
     import net.systemeD.potlatch2.mapfeatures.FeatureTest;
 
     [Suite]
@@ -10,6 +12,8 @@ package {
 
         public var nodeTest:NodeTest;
         public var joinNodeActionTest:JoinNodeActionTest;
+        public var addMemberToRelationActionTest:AddMemberToRelationActionTest;
+        public var setTagActionTest:SetTagActionTest;
 
         //Potlatch2 tests. If anyone wants to separate these out, and / or rename the suite, feel free
         public var featureTest:FeatureTest;
diff --git a/tests/src/net/systemeD/halcyon/connection/actions/AddMemberToRelationActionTest.as b/tests/src/net/systemeD/halcyon/connection/actions/AddMemberToRelationActionTest.as
new file mode 100644 (file)
index 0000000..084b135
--- /dev/null
@@ -0,0 +1,83 @@
+package net.systemeD.halcyon.connection.actions {
+
+    import org.flexunit.Assert;
+    import net.systemeD.halcyon.connection.actions.AddMemberToRelationAction;
+    import net.systemeD.halcyon.connection.Relation;
+    import net.systemeD.halcyon.connection.Node;
+    import net.systemeD.halcyon.connection.RelationMember;
+    import net.systemeD.halcyon.connection.UndoableAction;
+    import net.systemeD.halcyon.connection.*;
+
+    public class AddMemberToRelationActionTest {
+
+        [Before]
+        public function setUp():void {
+            //Instantiate the connection first to prevent errors
+            Connection.getConnection();
+        }
+
+
+        [Test]
+        public function addMember():void {
+
+            var n:Node = new Node(1,1,{},true,5,10);
+
+            var rel:Relation = new Relation(1,1,{},true,[]);
+            var member:RelationMember = new RelationMember(n, "foo");
+
+            rel.appendMember(member, function(action:UndoableAction):void { action.doAction(); });
+            Assert.assertEquals(1, rel.length);
+
+        }
+
+        [Test]
+        public function spliceStuff():void {
+
+            // create an array
+            var arr:Array = ["a", "b", "c", "d"];
+            Assert.assertEquals(4, arr.length);
+
+            // doesn't actually splice onto the end, inserts at position 4
+            arr.splice(-1, 0, "e");
+            Assert.assertEquals(5, arr.length);
+            Assert.assertEquals("e", arr[3]);
+            Assert.assertEquals("d", arr[4]);
+        }
+
+        [Test]
+        public function appendMember():void {
+            var n:Node = new Node(1,1,{},true,5,10);
+            var n2:Node = new Node(2,1,{},true,5,10);
+            var n3:Node = new Node(3,1,{},true,5,10);
+
+            var member1:RelationMember = new RelationMember(n, "first");
+            var member2:RelationMember = new RelationMember(n2, "second");
+            var member3:RelationMember = new RelationMember(n3, "third");
+
+            var rel:Relation = new Relation(1,1,{},true, [member1, member2]);
+            Assert.assertEquals(2, rel.length);
+
+            rel.appendMember(member3, function(action:UndoableAction):void { action.doAction(); });
+            Assert.assertEquals(member3, rel.getMember(2));
+        }
+
+        [Test]
+        public function setMember():void {
+            var n:Node = new Node(1,1,{},true,5,10);
+            var n2:Node = new Node(2,1,{},true,5,10);
+            var n3:Node = new Node(3,1,{},true,5,10);
+
+            var member1:RelationMember = new RelationMember(n, "first");
+            var member2:RelationMember = new RelationMember(n2, "second");
+            var member3:RelationMember = new RelationMember(n3, "third");
+
+            var rel:Relation = new Relation(1,1,{},true, [member1, member2]);
+            Assert.assertEquals(2, rel.length);
+
+            rel.setMember(1, member3, function(action:UndoableAction):void { action.doAction(); });
+            Assert.assertEquals(member3, rel.getMember(1));
+
+            Assert.assertEquals(2, rel.length);
+        }
+    }
+}
\ No newline at end of file
diff --git a/tests/src/net/systemeD/halcyon/connection/actions/SetTagActionTest.as b/tests/src/net/systemeD/halcyon/connection/actions/SetTagActionTest.as
new file mode 100644 (file)
index 0000000..7ca18ec
--- /dev/null
@@ -0,0 +1,36 @@
+package net.systemeD.halcyon.connection.actions {
+
+    import org.flexunit.Assert;
+    import net.systemeD.halcyon.connection.actions.SetTagAction;
+    import net.systemeD.halcyon.connection.UndoableAction;
+    import net.systemeD.halcyon.connection.Entity;
+    import net.systemeD.halcyon.connection.Connection;
+
+    public class SetTagActionTest {
+
+        [Before]
+        public function setUp():void {
+            //Instantiate the connection first to prevent errors
+            Connection.getConnection();
+        }
+
+        [Test]
+        public function setTag():void {
+            var e:Entity = new Entity(1,1,{},true,1,"");
+            var action:UndoableAction = new SetTagAction(e, "foo", "bar");
+            action.doAction();
+
+            Assert.assertEquals("bar", e.getTag("foo"));
+        }
+
+        [Test]
+        public function setNullTag():void {
+            var e:Entity = new Entity(1,1,{foo: "bar"},true,1,"");
+            var action:UndoableAction = new SetTagAction(e, "foo", null);
+            action.doAction();
+
+            Assert.assertNull(e.getTag("foo"));
+        }
+
+    }
+}
\ No newline at end of file
index 4e8bd569ae333b738fbba663f44d3a6a966021d1..8e51cc0602d80492eee433fc208b69ecaf896e47 100644 (file)
@@ -3,4 +3,4 @@
 // at some point in the future.
 
 public var build_number:String="@@@buildnumber@@@";
-public var version:String="0.5";
+public var version:String="2.0";