Merge remote-tracking branch 'systemed/filebank' into filebank
authorTom Hughes <tom@compton.nu>
Sat, 24 Mar 2012 10:32:44 +0000 (10:32 +0000)
committerTom Hughes <tom@compton.nu>
Sat, 24 Mar 2012 10:32:44 +0000 (10:32 +0000)
125 files changed:
README.txt
build.xml
embedded/tab_transport.png
halcyon_viewer-config.xml
halcyon_viewer.as
l10n/locale/ast/help_dialog.properties [new file with mode: 0644]
l10n/locale/ast/p2_main.properties [new file with mode: 0644]
l10n/locale/br/help_dialog.properties [new file with mode: 0644]
l10n/locale/br/p2_main.properties [new file with mode: 0644]
l10n/locale/ca/p2_main.properties [new file with mode: 0644]
l10n/locale/de_DE/help_dialog.properties
l10n/locale/de_DE/p2_main.properties
l10n/locale/en_GB/help_dialog.properties
l10n/locale/en_GB/p2_main.properties
l10n/locale/en_US/help_dialog.properties
l10n/locale/en_US/p2_main.properties
l10n/locale/es_ES/help_dialog.properties [new file with mode: 0644]
l10n/locale/es_ES/p2_main.properties [new file with mode: 0644]
l10n/locale/fa/p2_main.properties [new file with mode: 0644]
l10n/locale/fi/p2_main.properties [new file with mode: 0644]
l10n/locale/fr_FR/help_dialog.properties
l10n/locale/fr_FR/p2_main.properties
l10n/locale/ga/p2_main.properties [new file with mode: 0644]
l10n/locale/gl/help_dialog.properties [new file with mode: 0644]
l10n/locale/gl/p2_main.properties [new file with mode: 0644]
l10n/locale/he/help_dialog.properties [new file with mode: 0644]
l10n/locale/he/p2_main.properties [new file with mode: 0644]
l10n/locale/hsb/help_dialog.properties [new file with mode: 0644]
l10n/locale/hsb/p2_main.properties [new file with mode: 0644]
l10n/locale/hu/help_dialog.properties [new file with mode: 0644]
l10n/locale/hu/p2_main.properties [new file with mode: 0644]
l10n/locale/ia/help_dialog.properties [new file with mode: 0644]
l10n/locale/ia/p2_main.properties [new file with mode: 0644]
l10n/locale/ja_JP/help_dialog.properties
l10n/locale/ja_JP/p2_main.properties
l10n/locale/ka/p2_main.properties [new file with mode: 0644]
l10n/locale/lb/p2_main.properties [new file with mode: 0644]
l10n/locale/mk/help_dialog.properties [new file with mode: 0644]
l10n/locale/mk/p2_main.properties [new file with mode: 0644]
l10n/locale/ms/help_dialog.properties [new file with mode: 0644]
l10n/locale/ms/p2_main.properties [new file with mode: 0644]
l10n/locale/nb_NO/help_dialog.properties [new file with mode: 0644]
l10n/locale/nb_NO/p2_main.properties [new file with mode: 0644]
l10n/locale/nl_NL/help_dialog.properties [new file with mode: 0644]
l10n/locale/nl_NL/p2_main.properties [new file with mode: 0644]
l10n/locale/nn_NO/help_dialog.properties [new file with mode: 0644]
l10n/locale/nn_NO/p2_main.properties [new file with mode: 0644]
l10n/locale/no_NO [new symlink]
l10n/locale/pl_PL/help_dialog.properties
l10n/locale/pl_PL/p2_main.properties
l10n/locale/ru/help_dialog.properties [new file with mode: 0644]
l10n/locale/ru/p2_main.properties [new file with mode: 0644]
l10n/locale/sq/help_dialog.properties [new file with mode: 0644]
l10n/locale/ta/p2_main.properties [new file with mode: 0644]
l10n/locale/tr/p2_main.properties [new file with mode: 0644]
l10n/locale/uk/help_dialog.properties [new file with mode: 0644]
l10n/locale/uk/p2_main.properties [new file with mode: 0644]
l10n/locale/vi_VN/help_dialog.properties
l10n/locale/vi_VN/p2_main.properties
l10n/locale/zh_CN/help_dialog.properties [new file with mode: 0644]
l10n/locale/zh_CN/p2_main.properties [new file with mode: 0644]
l10n/map/LocalizationMap.mxml
net/systemeD/controls/Spinner.as [new file with mode: 0644]
net/systemeD/halcyon/DebugURLRequest.as
net/systemeD/halcyon/JSController.as
net/systemeD/halcyon/Map.as
net/systemeD/halcyon/MapEvent.as
net/systemeD/halcyon/TileSet.as
net/systemeD/halcyon/WayUI.as
net/systemeD/halcyon/connection/Connection.as
net/systemeD/halcyon/connection/Entity.as
net/systemeD/halcyon/connection/EntityCollection.as
net/systemeD/halcyon/connection/Relation.as
net/systemeD/halcyon/connection/Tag.as
net/systemeD/halcyon/connection/TagEvent.as
net/systemeD/halcyon/connection/XMLConnection.as
net/systemeD/halcyon/connection/actions/DeleteWayAction.as
net/systemeD/halcyon/styleparser/CSSTransform.as [new file with mode: 0644]
net/systemeD/halcyon/styleparser/InstructionStyle.as
net/systemeD/halcyon/styleparser/RuleSet.as
net/systemeD/halcyon/styleparser/ShapeStyle.as
net/systemeD/halcyon/styleparser/Style.as
net/systemeD/halcyon/styleparser/StyleChooser.as
net/systemeD/halcyon/styleparser/TagValue.as [new file with mode: 0644]
net/systemeD/potlatch2/EditController.as
net/systemeD/potlatch2/TagGrid.mxml
net/systemeD/potlatch2/TagViewer.mxml
net/systemeD/potlatch2/Toolbox.mxml
net/systemeD/potlatch2/VectorSourceDialog.mxml
net/systemeD/potlatch2/collections/VectorBackgrounds.as
net/systemeD/potlatch2/controller/ControllerState.as
net/systemeD/potlatch2/controller/SelectedMultiple.as
net/systemeD/potlatch2/controller/SelectedPOINode.as
net/systemeD/potlatch2/controller/SelectedWay.as
net/systemeD/potlatch2/help/VideoPlayer.mxml
net/systemeD/potlatch2/mapfeatures/editors/CheckboxEditor.mxml
net/systemeD/potlatch2/mapfeatures/editors/ChoiceEditor.mxml
net/systemeD/potlatch2/mapfeatures/editors/FreeTextEditor.mxml
net/systemeD/potlatch2/mapfeatures/editors/NumberEditor.mxml
net/systemeD/potlatch2/mapfeatures/editors/RelationMemberEditorFactory.as
net/systemeD/potlatch2/mapfeatures/editors/RouteEditor.mxml
net/systemeD/potlatch2/mapfeatures/editors/SingleTagEditor.as
net/systemeD/potlatch2/mapfeatures/editors/SingleTagEditorFactory.as
net/systemeD/potlatch2/mapfeatures/editors/SliderEditor.mxml
net/systemeD/potlatch2/mapfeatures/editors/SpeedEditor.mxml
net/systemeD/potlatch2/mapfeatures/editors/TurnRestrictionEditor.mxml
net/systemeD/potlatch2/panels/BackgroundMergePanel.mxml
net/systemeD/potlatch2/panels/BackgroundPanel.mxml
net/systemeD/potlatch2/skins/CustomFormItemSkin.mxml [new file with mode: 0644]
net/systemeD/potlatch2/skins/CustomFormSkin.mxml [new file with mode: 0644]
potlatch2.mxml
resources/halcyon.html
resources/imagery.xml
resources/map_features/buildings.xml
resources/map_features/landuse.xml
resources/map_features/transport.xml
resources/stylesheets/core_landuse.css
resources/stylesheets/core_ways.css
resources/stylesheets/snapshot.css
styles/Application.css
tests/fakeroot/embedded [new symlink]
tests/src/net/systemeD/halcyon/connection/NodeTest.as
tests/src/net/systemeD/halcyon/connection/actions/AddMemberToRelationActionTest.as
tests/src/net/systemeD/halcyon/connection/actions/JoinNodeActionTest.as
tests/src/net/systemeD/halcyon/connection/actions/SetTagActionTest.as

index dabfc42ada5060d4480c384d5ca769390c3e3ea6..563c982cf7354cf25006207fd4949fcd30c9954f 100644 (file)
@@ -12,7 +12,7 @@ Many icons used in halcyon/potlatch2 are based on the awesome CC0-licensed SJJB
 
 * Flex SDK 4.5
 ** Product page: http://www.adobe.com/products/flex/ 
-** Flex 4 Download page: http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4 (free, OS X/Windows/Linux)
+** Flex 4.5 Download page: http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4.5 (free, OS X/Windows/Linux)
 * AS3 docs - http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/
 * Flash debug player - http://www.adobe.com/support/flashplayer/downloads.html
 * Basically you might as well just sell your soul to Adobe
@@ -60,7 +60,8 @@ You can create and run the unit tests (not that there are that many) using flexu
 * ant test
 
 If you're using Mac OS X, you may need to tell ant to use more memory, by
-typing export ANT_OPTS=-Xmx500M beforehand (you can put this in your .profile).
+typing export ANT_OPTS="-Xms768m -Xmx1024m -XX:MaxPermSize=512m" 
+beforehand (you can put this in your .profile).
 
 
 Compiling during development:
index 45c5ee655a625dc8cc461823043f33a03a8c6eb6..7b9ec07688e90108f2076f03ff1a321af5fce6b4 100644 (file)
--- a/build.xml
+++ b/build.xml
   <!-- note that there's an asdoc target in Flex 4, if/when we move to that -->
   <target name="docs" depends="manifests,makeLocalesList">
     <exec executable="${ASDOC}" failonerror="true">
-      <arg line="-source-path ."/>
-      <arg line="-doc-sources net/systemeD/"/>
+      <arg line="-source-path=."/>
+      <arg line="-doc-sources=net/systemeD/"/>
       <arg line="-external-library-path=lib/"/>
       <arg line="-external-library-path=${FLEX_HOME}/frameworks/libs/"/>
       <arg line="-external-library-path=${FLEX_HOME}/frameworks/libs/player/10.2/"/>
       <arg line="-lenient"/>
-      <arg line="-target-player 10.2.0"/>
-      <arg line="-exclude-classes ${org_classes} ${it_classes} ${hxasm_classes} ${com_classes}"/>
-      <arg line="-output resources/docs/"/>
-      <arg line="-window-title 'Halcyon and Potlatch2 Developer documentation'" />
-      <arg line="-main-title 'Halcyon and Potlatch2 Developer documentation'" />
-      <arg line="-footer 'Found an error? Help us fix it. http://wiki.openstreetmap.org/wiki/Potlatch2'"/>
+      <arg line="-target-player=10.2.0"/>
+      <arg line="-exclude-classes=${org_classes},${it_classes},${hxasm_classes},${com_classes}"/>
+      <arg line="-output=resources/docs/"/>
+      <arg line="-window-title='Halcyon and Potlatch2 Developer documentation'" />
+      <arg line="-main-title='Halcyon and Potlatch2 Developer documentation'" />
+      <arg line="-footer='Found an error? Help us fix it. http://wiki.openstreetmap.org/wiki/Potlatch2'"/>
       <arg line="-package net.systemeD.controls 'Custom-built controls used in Potlatch2'" />
       <arg line="-package net.systemeD.halcyon 'The AS3 rendering library'" />
       <arg line="-package net.systemeD.halcyon.connection 'The connection to the main OSM server, and the entities'" />
@@ -94,9 +94,8 @@
       <arg line="-package net.systemeD.potlatch2.tools 'Data manipulation tools'" />
       <arg line="-package net.systemeD.potlatch2.utils 'Data loading utilities'" />
       
-      <arg line="-left-frameset-width 300" />
-      <arg line="-locale=${locales.list}" />
-      <arg line="-allow-source-path-overlap true" />
+      <arg line="-left-frameset-width=300" />
+      <arg line="-allow-source-path-overlap=true" />
     </exec>
   </target>
 
 
         <fileset id="com_sources" dir="${basedir}/com/" />
         <!-- convert the names of excluded classes to packages with class names -->
-        <pathconvert property="com_classes" pathsep=" " refid="com_sources">
+        <pathconvert property="com_classes" pathsep="," refid="com_sources">
                 <chainedmapper>
                         <globmapper from="${basedir}/*" to="*"/>
                         <mapper type="package" from="*.as" to="*"/>
         <!-- Get the list of all files in the org directory -->
         <fileset id="org_sources" dir="${basedir}/org/" />
         <!-- convert the names of excluded classes to packages with class names -->
-        <pathconvert property="org_classes" pathsep=" " refid="org_sources">
+        <pathconvert property="org_classes" pathsep="," refid="org_sources">
                 <chainedmapper>
                         <globmapper from="${basedir}/*" to="*"/>
                         <mapper type="package" from="*.as" to="*"/>
 
         <fileset id="it_sources" dir="${basedir}/it/" />
         <!-- convert the names of excluded classes to packages with class names -->
-        <pathconvert property="it_classes" pathsep=" " refid="it_sources">
+        <pathconvert property="it_classes" pathsep="," refid="it_sources">
                 <chainedmapper>
                         <globmapper from="${basedir}/*" to="*"/>
                         <mapper type="package" from="*.as" to="*"/>
 
         <fileset id="hxasm_sources" dir="${basedir}/hxasm/" />
         <!-- convert the names of excluded classes to packages with class names -->
-        <pathconvert property="hxasm_classes" pathsep=" " refid="hxasm_sources">
+        <pathconvert property="hxasm_classes" pathsep="," refid="hxasm_sources">
                 <chainedmapper>
                         <globmapper from="${basedir}/*" to="*"/>
                         <mapper type="package" from="*.as" to="*"/>
        
       <!-- Sets java.awt.headless=true so font compilation works in headless environments -->
       <compiler.headless-server>true</compiler.headless-server>
-      <target-player>10.0.0</target-player>
+      <target-player>10.2.0</target-player>
      </mxmlc>
      
      <echo message="The ${test.application.name}.swf test runner has been created in ${test.bin.dir}" />
 
 
         <source-path path-element="${basedir}/l10n/locale/@{locale}"/>
+        <source-path path-element="${basedir}/l10n/locale/en_US"/>
         <include-resource-bundles>help_dialog</include-resource-bundles>
         <include-resource-bundles>p2_main</include-resource-bundles>
 
     <ac:for param="dirname">
       <path>
         <dirset dir="${basedir}/l10n/locale/">
+          <include name="*"/>
           <exclude name="bundles"/>
-          <include name="??_??"/>
         </dirset>
       </path>
       <sequential>
index 5cb7d91cd97172dffc4af6c8ac8c3ea732ebac0e..8c0969071f1b4beb26d8c66cf9667f57b73c1c32 100644 (file)
Binary files a/embedded/tab_transport.png and b/embedded/tab_transport.png differ
index 4b4c2ed6bb084c7670a01d2e657d7ee8816462ed..a4cd4d8a189a09611df6041070ebab5c95aaaeb8 100644 (file)
       <library-path append="true">
           <path-element>lib</path-element>
       </library-path>
+
+       
    </compiler>
+       <static-link-runtime-shared-libraries>true</static-link-runtime-shared-libraries>
 
    <metadata>
       <title>Halcyon</title>
index cbf3c914f9ac12dcc29ba1e70233568607b8187e..3e8598cc711253d2eddad955b39c1f2c75932367 100644 (file)
@@ -7,6 +7,7 @@ package {
        import flash.events.*;
        import flash.events.MouseEvent;
        import flash.display.*;
+       import flash.text.Font;
        import flash.text.TextField;
        import flash.external.*;
 //     import bustin.dev.Inspector;
@@ -18,30 +19,45 @@ package {
                function halcyon_viewer():void {
                        stage.align = StageAlign.TOP_LEFT;
                        stage.scaleMode = StageScaleMode.NO_SCALE;
-                       this.loaderInfo.addEventListener(Event.COMPLETE, init);
+                       this.loaderInfo.addEventListener(Event.COMPLETE, startInit);
                }
        
-               private function init(e:Event):void {
+               private function startInit(e:Event):void {
+                       var loader:Loader = new Loader();
+                       loader.contentLoaderInfo.addEventListener(Event.COMPLETE, startApp);
+                       loader.load(new URLRequest("FontLibrary.swf"));
+               }
+
+               private function startApp(event:Event):void {
+                       // Initialise font
+                       var FontLibrary:Class = event.target.applicationDomain.getDefinition("FontLibrary") as Class;
+                       Font.registerFont(FontLibrary.DejaVu);
+
+                       // Get parameters
+                       var params:Object={}; var k:String;
+                       for (k in this.loaderInfo.parameters) params[k]=this.loaderInfo.parameters[k];
+                       Globals.vars.flashvars = loaderInfo.parameters; // ** FIXME - not sure we should use flashvars anywhere in Halcyon/P2
 
-                       theMap = new Map(this.loaderInfo.parameters);
+                       // Initialise map
+                       theMap = new Map();
             theMap.updateSize(stage.stageWidth, stage.stageHeight);
                        addChild(theMap);
-                       Globals.vars.root=theMap;
-                       Globals.vars.nocache = loaderInfo.parameters['nocache'] == 'true';
 
-                       // add debug field
-                       var t:TextField=new TextField();
-                       t.width=400; t.height=100; t.x=400; t.border=true;
-                       t.multiline=true;
-                       addChild(t);
-                       Globals.vars.debug=t;
-            t.visible = loaderInfo.parameters["show_debug"] == 'true';
+                       // Add connection
+                       // ** FIXME - should get the stylesheet from parameters
+                       var conn:Connection = new XMLConnection("Main", params['api'], params['policy'], params);
+                       theMap.addLayer(conn, params['style'], false, true);
+                       theMap.init(params['lat'], params['lon'], params['zoom']);
+
+                       Globals.vars.root=theMap;       // ** FIXME - should no longer be necessary
+                       Globals.vars.nocache = loaderInfo.parameters['nocache'] == 'true';
 
                        stage.addEventListener(MouseEvent.MOUSE_UP, theMap.mouseUpHandler);
                        stage.addEventListener(MouseEvent.MOUSE_MOVE, theMap.mouseMoveHandler);
                        stage.addEventListener(MouseEvent.MOUSE_DOWN, theMap.mouseDownHandler);
 //                     Inspector.getInstance().init(stage);
 
+                       // Zoom buttons
                        var z1:Sprite=new Sprite();
                        z1.graphics.beginFill(0x0000FF); z1.graphics.drawRoundRect(0,0,20,20,5); z1.graphics.endFill();
                        z1.graphics.lineStyle(2,0xFFFFFF);
diff --git a/l10n/locale/ast/help_dialog.properties b/l10n/locale/ast/help_dialog.properties
new file mode 100644 (file)
index 0000000..6b2fe3e
--- /dev/null
@@ -0,0 +1,31 @@
+# Messages for Asturian (Asturianu)
+# Exported from translatewiki.net
+# Author: Xuacu
+
+help.gettingStarted=Primeros pasos
+help.welcome=Bienveníos
+help.whyOpenstreetmap=<p><b>¿Por qué OpenStreetMap?</b> OSM ye un serviciu de mapes nel que tolos datos s'anueven constantemente y los edita xente como tu. La ventaya obvia ye que se pue usar llibremente, pero tamién ye un recursu importante na cartografía de crisis (por exemplu, la utilización de datos d'OSM pa coordinar los esfuerzos de salvamentu nel terremotu d'Haití). La precisión de los datos ye crítica, y ¡esperamos que puedas ufrir voluntariamente parte del to tiempu!</p>
+help.activeMembers=<p><b>+ Pa los miembros activos d'OpenStreetMap</b>, anicia sesión en OSM enantes d'editar</p>
+help.newMembers=<p><b>+ Pa miembros nuevos</b>, por favor visita <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> pa crear una cuenta, anicia sesión, y llueu vuelvi equí pa permitir l'accesu a Potlatch 2 y empezar a editar.</p>
+help.introText=<p><b>Potlatch2</b> ye un editor d'OpenStreetMap (OSM) que te permite editar direutamente per aciu del sitiu Web {0}.</p>
+help.introduction=Introducción
+help.controls=Controles
+help.interfaceControls=Controles de la interfaz
+help.mapBackground=<p>Escueyi'l fondu del mapa d'unu de los elementos de la llista o amiesta'l to propiu ficheru vectorial.</p>
+help.colourStyle=<p>Escueyi l'estilu col que quies ver el mapa. Los colores y l'estilu xeneral cambien y tamién incluyen otres opciones como cadarma d'alambre (wireframe).</p>
+help.gps=GPS
+help.createOsmMap=<p>Crear los datos del mapa OSM usando les traces GPS d'otra xente como fondu</p>
+help.myGps=MyGPS
+help.displayGps=<p>Amuesa les traces GPS que xubisti anteriormente a OpenStreetMap.</p>
+help.undoRedo=Desfacer / Volver a facer
+help.madeMistake=<p>¿T'enquivocasti? Val con calcar desfacer y/o volver a facer pa correxir les ediciones.</p>
+help.help=Ayuda
+help.guideInfomation=<p>Trai esta guía en casu de necesitar dalguna información cuando principies a editar.</p>
+help.save=Guardar
+help.addingFeatures=Amestar carauterístiques
+help.addingFeaturesText=<p><i>Enantes de que principies, la primera regla que tienes que saber ye no que cinca al usu de datos privativos. ¡Los datos de mapes con drechos d'autor o cualesquier otru datu privativu tan estrictamente torgaos! ¡Nun se permite copiar, calcar o cualesquier otra reproducción de trabayos con drechos d'autor! (Fonte: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - Wiki d'OpenStreetMap</a>)</i></p>\n  <p></p>\n  <p>Les carauterístiques lliniales como les cais, caminos, ferrocarriles y siluetes d'edificios vamos llamales equí <b>víes</b>.</p>\n  <p>Si de sópitu notes que te falta la barra llateral con tolos iconos, ye porque seleicionasti una carauterística nel mapa. Simplemente deseleicionala calcando nun área balera del mapa pa que vuelvan a apaecer los iconos.</p>\n            <p><b>Pa crear un puntu (o noyu)</b>, arrastra y suelta l'iconu apropiáu de la barra llateral al mapa. Mira Amestar PDIs pa saber más tocante a crear un PDI (Puntu d'interés)</p>\n            <p><b>Pa crear una vía</b>, principia calcando nel mapa nel puntu de comienzu, y llueu calca en cada puntu socesivu. Fai doble-click p'acabar la llinia o calca Intro.</p>\n            <p><b>Pa crear un polígonu</b>, principia calcando nel mapa nel puntu de comienzu, y llueu calca en cada puntu socesivu (asemeyáu a crear una vía), y acaba calcando nel primer puntu pa zarrar el polígonu.</p>\n            <p>Recuerda, si t'enquivoques puedes siempres calcar nel botón Desfacer. Calcando la tecla Esc se desfairán toles ediciones de la carauterística actual.</p>
+help.editBeg=Editar (Princ.)
+help.editingFeatures=Editar carauterístiques (Principiantes)
+help.editingFeaturesText=<p><b>P'amestar un puntu a una vía esistente</b>, seleiciona la vía y mayús+click nel llugar deseáu.</p>\n    <p><b>Pa desaniciar un puntu</b>, seleiciona'l puntu y calca nel botón Desaniciar elementu nel requexu d'abaxo a mandrecha o calca Desaniciar (o Desaniciar atrás) nel tecláu.</p>\n  <p><b>Pa desaniciar una vía</b>, seleiciona esa vía y calca nel botón Desaniciar elementu nel requexu d'abaxo a mandrecha o calca Mayús+Desaniciar (o Mayús+Desaniciar atrás) nel tecláu.</p>\n    <p><b>Pa mover un puntu</b>, calca y arrastra'l puntu.</p>\n   <p><b>Pa mover una vía</b>, calca y arrastra l'elementu completu. Gabitu: Garra un segmentu cuando nun quieras mover un noyu de mou accidental.</p>\n  <p><b>Pa estender una vía</b>, calca nun puntu final de la vía. Darréu, sigui dibuxando como de vezu.</p>\n    <p><b>P'amestar una vía nueva que s'estiende dende una vía esistente</b>, mayús+click nun puntu del final de la vía. Darréu, sigui dibuxando como de vezu.</p>
+help.shortcuts=Atayos
+help.keyboardShortcuts=Atayos de tecláu
diff --git a/l10n/locale/ast/p2_main.properties b/l10n/locale/ast/p2_main.properties
new file mode 100644 (file)
index 0000000..76e3c04
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Asturian (Asturianu)
+# Exported from translatewiki.net
+# Author: Xuacu
+
+main.undo=Desfacer
+main.redo=Volver a facer
+main.background=Fondu
+main.map_style=Estilu de mapa
+main.gpsButton=Data GPS
+main.gps_data=Data GPS
+main.my_tracks=Les mios traces
+main.clear_gps=Llimpiar
+main.help=Ayuda
+main.options=Opciones
+main.save=Guardar
+tag_viewer.dndprompt=Amestar puntos nuevos arrastrandolos al mapa
+toolbox.delete_node=Desaniciar noyu (Desaniciar)
+toolbox.delete_area=Desaniciar área (May.+Desaniciar)
+toolbox.delete_way=Desaniciar vía (May.+Desaniciar)
+toolbox.delete_item=Desaniciar elementu
+toolbox.reverse_direction=Invertir direición (V)
+toolbox.split_way=Partir vía (X)
+toolbox.merge_ways=Amestar víes
+toolbox.straighten_way=Enderechar vía
+toolbox.make_circular=Facer circular
+toolbox.make_right_angled=Poner n'ángulu rectu (Q)
+toolbox.create_parrallel_way=Crear vía paralela (P)
+oauth.gotLinkBox=Calca nel enllaz d'abaxo p'abrir una páxina web que te pidirá qu'autorices l'accesu d'esta aplicación.
+oauth.authorized=Cuando autorices l'accesu, calca nel botón «Probar accesu» d'abaxo
+oauth.deniedLabel=<b>Se negó l'accesu, compruebalo ya intentalo otra vuelta</b>
+oauth.rememberMe=Recordame
+oauth.permFail=<p>El sirvidor refugó les credenciales d'esta aplicación -- nun se pudo alcontrar un enllaz d'autorización.        </p>\n<p>       <b>L'accesu OAuth nun va ser posible.</b>       </p>\n<p>       Ponte'n contautu col vendedor d'esa aplicación pa saber qué ye lo que pasa.</p>
+oauth.tempFail=Hebo un problema al comunicar col sirvidor pa pidir autorización.    Pue ser por un error temporal, intentalo más sero.
+oauth.tryAccessButton=Probar accesu
+oauth.cancelButton=Encaboxar
+save.editDescription=Escribi una descripción de les tos ediciones. Esto s'utilizará pa dar a otros mapeadores una idea de los cambios que tas faciendo.
+styleSelector.editButton=Editar...
+backgroundSelector.dim=dilir
+backgroundSelector.sharpen=rescamplar
+backgroundSelector.editButton=Editar...
+backgroundSelector.vectorButton=Ficheru vectorial...
+options.tbcheck=Amosar ferramientes
+options.cursorcheck=Usar cursores personalizaos
+options.ok=Aceutar
diff --git a/l10n/locale/br/help_dialog.properties b/l10n/locale/br/help_dialog.properties
new file mode 100644 (file)
index 0000000..ebf062f
--- /dev/null
@@ -0,0 +1,25 @@
+# Messages for Breton (Brezhoneg)
+# Exported from translatewiki.net
+# Author: Fulup
+
+help.gettingStarted=Kregiñ ganti
+help.welcome=Degemer mat
+help.whyOpenstreetmap=<p><b>Da betra OpenStreetMap ?</b> OSM zo ur servij kartennaouiñ ma vez klokaet ha difaziet dibaouez an holl roadennoù anezhañ gant tud vunut eveldoc'h. Emsav eo rak dieub da implijout ha frank a wirioù eo OSM. Deuet eo OSM da vezañ un oberour eus ar c'hentañ troc'h pa vez da verañ enkadennoù zo (da sk. pa oa bet ret kenurzhiañ strivoù savete mab-den  da-heul krenn-douar Haiti). Pouezus-bras eo resister ar roadennoù ha spi hon eus e vo mat deoc'h gouestlañ un tamm eus hoc'h amzer deomp !</p>
+help.activeMembers=<p><b>+ Evit izili oberiant OpenStreetMap</b>, kevreit da OSM a-raok kemmañ tra pe dra.</p>
+help.newMembers=<p><b>+ Evit an izili nevez</b>, kit da welet <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> evit krouiñ ur gont, kevreañ, ha goude-se distreiñ amañ evit aotren ar moned da Potlatch 2 ha stagañ ganti.</p>
+help.introText=<p><b>Potlatch 2</b> a reer eus aozer OpenStreetMap (OSM). Aotren a ra ac'hanoc'h da gemmañ traoù war-eeun dre lec'hienn {0}.</p>
+help.introduction=Digoradur
+help.controls=Kontrolloù
+help.interfaceControls=Kontrolloù an etrefas
+help.mapBackground=<p>Dibabit foñs ar gartenn e-mesk an elfennoù zo war ar roll pe ouzhpennit ho restr vektor deoc'h-c'hwi.</p>
+help.colourStyle=<p>Dibabit ar stil a fell deoc'h gwelet ar gartenn drezañ. Cheñch a ra al livioù hag ar stil hollek ha dibarzhioù all zo ivez evel ar gweled dre neud-orjal (wireframe).</p>
+help.gps=GPS
+help.createOsmMap=<p>Savit roadennoù kartenn OSM en ur ober gant ar roadennoù GPS pourchaset gant tud all evel treuztres foñs kartenn</p>
+help.myGps=MyGPS
+help.displayGps=<p>Diskwel ar roadennoù GPS bet enporzhiet ganeoc'h a-raok war OpenStreetMap.</p>
+help.undoRedo=Dizober / Adober
+help.help=Skoazell
+help.save=Enrollañ
+help.tag=Tikedenn
+help.shortcuts=Berradennoù
+help.keyboardShortcuts=Berradennoù klavier
diff --git a/l10n/locale/br/p2_main.properties b/l10n/locale/br/p2_main.properties
new file mode 100644 (file)
index 0000000..4383b1a
--- /dev/null
@@ -0,0 +1,34 @@
+# Messages for Breton (Brezhoneg)
+# Exported from translatewiki.net
+# Author: Fulup
+
+main.undo=Dizober
+main.redo=Adober
+main.background=Drekleur
+main.map_style=Stil ar gartenn
+main.gpsButton=Roadennoù GPS
+main.gps_data=Roadennoù GPS
+main.clear_gps=Riñsañ
+main.help=Skoazell
+main.options=Dibarzhioù
+main.save=Enrollañ
+tag_viewer.dndprompt=Ouzhpennañ poentoù nevez en ur lakaat anezho da riklañ war ar gartenn
+toolbox.delete_node=Diverkañ ar skoulm (diverkañ)
+toolbox.delete_area=Takad diverkañ (Pennlizh. + Diverkañ)
+toolbox.delete_way=Hent diverkañ (Pennlizh. + Diverkañ)
+toolbox.delete_item=Diverkañ an elfenn
+toolbox.reverse_direction=Eilpennañ an durc'hadur (v)
+toolbox.split_way=Rannañ an hent (X)
+toolbox.merge_ways=Kendeuziñ an hentoù
+toolbox.straighten_way=Eeunaat an hent
+toolbox.make_circular=Lakaat da vezañ kelc'hiek
+toolbox.make_right_angled=Ober ur c'horn skouer (Q)
+toolbox.create_parrallel_way=Krouiñ un hent kenstur (P)
+oauth.deniedLabel=<b>Nac'het eo bet ar moned, gwiriit mat ha klaskit en-dro goude-se</b>
+oauth.rememberMe=Derc'hel soñj ac'hanon
+oauth.cancelButton=Nullañ
+styleSelector.editButton=Kemmañ...
+backgroundSelector.editButton=Kemmañ...
+backgroundSelector.vectorButton=Restr vektor...
+options.tbcheck=Diskouez ar voestad ostilhoù
+options.ok=Mat eo
diff --git a/l10n/locale/ca/p2_main.properties b/l10n/locale/ca/p2_main.properties
new file mode 100644 (file)
index 0000000..aacf566
--- /dev/null
@@ -0,0 +1,37 @@
+# Messages for Catalan (Català)
+# Exported from translatewiki.net
+# Author: Jconstanti
+# Author: Toniher
+
+main.undo=Desfés
+main.redo=Refés
+main.background=Fons
+main.map_style=Estil del mapa
+main.gpsButton=Dades de GPS
+main.gps_data=Dades de GPS
+main.my_tracks=Les meves traces
+main.clear_gps=Neteja
+main.help=Ajuda
+main.options=Opcions
+main.save=Desa
+toolbox.delete_node=Suprimeix el node
+toolbox.delete_area=Suprimeix l'àrea (Maj + Supr)
+toolbox.delete_way=Suprimeix l'àrea (Maj + Supr)
+toolbox.delete_item=Suprimeix l'element
+toolbox.reverse_direction=Canvia la direcció (V)
+toolbox.split_way=Divideix la via
+toolbox.merge_ways=Uneix vies
+toolbox.make_circular=Fer rotonda
+toolbox.create_parrallel_way=Crear via paral·lela (P)
+oauth.gotLinkBox=Feu clic a l'enllaç de sota per obrir una pàgina web on se li demanarà per autoritzar l'accés per a aquesta aplicació.
+oauth.authorized=Una vegada que ha autoritzat l'accés faci clic al botó inferior de 'Provar accés'
+oauth.deniedLabel=<b>S'ha denegat l'accés, si us plau verifiqui i torni a provar</b>
+oauth.rememberMe=Recorda'm
+oauth.permFail=<p>El servidor ha refusat les credencials d'aquesta aplicació - no s'ha pogut obtenir un enllaç d'autorització.</p>\n<p>           <b>OAuth accés impossible.</b>         </p>\n<p>Si us plau, consulteu el proveïdor de l'aplicació per esbrinar el que està passant.</p>
+oauth.tempFail=Hi ha hagut un problema en contactar amb el servidor que dona l'autorització.  Pot ser un error transitori, proveu un altre cop més tard.
+oauth.tryAccessButton=Proveu d'accés
+oauth.cancelButton=Cancel·la
+save.editDescription=Si us plau, introduïu una descripció de les vostres modificacions. Això s'utilitzarà per donar una idea de quins canvis esteu fent a altres dibuixants de mapes.
+styleSelector.editButton=Edita...
+backgroundSelector.editButton=Modifica...
+options.ok=D'acord
index 369a9e45dcf3202c6d69a1e5d2d337237ed4cf16..c95c39e77d938cdbee4ce8ae050cbe8fdfd59df4 100644 (file)
@@ -1,4 +1,38 @@
-# de resources file
+# Messages for German (Deutsch)
+# Exported from translatewiki.net
+# Author: Apmon
+# Author: Kghbln
 
-help.gettingStarted = So geht's los
-help.welcome = Willkommen
+help.gettingStarted=So geht's los
+help.welcome=Willkommen
+help.whyOpenstreetmap=<p><b>Warum OpenStreetMap?</b> OSM ist ein Katografierdienst, bei dem alle Daten ständig von Menschen wie du aktualisiert und bearbeitet werden. Der offensichtliche Vorteil ist, dass er kostenfrei genutzt werden kann. OSM ist aber auch ein wichtiger Akteur der Krisenkartografie geworden, wie es beispielsweise die Nutzung von OSM-Daten, zur Koordinierung von Hilfsmaßnahmen, nach dem schweren Erdbeben in Haiti gezeigt hat. Die Genauigkeit dieser Daten ist unerlässlich, und wir hoffen daher, dass du hierzu etwas deiner Zeit beisteuern kannst!</p>
+help.activeMembers=<p><b>+ Für aktive OpenStreetMap-Mitglieder</b>. Bitte vor der Bearbeitung anmelden</p>
+help.newMembers=<p><b>+ Für neue Mitglieder</b>. Bitte <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> aufrufen, um sich zu registrieren sowie anzumelden. Danach hierher zurückkehren, um Zugang zu Potlatch 2 zu erhalten und mit dem Bearbeiten zu beginnen.</p>
+help.introText=<p><b>Potlatch2</b> ist ein OpenStreetMap-Editor, der es ermöglicht Bearbeitungen direkt über die Website {0} zu machen.</p>
+help.introduction=Einführung
+help.controls=Bedienelemente
+help.interfaceControls=Bedienelemente der Benutzeroberfläche
+help.mapBackground=<p>Wähle deinen Kartenhintergrund aus einem der in der Liste vorhandenen Elemente oder füge deine eigene Vektordatei hinzu.</p>
+help.colourStyle=<p>Wähle die Anmutung, in der du die Karte angezeigt bekommen möchtest. Farben sowie Stil variieren und beinhalten auch andere Optionen, wie die Drahtgitterdarstellung.</p>
+help.gps=GPS
+help.createOsmMap=<p>Erstellen von OSM-Kartendaten auf Basis im Hintergrund angezeigter GPS-Tracks anderer Menschen</p>
+help.myGps=Mein GPS
+help.displayGps=<p>Anzeigen von GPS-Spuren, die du zuvor nach OpenStreetMap hochgeladen hast</p>
+help.undoRedo=Rückgängig machen / Wiederherstellen
+help.madeMistake=<p>Ein Fehler ist passiert? Klicke einfach auf „Rückgängig machen“ und/oder „Wiederherstellen“, um deine Bearbeitungen zu berichtigen.</p>
+help.help=Hilfe
+help.guideInfomation=<p>Öffnet diese Anleitung für den Fall, dass du am Anfang deiner Bearbeitungen Informationen benötigst.</p>
+help.save=Speichern
+help.addingFeatures=Hinzufügen von Funktionen
+help.addingFeaturesText=<p><i>Bevor du anfängst, musst du den Umgang mit geschützten Daten kennen. Daten aus urheberrechtlich geschützten Karten und andere geschützte Daten sind streng verboten! Das Kopieren, Nachvollziehen und Wiedergeben urheberrechtlich geschützter Werke ist nicht erlaubt! (Quelle: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Urheberrechtshinweise - OpenStreetMap-Wiki</a>)</i></p>\n  <p></p>\n  <p>Zu linearen Funktionen wie bswp. Straßen, Fußwegen, Bahnlinien und Gebäudeumrissen wird im Folgenden als <b>Wege</b> Bezug genommen.</p>\n  <p>Sofern du plötzlich bemerkst, dass die Seitenleiste mitsamt den Symbolen nicht mehr angezeigt wird, liegt das daran, dass du eine Funktion direkt auf der Karte ausgewählt hast. Nimm die Auswahl zurück, indem du einfach einen leeren Bereich der Karte anklickst, um wieder die Symbole angezeigt zu bekommen.</p>\n            <p><b>Um einen Punkt (oder Knotenpunkt) zu erstellen</b>, zieht man das passende, in der Seitenleiste vorhandene, Symbol auf die Karte und legt es dort ab. Siehe auch „Sehenswürdigkeiten hinzufügen“, um mehr zum Erstellen einer Sehenswürdigkeit <i>(POI - Point of Interest)</i> zu erfahren.</p>\n            <p><b>Um einen Weg anzulegen</b>, klickt man zunächst dessen Anfangspunkt auf der Karte an. Danach klickt man die Folgepunkte zur Darstellung des Weges an. Am Endpunkt des Weges macht man einen Doppelklick oder drückt die Entertaste.</p>\n            <p><b>Um ein Polygon zu erstellen</b>, klickt man zunächst den Ausgangspunkt auf der Karte an. Danach klickt man, ähnlich dem Erstellen eines Weges, auf der Karte die Folgepunkt an und beendet die Aktion, indem man am Ende wieder den Ausgangspunkt anklickt, um das Polygon abzuschließen.</p>\n            <p>Sofern du einen Fehler machst, kannst du stets die Schaltfläche „Rückgängig“ anklicken. Das Drücken der Escapetaste macht alle deine Bearbeitungen zur aktuellen Funktion rückgängig.</p>
+help.editBeg=Bearbeiten (Anfänger)
+help.editingFeatures=Funktionen zum Bearbeiten (Anfänger)
+help.editingFeaturesText=<p><b>Um einen Punkt zu einem vorhandenen Weg hinzuzufügen</b>, wählt man den Weg aus, drückt die Umschalttaste und klickt den gewünschten Punkt an.</p>\n    <p><b>Um einen Punkt zu löschen</b>, wählt man den Punkt aus und klickt auf die Schaltfläche „Objekt löschen“ in der unteren rechten Ecke, oder man drückt auf der Tastatur die Taste Entfernen (bzw. die Rücktaste).</p>\n  <p><b>Um einen Weg zu löschen</b>, wählt man den Weg aus  und klickt auf die Schaltfläche „Objekt löschen“ in der unteren rechten Ecke, oder man drückt auf der Tastatur die Umschalttaste und die Taste Entfernen (bzw. die Umschalttaste und die Rücktaste).</p>\n    <p><b>Um einen Punkt zu verschieben</b>, klickt man ihn an und zieht ihn.</p>\n   <p><b>Um einen Weg zu verschieben</b>, klickt man ihn an und zieht ihn. Tipp: Wähle ein Segment an einer Stelle an der man nicht versehentlich auch einen Knotenpunkt verschieben kann.</p>\n  <p><b>Um einen Weg zu verlängern</b>, klickt man auf einen seiner Endpunkte. Danach fährt man mit wie gewohnt mit dem Zeichnen fort.</p>\n    <p><b>Um einen neuen Weg als Anschluss an einen bestehenden Weg hinzuzufügen</b>, drückt man die Umschalttaste und klickt auf einen der Endpunkte des bestehenden Wegs. Danach fährt man mit wie gewohnt mit dem Zeichnen fort.</p>
+help.editAdv=Bearbeiten (Fortgeschrittene)
+help.editingFeaturesAdv=Funktionen zum Bearbeiten (Fortgeschrittene)
+help.editingFeaturesAdvText=<p><b>Um einen Weg zu teilen</b>, wählt man den Punkt aus, an dem man ihn teilen möchte und klickt auf das Scherensymbol oder drückt die Taste X auf der Tastatur. Hinweis: Füge zunächst einen Knotenpunkt hinzu, um den Weg zwischen zwei Knotenpunkten teilen zu können.</p>\n            <p><b>Um eine Kreuzung zweier Wege zu erstellen</b>, zeichnet man wie gewohnt bis zu der Stelle an der die Kreuzung benötigt wird. Sobald man den Weg über einen anderen Weg führt, werden die Punkte eine blaue Farbe annehmen. Nun klickt man auf einen der jetzt blauen Punkte oder auf eine andere Stelle auf dem Weg, um die Kreuzung zu erstellen.</p>\n            <p><b>Um eine Kreuzung zweier Wege zu entfernen</b>, wählt man einen Punkt auf dem Weg, den man ändern möchte, aus. Danach drückt man die Taste „-“ auf der Tastatur, um den Punkt zu entfernen.</p>\n            <p><b>Um die Richtung eines Wegs umzukehren</b>, klickt man auf die Schaltfläche „Richtung umkehren“, die sich in der rechten unteren Ecke befindet. Die Richtung eines Wegs ist nur bei Funktionen bedeutsam, die über eine Richtungskomponente verfügen, wie bspw. Einbahnstraße, Küstenlinie, Insel, usw.</p>\n            <p><b>Um einen parallel zu einem vorhandenen Weg verlaufenden Weg zu erzeugen</b>, wählt man den vorhandenen Weg aus und klickt auf die Schaltfläche „Parallelen Weg erstellen“ in der rechten unteren Ecke oder drückt die Taste P auf der Tastatur.</p>\n     <p><b>Um einen Weg zu erstellen, der Knotenpunkte mit einem vorhandenen Weg gemeinsam haben soll</b>, fängt man zunächst mit dem Zeichnen an, klickt die ersten zwei gemeinsamen Knotenpunkte an und drückt dann die Taste F, um nun automatisch dem bestehenden Weg zu folgen.</p>\n            <p><i>Besuche <a href="http://wiki.openstreetmap.org/wiki/Potlatch_2/Primer" target="_blank">Potlatch 2 Primer</a> auf dem OpenStreetMap-Wiki, um mehr zu komplexeren Bearbeitungsmöglichkeiten sowie zu Bearbeitungskonventionen zu erfahren.</i></p>
+help.tag=Markieren
+help.taggingFeatures=Funktionen zum Markieren
+help.taggingFeaturesText=<p>Dank Potlatch 2 ist das Tagging von Objekten, unter Verwendung graphischer Menüs sowie vordefinierter Felder/Symbole, recht einfach geworden.</p>\n        <p><b>Tagging von Objekten</b></p>\n        <p>Selektiere den Weg oder Punkt den du bearbeiten möchtest, und wähle das passende Tag aus dem Menü in der linken Seitenleiste aus. Danach erscheinen einige Textfelder in die man, abhängig vom zuvor gewählten Tag, die grundlegenden Eigenschaften, wie bspw. Name, Geschwindigkeitsbegrenzung oder Breite eintragen kann. Fülle diese so gut wie möglich aus.</p>\n        <p>Fortgeschrittene Benutzer werden das Fehlen von ein paar Tags und deren zugehöriger Werte feststellen, die sie gelegentlich nutzen. Sofern eines dieser Tags benötigt wird, klicke auf die Registerkarte „Fortgeschritten“, die sich am unteren Ende der Seitenleiste befindet und füge nach Bedarf die dort vorhandenen Tags hinzu, bzw. bearbeite sie.</p>\n        <p> Das OpenStreetMap-Wiki enthält eine <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">ausführliche Liste von Tags und deren zugehöriger Werte</a>. Sofern Unklarheiten bezüglich des Taggings bestehen, sollte die in diesem Wiki hinterlegte OSM-Dokumentation zu Rate gezogen werden.</p>
+help.shortcuts=Abkürzungen
+help.keyboardShortcuts=Tastaturabkürzungen
index 8deccdaa13a0210d35d981edc3ec3fad8392ffe6..dd343ce5f605e79018e7e9ceb0ed020089560fd6 100644 (file)
@@ -1,31 +1,29 @@
-# de resources file
-
-main.undo = Rückgängig
-main.redo = Wiederholen
-main.background = Hintergrund
-main.map_style = Map-Stil
-main.gpsButton = GPS Daten
-main.gps_data = GPS-Daten
-main.my_tracks = Meine Tracks
-main.clear_gps = Clear
-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)
+# Messages for German (Deutsch)
+# Exported from translatewiki.net
 
+main.undo=Rückgängig
+main.redo=Wiederholen
+main.background=Hintergrund
+main.map_style=Map-Stil
+main.gpsButton=GPS Daten
+main.gps_data=GPS-Daten
+main.my_tracks=Meine Tracks
+main.clear_gps=Clear
+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)
 oauth.gotLinkBox=Klicken Sie auf den untenstehenden Link zu einer Webseite, wo Sie aufgefordert, den Zugriff auf diese App genehmigen wird geöffnet sein.
 oauth.authorized=Sobald Sie autorisiert den Zugriff auf das 'versuchen Sie Zugang' Button unten
 oauth.deniedLabel=<b> Zugang verweigert wurde, überprüfen Sie bitte, und versuchen Sie es erneut </b>
@@ -34,15 +32,12 @@ oauth.permFail=<p>Der Server verweigert diese Anwendung die Anmeldeinformationen
 oauth.tempFail=Es gab ein Problem mit dem Server Kontakt auf Genehmigung zu bekommen. Dies kann ein temporärer Fehler sein, versuchen Sie es später erneut.
 oauth.tryAccessButton=versuchen Sie Zugang
 oauth.cancelButton=Stornieren
-
 save.editDescription=Bitte geben Sie eine Beschreibung Ihres Bearbeitungen. Dies wird verwendet, um andere Mapper eine Idee, welche Änderungen Sie machen werden.
-
 styleSelector.editButton=Bearbeiten...
 backgroundSelector.dim=dim
 backgroundSelector.sharpen=sharpen
 backgroundSelector.editButton=Bearbeiten...
 backgroundSelector.vectorButton=Vector file...
-
 options.tbcheck=Zeige Toolbox
 options.cursorcheck=Verwenden Sie benutzerdefinierte Cursor
 options.ok=Ok
index 70837289451d60759ca69c2a9113ae791d9c7c2d..01fb105d9d135aab203c9aa7044cf4fd142b20ff 100644 (file)
@@ -1,6 +1,5 @@
-# en_GB resources file
-
-help.gettingStarted = Getting Started
-help.welcome = Welcome
-
+# Messages for British English (British English)
+# Exported from translatewiki.net
 
+help.gettingStarted=Getting Started
+help.welcome=Welcome
index e03f9953add1ce3c70b1c29b71a1494bc8d0d264..f4c958d0649eefbe9f0d4179af648d939e7d1b39 100644 (file)
@@ -1,47 +1,43 @@
-# en_GB resources file
+# Messages for British English (British English)
+# Exported from translatewiki.net
 
-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.clear_gps = Clear
-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)
-
-oauth.gotLinkBox=Click the link below to open a web page where you will be asked to authorise access to this app.
-oauth.authorized=Once you've authorised the access click the 'Try Access' button below
+main.undo=Undo
+main.redo=Redo
+main.background=Background
+main.map_style=Map Style
+main.gpsButton=GPS Data
+main.gps_data=GPS Data
+main.my_tracks=My Tracks
+main.clear_gps=Clear
+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)
+oauth.gotLinkBox=Click the link below to open a web page where you will be asked to authorise access for this application.
+oauth.authorized=Once you've authorised the access click the 'Try access' button below
 oauth.deniedLabel=<b>Access was denied, please check, and try again</b>
 oauth.rememberMe=Remember me
-oauth.permFail=<p>The server refused this application's credentials -- an authorisation link could not be obtained.          </p><p>         <b>OAuth access will not be possible.</b>  </p><p> Please contact application vendor to find out what's going on.</p>
+oauth.permFail=<p>The server refused this application's credentials -- an authorisation link could not be obtained.          </p>\n<p>       <b>OAuth access will not be possible.</b>       </p>\n<p>       Please contact application vendor to find out what's going on.</p>
 oauth.tempFail=There was a problem contacting the server to get authorisation.    This may be a temporary error, try again later.
-oauth.tryAccessButton=Try Access
+oauth.tryAccessButton=Try access
 oauth.cancelButton=Cancel
-
 save.editDescription=Please enter a description of your edits. This will be used to give other mappers an idea of what changes you are making.
-
 styleSelector.editButton=Edit...
 backgroundSelector.dim=dim
 backgroundSelector.sharpen=sharpen
 backgroundSelector.editButton=Edit...
 backgroundSelector.vectorButton=Vector file...
-
 options.tbcheck=Show toolbox
 options.cursorcheck=Use custom cursors
-options.ok=Ok
+options.ok=OK
index 244afeab1cfbc9da99b64a874236a26ff9c339aa..b9efe24dca0cc493f6645aeede2a98c6f9a3a43e 100644 (file)
@@ -1,35 +1,35 @@
 # en_US resources file
 
-help.gettingStarted = Getting Started
-help.welcome = Welcome
-help.whyOpenstreetmap = <p><b>Why OpenStreetMap?</b> OSM is a mapping service in which all data is constantly updated and edited by everyday people like you. The obvious benefit is that it's free to use, but it has also become a major player in crisis mapping (e.g. use of OSM data to coordinate earthquake relief efforts in Haiti). Accuracy of this data is critical, and we hope you are able to volunteer some of your time!</p>
-help.activeMembers = <p><b>+ For active OpenStreetMap members</b>, please sign in to OSM before editing</b></p>
-help.newMembers = <p><b>+ For new members</b>, please visit <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> to create an account, log in, then return here to allow access to Potlatch 2 and begin editing.</p>
-help.introText = <p><b>Potlatch2</b> is an OpenStreetMap (OSM) editor that allows you to make edits directly through {0} website.</p>
-help.introduction = Introduction
-help.controls = Controls
-help.interfaceControls = Interface Controls
-help.mapBackground = <p>Choose your map background from one of the items in the list or add your own vector file.</p>
+help.gettingStarted=Getting Started
+help.welcome=Welcome
+help.whyOpenstreetmap=<p><b>Why OpenStreetMap?</b> OSM is a mapping service in which all data is constantly updated and edited by everyday people like you. The obvious benefit is that it's free to use, but it has also become a major player in crisis mapping (e.g. use of OSM data to coordinate earthquake relief efforts in Haiti). Accuracy of this data is critical, and we hope you are able to volunteer some of your time!</p>
+help.activeMembers=<p><b>+ For active OpenStreetMap members</b>, please sign in to OSM before editing.</p>
+help.newMembers=<p><b>+ For new members</b>, please visit <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> to create an account, log in, then return here to allow access to Potlatch 2 and begin editing.</p>
+help.introText=<p><b>Potlatch 2</b> is an OpenStreetMap (OSM) editor that allows you to make edits directly through {0} website.</p>
+help.introduction=Introduction
+help.controls=Controls
+help.interfaceControls=Interface Controls
+help.mapBackground=<p>Choose your map background from one of the items in the list or add your own vector file.</p>
 help.colourStyle=<p>Choose the style in which you wish to view the map. Colours and overall style vary and also includes other options like wireframe.</p>
-help.gps = GPS
-help.createOsmMap = <p>Create OSM map data using other people's GPS tracks as a background</p>
-help.myGps = MyGPS
-help.displayGps = <p>Display GPS traces that you've previously uploaded to OpenStreetMap.</p>
-help.undoRedo = Undo / Redo
-help.madeMistake = <p>Made a mistake? Just hit undo and/or redo to correct your edits.</p>
-help.help = Help
-help.guideInfomation = <p>Brings up this guide in case you need any information as you begin editing.</p>
-help.save = Save
-help.addingFeatures = Adding Features
-help.addingFeaturesText = <p><i>Before you begin, the first rule you need to know is the use of proprietary data. Data from copyrighted maps or any other proprietary data is strictly prohibited! Copying, tracing or any reproduction of copyrighted work is not allowed! (Source: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>  <p></p>  <p>Linear features such as streets, footpaths, railways and building outlines will hereby be referred to as <b>ways</b>.</p>  <p>If you suddenly realize your sidebar with all the icons have gone missing, it's because you have a feature selected on the map. Simply deselect by clicking on a blank area of the map to bring up the icons again.</p>            <p><b>To create a point (or node)</b>, just drag and drop the appropriate icon from the sidebar onto the map. See Add POIs to learn more about creating a POI (Point of Interest)</p>            <p><b>To create a way</b>, begin by clicking on the map at its start point, then click at each successive point. Double-click to finish the line or press Enter.</p>            <p><b>To create a polygon</b>, begin by clicking on the map at its start point, then click at each successive point (similar to creating a way), and finish by clicking on the very first point to close the polygon.</p>            <p>Remember, if you make a mistake, you can always hit the Undo button. Pressing the Esc key will undo all your edits for the current feature.</p>
-help.editBeg = Edit (Beg.)
-help.editingFeatures = Editing Features (Beginner)
-help.editingFeaturesText = <p><b>To add a point to an existing way</b>, select the way and shift+click at the desired location.</p>    <p><b>To delete a point</b>, select the way and click the Delete Item button in the bottom right corner or press Delete (or Backspace) on your keyboard.</p>  <p><b>To delete a way</b>, select the way and click the Delete Item button in the bottom right corner or press shift+Delete (or shift+Backspace) on your keyboard.</p>    <p><b>To move a point</b>, click and drag the point.</p>   <p><b>To move a way</b>, click and drag the entire feature (hint: grab a segment where you won't accidentally move a node).</p>  <p><b>To extend a way</b>, click on one of the end points of the way. Then continue drawing as usual.</p>    <p><b>To add a new way extending from an existing way</b>, shift+click on one of the end points of the way. Then continue drawing as usual.</p>
-help.editAdv = Edit (Adv.)
-help.editingFeaturesAdv = Editing Features (Advanced)
-help.editingFeaturesAdvText =  <p><b>To split a way</b>, select the point at which you want to cut, and click the Scissor tool or press X on your keyboard. (Hint: Add a node first in order to cut between nodes.)</p>            <p><b>To make a junction between two ways</b>, draw as usual until you need to make a junction. Then as you move your mouse over another way, the points will light up blue. Click on one of the blue points or any other desired location on the way to make a junction.</p>            <p><b>To disconnect a junction</b>, select the point on the way you wish to alter. The press - on your keyboard to remove the point.</p>            <p><b>To reverse the direction of a way</b>, click the Reverse Direction button in the bottom right corner. The direction of a way is only a concern for those features with a "oneway" tag - oneway streets, coastlines, islands, and so on.</p>            <p><b>To create a way running parallel</b>, select the way and click the Create Parallel Way button in the bottom right corner or press P on your keyboard.</p>     <p><b>To create a way that shares nodes with an existing way</b>, start drawing, click the first two shared nodes, then press F to automatically follow the existing way.</p>            <p><i>Visit the <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Potlatch2 Primer</a> on the OpenStreetMap wiki for even more advanced editing methods and conventions.</i></p>
-help.tag = Tag
-help.taggingFeatures = Tagging Features
-help.taggingFeaturesText = <p>With Potlatch2, tagging features has become relatively easy with its use of graphical menus and dedicated fields/icons.</p>          <p><b>Tagging a feature</b></p>          <p>Select the point or way that you wish to edit, adn choose the appropriate tag from the left sidebar. After tagging the feature, some basic fields should appear such as Name, Speed Limit, and Width, depending on the tag you gave. Fill these out as best you can.</p><p>Advanced users may notice the absence of a few tags and tag values they occasionally use. If this is the case, click on the Advanced tab at the bottom of the sidebar and edit/add as necessary.</p>          <p>The OpenStreetMap wiki also provides an <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">extensive list of tags and tag values</a>. Please refer back to the OSM documentation if you are unsure of which tag to use.</p>
-help.shortcuts = Shortcuts
-help.keyboardShortcuts = Keyboard Shortcuts
+help.gps=GPS
+help.createOsmMap=<p>Create OSM map data using other people's GPS tracks as a background</p>
+help.myGps=MyGPS
+help.displayGps=<p>Display GPS traces that you've previously uploaded to OpenStreetMap.</p>
+help.undoRedo=Undo / Redo
+help.madeMistake=<p>Made a mistake? Just hit undo and/or redo to correct your edits.</p>
+help.help=Help
+help.guideInfomation=<p>Brings up this guide in case you need any information as you begin editing.</p>
+help.save=Save
+help.addingFeatures=Adding Features
+help.addingFeaturesText=<p><i>Before you begin, the first rule you need to know is the use of proprietary data. Data from copyrighted maps or any other proprietary data is strictly prohibited! Copying, tracing or any reproduction of copyrighted work is not allowed! (Source: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>Linear features such as streets, footpaths, railways and building outlines will hereby be referred to as <b>ways</b>.</p>\n  <p>If you suddenly realize your sidebar with all the icons have gone missing, it's because you have a feature selected on the map. Simply deselect by clicking on a blank area of the map to bring up the icons again.</p>\n            <p><b>To create a point (or node)</b>, just drag and drop the appropriate icon from the sidebar onto the map. See Add POIs to learn more about creating a POI (Point of Interest)</p>\n            <p><b>To create a way</b>, begin by clicking on the map at its start point, then click at each successive point. Double-click to finish the line or press Enter.</p>\n            <p><b>To create a polygon</b>, begin by clicking on the map at its start point, then click at each successive point (similar to creating a way), and finish by clicking on the very first point to close the polygon.</p>\n            <p>Remember, if you make a mistake, you can always hit the Undo button. Pressing the Esc key will undo all your edits for the current feature.</p>
+help.editBeg=Edit (Beg.)
+help.editingFeatures=Editing Features (Beginner)
+help.editingFeaturesText=<p><b>To add a point to an existing way</b>, select the way and shift+click at the desired location.</p>\n    <p><b>To delete a point</b>, select the point and click the Delete Item button in the bottom right corner or press Delete (or Backspace) on your keyboard.</p>\n  <p><b>To delete a way</b>, select the way and click the Delete Item button in the bottom right corner or press shift+Delete (or shift+Backspace) on your keyboard.</p>\n    <p><b>To move a point</b>, click and drag the point.</p>\n   <p><b>To move a way</b>, click and drag the entire feature. Hint: Grab a segment where you won't accidentally move a node.</p>\n  <p><b>To extend a way</b>, click on one of the end points of the way. Then continue drawing as usual.</p>\n    <p><b>To add a new way extending from an existing way</b>, shift+click on one of the end points of the way. Then continue drawing as usual.</p>
+help.editAdv=Edit (Adv.)
+help.editingFeaturesAdv=Editing Features (Advanced)
+help.editingFeaturesAdvText=<p><b>To split a way</b>, select the point at which you want to cut, and click the Scissor tool or press X on your keyboard. Hint: Add a node first in order to cut between nodes.</p>\n            <p><b>To make a junction between two ways</b>, draw as usual until you need to make a junction. Then as you move your mouse over another way, the points will light up blue. Click on one of the blue points or any other desired location on the way to make a junction.</p>\n            <p><b>To disconnect a junction</b>, select the point on the way you wish to alter. Then press - on your keyboard to remove the point.</p>\n            <p><b>To reverse the direction of a way</b>, click the Reverse Direction button in the bottom right corner. The direction of a way is only a concern for those features with a "oneway" tag - oneway streets, coastlines, islands, and so on.</p>\n            <p><b>To create a way running parallel</b>, select the way and click the Create Parallel Way button in the bottom right corner or press P on your keyboard.</p>\n     <p><b>To create a way that shares nodes with an existing way</b>, start drawing, click the first two shared nodes, then press F to automatically follow the existing way.</p>\n            <p><i>Visit the <a href="http://wiki.openstreetmap.org/wiki/Potlatch_2/Primer" target="_blank">Potlatch 2 Primer</a> on the OpenStreetMap wiki for even more advanced editing methods and conventions.</i></p>
+help.tag=Tag
+help.taggingFeatures=Tagging Features
+help.taggingFeaturesText=<p>With Potlatch 2, tagging features has become relatively easy with its use of graphical menus and dedicated fields/icons.</p>\n          <p><b>Tagging a feature</b></p>\n          <p>Select the point or way that you wish to edit, and choose the appropriate tag from the left sidebar. After tagging the feature, some basic fields should appear such as Name, Speed Limit, and Width, depending on the tag you gave. Fill these out as best you can.</p><p>Advanced users may notice the absence of a few tags and tag values they occasionally use. If this is the case, click on the Advanced tab at the bottom of the sidebar and edit/add as necessary.</p>\n          <p>The OpenStreetMap wiki also provides an <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">extensive list of tags and tag values</a>. Please refer back to the OSM documentation if you are unsure of which tag to use.</p>
+help.shortcuts=Shortcuts
+help.keyboardShortcuts=Keyboard Shortcuts
index 68196379797d9c84ffc2f9a591910e5cb3d28c3e..c1eb227b6c9af84b564b44db878dbb529c24ce27 100644 (file)
@@ -14,25 +14,25 @@ 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.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.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)
 
-oauth.gotLinkBox=Click the link below to open a web page where you will be asked to authorise access to this app.
-oauth.authorized=Once you've authorised the access click the 'Try Access' button below
+oauth.gotLinkBox=Click the link below to open a web page where you will be asked to authorise access for this application.
+oauth.authorized=Once you've authorised the access click the 'Try access' button below
 oauth.deniedLabel=<b>Access was denied, please check, and try again</b>
 oauth.rememberMe=Remember me
-oauth.permFail=<p>The server refused this application's credentials -- an authorisation link could not be obtained.          </p><p>         <b>OAuth access will not be possible.</b>       </p><p>         Please contact application vendor to find out what's going on.</p>
+oauth.permFail=<p>The server refused this application's credentials -- an authorisation link could not be obtained.          </p>\n<p>       <b>OAuth access will not be possible.</b>       </p>\n<p>       Please contact application vendor to find out what's going on.</p>
 oauth.tempFail=There was a problem contacting the server to get authorisation.    This may be a temporary error, try again later.
-oauth.tryAccessButton=Try Access
+oauth.tryAccessButton=Try access
 oauth.cancelButton=Cancel
 
 save.editDescription=Please enter a description of your edits. This will be used to give other mappers an idea of what changes you are making.
@@ -45,4 +45,4 @@ backgroundSelector.vectorButton=Vector file...
 
 options.tbcheck=Show toolbox
 options.cursorcheck=Use custom cursors
-options.ok=Ok
+options.ok=OK
diff --git a/l10n/locale/es_ES/help_dialog.properties b/l10n/locale/es_ES/help_dialog.properties
new file mode 100644 (file)
index 0000000..5058308
--- /dev/null
@@ -0,0 +1,38 @@
+# Messages for Spanish (Español)
+# Exported from translatewiki.net
+# Author: Armando-Martin
+# Author: McDutchie
+
+help.gettingStarted=Primeros pasos
+help.welcome=Bienvenido
+help.whyOpenstreetmap=<p><b>¿Por qué OpenStreetMap?</b> OSM es un servicio de mapas en el que todos los datos se actualizan constantemente y son editados por gente como tú. La ventaja obvia es que es de uso libre, pero también se ha convertido en un jugador importante en el mapeo de crisis (por ejemplo, la utilización de datos de OSM para coordinar los esfuerzos de salvamento en el terremoto de Haití). La precisión de los datos es crítica, y ¡esperamos que puedas dedicar voluntariamente una parte de tu tiempo!</p>
+help.activeMembers=<p><b>+ Para miembros activos de OpenStreetMap</b>, identifícate en OSM antes de editar</p>
+help.newMembers=<p><b>+ Para los nuevos miembros</b>, por favor visite <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> para crear una cuenta, inicie la sesión y luego vuelva aquí para permitir el acceso a Potlatch 2 y empezar a editar.</p>
+help.introText=<p><b>Potlatch2</b> es un editor de OpenStreetMap (OSM) que le permite realizar cambios directamente a través del sitio Web de {0}.</p>
+help.introduction=Introducción
+help.controls=Controles
+help.interfaceControls=Controles de la interfaz
+help.mapBackground=<p>Elija su fondo de mapa de uno de los elementos de la lista o agregue su propio archivo vectorial.</p>
+help.colourStyle=<p>Elija el estilo con el que desea ver el mapa. Los colores y el estilo general varían y también incluyen otras opciones como modelo de alambres (wireframe).</p>
+help.gps=GPS
+help.createOsmMap=<p>Crear datos de mapa OSM utilizando como fondo las pistas GPS de otras personas.</p>
+help.myGps=MiGPS
+help.displayGps=<p>Mostrar las trazas GPS que ha cargado previamente en OpenStreetMap.</p>
+help.undoRedo=Deshacer / Rehacer
+help.madeMistake=<p>¿Ha cometido un error ? Haga clic simplemente en Deshacer o Rehacer para corregir sus modificaciones.</p>
+help.help=Ayuda
+help.guideInfomation=<p>Suministra esta guía en caso de que necesite informaciones cuando empiece a editar.</p>
+help.save=Guardar
+help.addingFeatures=Añadir objetos al mapa
+help.addingFeaturesText=<p><i>Antes de empezar, la primera regla que usted necesita saber es sobre el uso de datos con derechos de autor. ¡Los datos procedentes de mapas con copyright o cualquier otro dato con derechos de autor está estrictamente prohibido! La copia, seguimiento o cualquier reproducción de obras con derechos de autor no está permitido (Fuente: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>Las características lineales, tales como calles, caminos, vías férreas y perímetros de construcciones se conocen como <b>caminos</b>.</p>\n   <p>Si de repente se da cuenta de que ha desaparecido su barra lateral con todos los iconos, es porque usted ha seleccionado una característica en el mapa. Simplemente desactive la opción haciendo clic en un área en blanco del mapa para mostrar de nuevo los iconos.</p>\n            <b><p>Para crear un punto (o nodo) </b>, sólo tienes que arrastrar y soltar en el mapa el icono correspondiente de la barra lateral. Véase "Añadir PDI" (Add POIs) para aprender más acerca de la creación de un PDI (Punto de Interés)</p>\n            <p><b>Para crear un camino</b>, comience haciendo clic en el mapa en su punto de partida, a continuación, haga clic en cada punto sucesivo. Haga doble clic para terminar la línea o presione Intro.</p>\n            <p><b>Para crear un polígono</b>, comience haciendo clic en el mapa en su punto de partida, a continuación, haga clic en cada punto sucesivo (similar a la creación de un camino), y termine haciendo clic muy próximo al primer punto para cerrar el polígono.</p>\n            <p>Recuerde, si usted comete un error, siempre puede pulsar el botón Deshacer (Undo). Al pulsar la tecla Esc puede deshacer todas las modificaciones para el objeto actualmente seleccionado.</p>
+help.editBeg=Editar (Princip.)
+help.editingFeatures=Editando elementos (Principiante)
+help.editingFeaturesText=<b><p>Para añadir un punto a una forma ya existente</b>, seleccione la forma y presione shift + clic en la ubicación deseada.</p>\n    <b><p>Para eliminar un punto</b>, seleccione el punto y haga clic en el botón Eliminar elemento en la esquina inferior derecha o pulse la tecla Suprimir (o Retroceso) en el teclado.</p>\n   <p><b>Para eliminar un camino</b>, seleccione la forma y haga clic en el botón Eliminar elemento en la esquina inferior derecha, o presione MAYÚS + Supr (o Shift + Supr) en su teclado.</p>\n    <b><p>Para mover un punto</b>, haga clic y arrastre el punto.</p>\n    <b><p>Para mover un camino</b>, haga clic y arrastre el elemento entero. Sugerencia:  Agarre un segmento en el que no se mueva un nodo accidentalmente</p>\n   <b><p>Para extender un camino</b>, haga clic en uno de los puntos extremos del camino. A continuación, siga dibujando como siempre.</p>\n    <b><p> Para añadir un nuevo camino que se extienda desde un camino ya existente</b>, presione shift + clic en uno de los puntos extremos del camino. A continuación, siga dibujando como siempre.</p>
+help.editAdv=Editar (Avanz.)
+help.editingFeaturesAdv=Editando elementos (Avanzado)
+help.editingFeaturesAdvText=<b><p>Para dividir un camino</b>, seleccione el punto en el que desea cortar, y haga clic en la herramienta Tijera o pulse X en el teclado. Sugerencia: Agregue un nodo antes con el fin de cortar entre dos nodos.</p>\n            <b><p>Para realizar una unión entre dos caminos</b>, dibujar, como de costumbre hasta que usted necesite hacer una unión. Luego, a medida que mueva el ratón sobre la otra forma, los puntos se iluminarán de color azul. Haga clic en uno de los puntos azules o en cualquier otra ubicación del camino para hacer la unión.</p>\n            <b><p>Para desconectar una unión</b>, seleccione el punto del camino que desee alterar. Luego presione "-" en el teclado para eliminar el punto.</p>\n            <p><b>Para invertir la dirección de un camino</b>, haga clic en el botón Invertir dirección en la esquina inferior derecha. La dirección de un camino sólo afecta a los elementos con una etiqueta de "sentido único" ("oneway"): calles de sentido único, líneas de costa, islas, etc.</p>\n            <p><b>Para crear un camino paralelo </b>, seleccione el camino y haga clic en el botón Crear camino paralelo en la esquina inferior derecha o pulse P en el teclado.</p>\n      <p><b>Para crear un camino que comparte nodos con una forma ya existente</b>, empiece a dibujar, haga clic en los dos primeros nodos compartidos, a continuación, pulse F para seguir automáticamente el camino existente.</p>\n            <i><p> Visite el <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Potlatch 2 Primer</a> en el wiki de OpenStreetMap, para métodos y convenciones de edición incluso más avanzados.</i> </p>
+help.tag=Etiqueta
+help.taggingFeatures=Etiquetando elementos
+help.taggingFeaturesText=<p>Con Potlatch 2, el etiquetado de elementos se ha vuelto relativamente fácil con el uso de menús gráficos y campos dedicados o iconos.</p>\n          <p><b>Etiquetando un elemento</b></p>\n          <p>Seleccione el punto o el camino que desee editar, y seleccione la etiqueta correspondiente de la barra lateral izquierda. Después de etiquetar elelemento, deben aparecer algunos campos básicos, como el nombre, el límite de velocidad, y la anchura, dependiendo de la etiqueta que se le haya puesto. Complételos lo mejor que pueda.</p><p>Los usuarios avanzados pueden notar la ausencia de algunas etiquetas y valores de variables que se utilizan de vez en cuando. Si este es el caso, haga clic en la ficha Opciones avanzadas en la parte inferior de la barra lateral y Editar/Añadir según sea necesario.</p>\n          <p>El wiki de OpenStreetMap también proporciona una <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">lista extensa de etiquetas y valores de etiquetas</a>. Por favor, consulte la documentación de OSM si no está seguro de qué etiqueta usar.</p>
+help.shortcuts=Atajos
+help.keyboardShortcuts=Atajos clave
diff --git a/l10n/locale/es_ES/p2_main.properties b/l10n/locale/es_ES/p2_main.properties
new file mode 100644 (file)
index 0000000..f2b58d0
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Spanish (Español)
+# Exported from translatewiki.net
+# Author: Armando-Martin
+
+main.undo=Deshacer
+main.redo=Rehacer
+main.background=Fondo
+main.map_style=Estilo de mapa
+main.gpsButton=Datos GPS
+main.gps_data=Datos GPS
+main.my_tracks=Mis pistas
+main.clear_gps=Borrar
+main.help=Ayuda
+main.options=Opciones
+main.save=Guardar
+tag_viewer.dndprompt=Añadir puntos nuevos arrastrándolos sobre el mapa
+toolbox.delete_node=Borrar nodo (Borrar)
+toolbox.delete_area=Borrar la zona (Mayús+Supr)
+toolbox.delete_way=Borrar laruta (Mayús+Supr)
+toolbox.delete_item=Borrar elemento
+toolbox.reverse_direction=Invertir la ruta (V)
+toolbox.split_way=Dividir camino (X)
+toolbox.merge_ways=Fusionar caminos
+toolbox.straighten_way=Enderezar el camino
+toolbox.make_circular=Hacer circular
+toolbox.make_right_angled=Hacer un ángulo recto (Q)
+toolbox.create_parrallel_way=Crear camino paralelo (P)
+oauth.gotLinkBox=Haga clic en el enlace de abajo para abrir una página web donde se le pedirá acceso autorizado a esta aplicación.
+oauth.authorized=Una vez que haya autorizado el acceso haga clic en el botón inferior 'Probar acceso' ('Try access')
+oauth.deniedLabel=El acceso le ha sido denegado, compruébelo e inténtelo de nuevo.
+oauth.rememberMe=Recordarme
+oauth.permFail=<p>El servidor rechazó las credenciales de esta aplicación -- no se pudo obtener un enlace de autorización.</p>\n<b><p>El acceso OAuth no será posible.</b></p>\n<p>Póngase en contacto con el proveedor de la aplicación para averiguar lo que está pasando.</p>
+oauth.tempFail=Hubo un problema al contactar con el servidor para obtener la autorización. Esto puede ser un error temporal, inténtelo de nuevo más tarde.
+oauth.tryAccessButton=Prueba de acceso
+oauth.cancelButton=Cancelar
+save.editDescription=Introduzca una descripción de sus ediciones. Se utilizará para dar a otros mapeadores una idea de los cambios que está haciendo.
+styleSelector.editButton=Editar...
+backgroundSelector.dim=Atenuar
+backgroundSelector.sharpen=Acentuar contraste
+backgroundSelector.editButton=Editar...
+backgroundSelector.vectorButton=Archivo vectorial...
+options.tbcheck=Mostrar el cuadro de herramientas
+options.cursorcheck=Usar los cursores personalizados
+options.ok=Aceptar
diff --git a/l10n/locale/fa/p2_main.properties b/l10n/locale/fa/p2_main.properties
new file mode 100644 (file)
index 0000000..cd473aa
--- /dev/null
@@ -0,0 +1,32 @@
+# Messages for Persian (فارسی)
+# Exported from translatewiki.net
+# Author: ZxxZxxZ
+
+main.undo=خنثی‌سازی
+main.background=پیش‌زمینه
+main.map_style=سبک نقشه
+main.gpsButton=داده‌های جی‌پی‌اس
+main.gps_data=داده‌های جی‌پی‌اس
+main.my_tracks=مسیرهای من
+main.clear_gps=پاک‌کردن
+main.help=راهنما
+main.options=گزینه‌ها
+main.save=ذخیره
+toolbox.delete_node=حذف گره (حذف)
+toolbox.delete_area=حذف منطقه (Shift+Delete)
+toolbox.delete_way=حذف راه (Shift+Delete)
+toolbox.delete_item=حذف مورد
+toolbox.reverse_direction=معکوس‌کردن جهت (V)
+toolbox.split_way=تقسیم راه (X)
+toolbox.merge_ways=ادغام راه‌ها
+toolbox.straighten_way=مستقیم‌سازی راه
+toolbox.make_circular=دایره‌وار کن
+toolbox.create_parrallel_way=ایجاد راه موازی (P)
+oauth.rememberMe=مرا به خاطر بسپار
+oauth.cancelButton=لغو
+styleSelector.editButton=ویرایش...
+backgroundSelector.editButton=ویرایش...
+backgroundSelector.vectorButton=پروندهٔ برداری...
+options.tbcheck=نمایش جعبه‌ابزار
+options.cursorcheck=استفاده از مکان‌نماهای سفارشی
+options.ok=تأیید
diff --git a/l10n/locale/fi/p2_main.properties b/l10n/locale/fi/p2_main.properties
new file mode 100644 (file)
index 0000000..6cbf274
--- /dev/null
@@ -0,0 +1,41 @@
+# Messages for Finnish (Suomi)
+# Exported from translatewiki.net
+# Author: Nike
+
+main.undo=Kumoa
+main.redo=Tee uudelleen
+main.background=Tausta
+main.map_style=Karttatyyli
+main.gpsButton=GPS-tiedot
+main.gps_data=GPS-tiedot
+main.my_tracks=Omat jäljet
+main.clear_gps=Tyhjennä
+main.help=Ohje
+main.options=Asetukset
+main.save=Tallenna
+tag_viewer.dndprompt=Lisää uusi piste vetämällä se kartalle
+toolbox.delete_node=Poista piste (Delete)
+toolbox.delete_area=Poista alue (Shift+Delete)
+toolbox.delete_way=Poista polku (Shift+Delete)
+toolbox.delete_item=Poista kohde
+toolbox.reverse_direction=Käännä suunta (V)
+toolbox.split_way=Jaa polku (X)
+toolbox.merge_ways=Yhdistä polut
+toolbox.straighten_way=Suorista polku
+toolbox.make_circular=Pyöristä
+toolbox.create_parrallel_way=Luo rinnakkainen polku (P)
+oauth.gotLinkBox=Alla olevan linkin kautta voit oikeuttaa muita sovelluksia ohjaamaan tätä sovellusta.
+oauth.authorized=Kun olet antanut oikeuden, testaa sen toimivuutta alla olevalla painikkeella.
+oauth.deniedLabel=<b>Käyttö on estetty, tarkista ja yritä uudelleen</b>
+oauth.rememberMe=Muista minut
+oauth.tryAccessButton=Testaa oikeutta
+oauth.cancelButton=Peruuta
+save.editDescription=Kuvaile tekemiäsi muutoksia, jotta muut kartoittajat saavat käsityksen niistä.
+styleSelector.editButton=Muokkaa...
+backgroundSelector.dim=himmennä
+backgroundSelector.sharpen=terävöitä
+backgroundSelector.editButton=Muokkaa...
+backgroundSelector.vectorButton=Vektoritiedosto...
+options.tbcheck=Näytä työkalupalkki
+options.cursorcheck=Käytä mukautettuja osoittimia
+options.ok=OK
index 727b4d8052ec9ef10805896830e98606d684b1ef..214e844751c16da9ddf228b1841332db414547c5 100644 (file)
@@ -1,4 +1,38 @@
-# fr_FR resources file
+# Messages for French (Français)
+# Exported from translatewiki.net
+# Author: Crochet.david
+# Author: Verdy p
 
-help.gettingStarted = De Commencer
-help.welcome = Bienvenue
\ No newline at end of file
+help.gettingStarted=Comment bien commencer
+help.welcome=Bienvenue
+help.whyOpenstreetmap=<p><b>Pourquoi OpenStreetMap ?</b> OSM est un service de cartographie dans lequel toutes les données sont constamment mises à jour et modifiées par des personnes ordinaires telles que vous. L’avantage évident est qu’OSM est libre et gratuit à utiliser, mais OSM est également devenu un acteur majeur de la cartographie des crises (par ex., utilisation des données OSM pour coordonner les efforts humanitaires suite au tremblement de terre en Haïti). La précision de ces données est critique et nous espérons que vous serez capable de contribuer de façon bénévole un peu de votre temps !</p>
+help.activeMembers=<p><b>+ Pour les membres actifs d’OpenStreetMap</b>, veuillez vous connecter à OSM avant d’effectuer vos modifications.</p>
+help.newMembers=<p><b>+ Pour les nouveaux membres</b>, veuillez visiter <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> pour créer un compte, connectez-vous, puis revenez ici pour autoriser l’accès par Potlatch 2 avant de commencer vos modifications.</p>
+help.introText=<p><b>Potlatch 2</b> est un éditeur pour OpenStreetMap (OSM) qui vous permet d’apporter des modifications directement via le site Web de {0}.</p>
+help.introduction=Introduction
+help.controls=Contrôles
+help.interfaceControls=Contrôles de l’interface
+help.mapBackground=<p>Choisissez votre fond de carte parmi les éléments de la liste ou ajoutez votre propre fichier vectoriel.</p>
+help.colourStyle=<p>Choisissez le style dans lequel vous souhaitez afficher la carte. Les couleurs et le style général varient et comprennent également d’autres options telles que la vue en fil de fer.</p>
+help.gps=GPS
+help.createOsmMap=<p>Créez des données de carte OSM en utilisant en calque de fond les traces GPS fournies par d’autres personnes.</p>
+help.myGps=MonGPS
+help.displayGps=<p>Affichez les traces GPS que vous avez téléversées précédemment sur OpenStreetMap.</p>
+help.undoRedo=Défaire / Refaire
+help.madeMistake=<p>Vous avez commis une erreur ? Cliquez simplement sur Défaire ou Refaire pour corriger vos modifications.</p>
+help.help=Aide
+help.guideInfomation=<p>Fournit ce guide au cas où vous auriez besoin d’informations lorsque vous débutez dans vos modifications.</p>
+help.save=Enregistrer
+help.addingFeatures=Ajout d’objets sur la carte
+help.addingFeaturesText=<p><i>Avant de commencer, la première règle que vous devez savoir concerne l’utilisation des données propriétaires. L’insertion de données cartographiques protégées par le droit d’auteur (copyright) ou des droits voisins (notamment le droit des bases de données), ou de toute autre donnée propriétaire n’est pas autorisée ! La copie, le retraçage ou toute reproduction d’œuvres protégées sont interdits ! (Source : <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n<p></p>\n<p>Les objets linéaires tels que des rues, sentiers pédestres, chemins de fer et contours de bâtis seront ci-après nommés comme des <b>chemins</b>.</p>\n<p>Si vous vous apercevez soudainement que votre barre latérale d’icônes a disparu, c’est parce que vous avez un objet sélectionné sur la carte. Désélectionnez-le tout simplement en cliquant sur une zone vide de la carte pour faire apparaître les icônes à nouveau.</p>\n<p><b>Pour créer un point (ou nœud)</b>, il suffit de glisser et déplacer l’icône appropriée de la barre latérale sur la carte. Consultez « Ajouter des POIs » pour en savoir plus sur la création d’un POI (point d’intérêt)</p>\n<p><b>Pour créer un chemin</b>, commencez en cliquant sur la carte à son point de départ, puis cliquez sur chaque point successif. Double-cliquez pour terminer le tracé ou appuyez sur Entrée.</p>\n<p><b>Pour créer un polygone</b>, commencez en cliquant sur la carte à son point de départ, puis cliquez sur chaque point successif (de façon similaire à la création d’un chemin) et terminez en cliquant sur le premier point pour fermer le polygone.</p>\n<p>N’oubliez pas, si vous faites une erreur, vous pouvez toujours frapper le bouton Annuler. L’appui sur la touche Échap annulera toutes vos modifications sur l’objet actuellement sélectionné.</p>
+help.editBeg=Modifs. (déb.)
+help.editingFeatures=Fonctionnalités de modification (débutant)
+help.editingFeaturesText=<p><b>Pour ajouter un point à un chemin existant</b>, sélectionnez le chemin et cliquez en pressant la touche Maj à l’endroit voulu.</p>\n<p><b>Pour supprimer un point</b>, sélectionnez le point et cliquez sur le bouton « Supprimer l’élément » dans le coin inférieur droit ou appuyez sur la touche Suppr (ou Retour arrière) de votre clavier.</p>\n<p><b>Pour supprimer un chemin</b>, sélectionnez le chemin et cliquez le bouton « Supprimer l’élément » dans le coin inférieur droit ou appuyez sur les touches Maj+Suppr (ou Maj+Retour arrière) de votre clavier.</p>\n<p><b>Pour déplacer un point</b>, cliquez et faites glisser le point.</p>\n<p><b>Pour déplacer un chemin</b>, cliquez et faites glisser l’élément entier (Astuce : prenez un segment où vous ne déplacerez pas accidentellement un nœud).</p>\n<p><b>Pour étendre un chemin</b>, cliquez sur l’un des points d’extrémité du chemin. Puis continuez de dessiner les autres points comme d’habitude.</p>\n<p><b>Pour ajouter un nouveau chemin connecté à un chemin existant</b>, cliquez sur un des points du chemin en pressant la touche Maj. Puis continuez de dessin comme d'habitude.</p>
+help.editAdv=Modifs. (av.)
+help.editingFeaturesAdv=Fonctionnalités de modification (avancées)
+help.editingFeaturesAdvText=<p><b>Pour scinder un chemin</b>, sélectionnez le point auquel vous souhaitez couper et cliquez sur les Ciseaux de la boîte d’outils ou tapez la touche X de votre clavier. (Astuce : ajoutez d’abord un premier nœud sur le chemin afin de couper entre deux nœuds existants.)</p>\n<p><b>Pour effectuer une jonction entre deux chemins</b>, tracez comme d’habitude jusqu’à ce que vous deviez faire la jonction. Puis lorsque vous déplacerez votre souris sur un autre chemin, ses points s’allumeront en bleu. Cliquez sur un des points bleus ou tout autre endroit désiré sur le chemin pour réaliser la jonction.</p>\n<p><b>Pour déconnecter une jonction</b>, sélectionnez le point sur le chemin que vous souhaitez modifier. Puis pressez la touche Moins (−) de votre clavier pour ôter le point du chemin.</p>\n<p><b>Pour inverser la direction d’un chemin</b>, cliquez sur le bouton « Inverser la direction » en bas à droite. La direction d'un chemin n’a d’intérêt que pour des objets avec une balise <code>oneway</code> — rues à sens unique, lignes de côtes, îles, etc.</p>\n<p><b>Pour créer un chemin parallèle</b>, sélectionnez le chemin et cliquez sur le bouton « Créer un chemin parallèle » dans le coin inférieur droit ou pressez la touche P de votre clavier.</p>\n<p><b>Pour créer un chemin qui partage des nœuds avec un chemin existant</b>, commencez le tracé normalement, cliquez sur les deux premiers nœuds partagés, puis appuyez sur la touche F de votre clavier pour suivre automatiquement les nœuds successifs du chemin existant.</p>\n<p><i>Visitez <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Potlatch 2 Primer</a> sur le wiki d’OpenStreetMap pour connaître des méthodes et conventions de modification encore plus avancées.</i></p>
+help.tag=Balise
+help.taggingFeatures=Fonctionnalité de balisage
+help.taggingFeaturesText=<p>Avec Potlatch 2, le balisage d’objets est devenu relativement facile grâce à son utilisation de menus graphiques et de champs/icônes dédiés.</p>\n<p><b>Balisage d‘un objet</b></p>\n<p>Sélectionnez le point ou le chemin que vous souhaitez modifier, et choisissez la balise appropriée dans la barre latérale gauche. Après le balisage de l’objet, certains champs de base devraient apparaître tels que le nom, la limite de vitesse et la largeur, selon la balise vous avez donnée. Remplissez-les autant que vous le pouvez.</p>\n<p>Des utilisateurs avancés peuvent remarquer l’absence de quelques balises et de valeurs de balises qu’ils utilisent parfois. Si c’est le cas, cliquez sur l’onglet « Options avancées » en bas de la barre latérale et modifiez/ajoutez les balises selon vos besoins.</p>\n<p>Le wiki d’OpenStreetMap fournit également une <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">liste exhaustive et documentée des balises et des valeurs de balise</a>. Veuillez vous référer à la documentation d’OSM si vous ne savez pas quelle balise utiliser.</p>
+help.shortcuts=Raccourcis
+help.keyboardShortcuts=Raccourcis clavier
index 00a10fbfc196858fb3ab07a9b4138de5a1516eac..73d5e856ff9005672241a3c405bfec2cf5d214d0 100644 (file)
@@ -1,14 +1,44 @@
-# fr_FR resources file
+# Messages for French (Français)
+# Exported from translatewiki.net
+# Author: Verdy p
 
-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.clear_gps = Effacer
-main.help = Assistance
-main.options = Options
-main.save = Enregistrer
-
-tag_viewer.dndprompt = Ajouter de nouveaux points en les faisant glisser sur la carte
+main.undo=Défaire
+main.redo=Refaire
+main.background=Arrière-plan
+main.map_style=Style de Carte
+main.gpsButton=Données GPS
+main.gps_data=GPS Informations
+main.my_tracks=Mes Pistes
+main.clear_gps=Effacer
+main.help=Assistance
+main.options=Options
+main.save=Enregistrer
+tag_viewer.dndprompt=Ajouter de nouveaux points en les faisant glisser sur la carte
+toolbox.delete_node=Supprimer le nœud (Suppr)
+toolbox.delete_area=Supprimer la zone (Maj+Suppr)
+toolbox.delete_way=Supprimer le chemin (Maj+Suppr)
+toolbox.delete_item=Supprimer l’élément
+toolbox.reverse_direction=Inverser le chemin (V)
+toolbox.split_way=Scinder le chemin (X)
+toolbox.merge_ways=Fusionner les chemins
+toolbox.straighten_way=Aligner les nœuds
+toolbox.make_circular=Placer les nœuds en cercle
+toolbox.make_right_angled=Rendre une forme orthogonale (Q)
+toolbox.create_parrallel_way=Créer un chemin parallèle (P)
+oauth.gotLinkBox=Cliquez sur le lien ci-dessous pour ouvrir une page web où il vous sera demandé d’autoriser l’accès par cette application.
+oauth.authorized=Une fois que vous aurez autorisé l’accès, cliquez le bouton « Essayer l’accès » ci-dessous
+oauth.deniedLabel=<b>L’accès a été refusé, veuillez vérifier et essayer à nouveau</b>
+oauth.rememberMe=Se souvenir de moi
+oauth.permFail=<p>Le serveur a rejeté les informations d’identification de cette application — un lien d’autorisation n’a pas pu être obtenu.</p>\n<p><b>L’accès OAuth ne sera pas possible.</b></p>\n<p>Contactez le fournisseur de l’application pour savoir ce qui se passe.</p>
+oauth.tempFail=Un problème est survenu en contactant le serveur afin d’obtenir l’autorisation. Ceci peut être une erreur temporaire, veuillez réessayer plus tard.
+oauth.tryAccessButton=Essayer l’accès
+oauth.cancelButton=Annuler
+save.editDescription=Veuillez entrer une description de vos modifications. Cela servira à donner aux autres cartographes une idée des changements que vous effectuez.
+styleSelector.editButton=Modifier...
+backgroundSelector.dim=assombrir
+backgroundSelector.sharpen=accentuer le contraste
+backgroundSelector.editButton=Modifier...
+backgroundSelector.vectorButton=Fichier vectoriel...
+options.tbcheck=Afficher la boîte à outils
+options.cursorcheck=Utiliser les curseurs personnalisés
+options.ok=Valider
diff --git a/l10n/locale/ga/p2_main.properties b/l10n/locale/ga/p2_main.properties
new file mode 100644 (file)
index 0000000..b7f1bcd
--- /dev/null
@@ -0,0 +1,19 @@
+# Messages for Irish (Gaeilge)
+# Exported from translatewiki.net
+# Author: D.de.loinsigh
+
+main.clear_gps=Glan
+main.help=Cuidiú
+main.options=Roghanna
+main.save=Sábháil
+tag_viewer.dndprompt=Chun pointí nua a chur leis, tarraing chun na léarscáile iad
+toolbox.delete_node=Scrios nód
+toolbox.delete_area=Scrios achar
+toolbox.delete_way=Scrios slí
+toolbox.delete_item=Scrios mír
+toolbox.split_way=Scoilt slí
+toolbox.merge_ways=Comhcheangal slite
+toolbox.straighten_way=Dírigh slí
+toolbox.make_circular=Déan ciorclach é
+toolbox.create_parrallel_way=Cruthaigh slí chomhthreomhar
+oauth.cancelButton=Cealaigh
diff --git a/l10n/locale/gl/help_dialog.properties b/l10n/locale/gl/help_dialog.properties
new file mode 100644 (file)
index 0000000..51dc75b
--- /dev/null
@@ -0,0 +1,33 @@
+# Messages for Galician (Galego)
+# Exported from translatewiki.net
+# Author: Toliño
+
+help.gettingStarted=Primeiros pasos
+help.welcome=Benvido
+help.whyOpenstreetmap=<p><b>Por que o OpenStreetMap?</b> O OSM é un servizo cartográfico no que todos os datos están en constante actualización e modificación grazas xente coma vostede. O beneficio máis obvio reside en que é de balde, pero tamén se converteu nun medio importante para a cartografía de crises (por exemplo, a utilizaión de datos do OSM para coordinar os esforzos humanitarios no terremoto de Haití). A precisión dos datos é crítica, e agardamos que poida dedicar algo do seu tempo!</p>
+help.activeMembers=<p><b>+ Para os membros activos do OpenStreetMap</b>, accedede ao sistema do OSM antes de facerdes modificacións.</p>
+help.newMembers=<p><b>+ Para os novos membros</b>, visitade <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> para crear unha conta e acceder ao sistema; logo volvede aquí para permitir o acceso ao Potlatch 2 e comezar a editar.</p>
+help.introText=<p>O <b>Potlatch 2</b> é un editor do OpenStreetMap (OSM) que permite facer edicións directamente mediante o sitio web {0}.</p>
+help.introduction=Introdución
+help.controls=Controis
+help.interfaceControls=Controis da interface
+help.mapBackground=<p>Escolla o seu fondo de mapa dun dos elementos que hai na lista ou engada o seu propio ficheiro vectorial.</p>
+help.colourStyle=<p>Escolla o estilo no que queira ver o mapa. As cores e mais o estilo xeral varían e tamén inclúen outras opcións como a vista en arame.</p>
+help.gps=GPS
+help.createOsmMap=<p>Cree os datos do mapa do OSM usando, como fondo, as pistas GPS doutras persoas</p>
+help.myGps=OMeuGPS
+help.displayGps=<p>Bote unha ollada ás trazas GPS que cargou con anterioridade no OpenStreetMap.</p>
+help.undoRedo=Desfacer / Refacer
+help.madeMistake=<p>Cometeu un erro? Basta con premer en "desfacer" e/ou "refacer" para corrixir as edicións.</p>
+help.help=Axuda
+help.guideInfomation=<p>Presenta esta guía en caso de que necesite algunha información mentres está editando.</p>
+help.save=Gardar
+help.addingFeatures=Características de adición
+help.editBeg=Editar (principiante)
+help.editingFeatures=Características de edición (principiante)
+help.editAdv=Editar (avanzado)
+help.editingFeaturesAdv=Características de edición (avanzado)
+help.tag=Etiqueta
+help.taggingFeatures=Características de etiquetaxe
+help.shortcuts=Atallos
+help.keyboardShortcuts=Atallos do teclado
diff --git a/l10n/locale/gl/p2_main.properties b/l10n/locale/gl/p2_main.properties
new file mode 100644 (file)
index 0000000..454c9e9
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Galician (Galego)
+# Exported from translatewiki.net
+# Author: Toliño
+
+main.undo=Desfacer
+main.redo=Refacer
+main.background=Fondo
+main.map_style=Estilo do mapa
+main.gpsButton=Datos do GPS
+main.gps_data=Datos do GPS
+main.my_tracks=As miñas pistas
+main.clear_gps=Limpar
+main.help=Axuda
+main.options=Opcións
+main.save=Gardar
+tag_viewer.dndprompt=Engada novos puntos arrastrándoos sobre o mapa
+toolbox.delete_node=Borrar o nodo (Supr)
+toolbox.delete_area=Borrar a zona (Maiús+Supr)
+toolbox.delete_way=Borrar o camiño (Maiús+Supr)
+toolbox.delete_item=Borrar o elemento
+toolbox.reverse_direction=Inverter a dirección (V)
+toolbox.split_way=Dividir o camiño (X)
+toolbox.merge_ways=Fusionar os camiños
+toolbox.straighten_way=Aliñar os camiños
+toolbox.make_circular=Facer un círculo
+toolbox.make_right_angled=Facer un ángulo recto (Q)
+toolbox.create_parrallel_way=Crear un camiño paralelo (P)
+oauth.gotLinkBox=Prema na ligazón inferior para abrir unha páxina web na que se lle pedirá autorización para acceder a esta aplicación.
+oauth.authorized=Unha vez autorizado o acceso, prema no botón "Intentar o acceso" que hai a continuación
+oauth.deniedLabel=<b>Rexeitouse o acceso; compróbeo e inténteo de novo</b>
+oauth.rememberMe=Lembrádeme
+oauth.permFail=<p>O servidor rexeitou as credenciais de acceso desta aplicación; non se puido obter ligazón de autorización ningunha.             </p>\n<p>       <b>O acceso ao OAuth non será posible.</b>             </p>\n<p>       Póñase en contacto co provedor da aplicación para descubrir o que acontece.</p>
+oauth.tempFail=Houbo un problema ao contactar co servidor para obter a autorización. Este pode ser un erro temporar. Inténteo de novo.
+oauth.tryAccessButton=Intentar o acceso
+oauth.cancelButton=Cancelar
+save.editDescription=Escriba unha descrición das súas edicións. Utilizarase para dar aos outros usuarios unha idea das modificacións que está a realizar.
+styleSelector.editButton=Editar...
+backgroundSelector.dim=atenuar
+backgroundSelector.sharpen=acentuar
+backgroundSelector.editButton=Editar...
+backgroundSelector.vectorButton=Ficheiro vectorial...
+options.tbcheck=Mostrar a caixa de ferramentas
+options.cursorcheck=Usar cursores personalizados
+options.ok=Aceptar
diff --git a/l10n/locale/he/help_dialog.properties b/l10n/locale/he/help_dialog.properties
new file mode 100644 (file)
index 0000000..56e273f
--- /dev/null
@@ -0,0 +1,35 @@
+# Messages for Hebrew (עברית)
+# Exported from translatewiki.net
+# Author: Amire80
+
+help.gettingStarted=תחילת עבודה
+help.welcome=ברוך בואך
+help.whyOpenstreetmap=<p><b>למה OpenStreetMap?&rlm;</b> OSM הוא שירות המיפוי שבו כל הנתונים מתעדכנים ונערכים ללא הרף על־ידי אנשים רגילים כמוך. היתרון הברור הוא שזה חופשי לשימוש, אבל המיזם הזה הפך גם לשחקן בולט במיפוי בעת משבר (למשל, השימוש בנתוני OSM כדי לתאם את מאמצי הסיוע ברעידת האדמה בהאיטי). דיוק הנתונים חיוני, ואנו מקווים שיש לך זמן לנדב לזה!</p>
+help.activeMembers=<p><b>+ לחברי OpenStreetMap פעילים</b>, נא להירשם ל־OSM לפני עריכה</b></p>
+help.newMembers=<p><b>+ לחברים חדשים</b>, אנא בקרו בדך <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> כדי ליצור חשבון משתמש, היכנסו, ואז חזרו הנה כדי לאפשר גישה ל־Potlatch 2 והתחילו לערוך.</p>
+help.introText=<p><b>Potlatch 2</b> הוא עורך OpenStreetMap&rlm (OSM) שמאפשר לך לערוך ישירות דרך אתר {0}.</p>
+help.introduction=מבוא
+help.controls=פקדים
+help.interfaceControls=פקדי ממשק
+help.mapBackground=<p>בחירת רקע המפה שלך מתוך אחד מהפריטים ברשימה או הוספת קובץ וקטורי משלך.</p>
+help.colourStyle=<p>אפשר לבחור את הסגנון להצגת המפה. הצבעים והסגנון הכללי משתנים וכוללים גם קווי־גוף.</p>
+help.gps=GPS
+help.createOsmMap=<p>יצירת נתוני מפות OSM באמצעות שימוש במסלולי GPS של אנשים אחרים בתור רקע</p>
+help.myGps=MyGPS
+help.displayGps=<p>הצגת מסלולי GPS שכבר העלית ל־OpenStreetMap.</p>
+help.undoRedo=ביטול / ביצוע חוזר
+help.madeMistake=<p>עשית טעות? אפשר פשוט ללחוץ על „ביטול” ולתקן את העריכות שלך.</p>
+help.help=עזרה
+help.guideInfomation=<p>העלאת המדריך הזה כשנחוץ לך מידע בעת תחילת העריכה.</p>
+help.save=שמירה
+help.addingFeatures=הוספת תכונות
+# Fuzzy
+help.addingFeaturesText=<p><i>לפני שנתחיל, הכלל הראשון שחשוב לדעת הוא הכלל לגבי שימוש בנתונים קנייניים. נתונים ממפות שמוגבלות בזכויות יוצרים וכל סוג אחר שלנתונים קנייניים אסורים בהחלט! העתקה, העקבה וכל סוג אחר של שכפול של יצירות מוגבלות בזכויות יוצרים אינו מותר! (מקור: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>תכונות קוויות כגול רחובות, נתיבי הליכה, מסילות ברזל ושרטוטי בניינים ייקראו מכאן והלאה בשם <b>דרכים</b>.</p>\n  <p>אם פתאום גילית שסרגל הצד שלך עם כל הסמלים נעלם, אז זה בגלל שבחרת בתכונה , it's because you have a feature selected on the map. Simply deselect by clicking on a blank area of the map to bring up the icons again.</p>\n            <p><b>To create a point (or node)</b>, just drag and drop the appropriate icon from the sidebar onto the map. See Add POIs to learn more about creating a POI (Point of Interest)</p>\n            <p><b>To create a way</b>, begin by clicking on the map at its start point, then click at each successive point. Double-click to finish the line or press Enter.</p>\n            <p><b>To create a polygon</b>, begin by clicking on the map at its start point, then click at each successive point (similar to creating a way), and finish by clicking on the very first point to close the polygon.</p>\n            <p>Remember, if you make a mistake, you can always hit the Undo button. Pressing the Esc key will undo all your edits for the current feature.</p>
+help.editBeg=עריכה (למתחילים)
+help.editingFeatures=עריכת תכונות (למתחילים)
+help.editAdv=עריכה (למתקדמים)
+help.editingFeaturesAdv=עריכת תכונות (למתקדמים)
+help.tag=תג
+help.taggingFeatures=תיוג תכונות
+help.shortcuts=קיצורי דרך
+help.keyboardShortcuts=קיצורי מקשים
diff --git a/l10n/locale/he/p2_main.properties b/l10n/locale/he/p2_main.properties
new file mode 100644 (file)
index 0000000..849f3c4
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Hebrew (עברית)
+# Exported from translatewiki.net
+# Author: Amire80
+
+main.undo=ביטול
+main.redo=ביצוע חוזר
+main.background=רקע
+main.map_style=סגנון מפה
+main.gpsButton=נתוני GPS
+main.gps_data=נתוני GPS
+main.my_tracks=השבילים שלי
+main.clear_gps=ניקוי
+main.help=עזרה
+main.options=אפשרויות
+main.save=שמירה
+tag_viewer.dndprompt=נקודות חדשות נוספות באמצעות גרירתן למפה
+toolbox.delete_node=מחיקת צומת (Delete)
+toolbox.delete_area=מחיקת אזור (Shift+Delete)
+toolbox.delete_way=מחיקת דרך (Shift+Delete)
+toolbox.delete_item=מחיקת פריט
+toolbox.reverse_direction=היפוך כיוון (V)
+toolbox.split_way=פיצול דרך (X)
+toolbox.merge_ways=מיזוג דרכים
+toolbox.straighten_way=יישור דרך
+toolbox.make_circular=הפיכה למעגלי
+toolbox.make_right_angled=להפוך לישר־שווית (Q)
+toolbox.create_parrallel_way=יצירת דרך מקבילה (P)
+oauth.gotLinkBox=לחיצה על הקישור להלן תפתח דף שיבקש ממך אישור גישה ליישום הזה.
+oauth.authorized=אחרי שאישרת גישה, נא ללחוץ על כפתור „לנסות לגשת” להלן
+oauth.deniedLabel=<b>הגישה נדחתה, נא לבדוק, ולנסות שוב</b>
+oauth.rememberMe=לזכור אותי
+oauth.permFail=<p>השרת סירב למידע הכניסה של היישום הזה – לא ניתן להשיג את קישור האישור.              </p>\n<p>       <b>גישת OAuth לא תתאפשר.</b>        </p>\n<p>       נא ליצור קשר עם ספק היישום כדי להבין מה קורה.</p>
+oauth.tempFail=הייתה בעיה ביצירת קשר עם השרת לקבלת אישור. ייתכן שזאת טעות זמנית, נא לנסות שוב מאוחר יותר.
+oauth.tryAccessButton=לנסות לגשת
+oauth.cancelButton=ביטול
+save.editDescription=נא להזין תיאור של העריכות שלך. זה יעזור לממפים אחרים להבין אילו שינויים עשית.
+styleSelector.editButton=עריכה...
+backgroundSelector.dim=עמעום
+backgroundSelector.sharpen=חידוד
+backgroundSelector.editButton=עריכה...
+backgroundSelector.vectorButton=קובץ וקטורי...
+options.tbcheck=הצגת ארגז הכלים
+options.cursorcheck=שימוש בסמנים מותאמים אישית
+options.ok=אישור
diff --git a/l10n/locale/hsb/help_dialog.properties b/l10n/locale/hsb/help_dialog.properties
new file mode 100644 (file)
index 0000000..a572776
--- /dev/null
@@ -0,0 +1,24 @@
+# Messages for Upper Sorbian (Hornjoserbsce)
+# Exported from translatewiki.net
+# Author: Michawiki
+
+help.gettingStarted=Prěnje kroki
+help.welcome=Witaj
+help.introText=<p><b>Potlatch2</b> je editor OpenStreetMap (OSM), kotryž ći zmóžnja, změny direktnje přez websydło {0} činić.</p>
+help.introduction=Zawod
+help.controls=Wobsłužowanske elementy
+help.interfaceControls=Wobsłužowanske elementy wužiwarskeho powjercha
+help.gps=GPS
+help.myGps=MyGPS
+help.undoRedo=Cofnyć/Wospjetować
+help.help=Pomoc
+help.save=Składować
+help.addingFeatures=Přidawanje funkcijow
+help.editBeg=Wobdźěłać (započatkarjo)
+help.editingFeatures=Wobdźěłowanske funkcije (započatkarjo)
+help.editAdv=Wobdźěłać (pokročeni)
+help.editingFeaturesAdv=Wobdźěłowanske funkcije (pokročeni)
+help.tag=Woznamjenić
+help.taggingFeatures=Funkcije za markěrowanje
+help.shortcuts=Skrótšenki
+help.keyboardShortcuts=Tastaturowe skrótšenki
diff --git a/l10n/locale/hsb/p2_main.properties b/l10n/locale/hsb/p2_main.properties
new file mode 100644 (file)
index 0000000..ab79e0e
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Upper Sorbian (Hornjoserbsce)
+# Exported from translatewiki.net
+# Author: Michawiki
+
+main.undo=Cofnyć
+main.redo=Wospjetować
+main.background=Pozadk
+main.map_style=Kartowy stil
+main.gpsButton=GPS-daty
+main.gps_data=GPS-daty
+main.my_tracks=Moje čary
+main.clear_gps=Wuprózdnić
+main.help=Pomoc
+main.options=Opcije
+main.save=Składować
+tag_viewer.dndprompt=Přidaj nowe dypki ćahajo je na kartu
+toolbox.delete_node=Suk zhašeć (Entf)
+toolbox.delete_area=Přestrjeń zhašeć (Umsch+Entf)
+toolbox.delete_way=Puć zhašeć (Umsch+Entf)
+toolbox.delete_item=Element zhašeć
+toolbox.reverse_direction=Směr wobroćić (V)
+toolbox.split_way=Puć dźělić (X)
+toolbox.merge_ways=Puće zwjazać
+toolbox.straighten_way=Puć zrunać
+toolbox.make_circular=Kružnje rjadować
+toolbox.make_right_angled=Prawokutnje rjadować
+toolbox.create_parrallel_way=Paralelny puć wutworić (p)
+oauth.gotLinkBox=Klikń na wotkaz horjeka, zo by webstronu wočinił, hdźež će proša, přistup za tutu aplikaciju awtorizować.
+oauth.authorized=Hdyž sy přistup awtorizował, klikń deleka na tłóčatko 'Přistup spytać'
+oauth.deniedLabel=<b>Přistup je so wotpokazał, prošu přepruwuj a spytaj hišće raz</b>
+oauth.rememberMe=Spomjatkować sej
+oauth.permFail=<p>Serwer je přizjewjenske informacije tuteje aplikacije wotpokazał -- awtorizaciski wotkaz njeda so wotwołać.            </p>\n<p>       <b>OAuth-přistup njebudźe móžno.</b>        </p>\n<p>       Prošu staj so ze zhotowjerjom aplikacije do zwiska, zo by wuslědźił, štož so stawa.</p>
+oauth.tempFail=Při zwjazowanju ze serwerom, zo by awtorizaciju dóstał, je problem wustupił. To móhło nachwilny zmylk być, prošu spytaj pozdźišo hišće raz.
+oauth.tryAccessButton=Přistup spytać
+oauth.cancelButton=Přetorhnyć
+save.editDescription=Prošu zapisaj wopisanje twojich změnow. To budźe so wužiwać, zo by druhim kartěrowarjam předstajenje dał, kotre změny činiš.
+styleSelector.editButton=Wobdźěłać...
+backgroundSelector.dim=woćěmnić
+backgroundSelector.sharpen=wótřić
+backgroundSelector.editButton=Wobdźěłać...
+backgroundSelector.vectorButton=Vektorowa dataja...
+options.tbcheck=Gratowy kašćik pokazać
+options.cursorcheck=Swójske kursory wužiwać
+options.ok=W porjadku
diff --git a/l10n/locale/hu/help_dialog.properties b/l10n/locale/hu/help_dialog.properties
new file mode 100644 (file)
index 0000000..21e6e54
--- /dev/null
@@ -0,0 +1,34 @@
+# Messages for Hungarian (Magyar)
+# Exported from translatewiki.net
+# Author: BáthoryPéter
+
+help.gettingStarted=Első lépések
+help.welcome=Üdvözlés
+help.whyOpenstreetmap=<p><b>Miért OpenStreetMap?</b> az OSM egy olyan térképszolgáltatás, ahol az adatokat olyan hétköznapi emberek szerkesztik és frissítik, mint te. Ennek a nyilvánvaló előnye, hogy szabadon felhasználható, de jelentős szereplővé teszi például a válságtérképezésben is (pl. OSM adatok használata a Haitii földrengés segélyakcióinak koordinálásában). Az adatok pontossága nagyon fontos, reméljük rá tudsz szánni egy keveset az idődből!</p>
+help.activeMembers=<p><b>- Aktív OpenStreetMap tagok:</b> szerkesztés előtt kérlek jelentkezz be az OSM-be.</p>
+help.newMembers=<p><b>- Új tagok:</b> regisztráláshoz kérlek, látogasd meg az <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> oldalt, jelentkezz be, majd térj vissza ide, hogy megkezdhesd a szerkesztésd a Potlatch 2-vel.</p>
+help.introText=<p>A <b>Potlatch 2</b> egy OpenStreetMap (OSM) szerkesztőprogram, amivel közvetlenül a(z) {0} oldalról tudsz szerkeszteni.</p>
+help.introduction=Bevezetés
+help.controls=Menüsor
+help.interfaceControls=Felület vezérlők
+help.mapBackground=<p>Válassz egy térképhátteret a listából, vagy add hozzá a saját vektoros fájlodat.</p>
+help.colourStyle=<p>Válaszd ki, milyen stílusban szeretnéd megjeleníteni a térképet. Színben és általános megjelenésben különböznek, de van lehetőség vázrajz (wireframe) nézetre is.</p>
+help.gps=GPS
+help.createOsmMap=<p>Térkép készítése mások által készített, háttérként megjelenített GPS nyomvonalak alapján.</p>
+help.myGps=Nyomvonalaim
+help.displayGps=<p>Megjeleníti OpenStreetMapre korábban feltöltött GPS nyomvonalaidat.</p>
+help.undoRedo=Visszavonás / Újra
+help.madeMistake=<p>Valamit elrontottál? A javításhoz csak nyomd meg a Visszavonás vagy Újra gombot.</p>
+help.help=Súgó
+help.guideInfomation=<p>Megjeleníti ezt az útmutatót, ha a szerkesztés megkezdéséhez információra van szükséged.</p>
+help.save=Mentés
+help.addingFeatures=Hozzáadási lehetőségek
+help.addingFeaturesText=<p><i>Mielőtt elkezdenéd, az első szabály, amit tudnod kell, a védett adatok felhasználására vonatkozik. A jogvédett térképek és egyéb védett adatok használata szigorúan tilos! A jogvédett adatok lemásolása, követése és egyéb reprodukciója nem megengedett! (Lásd: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>A lineáris objektumokat – mint utcák, járdák, vasútvonalak és épületkörvonalak – <b>vonalnak</b> nevezzük.</p>\n  <p>Ha azt veszed észre, hogy eltűnt az ikonokat tartalmazó oldalsávod, az azt jelent, hogy kiválasztottál egy objektumot a térképen. Egyszerűn kattints a térképen egy üres helyre és az ikonok újra megjelennek.</p>\n            <p><b>Pont (más néven csomópont) létrehozásához</b> húzz egy ikont az oldalsávról a térképre. POI-k  (Érdekes Pont, Point of Interest) készítéséhez további információkhoz nézd meg az Add POIs részt.</p>\n            <p><b>Vonal készítéséhez</b> kattints a térképen a kezdő helyre, majd minden olyan helyre, ahova a vonalba töréspontot szeretnél tenni. Dupla kattintással, vagy Enterrel tudod befejezni a vonalat.</p>\n            <p><b>Sokszöget készíteni</b> hasonlóan tudsz, mint vonalat, csak a végén a vonal legelső pontjára kell kattintanod, hogy bezárd a sokszöget.</p>\n            <p>Ne feledd, ha valamit elrontasz, csak kattints a Visszavonás gombra. Az Esc visszavonja az összes műveletet, amit az objektumon végeztél.</p>
+help.editBeg=Szerkesztés (1)
+help.editingFeatures=Szerkesztési lehetőségek (kezdő)
+help.editAdv=Szerkesztés (2)
+help.editingFeaturesAdv=Szerkesztési lehetőségek (haladó)
+help.tag=Címkék
+help.taggingFeatures=Címkézési lehetőségek
+help.shortcuts=Billentyűk
+help.keyboardShortcuts=Billentyűparancsok
diff --git a/l10n/locale/hu/p2_main.properties b/l10n/locale/hu/p2_main.properties
new file mode 100644 (file)
index 0000000..abdb321
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Hungarian (Magyar)
+# Exported from translatewiki.net
+# Author: BáthoryPéter
+
+main.undo=Visszavonás
+main.redo=Újra
+main.background=Háttér
+main.map_style=Térképstílus
+main.gpsButton=GPS adatok
+main.gps_data=GPS adatok
+main.my_tracks=Nyomvonalaim
+main.clear_gps=Törlés
+main.help=Súgó
+main.options=Beállítások
+main.save=Mentés
+tag_viewer.dndprompt=Új pont hozzáadása térképre húzással
+toolbox.delete_node=Pont törlése (Delete gomb)
+toolbox.delete_area=Terület törlése (Shift+Delete)
+toolbox.delete_way=Vonal törlése (Shift+Delete)
+toolbox.delete_item=Elem törlése
+toolbox.reverse_direction=Irány megfordítása (V)
+toolbox.split_way=Vonal elvágása (X)
+toolbox.merge_ways=Vonalak egyesítése
+toolbox.straighten_way=Vonal kiegyenesítése
+toolbox.make_circular=Kör készítése
+toolbox.make_right_angled=Derékszögesítés (Q)
+toolbox.create_parrallel_way=Párhuzamos vonal létrehozása (P)
+oauth.gotLinkBox=Az alábbi hivatkozásra kattintva egy új lap nyílik, ahol engedélyezheted a hozzáférést ehhez az alkalmazáshoz.
+oauth.authorized=Ha engedélyezted az elérést, kattints az alábbi "Próbáld elérni" gombra
+oauth.deniedLabel=<b>Hozzáférése megtagadva, kérlek ellenőrizd, majd próbáld újra</b>
+oauth.rememberMe=Emlékezz rám
+oauth.permFail=<p>A kiszolgáló megtagadta az alkalmazás hitelesítését -- az engedélyt nem sikerült beszerezni.       </p>\n<p>       <b>OAuth hozzáférés nem lesz lehetséges.</b>        </p>\n<p>       Kérlek vedd fel a kapcsolatot az alkalmazás készítőjével, hogy kiderüljön, mi történt.</p>
+oauth.tempFail=Nem sikerült kapcsolódni az engedélykiállító kiszolgálóhoz. Ez egy átmeneti hiba lehet, kérlek próbáld újra kicsit később.
+oauth.tryAccessButton=Próbáld elérni
+oauth.cancelButton=Mégsem
+save.editDescription=Kérlek adj meg egy szerkesztési összefoglalót. Erre azért van szükség, hogy a többi térképszerkesztő könnyebben megértse a változtatásaidat.
+styleSelector.editButton=Szerkesztés...
+backgroundSelector.dim=halványít
+backgroundSelector.sharpen=élesít
+backgroundSelector.editButton=Szerkesztés...
+backgroundSelector.vectorButton=Vektoros fájl...
+options.tbcheck=Eszköztár megjelenítése
+options.cursorcheck=Egyedi kurzorok használata
+options.ok=OK
diff --git a/l10n/locale/ia/help_dialog.properties b/l10n/locale/ia/help_dialog.properties
new file mode 100644 (file)
index 0000000..8caaa0b
--- /dev/null
@@ -0,0 +1,35 @@
+# Messages for Interlingua (Interlingua)
+# Exported from translatewiki.net
+# Author: McDutchie
+
+help.gettingStarted=Como initiar
+help.welcome=Benvenite
+help.whyOpenstreetmap=<p><b>Proque OpenStreetMap?</b> OSM es un servicio cartographic in le qual tote le datos es constantemente actualisate e modificate per ordinari personas como te. Le obvie beneficio es que le uso es gratuite, ma OSM ha anque devenite un major factor in le cartographia de crises (p.ex. uso de datos de OSM pro coordinar le effortios humanitari post le tremor de terra in Haiti). Le precision de iste datos es de importantia crucial, e nos spera que tu pote dedicar alcun tempore como voluntario!</p>
+help.activeMembers=<p><b>+ Pro membros active de OpenStreetMap</b>, per favor aperi session in OSM ante de modificar.</p>
+help.newMembers=<p><b>+ Pro nove membros</b>, per favor visita <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> pro crear un conto, aperi session, postea retorna hic pro permitter le accesso a Potlatch 2 e comenciar a modificar.</p>
+help.introText=<p><b>Potlatch 2</b> es un editor pro OpenStreetMap (OSM) que permitte facer modificationes directemente via le sito web {0}.</p>
+help.introduction=Introduction
+help.controls=Controlos
+help.interfaceControls=Controlos del interfacie
+help.mapBackground=<p>Selige un fundo de carta del lista o adde un proprie file de graphico vectorial.</p>
+help.colourStyle=<p>Selige le stilo visual del carta. Le colores e le stilo general varia. Il ha etiam altere optiones como "wireframe" (quadro de filos).</p>
+help.gps=GPS
+help.createOsmMap=<p>Crear datos cartographic pro OSM usante le tracias GPS de altere personas como fundo</p>
+help.myGps=MiGPS
+help.displayGps=<p>Monstrar tracias GPS que tu ha previemente incargate a OpenStreetMap.</p>
+help.undoRedo=Disfacer / Refacer
+help.madeMistake=<p>Ha facite un error? Clicca simplemente sur Disfacer o Refacer pro corriger tu modificationes.</p>
+help.help=Adjuta
+help.guideInfomation=<p>Presenta iste guida in caso que tu ha besonio de information quando tu comencia a modificar.</p>
+help.save=Salveguardar
+help.addingFeatures=Addition de objectos
+help.addingFeaturesText=<p><i>Ante de comenciar, le prime regula que tu debe cognoscer concerne le uso de datos proprietari. Le datos de cartas sub copyright o altere datos proprietari es strictemente prohibite! Le copia, le traciamento e omne altere reproduction de un obra sub copyright non es permittite! (Origine: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>Objectos linear como stratas, sentieros pro pedones, ferrovias e profilos de edificios essera hic appellate <b>vias</b>.</p>\n  <p>Si le barra lateral con tote le icones dispare subitemente, isto es perque tu ha seligite un objecto sur le carta. Simplemente disface le selection con un clic sur un area vacue del carta pro facer le icones reapparer.</p>\n           <p><b>Pro crear un puncto (o nodo)</b>, simplemente trahe le icone appropriate ab le barra lateral e depone lo sur le carta. Vider "Adder PDIs" pro saper plus a proposito del creation de un PDI (puncto de interesse).</p>\n           <p><b>Pro crear un via</b>, comencia con un clic sur le carta a su puncto de initio, postea clicca sur cata puncto successive. Face clic duple pro finir le linea o preme le clave Enter.</p>\n           <p><b>Pro crear un polygono</b>, comencia con un clic sur le carta a su puncto de initio, postea clicca sur cata puncto successive (de modo similar al creation de un via), e fini con un clic sur le prime puncto pro clauder le polygono.</p>\n           <p>Non oblida que, si tu face un error, tu pote sempre pulsar le button Disfacer. Preme le clave Esc pro disfacer tote le modificationes del objecto actualmente seligite.</p>
+help.editBeg=Modificar (novicios)
+help.editingFeatures=Modification de objectos (pro comenciantes)
+help.editAdv=Modif. (av.)
+help.editingFeaturesAdv=Modification de objectos (avantiate)
+help.tag=Etiquetta
+help.taggingFeatures=Etiquettage de objectos
+help.taggingFeaturesText=<p>Con Potlatch 2, le etiquettage de objectos ha devenite relativemente facile con le uso de menus graphic e special campos/icones.</p>\n         <p><b>Como etiquettar un objecto</b></p>\n         <p>Selige le puncto o via que tu vole modificar, e selige le etiquetta appropriate ab le barra lateral sinistre. Post etiquettar le objecto, certe campos de base debe apparer como Nomine, Limite de velocitate, e Latitude, dependente del etiquetta que tu specificava. Completa istes tanto como possibile.</p><p>Usatores avantiate pote remarcar le absentia de certe etiquettas e valores que illes occasionalmente usa. Si isto es le caso, clicca sur le scheda "Avantiate" in le parte inferior del barra lateral e modifica/adde como necessari.</p>\n         <p>Le wiki de OpenStreetMap contine etiam un <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">lista extense de etiquettas e valores de etiquetta</a>. Per favor consulta le documentation de OSM si tu non sape qual etiquetta usar.</p>
+help.shortcuts=Accessos directe
+help.keyboardShortcuts=Claves accelerator
diff --git a/l10n/locale/ia/p2_main.properties b/l10n/locale/ia/p2_main.properties
new file mode 100644 (file)
index 0000000..b019eea
--- /dev/null
@@ -0,0 +1,27 @@
+# Messages for Interlingua (Interlingua)
+# Exported from translatewiki.net
+# Author: McDutchie
+
+main.undo=Disfacer
+main.redo=Refacer
+main.background=Fundo
+main.map_style=Stilo de carta
+main.gpsButton=Datos GPS
+main.gps_data=Datos GPS
+main.my_tracks=Mi pistas
+main.clear_gps=Rader
+main.help=Adjuta
+main.options=Optiones
+main.save=Salveguardar
+tag_viewer.dndprompt=Adde nove punctos per traher e deponer los sur le carta
+toolbox.delete_node=Deler nodo (Del)
+toolbox.delete_area=Deler area (Shift+Del)
+toolbox.delete_way=Deler via (Shift+Del)
+toolbox.delete_item=Deler objecto
+toolbox.reverse_direction=Inverter direction (V)
+toolbox.split_way=Scinder cammino (X)
+toolbox.merge_ways=Fusionar caminos
+toolbox.straighten_way=Render recte
+toolbox.make_circular=Render circular
+toolbox.make_right_angled=Render orthogonal
+toolbox.create_parrallel_way=Crear via parallel (P)
index 3f66aca6dbdb0584a4c13f655148dfd0ba9ad688..1ce1082984aa002c42a0e659f463d0a6ee560df5 100644 (file)
@@ -1,35 +1,36 @@
-# ja_JP resources file
+# Messages for Japanese (日本語)
+# Exported from translatewiki.net
 
-help.gettingStarted = はじめよう
-help.welcome = ようこそ
-help.whyOpenstreetmap = <p><b>なぜ OpenStreetMapなのか?</b> OSM は、すべてのデータが、あなたのような人々の手で、いつも更新され、編集される地図作成サービスです。明らかなメリットは、自由かつ無料でつかえるということです。でも、それだけにとどまらず、震災時のマッピングにも活躍するのです。 (例 OSMを東日本大震災の救援活動に使用したsinsai.infoや、ハイチ大震災の救援活動のように)。このデータの正確さは非常に重要です。そして、あなたがボランティアとして、少しの時間を活動に当ててくれることを希望しています!</p>
-help.activeMembers = <p><b>そして、OpenStreetMapメンバーのみなさんは</b>, 編集前にOSM.orgにサインインしてください。</b></p>
-help.newMembers = <p><b>そして、新しいメンバーのみんさん</b>! まず、 <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> へ、行って本家アカウントを作ってください。そして、ログインしてください。アカウント作成にはライセンスと規約に同意いただく必要があります。そして、ここにもどってきて、Potlatch2 で編集しましょう。</p>
-help.introText = <p><b>Potlatch2</b> は、 OpenStreetMap (OSM)エディターです。これは、直接{0}のWebサイトから編集できるようにするものです。</p>
-help.introduction = イントロ
-help.controls = 制御
-help.interfaceControls = インターフェース制御
-help.mapBackground = <p>一覧から地図背景を選択してください。あるいは、自身で準備したベクターファイルを使用することもできます。</p>
+help.gettingStarted=はじめよう
+help.welcome=ようこそ
+help.whyOpenstreetmap=<p><b>なぜ OpenStreetMapなのか?</b> OSM は、すべてのデータが、あなたのような人々の手で、いつも更新され、編集される地図作成サービスです。明らかなメリットは、自由かつ無料でつかえるということです。でも、それだけにとどまらず、震災時のマッピングにも活躍するのです。 (例 OSMを東日本大震災の救援活動に使用したsinsai.infoや、ハイチ大震災の救援活動のように)。このデータの正確さは非常に重要です。そして、あなたがボランティアとして、少しの時間を活動に当ててくれることを希望しています!</p>
+help.activeMembers=<p><b>そして、OpenStreetMapメンバーのみなさんは</b>, 編集前にOSM.orgにサインインしてください。</p>
+help.newMembers=<p><b>そして、新しいメンバーのみんさん</b>! まず、 <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> へ、行って本家アカウントを作ってください。そして、ログインしてください。アカウント作成にはライセンスと規約に同意いただく必要があります。そして、ここにもどってきて、Potlatch2 で編集しましょう。</p>
+help.introText=<p><b>Potlatch2</b> は、 OpenStreetMap (OSM)エディターです。これは、直接{0}のWebサイトから編集できるようにするものです。</p>
+help.introduction=イントロ
+help.controls=制御
+help.interfaceControls=インターフェース制御
+help.mapBackground=<p>一覧から地図背景を選択してください。あるいは、自身で準備したベクターファイルを使用することもできます。</p>
 help.colourStyle=<p>Choose the style in which you wish to view the map. Colours and overall style vary and also includes other options like wireframe.</p>
-help.gps = GPS
-help.createOsmMap = <p>Create OSM map data using other people's GPS tracks as a background</p>
-help.myGps = MyGPS
-help.displayGps = <p>Display GPS traces that you've previously uploaded to OpenStreetMap.</p>
-help.undoRedo = Undo / Redo
-help.madeMistake = <p>Made a mistake? Just hit undo and/or redo to correct your edits.</p>
-help.help = ヘルプ
-help.guideInfomation = <p>Brings up this guide in case you need any information as you begin editing.</p>
-help.save = 保存
-help.addingFeatures = Adding Features
-help.addingFeaturesText =<p><i>始める前に、知っているべき最初のルールは、商用データ使用についてです。著作権のある地図や他の商用データからのデータ使用は強く禁止されています!! 著作権のある製品は、コピー、トレース、あるいはどのような方法でも、許されません!(Source: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>  <p></p>  <p> 道路, 歩道, 鉄道、ビル外周などの線として表される地物は、ここでは<b>ウエイ</b>として表現されます。</p>  <p>もし、あなたのサイドバーのすべてのアイコンが無くなってしまったら、その時は地図の地物が選択されています。単純に地図の何もないところをクリックして選択解除することで、アイコンは復活します。</p>            <p><b>点(またはノード)を作るには</b>, アイコンをサイドバーから地図上の作りたい場所にドラッグアンドドロップしてください。 POI (Point of Interest)の追加についての詳細は、「POIを追加」を見てください。</p>   <p><b>ウエイを作成するには</b>, 地図上の開始点をクリックして、各節点をクリックしながら、終了点でダブルクリックするかエンターをおしてください。</p>            <p><b>To create a polygon</b>, begin by clicking on the map at its start point, then click at each successive point (similar to creating a way), and finish by clicking on the very first point to close the polygon.</p>            <p>Remember, if you make a mistake, you can always hit the Undo button. Pressing the Esc key will undo all your edits for the current feature.</p>
-help.editBeg = 編集(簡易)
-help.editingFeatures = 地物の編集 (ビギナー)
-help.editingFeaturesText =  <p><b>既存のウエイに点を追加するには</b>、ウエイを選択肢、希望の点でシフト+クリックをしてください。</p>            <p><b>点を削除するには</b>、ウエイ上の点を選択して、右下の角にあるアイテム削除ボタンをクリックするか、キーボードのデリートキー(またはバックスペースキー)をおしてください。</p>  <p><b>ウエイを削除するには</b>、ウエイを選択して、右下の角にあるアイテム削除ボタンをクリックするか、キーボードのデリートキー(またはバックスペースキー)をおしてください。</p>            <p><b>点を移動するには</b>、クリックして点でドラッグしてください。</p>            <p><b>ウエイを移動するには</b>、click and drag the entire feature (hint: grab a segment where you won't accidentally move a node).</p>            <p><b>To extend a way</b>, click on one of the end points of the way. Then continue drawing as usual.</p>            <p><b>To add a new way extending from an existing way</b>, shift+click on one of the end points of the way. Then continue drawing as usual.</p>
-help.editAdv = 編集(高度)
-help.editingFeaturesAdv = 地物の編集(高度)
-help.editingFeaturesAdvText = <p><b>To split a way</b>, select the point at which you want to cut, and click the Scissor tool or press X on your keyboard. (Hint: Add a node first in order to cut between nodes.)</p>            <p><b>To make a junction between two ways</b>, draw as usual until you need to make a junction. Then as you move your mouse over another way, the points will light up blue. Click on one of the blue points or any other desired location on the way to make a junction.</p>            <p><b>To disconnect a junction</b>, select the point on the way you wish to alter. The press - on your keyboard to remove the point.</p>            <p><b>To reverse the direction of a way</b>, click the Reverse Direction button in the bottom right corner. The direction of a way is only a concern for those features with a "oneway" tag - oneway streets, coastlines, islands, and so on.</p>            <p><b>To create a way running parallel</b>, select the way and click the Create Parallel Way button in the bottom right corner or press P on your keyboard.</p>     <p><b>To create a way that shares nodes with an existing way</b>, start drawing, click the first two shared nodes, then press F to automatically follow the existing way.</p>            <p><i>Visit the <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Potlatch2 Primer</a> on the OpenStreetMap wiki for even more advanced editing methods and conventions.</i></p>
-help.tag = Tag
-help.taggingFeatures = Tagging Features
-help.taggingFeaturesText = <p>With Potlatch2, tagging features has become relatively easy with its use of graphical menus and dedicated fields/icons.</p>          <p><b>Tagging a feature</b></p>          <p>Select the point or way that you wish to edit, adn choose the appropriate tag from the left sidebar. After tagging the feature, some basic fields should appear such as Name, Speed Limit, and Width, depending on the tag you gave. Fill these out as best you can.</p><p>Advanced users may notice the absence of a few tags and tag values they occasionally use. If this is the case, click on the Advanced tab at the bottom of the sidebar and edit/add as necessary.</p>          <p>The OpenStreetMap wiki also provides an <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">extensive list of tags and tag values</a>. Please refer back to the OSM documentation if you are unsure of which tag to use.</p>
-help.shortcuts = Shortcuts
-help.keyboardShortcuts = Keyboard Shortcuts
+help.gps=GPS
+help.createOsmMap=<p>Create OSM map data using other people's GPS tracks as a background</p>
+help.myGps=MyGPS
+help.displayGps=<p>Display GPS traces that you've previously uploaded to OpenStreetMap.</p>
+help.undoRedo=Undo / Redo
+help.madeMistake=<p>Made a mistake? Just hit undo and/or redo to correct your edits.</p>
+help.help=ヘルプ
+help.guideInfomation=<p>Brings up this guide in case you need any information as you begin editing.</p>
+help.save=保存
+help.addingFeatures=Adding Features
+help.addingFeaturesText=<p><i>始める前に、知っているべき最初のルールは、商用データ使用についてです。著作権のある地図や他の商用データからのデータ使用は強く禁止されています!! 著作権のある製品は、コピー、トレース、あるいはどのような方法でも、許されません!(Source: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>  <p></p>  <p> 道路, 歩道, 鉄道、ビル外周などの線として表される地物は、ここでは<b>ウエイ</b>として表現されます。</p>  <p>もし、あなたのサイドバーのすべてのアイコンが無くなってしまったら、その時は地図の地物が選択されています。単純に地図の何もないところをクリックして選択解除することで、アイコンは復活します。</p>            <p><b>点(またはノード)を作るには</b>, アイコンをサイドバーから地図上の作りたい場所にドラッグアンドドロップしてください。 POI (Point of Interest)の追加についての詳細は、「POIを追加」を見てください。</p>   <p><b>ウエイを作成するには</b>, 地図上の開始点をクリックして、各節点をクリックしながら、終了点でダブルクリックするかエンターをおしてください。</p>            <p><b>To create a polygon</b>, begin by clicking on the map at its start point, then click at each successive point (similar to creating a way), and finish by clicking on the very first point to close the polygon.</p>            <p>Remember, if you make a mistake, you can always hit the Undo button. Pressing the Esc key will undo all your edits for the current feature.</p>
+help.editBeg=編集(簡易)
+help.editingFeatures=地物の編集 (ビギナー)
+help.editingFeaturesText=<p><b>既存のウエイに点を追加するには</b>、ウエイを選択肢、希望の点でシフト+クリックをしてください。</p>            <p><b>点を削除するには</b>、ウエイ上の点を選択して、右下の角にあるアイテム削除ボタンをクリックするか、キーボードのデリートキー(またはバックスペースキー)をおしてください。</p>  <p><b>ウエイを削除するには</b>、ウエイを選択して、右下の角にあるアイテム削除ボタンをクリックするか、キーボードのデリートキー(またはバックスペースキー)をおしてください。</p>            <p><b>点を移動するには</b>、クリックして点でドラッグしてください。</p>            <p><b>ウエイを移動するには</b>、click and drag the entire feature (hint: grab a segment where you won't accidentally move a node).</p>            <p><b>To extend a way</b>, click on one of the end points of the way. Then continue drawing as usual.</p>            <p><b>To add a new way extending from an existing way</b>, shift+click on one of the end points of the way. Then continue drawing as usual.</p>
+help.editAdv=編集(高度)
+help.editingFeaturesAdv=地物の編集(高度)
+help.editingFeaturesAdvText=<p><b>To split a way</b>, select the point at which you want to cut, and click the Scissor tool or press X on your keyboard. (Hint: Add a node first in order to cut between nodes.)</p>            <p><b>To make a junction between two ways</b>, draw as usual until you need to make a junction. Then as you move your mouse over another way, the points will light up blue. Click on one of the blue points or any other desired location on the way to make a junction.</p>            <p><b>To disconnect a junction</b>, select the point on the way you wish to alter. The press - on your keyboard to remove the point.</p>            <p><b>To reverse the direction of a way</b>, click the Reverse Direction button in the bottom right corner. The direction of a way is only a concern for those features with a "oneway" tag - oneway streets, coastlines, islands, and so on.</p>            <p><b>To create a way running parallel</b>, select the way and click the Create Parallel Way button in the bottom right corner or press P on your keyboard.</p>     <p><b>To create a way that shares nodes with an existing way</b>, start drawing, click the first two shared nodes, then press F to automatically follow the existing way.</p>            <p><i>Visit the <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Potlatch2 Primer</a> on the OpenStreetMap wiki for even more advanced editing methods and conventions.</i></p>
+help.tag=Tag
+help.taggingFeatures=Tagging Features
+help.taggingFeaturesText=<p>With Potlatch2, tagging features has become relatively easy with its use of graphical menus and dedicated fields/icons.</p>          <p><b>Tagging a feature</b></p>          <p>Select the point or way that you wish to edit, adn choose the appropriate tag from the left sidebar. After tagging the feature, some basic fields should appear such as Name, Speed Limit, and Width, depending on the tag you gave. Fill these out as best you can.</p><p>Advanced users may notice the absence of a few tags and tag values they occasionally use. If this is the case, click on the Advanced tab at the bottom of the sidebar and edit/add as necessary.</p>          <p>The OpenStreetMap wiki also provides an <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">extensive list of tags and tag values</a>. Please refer back to the OSM documentation if you are unsure of which tag to use.</p>
+help.shortcuts=Shortcuts
+help.keyboardShortcuts=Keyboard Shortcuts
index 20f955fde84b3ed6ff9905dbc23df6505eab5c39..04b32dc41a65e7f134924d6cf49a90df7676a5ee 100644 (file)
@@ -1,31 +1,29 @@
-# ja_JP resources file
-
-main.undo = 戻す
-main.redo = やり直し
-main.background = 背景
-main.map_style = 地図スタイル
-main.gpsButton = GPSデータ
-main.gps_data = GPSデータ
-main.my_tracks = 自分のデータ
-main.clear_gps = クリアー
-main.help = ヘルプ
-main.options = オプション
-main.save = 保存
-
-tag_viewer.dndprompt = 新規ポイントを地図にドラッグすることで作成
-
+# Messages for Japanese (日本語)
+# Exported from translatewiki.net
+
+main.undo=戻す
+main.redo=やり直し
+main.background=背景
+main.map_style=地図スタイル
+main.gpsButton=GPSデータ
+main.gps_data=GPSデータ
+main.my_tracks=自分のデータ
+main.clear_gps=クリアー
+main.help=ヘルプ
+main.options=オプション
+main.save=保存
+tag_viewer.dndprompt=新規ポイントを地図にドラッグすることで作成
 toolbox.delete_node=ノードを削除 (Delete)
-toolbox.delete_area = エリアを削除 (Shift+Delete)
-toolbox.delete_way = ウエイを削除 (Shift+Delete)
-toolbox.delete_item = アイテムを削除
-toolbox.reverse_direction = 方向を反転 (V)
-toolbox.split_way = ウエイを分割 (X)
-toolbox.merge_ways = ウエイを結合
-toolbox.straighten_way = ウエイをまっすぐに
-toolbox.make_circular = 環状にする
-toolbox.make_right_angled = 右向きにする (Q)
-toolbox.create_parrallel_way = パラレルウエイを作成 (P)
-
+toolbox.delete_area=エリアを削除 (Shift+Delete)
+toolbox.delete_way=ウエイを削除 (Shift+Delete)
+toolbox.delete_item=アイテムを削除
+toolbox.reverse_direction=方向を反転 (V)
+toolbox.split_way=ウエイを分割 (X)
+toolbox.merge_ways=ウエイを結合
+toolbox.straighten_way=ウエイをまっすぐに
+toolbox.make_circular=環状にする
+toolbox.make_right_angled=右向きにする (Q)
+toolbox.create_parrallel_way=パラレルウエイを作成 (P)
 oauth.gotLinkBox=次のリンクをクリックして開くウエブページで、このアプリへのアクセスを承認してください。
 oauth.authorized=一度アクセスが承認されたら以下の「アクセスする」ボタンをおしてください。
 oauth.deniedLabel=<b>アクセスが拒否されたら、ドキュメントを確認して再度やってみてください。</b>
@@ -34,16 +32,12 @@ oauth.permFail=<p>サーバがこのアプリケーションの証明書を拒
 oauth.tempFail=認証サーバへの接続に失敗しました。問題があるようです。おそらく一時的なものなので、時間をおいて試してみてください。
 oauth.tryAccessButton=アクセスする
 oauth.cancelButton=キャンセル
-
 save.editDescription=編集の説明を入れてください。これは他のマッパーがあなたが何をしようとしたか、あとで理解するときに使われます。
-
 styleSelector.editButton=編集...
 backgroundSelector.dim=dim
 backgroundSelector.sharpen=シャープ化
 backgroundSelector.editButton=編集...
 backgroundSelector.vectorButton=ベクターファイル...
-
 options.tbcheck=ツールボックス表示
 options.cursorcheck=カスタムカーソルを使う
 options.ok=Ok
-
diff --git a/l10n/locale/ka/p2_main.properties b/l10n/locale/ka/p2_main.properties
new file mode 100644 (file)
index 0000000..c636012
--- /dev/null
@@ -0,0 +1,33 @@
+# Messages for Georgian (ქართული)
+# Exported from translatewiki.net
+# Author: David1010
+
+main.undo=გაუქმება
+main.redo=განმეორება
+main.background=ფონი
+main.map_style=რუკის სტილი
+main.gpsButton=GPS-ის მონაცემები
+main.gps_data=GPS-ის მონაცემები
+main.my_tracks=ჩემი გზები
+main.clear_gps=წაშლა
+main.help=დახმარება
+main.options=პარამეტრები
+main.save=შენახვა
+toolbox.delete_node=წერტილის წაშლა (Delete)
+toolbox.delete_area=ტერიტორიის წაშლა (Shift+Delete)
+toolbox.delete_way=გზის წაშლა (Shift+Delete)
+toolbox.delete_item=ელემენტის წაშლა
+toolbox.split_way=გზის გაყოფა (X)
+toolbox.merge_ways=გზების გაერთიანება
+toolbox.straighten_way=გზაბის გასწორება
+toolbox.make_circular=წრიული მოძრაობის შექმნა
+toolbox.make_right_angled=პირდაპირი კუთხის შექმნა (Q)
+toolbox.create_parrallel_way=პარალელური გზის შექმნა (P)
+oauth.rememberMe=დამიმახსოვრე
+oauth.cancelButton=გაუქმება
+styleSelector.editButton=რედაქტირება...
+backgroundSelector.editButton=რედაქტირება...
+backgroundSelector.vectorButton=ვექტორული ფაილი...
+options.tbcheck=ხელსაწყოების ყუთის ჩვენება
+options.cursorcheck=საკუთარი კურსორების გამოყენება
+options.ok=კარგი
diff --git a/l10n/locale/lb/p2_main.properties b/l10n/locale/lb/p2_main.properties
new file mode 100644 (file)
index 0000000..0182f54
--- /dev/null
@@ -0,0 +1,25 @@
+# Messages for Luxembourgish (Lëtzebuergesch)
+# Exported from translatewiki.net
+# Author: Robby
+
+main.undo=Zréck setzen
+main.redo=Widderhuelen
+main.background=Hannergrond
+main.map_style=Styl vun der Kaart
+main.gpsButton=GPS-Donnéeën
+main.gps_data=GPS-Donnéeën
+main.clear_gps=Eidel maachen
+main.help=Hëllef
+main.options=Optiounen
+main.save=Späicheren
+toolbox.delete_node=Knuet läschen (Läschen)
+toolbox.delete_item=Objet läschen
+toolbox.reverse_direction=Richtung ëmdréinen (V)
+oauth.rememberMe=Sech u mech erënneren
+oauth.cancelButton=Ofbriechen
+styleSelector.editButton=Änneren...
+backgroundSelector.editButton=Änneren...
+backgroundSelector.vectorButton=Vektor-Fichier...
+options.tbcheck=Geschirkëscht weisen
+options.cursorcheck=Benotzt déi personaliséiert Curseuren
+options.ok=OK
diff --git a/l10n/locale/mk/help_dialog.properties b/l10n/locale/mk/help_dialog.properties
new file mode 100644 (file)
index 0000000..fe85ed0
--- /dev/null
@@ -0,0 +1,37 @@
+# Messages for Macedonian (Македонски)
+# Exported from translatewiki.net
+# Author: Bjankuloski06
+
+help.gettingStarted=Како да почнете
+help.welcome=Добредојдовте
+help.whyOpenstreetmap=<p><b>Зошто OpenStreetMap?</b> OSM е картографска служба каде сите податоци постојано се подновуваат, а уредувањата ги вршат обични луѓе како Вас. Очигледната предност е тоа што е бесплатна за употреба, но денес е од голема важност и при справувањето со вонредни состојби (на пр. кога нашите податоци се користеа за усогласување на дејствата за помош во земјотересот на Хаити). Точноста на податоците е од суштинско значење, па се надеваме дека ќе можете да посветите дел од Вашето време!</p>
+help.activeMembers=<p><b>+ Активни членови на OpenStreetMap:</b>најавете се на OSM пред да уредувате.</p>
+help.newMembers=<p><b>+ Нови членови:</b>посетете го <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> и направете сметка, најавете се, а потоа вратете се тука за да пристапите на Potlatch 2 и да почнете со уредување.</p>
+help.introText=<p><b>Potlatch2</b> е уредник за OpenStreetMap (OSM) што ви овозможува да уредувате непосредно преку страницата {0}.</p>
+help.introduction=Вовед
+help.controls=Контроли
+help.interfaceControls=Контроли на посредникот
+help.mapBackground=<p>Од списокот одберете позадина на картата или пак ставете своја векторска податотека.</p>
+help.colourStyle=<p>Одберете во кој стил сакате да ви се прикажува картата. Постојат различни бои и сеопшт изглед, а има и други можности како да речеме решетка.</p>
+help.gps=GPS
+help.createOsmMap=<p>Создавајте картографски податоци на OSM користејќи туѓи GPS-траги како позадина</p>
+help.myGps=МојGPS
+help.displayGps=<p>Ги прикажува GPS-трагите што претходно сте ги подигнале на OpenStreetMap.</p>
+help.undoRedo=Врати / Повтори
+help.madeMistake=<p>Направивте некоја грешка? Само стиснете на „врати“ и/или „повтори“ за да ја исправите.</p>
+help.help=Помош
+help.guideInfomation=<p>Го истакнува овој водич во случај да ви затреба некоја информација кога почнувате со уредување.</p>
+help.save=Зачувај
+help.addingFeatures=Додавање на функции
+help.addingFeaturesText=<p><i>Пред да почнете, најважно е да знаете за сопственички податоци. Податоците од карти заштитени со авторски права и секакви други заштитени подацови се строго забранети! Не е дозволено копирање, прецртување и секакво умножување на заштитени дела! (Извор: <a href="http://wiki.openstreetmap.org/wiki/Mk:Copyright?uselang=mk" target="_blank">Авторски права - Вики на OpenStreetMap</a>)</i></p>\n  <p></p>\n  <p>Линеарните елементи како улици, пешачки патеки, пруги и контури на објекти тука се дефинираат како <b>патишта</b>.</p>\n  <p>Доколку наеднаш ви ја снема страничната лента сосе сите икони, тоа значи дека имате одбрано некој елемент на картата. Едноставно стиснете на празен простор на картата за да си ги повратите иконите.</p>\n            <p><b>З да создадете точка (или јазол)</b>, едноставно повлечете ја соодветната икона од лентата и пуштете ја на картата. Погл. Додавање на точки од интерес (POI) за да дознаете повеќе за ваквите точки</p>\n            <p><b>За да создадете пат</b>, стиснете на картата во местото кајшто сакате да почнува, а потоа стискајте на секоја следна точка. Стиснете двојно за да ја завршите линијата, или притиснете Enter.</p>\n            <p><b>За да создадете многуаголник</b>, стиснете на картата во местото кајшто сакате да почнува, а потоа стискајте на секоја следна точка (слично како за пат), а на крај стиснете на најпрвата точка за да го затворите многуаголникот.</p>\n            <p>Запомнете дека ако направите грешка, секогаш ви е на располагање копчето „Врати“. Со копчето Esc ќе ги вратите сите извршени измени во тековниот елемент.</p>
+help.editBeg=Уредување (почет.)
+help.editingFeatures=Функции за уредување (почетнички)
+help.editingFeaturesText=<p><b>За да му додадете точка на постоечки пат</b> - изберете го и стиснете shift+клик на саканото место.</p>\n    <p><b>За да избришете точка</b> - изберете го патот, па стиснете на копчето „Избриши елемент“ во долниот десен агол или притиснете на копчето Delete (или копчето за назад) на тастатурата.</p>\n  <p><b>За да избришете пат</b> - изберете го патот, па стиснете на копчето „Избриши елемент“ во долниот десен агол или притиснете shift+Delete (или  shift+копче за назад) на тастатурата.</p>\n    <p><b>За да преместите точка</b> - стиснете на неа и повлечете ја.</p>\n   <p><b>За да преместите пат</b> - стиснете и повлечете го целиот елемент (совет: стиснете во отсечка каде нема да наидете на јазол).</p>\n  <p><b>За да продолжите пат</b> - стиснете на една од крајните точки на него. Потоа продолжете нормално да цртате.</p>\n    <p><b>За да додадете пат што ќе продолжува од постоечки пат</b> - shift+клик на една од крајните точки на патот. Потоа продолжите нормално да цртате.</p>
+help.editAdv=Уредување (напр.)
+help.editingFeaturesAdv=Функции за уредување (напредни)
+help.editingFeaturesAdvText=<p><b>За да раздвоите пат</b> - одберете во која точка сакате патот да се пресече, па стиснете на алатката Ножици или притиснете на копчето X на тастатурата. (помош: Прво додајте јазол за да можете да пресечете помеѓу јазлите.)</p>\n            <p><b>За да направите спој на два пата</b> - цртајте нормално додека не ви притреба спојот. Потоа, како што го движите глушецот на друга страна, точките ќе светнат со сино. Стиснете на една од сините точки или некое друго поаскувано место на патот за да направите спој.</p>\n            <p><b>За да раздвоите спој</b> - одберете ја точката на патот што сакате да го измените. Потоа притиснете на копчето - (минус) на тастатурата за да ја отстраните точката.</p>\n            <p><b>За да ја смените насоката на пат</b> - стиснете на копчето „Смени насока“ во долниот десен агол. Насоката на патот е важна само кај оние елементи со ознаката „еднонасочно“ - еднонасочни улици, крајбрежја, острови и тн.</p>\n            <p><b>За да создадете паралелен пат</b> - одберете го патот и стиснете на копчето „Создај паралелен пат“ во долниот десен агол или пак стиснете на копчето P на тастатурата.</p>\n     <p><b>За да создадете пат што дели јазли со постоечки пат</b> - почнете да цртате, стиснете на првите два заеднички јазла, а потоа стиснете на F за автоматски да се проследи постоечкиот пат.</p>\n            <p><i>Уште понапредни начини на уредување ќе најдете на страницата <a href="http://wiki.openstreetmap.org/wiki/Potlatch_2/Primer" target="_blank">Учебник за Potlatch2</a> на викито на OpenStreetMap.</i></p>
+help.tag=Означување
+help.taggingFeatures=Функции за означување
+help.taggingFeaturesText=<p>Со Potlatch2, означувањето на елементите стана релативно лесно поради неговите графички менија и наменски полиња/икони.</p>\n          <p><b>Означување на елемент</b></p>\n          <p>Одберете ја точката или патот што сакате да го уредите, па изберете ја соодветната ознака од страничната лента лево. Откако ќе ја ставите ознаката, треба да се појават некои основни полиња како „Име“,  „Брзинско ограничување“ и „Ширина“, зависно од ознаката. Пополнете ги најдобро што знаете.</p><p>Напредните корисници можат да забележат дека отсуствуваат некои ознаки и вредности што понекогаш ги користат. Доколку се случи ова, стиснете на јазичето „Напредно“ на дното од страничната лента, па на уреди/додај.</p>\n          <p>Викито на OpenStreetMap нуди и <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">опширен список на ознаки и вредности</a>. Погледајте ја документацијата ако не сте сигурни која ознака треба да се употреби.</p>
+help.shortcuts=Кратенки
+help.keyboardShortcuts=Тастатурни кратенки
diff --git a/l10n/locale/mk/p2_main.properties b/l10n/locale/mk/p2_main.properties
new file mode 100644 (file)
index 0000000..c6b9ceb
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Macedonian (Македонски)
+# Exported from translatewiki.net
+# Author: Bjankuloski06
+
+main.undo=Врати
+main.redo=Повтори
+main.background=Позадина
+main.map_style=Стил на картата
+main.gpsButton=GPS-податоци
+main.gps_data=GPS-податоци
+main.my_tracks=Мои траги
+main.clear_gps=Исчисти
+main.help=Помош
+main.options=Нагодувања
+main.save=Зачувај
+tag_viewer.dndprompt=Додајте нови точки со тоа што ќе ги довлечете на картата
+toolbox.delete_node=Избриши јазол (Delete)
+toolbox.delete_area=Избриши подрачје (Shift+Delete)
+toolbox.delete_way=Избриши пат (Shift+Delete)
+toolbox.delete_item=Избриши елемент
+toolbox.reverse_direction=Смени насока (V)
+toolbox.split_way=Раздели пат (X)
+toolbox.merge_ways=Спој патишта
+toolbox.straighten_way=Исправи пат
+toolbox.make_circular=Направи кружно
+toolbox.make_right_angled=Направи нормално (Q)
+toolbox.create_parrallel_way=Создај паралелен пат (P)
+oauth.gotLinkBox=Стиснете на врската подолу за да отворите страница кадешто ќе ви биде побарано да го овластите пристапот на овој прилог.
+oauth.authorized=Откако ќе го овластите пристапот, стиснете на копчето „Пробај да пристапиш“ подолу.
+oauth.deniedLabel=<b>Пристапот е одбиен. Проверете и обидете се повторно</b>
+oauth.rememberMe=Запомни ме
+oauth.permFail=<p>Опслужувачот ги одби акредитивите на овој прилог -- не можев да добијам врска за овластување.          </p>\n<p>       <b>Нема да можете да пристапите на OAuth.</b>         </p>\n<p>       Обратете се кај добавувачот на прилогот за да дознаете во што е проблемот.</p>
+oauth.tempFail=Се појави проблем при поврзувањето со опслужувачот за овластување. Ова може да е привремена грешка, па затоа ве советуваме да се обидете подоцна.
+oauth.tryAccessButton=Пробај да пристапиш
+oauth.cancelButton=Откажи
+save.editDescription=Внесете опис на вашите уредувања. Така другите картографи ќе имаат претстава какви измени сте направиле.
+styleSelector.editButton=Уреди...
+backgroundSelector.dim=замати
+backgroundSelector.sharpen=заостри
+backgroundSelector.editButton=Уреди...
+backgroundSelector.vectorButton=Векторска податотека...
+options.tbcheck=Пок. алатник
+options.cursorcheck=Користи курсори по мој избор
+options.ok=ОК
diff --git a/l10n/locale/ms/help_dialog.properties b/l10n/locale/ms/help_dialog.properties
new file mode 100644 (file)
index 0000000..ca9f293
--- /dev/null
@@ -0,0 +1,37 @@
+# Messages for Malay (Bahasa Melayu)
+# Exported from translatewiki.net
+# Author: Anakmalaysia
+
+help.gettingStarted=Permulaan
+help.welcome=Selamat Datang
+help.whyOpenstreetmap=<p><b>Mengapa pilih OpenStreetMap?</b> OSM ialah sebuah perkhidmatan pemetaan di mana semua data sentiasa dikemaskinikan dan disunting oleh orang keramaian seperti anda. Yang bagusnya sekali, anda boleh menggunakannya secara percuma, tetapi ia juga telah memainkan peranan penting dalam pemetaan sewaktu bencana (cth. penggunaan data OSM untuk menyelaras usaha menyelamat di Haiti setelah dilanda gempa bumi). Ketepatan data ini adalah amat penting, dan kami berharap anda anda dapat meluangkan sedikit masa anda!</p>
+help.activeMembers=<p><b>+ Bagi ahli-ahli OpenStreetMap yang aktif</b>, sila daftar masuk ke dalam OSM sebelum menyunting.</p>
+help.newMembers=<p><b>+ Bagi ahli baru</b>, sila lawati <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> untuk membuka akaun, log masuk, kemudian balik ke sini untuk membenarkan akses kepada Potlatch 2 dan mula menyunting.</p>
+help.introText=<p><b>Potlatch2</b> ialah sebuah alat penyuntingan OpenStreetMap (OSM) yang membolehkan anda untuk membuat suntingan secara langsung melalui tapak sesawang {0}.</p>
+help.introduction=Pengenalan
+help.controls=Kawalan
+help.interfaceControls=Kawalan Antaramuka
+help.mapBackground=<p>Pilih latar belakang peta anda daripada salah satu perkara dalam senarai, atau tambahkan fail vektor anda sendiri.</p>
+help.colourStyle=<p>Pilih gaya yang mana anda ingin perlihatkan peta itu. Terdapat pelbagai pilihan warna dan gaya keseluruhan, juga disertakan pilihan-pilihan lain seperti "wireframe".</p>
+help.gps=GPS
+help.createOsmMap=<p>Hasilkan data peta OSM dengan menggunakan laluan GPS orang lain sebagai latar belakang</p>
+help.myGps=MyGPS
+help.displayGps=<p>Paparkan jejak-jejak GPS yang pernah anda muat naik ke OpenStreetMap.</p>
+help.undoRedo=Nyahbuat / Buat Balik
+help.madeMistake=<p>Tersilap? Tekan sahaja 'nyahbuat' dan/atau 'buat balik' untuk membetulkan suntingan anda.</p>
+help.help=Bantuan
+help.guideInfomation=<p>Menampilkan panduan ini sekiranya anda memerlukan sebarang maklumat apabila anda bermula menyunting.</p>
+help.save=Simpan
+help.addingFeatures=Menambahkan Bentuk Alam
+help.addingFeaturesText=<p><i>Sebelum bermula, peraturan pertama yang perlu anda tahu adalah tentang penggunaan data bermilik (</i>proprietary<i>). Data dari peta yang berhak cipta atau sebarang data bermilik yang lain adalah dilarang sama sekali! Dilarang menyalin, menyurih atau melakukan sebarang penghasilan semula bahan yang berhak cipta! (Sumber: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>Bentuk alam yang lelurus seperti jalan raya, lorong jalan kaki, landasan keretapi dan garis bentuk bangunan, adalah dipanggil <b>jalan</b>.</p>\n  <p>Jika anda sedar bahawa palang sisi dengan semua ikonnya tiba-tiba hilang, ini adalah kerana anda telah memilih suatu bentuk alam pada peta. Klik bahagian kosong pada peta sahaja untuk menyahpilih bentuk alam itu dan mengembalikan ikon-ikon itu.</p>\n            <p><b>Untuk meletakkan titik (atau nod)</b>, tarik dan lepas ikon yang berkenaan dari palang sisi kepada peta. Lihat 'Tambah POI' untuk keterangan lanjut tentang pembentukan POI (Point of Interest)</p>\n            <p><b>Untuk membuat jalan</b>, mula dengan mengklik titik mulanya di atas peta, kemudian klik setiap titik yang berturut-turut. Klik dua kali untuk siap atau tekan Enter.</p>\n            <p><b>Untuk membuat poligon</b>, mula dengan mengklik titik mulanya di atas peta, kemudian klik setiap titik yang berturut-turut (sama dengan membuat jalan), dan akhir sekali, klik pada titik yang pertama sekali untuk menyiapkan poligon.</p>\n            <p>Ingat, jika anda terbuat silap, anda boleh menekan butang Nyahbuat. Menekan Esc akan membatalkan semua suntingan anda bagi bentuk alam yang anda sedang usahakan itu.</p>
+help.editBeg=Sunting (Asas)
+help.editingFeatures=Menyunting Bentuk Alam (Asas)
+help.editingFeaturesText=<p><b>Untuk menambahkan titik pada jalan yang sedia ada</b>, pilih jalan yang berkenaan dan tekan shift+click pada lokasi yang dikehendaki.</p>\n    <p><b>Untuk memadamkan titik</b>, pilih titik yang berkenaan dan klik punat Hapuskan Perkara di sudut kanan bawah, atau tekan Delete (atau Backspace) pada papan kekunci anda.</p>\n  <p><b>Untuk memadamkan jalan</b>, pilih jalan yang berkenaan dan klik punat Hapuskan Perkara di sudut kanan bawah, atau tekan shift+Delete (atau shift+Backspace) pada papan kekunci anda.</p>\n    <p><b>Untuk mengalihkan titik</b>, klik dan seret titik berkenaan.</p>\n   <p><b>Untuk mengalihkan jalan</b>, klik dan seret seluruh bentuk berkenaan (petua: ambil satu segmen di mana anda tidak akan teralih nod).</p>\n  <p><b>Untuk menyambungkan jalan</b>, klik pada salah satu titik hujung jalan itu. Kemudian, teruskan kerja memeta seperti biasa.</p>\n    <p><b>Untuk membuat jalan baru yang bersambung dari jalan yang sedia ada</b>, tekan shift+click pada salah satu titik hujung jalan itu. Kemudian, teruskan kerja memeta seperti biasa.</p>
+help.editAdv=Sunting (Lanj.)
+help.editingFeaturesAdv=Menyunting Bentuk Alam (Lanjutan)
+help.editingFeaturesAdvText=<p><b>Untuk membelah jalan</b>, pilih titik di mana anda ingin potong, dan klik alatan Gunting atau tekan X pada papan kekunci. (Petua: Bubuh nod dahulu untuk memotong di antara nod.)</p>\n            <p><b>Untuk membuat simpang di antara dua jalan</b>, lukis jalan seperti biasa sehingga anda perlu membuat simpang. Kemudian, apabila menghalakan tetikus ke jalan yang lain, titik-titik itu bernyala biru. Klik pada salah satu titik biru itu atau sebarang lokasi yang diingini pada jalan itu untuk membuat simpang.</p>\n            <p><b>Untuk memutuskan simpang</b>, pilih titik pada jalan yang ingin anda ubah itu. Kemudian, tekan kekunci sengkang (-) pada papan kekunci anda untuk membuang titik berkenaan.</p>\n            <p><b>Untuk menterbalikkan arah jalan</b>, klik punat 'Terbalikkan arah' di sudut kanan bawah. Arah sesebuah jalan hanya berkenaan dengan bentuk-bentuk alam yang berteg "sehala", iaitu jalan sehala, garis pinggir laut, pulau dan sebagainya.</p>\n            <p><b>Untuk membuat jalan selari</b>, pilih jalan yang berkenaan dan klik punat 'Buat jalan selari' di sudut kanan bawah atau tekan kekunci P pada papan kekunci anda.</p>\n     <p><b>Untuk membuat jalan yang berkongsi nod dengan jalan yang sedia ada</b>, mula melukis, klik dua nod terkongsi yang pertama, kemudian tekan F untuk mengikuti jalan yang sedia ada itu secara automatik.</p>\n            <p><i>Lawati <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Potlatch2 Primer</a> di wiki OpenStreetMap untuk kaedah dan kelaziman penyuntingan yang lebih lanjut.</i></p>
+help.tag=Teg
+help.taggingFeatures=Mengeteg Bentuk Alam
+help.taggingFeaturesText=<p>Dengan Potlatch2, adalah lebih mudah untuk mengeteg bentuk alam dengan menggunakan menu grafik dan ruangan/ikon khusus.</p>\n          <p><b>Mengeteg bentuk alam</b></p>\n          <p>Pilih titik atau jalan yang ingin anda sunting, kemudian pilih tag yang sesuai dari palang sisi kiri. Setelah mengeteg bentuk alam itu, dijangka munculnya ruangan-ruangan asas seperti Nama, Had Laju, dan Lebar, berasaskan teg yang anda berikan. Isikan ruangan-ruangan itu sepenuh yang boleh.</p><p>Pengguna yang lebih berpengalaman mungkin akan mendapati ketiadaan beberapa teg dan nilai teg yang digunakan sekali-sekala. Jika begitu, klik tab Lanjutan di bawah palang sisi dan sunting/tambahkan apa yang perlu.</p>\n          <p>Wiki OpenStreetMap juga menyediakan satu <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">senarai teg dan nilai teg yang menyeluruh</a>. Sila rujuk kembali dokumentasi OSM jika anda tidak pasti teg yang mana harus digunakan.</p>
+help.shortcuts=Pintasan
+help.keyboardShortcuts=Pintasan Papan Kekunci
diff --git a/l10n/locale/ms/p2_main.properties b/l10n/locale/ms/p2_main.properties
new file mode 100644 (file)
index 0000000..58aedd8
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Malay (Bahasa Melayu)
+# Exported from translatewiki.net
+# Author: Anakmalaysia
+
+main.undo=Nyahbuat
+main.redo=Buat semula
+main.background=Latar belakang
+main.map_style=Gaya Peta
+main.gpsButton=Data GPS
+main.gps_data=Data GPS
+main.my_tracks=Laluan Saya
+main.clear_gps=Padamkan
+main.help=Bantuan
+main.options=Pilihan
+main.save=Simpan
+tag_viewer.dndprompt=Tambahkan titik baru dengan menyeretnya kepada peta
+toolbox.delete_node=Hapuskan nod (Delete)
+toolbox.delete_area=Hapuskan kawasan (Shift+Delete)
+toolbox.delete_way=Hapuskan jalan (Shift+Delete)
+toolbox.delete_item=Hapuskan perkara
+toolbox.reverse_direction=Terbalikkan arah
+toolbox.split_way=Pecahkan jalan (X)
+toolbox.merge_ways=Gabungkan jalan
+toolbox.straighten_way=Luruskan jalan
+toolbox.make_circular=Jadikan bulat
+toolbox.make_right_angled=Jadikan sudut tegak (Q)
+toolbox.create_parrallel_way=Buat jalan selari (P)
+oauth.gotLinkBox=Klik pautan di bawah untuk membuka laman web di mana anda akan diminta untuk membenarkan akses kepada aplikasi ini.
+oauth.authorized=Sebaik sahaja anda membenarkan akses itu, klik butang 'Cuba akses' di bawah
+oauth.deniedLabel=<b>Akses ditolak; sila semak dan cuba lagi</b>
+oauth.rememberMe=Ingati saya
+oauth.permFail=<p>Pelayan menolak watikah permohonan ini -- pautan kebenaran tidak dapat diperoleh.          </p>\n<p>       <b>Akses OAuth tidak dibenarkan.</b>            </p>\n<p>       Sila hubungi pembekal aplikasi untuk mengetahui masalahnya.</p>
+oauth.tempFail=Masalah dialami ketika menghubungi pelayan untuk memperoleh kebenaran. Ini mungkin ralat yang sementara; sila cuba lagi.
+oauth.tryAccessButton=Cuba akses
+oauth.cancelButton=Batalkan
+save.editDescription=Sila masukkan keterangan suntingan anda. Ini akan digunakan untuk menerangkan pemeta-pemeta yang lain tentang suntingan anda.
+styleSelector.editButton=Sunting...
+backgroundSelector.dim=kaburkan
+backgroundSelector.sharpen=perjelas
+backgroundSelector.editButton=Sunting...
+backgroundSelector.vectorButton=Fail vektor...
+options.tbcheck=Paparkan kotak alatan
+options.cursorcheck=Gunakan kursor tersuai
+options.ok=OK
diff --git a/l10n/locale/nb_NO/help_dialog.properties b/l10n/locale/nb_NO/help_dialog.properties
new file mode 100644 (file)
index 0000000..560e33d
--- /dev/null
@@ -0,0 +1,5 @@
+# Messages for Norwegian Bokmål (‪Norsk (bokmål)‬)
+# Exported from translatewiki.net
+
+help.gettingStarted=Kom i gang
+help.welcome=Velkommen
diff --git a/l10n/locale/nb_NO/p2_main.properties b/l10n/locale/nb_NO/p2_main.properties
new file mode 100644 (file)
index 0000000..fe2fe91
--- /dev/null
@@ -0,0 +1,45 @@
+# Messages for Norwegian Bokmål (‪Norsk (bokmål)‬)
+# Exported from translatewiki.net
+# Author: Dittaeva
+# Author: Gnonthgol
+
+main.undo=Angre
+main.redo=Gjør om
+main.background=Bakgrunn
+main.map_style=Kartstil
+main.gpsButton=GPS-data
+main.gps_data=GPS-data
+main.my_tracks=Mine spor
+main.clear_gps=Tøm
+main.help=Hjelp
+main.options=Innstillinger
+main.save=Lagre
+tag_viewer.dndprompt=Legg til nye punkt ved å dra dem over på kartet
+toolbox.delete_node=Slett node (Delete)
+toolbox.delete_area=Slett område (Shift+Delete)
+toolbox.delete_way=Slett veg (Shift+Delete)
+toolbox.delete_item=Slett element
+toolbox.reverse_direction=Snu retning (V)
+toolbox.split_way=Del veg (X)
+toolbox.merge_ways=Slå sammen veger
+toolbox.straighten_way=Rett opp veg
+toolbox.make_circular=Gjør sirkulær
+toolbox.make_right_angled=Gjør rettvinkla (Q)
+toolbox.create_parrallel_way=Lag parallell veg (P)
+oauth.gotLinkBox=Trykk på lenka under for å åpne ei nettside der du blir bedt om å godkjenne tilgang for dette programmet.
+oauth.authorized=Trykk på «Prøv tilgang»-knappen under, etter at du har godkjent tilgangen.
+oauth.deniedLabel=<b>Tilgang ble ikke gitt, undersøk brukeropplysningene og prøv om igjen.</b>
+oauth.rememberMe=Husk meg
+oauth.permFail=<p>Teneren nekta tilgang til dette programmet -- godkjenningslenke kunne ikke skaffes.        </p><p>         <b>OAuth-tilgang vil ikke være mulig.</b>         </p><p> Ta kontakt med leverandøren for å finne ut hva som er problemet.</p>
+oauth.tempFail=Det var problem med å få kontakt med teneren for å få godkjenning.    Dette kan være et mellombels problem, prøv om igjen senere.
+oauth.tryAccessButton=Prøv tilgang
+oauth.cancelButton=Avbryt
+save.editDescription=Skriv ei kort skildring av endringene dine. Den blir brukt til å gi andre kartleggere hint om hva du har gjort.
+styleSelector.editButton=Endre...
+backgroundSelector.dim=demp
+backgroundSelector.sharpen=gjør skarpere
+backgroundSelector.editButton=Endre...
+backgroundSelector.vectorButton=Vektorfil...
+options.tbcheck=Vis verktøy
+options.cursorcheck=Bruk skreddersydde pekere
+options.ok=Ok
diff --git a/l10n/locale/nl_NL/help_dialog.properties b/l10n/locale/nl_NL/help_dialog.properties
new file mode 100644 (file)
index 0000000..922edea
--- /dev/null
@@ -0,0 +1,39 @@
+# Messages for Dutch (Nederlands)
+# Exported from translatewiki.net
+# Author: McDutchie
+# Author: SPQRobin
+# Author: Siebrand
+
+help.gettingStarted=Aan de slag
+help.welcome=Welkom
+help.whyOpenstreetmap=<p><b>Waarom OpenStreetMap?</b> OSM is een kaartdienst op internet waarin gegevens voortdurend worden bijgewerkt en bewerkt door gewone mensen zoals u. Het voor de hand liggende voordeel is dat het gratis te gebruiken is, maar het is ook een belangrijke kaartenleverancier in crises geworden (OSM-gegevens zijn bijvoorbeeld gebruikt tijdens het coördineren van de hulpverlening na de aardbeving in Haïti). De nauwkeurigheid van deze gegevens is van cruciaal belang, en we hopen dat u uw tijd als vrijwilliger aan dit project besteedt!</p>
+help.activeMembers=<p><b>+ Als u een actief lid van OpenStreetMap bent</b>, meld u aan bij OSM voordat u bewerkt.</p>
+help.newMembers=<p><b>+ Voor nieuwe leden</b>: ga alstublieft naar <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> om een gebruiker aan te maken, meld u aan en kom dan terug om toegang te krijgen tot Potlatch 2 en te beginnen met bewerken.</p>
+help.introText=<p><b>Potlatch2</b> is een editor voor OpenStreetMap (OSM) waarmee u de website {0} rechtstreeks kunt bewerken.</p>
+help.introduction=Inleiding
+help.controls=Besturing
+help.interfaceControls=Besturingselementen van de interface
+help.mapBackground=<p>Kies uw kaartachtergrond uit de lijst of voeg uw eigen vectorbestand toe.</p>
+help.colourStyle=<p>Kies de kaartstijl die u wilt gebruiken. Kleuren en algemene stijl variëren en omvatten ook andere opties zoals draadframe.</p>
+help.gps=GPS
+help.createOsmMap=<p>OSM-kaartgegevens maken met behulp van GPS-tracks van andere mensen als achtergrond</p>
+help.myGps=MyGPS
+help.displayGps=<p>GPS-traces weergeven die u eerder hebt geüpload naar OpenStreetMap.</p>
+help.undoRedo=Ongedaan maken/opnieuw uitvoeren
+help.madeMistake=<p>Een fout gemaakt? Klik gewoon op hit ongedaan maken of opnieuw uitvoeren om uw bewerkingen te corrigeren.</p>
+help.help=Hulp
+help.guideInfomation=<p>Hiermee geeft u deze handleiding weer in het geval u informatie nodig hebt als u begint met bewerken.</p>
+help.save=Opslaan
+help.addingFeatures=Functies toevoegen
+help.addingFeaturesText=<p><i>Voordat u begint, moet u weten hoe u moet omgaan met door eigendomsrechten beschermde gegevens. Gegevens gebruiken uit auteursrechtelijk beschermde kaarten of andere merkgebonden gegevens is ten strengste verboden! Kopiëren, overtrekken of elke reproductie van auteursrechtelijk beschermd werk is niet toegestaan! (Bron: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Auteursrechten - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>Lineaire dingen zoals straten, voetpaden, spoorwegen en contouren van gebouwen worden vanaf nu <b>wegen</b> genoemd.</p>\n  <p>Als u zich plotseling realiseert dat uw zijbalk met alle pictogrammen is verdwenen, komt dat doordat u een functie hebt geselecteerd op de kaart. Deselecteer gewoon door te klikken op een leeg gebied van de kaart om de pictogrammen opnieuw weer te geven.</p>\n    <p><b>Een punt (of knooppunt) maken</b>, doet u door gewoon het juiste pictogram uit de zijbalk naar de kaart te slepen en het daar neer te zetten. Zie "POI's toevoegen" voor meer informatie over het maken van een POI (Point of Interest).</p>\n    <p><b>Een weg maken</b> doet u door op de kaart op het startpunt te klikken, en daarna op volgende punten te klikken. Dubbelklik als de lijn klaar is op type "Enter".</p>\n    <p><b>Een veelhoek maken</b> kan door op het beginpunt te klikken punt en daarna op volgende punten te klikken (net zoals voor een weg). Eindig door te klikken op het beginpunt om de polygoon te voltooien.</p>\n  <p>Vergeet niet dat als u een fout maakt, kunt u altijd op de knop ongedaan maken kunt klikken. Door "Esc" in te toetsen worden al uw bewerkingen voor de huidige eigenschap ongedaan gemaakt.</p>
+help.editBeg=Bewerken (beginners)
+help.editingFeatures=Bewerkingsfuncties (voor beginners)
+help.editingFeaturesText=<p><b>Om een punt toe te voegen aan een bestaande weg</b> selecteert u de weg en voert shift+klik uit op de gewenste plaats.</p>\n    <p><b>Om een punt te verwijderen</b> selecteert u het punt en klikt op de knop "Item verwijderen" rechts onderaan of typt "Delete" of "Backspace" op uw toetsenbord.</p>\n  <p><b>Om een weg te verwijderen</b> selecteert u de weg en klikt op de knop "Weg verwijderen" rechts onderaan of u typt shift+Delete of shift+Backspace op uw toestenbord.</p>\n    <p><b>Om ene punt te verplaatsen</b> klikt u op een punt en sleept het naar de gewenste positie.</p>\n   <p><b>Om een weg te verplaatsen</b> klikt u op een weg en sleept deze in het geheel naar de gewenste positie. Hint: Selecteer een segment, zodat u niet per ongeluk een node verplaatst.</p>\n  <p><b>Om een weg langer te maken</b> klikt u op een van de uiteinden van de weg. Daarna kunt u tekenen zoals u gewend bent.</p>\n    <p><b>Om een nieuwe weg toe te voegen die voortkomt uit een bestaande weg</b>, shift+klikt u op een van de uiteinden van de weg.  Daarna kunt u tekenen zoals u gewend bent.</p>
+help.editAdv=Bewerken (gevorderd)
+help.editingFeaturesAdv=Bewerkingsfuncties (voor gevorderden)
+help.editingFeaturesAdvText=<p><b>Om een weg te splitsen</b> selecteert u het punt waar u wilt snijden en klikt op het hulpmiddel Schaar of typt "X" op uw toetsenbord. Hint: Voeg eerst een node toe om tussen twee bestaande nodes te kunnen knippen.</p>\n            <p><b>Om een kruising voor twee wegen te maken</b> tekent u zoals gebruikelijk, totdat u een de kruising moet maken. Als u dan uw muisaanwijzer over de andere weg beweegt, licht deze bluaw op. Klik op een van de blauwe punten of een wllikeurige gewenste plaats op de weg om een kruising te maken.</p>\n            <p><b>Om een kruising op te heffen</b> selecteert u het punt op de weg dat u wilt wijzigen. Typ dan "-" op uw toetsenbord om het punt te verwijderen.</p>\n            <p><b>Om de richting van een weg te wijzigen</b> klikt u op de knop "Richting wijzigen" in de rechter bovenhoek. De richting van een weg is alleen van belang voor eigenschappen met een label "één richting", zoals straten met eenrichtingsverkeer, kustlijnen, eilanden, enzovoort.</p>\n            <p><b>Om een parallelweg te maken</b> selecteert u een weg en klikt op de knop "Parallelweg" in de rechter onderhoek of u typt "P" op uw toetsenbord.</p>\n     <p><b>Om een weg te maken die nodes deelt met een bestaande weg</b> begint u te tekenen, klikt op de eerste twee gedeelde nodes, en typt dan "F" op uw toetsenbord om automatisch de bestaande weg te volgen.</p>\n            <p><i>Bekijk de <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Handleiding voor Potlatch 2</a> op de wiki van OpenStreetMap voor nog meer gevorderde bewerkingsmethoden en -afspraken.</i></p>
+help.tag=Label
+help.taggingFeatures=Labelfuncties
+help.taggingFeaturesText=<p>Met Potlatch 2 is het toevoegen van eigenschappen relatief eenvoudig geworden. Er is nu een grafisch menu beschikbaar en specifieke velden en iconen..</p>\n          <p><b>Een eigenschap toevoegen</b></p>\n          <p>Selecteer het punt of de weg die u wilt bewerken en kies het label uit het menu aan de linkerkant. Na het labelen van de eigenschap, verschijnen er een aantal basisvelden zoals Naam, Maximum snelheid en Breedte, afhankelijk van de eigenschap die u hebt toegevoegd. Vul de velden in voor zover mogelijk.</p><p>Gevorderde gebruikers merken wellicht de afwezigheid van een aantal labels en labelwaarden op die ze af en toe gebruiken. Als dit het geval is, klik dan op het tabblad "Gevorderd" onderin de zijbalk en bewerk of voeg toe waar nodig.</p>\n          <p>Op de wiki van OpenStreetMap staat ook een <a href="http://wiki.openstreetmap.org/wiki/Map_features" target="_blank">uitgebreide lijst met labels en labelwaarden</a>. Raadpleeg alstublieft de OSM-documentatie als u niet zeker weet hoe u iets moet labelen.</p>
+help.shortcuts=Snelkoppelingen
+help.keyboardShortcuts=Sneltoetsen
diff --git a/l10n/locale/nl_NL/p2_main.properties b/l10n/locale/nl_NL/p2_main.properties
new file mode 100644 (file)
index 0000000..49e820a
--- /dev/null
@@ -0,0 +1,45 @@
+# Messages for Dutch (Nederlands)
+# Exported from translatewiki.net
+# Author: SPQRobin
+# Author: Siebrand
+
+main.undo=Ongedaan maken
+main.redo=Opnieuw uitvoeren
+main.background=Achtergrond
+main.map_style=Kaartstijl
+main.gpsButton=GPS-gegevens
+main.gps_data=GPS-gegevens
+main.my_tracks=Mijn tracks
+main.clear_gps=Wissen
+main.help=Hulp
+main.options=Instellingen
+main.save=Opslaan
+tag_viewer.dndprompt=Nieuwe punten toevoegen door ze op de kaart te slepen
+toolbox.delete_node=Node verwijderen (Delete)
+toolbox.delete_area=Gebied verwijderen (Shift+Delete)
+toolbox.delete_way=Weg verwijderen (Shift+Delete)
+toolbox.delete_item=Item verwijderen
+toolbox.reverse_direction=Richting omkeren (V)
+toolbox.split_way=Weg splitsen (X)
+toolbox.merge_ways=Wegen samenvoegen
+toolbox.straighten_way=Weg recht maken
+toolbox.make_circular=Circulair maken
+toolbox.make_right_angled=Rechthoekig maken (Q)
+toolbox.create_parrallel_way=Parallelle weg maken (P)
+oauth.gotLinkBox=Klik op de onderstaande verwijzing om een webpagina te openen waar u gevraagd wordt om toegang tot deze app te krijgen.
+oauth.authorized=Als u toegang hebt, klik dan op de knop "Toegang krijgen" hieronder
+oauth.deniedLabel=<b>U hebt geen toegang. Controleer uw gegevens en probeer het opnieuw</b>
+oauth.rememberMe=Aanmeldgegevens onthouden
+oauth.permFail=<p>De server heeft de toegang geweigerd. Het was niet mogelijk om een autorisatieverwijzing te verkrijgen.</p>\n<p><b>OAuth-toegang is niet mogelijk.</b></p>\n<p>Neem contact op met de leverancier van de toepassing om te achterhalen wat er aan de hand is.</p>
+oauth.tempFail=Er is een probleem opgetreden tijdens het contact opnemen met de server om toegang te krijgen. Dit kan een tijdelijke fout zijn. Probeer het later opnieuw.
+oauth.tryAccessButton=Toegang proberen te verkrijgen
+oauth.cancelButton=Annuleren
+save.editDescription=Geef een beschrijving van uw bewerking op. Dit is nodig om andere mappers een idee te geven welke wijzigingen u aangebracht hebt.
+styleSelector.editButton=Bewerken...
+backgroundSelector.dim=vervagen
+backgroundSelector.sharpen=verscherpen
+backgroundSelector.editButton=Bewerken...
+backgroundSelector.vectorButton=Vectorbestand...
+options.tbcheck=Hulpmiddelen weergeven
+options.cursorcheck=Aangepaste cursors gebruiken
+options.ok=OK
diff --git a/l10n/locale/nn_NO/help_dialog.properties b/l10n/locale/nn_NO/help_dialog.properties
new file mode 100644 (file)
index 0000000..1c2c442
--- /dev/null
@@ -0,0 +1,5 @@
+# Messages for Norwegian Nynorsk (‪Norsk (nynorsk)‬)
+# Exported from translatewiki.net
+
+help.gettingStarted=Kom i gang
+help.welcome=Velkommen
diff --git a/l10n/locale/nn_NO/p2_main.properties b/l10n/locale/nn_NO/p2_main.properties
new file mode 100644 (file)
index 0000000..2c39b39
--- /dev/null
@@ -0,0 +1,45 @@
+# Messages for Norwegian Nynorsk (‪Norsk (nynorsk)‬)
+# Exported from translatewiki.net
+# Author: Dittaeva
+# Author: Gnonthgol
+
+main.undo=Angre
+main.redo=Gjer om
+main.background=Bakgrunn
+main.map_style=Kartstil
+main.gpsButton=GPS-data
+main.gps_data=GPS-data
+main.my_tracks=Mine spor
+main.clear_gps=Tøm
+main.help=Hjelp
+main.options=Innstillingar
+main.save=Lagra
+tag_viewer.dndprompt=Legg til nye punkt ved å dra dei over på kartet
+toolbox.delete_node=Slett node (Delete)
+toolbox.delete_area=Slett område (Shift+Delete)
+toolbox.delete_way=Slett veg (Shift+Delete)
+toolbox.delete_item=Slett element
+toolbox.reverse_direction=Snu retning (V)
+toolbox.split_way=Del veg (X)
+toolbox.merge_ways=Slå saman vegar
+toolbox.straighten_way=Rett opp veg
+toolbox.make_circular=Gjer sirkulær
+toolbox.make_right_angled=Gjer rettvinkla (Q)
+toolbox.create_parrallel_way=Lag parallell veg (P)
+oauth.gotLinkBox=Trykk på lenkja under for å opne ei nettside der du blir beden om å godkjenne tilgang for dette programmet.
+oauth.authorized=Trykk på «Prøv tilgang»-knappen under, etter at du har godkjent tilgangen.
+oauth.deniedLabel=<b>Tilgang vart ikkje gjeven, undersøk brukaropplysningar og prøv om att.</b>
+oauth.rememberMe=Hugs meg
+oauth.permFail=<p>Tenaren nekta tilgang til dette programmet -- godkjenningslenkje kunne ikkje skaffast.             </p><p>         <b>OAuth-tilgang vil ikkje vere mogleg.</b>        </p><p> Ta kontakt med leverandøren for å finne ut kva som er problemet.</p>
+oauth.tempFail=Det var problem med å få kontakt med tenaren for å få godkjenning.    Dette kan vere eit mellombels problem, prøv om att seinare.
+oauth.tryAccessButton=Prøv tilgang
+oauth.cancelButton=Avbryt
+save.editDescription=Skriv ei kort skildring av endringane dine. Den blir brukt til å gje andre kartleggjarar hint om kva du har gjort.
+styleSelector.editButton=Endre...
+backgroundSelector.dim=demp
+backgroundSelector.sharpen=gjer skarpare
+backgroundSelector.editButton=Endre...
+backgroundSelector.vectorButton=Vektorfil...
+options.tbcheck=Vis verkty
+options.cursorcheck=Bruk skreddarsydde peikarar
+options.ok=Ok
diff --git a/l10n/locale/no_NO b/l10n/locale/no_NO
new file mode 120000 (symlink)
index 0000000..59ea540
--- /dev/null
@@ -0,0 +1 @@
+nb_NO
\ No newline at end of file
index c0c0ebd0459a4fbc9d712590cfa3efb99fd3a1e0..e872fbb4932c74959af5c07d08579a32b076e363 100644 (file)
@@ -1,4 +1,19 @@
-# pl_PL resources file
+# Messages for Polish (Polski)
+# Exported from translatewiki.net
+# Author: BeginaFelicysym
 
-help.gettingStarted = Pierwsze kroki
-help.welcome = Witaj
+help.gettingStarted=Pierwsze kroki
+help.welcome=Witaj
+help.gps=GPS
+help.createOsmMap=<p>Utwórz dane mapy OSM przy użyciu śladów GPS innych osób jako podstawie</p>
+help.myGps=MyGPS
+help.displayGps=<p>Wyświetl ślady GPS, które wcześniej już załadowano do OpenStreetMap.</p>
+help.help=Pomoc
+help.save=Zapisz
+help.editBeg=Edycja (Pocz.)
+help.editingFeatures=Funkcje edycji (początkujący)
+help.editAdv=Edycja (zaaw.)
+help.editingFeaturesAdv=Funkcje edycji (zaawansowane)
+help.tag=Znacznik
+help.shortcuts=Skróty
+help.keyboardShortcuts=Skróty klawiaturowe
index f113bf72b66ff18c7739092b2859f4c624b58b24..0e0f4d634b444b1d2ce2f35f54e005432b8b9269 100644 (file)
@@ -1,26 +1,27 @@
-# pl_PL resources file
+# Messages for Polish (Polski)
+# Exported from translatewiki.net
+# Author: BeginaFelicysym
 
-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.clear_gps = Clear
-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)
+main.undo=Cofnij
+main.redo=Ponów
+main.background=Tło
+main.map_style=Styl mapy
+main.gpsButton=Dane GPS
+main.gps_data=Dane GPS
+main.my_tracks=Moje ślady
+main.clear_gps=Clear
+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)
diff --git a/l10n/locale/ru/help_dialog.properties b/l10n/locale/ru/help_dialog.properties
new file mode 100644 (file)
index 0000000..3f776a6
--- /dev/null
@@ -0,0 +1,38 @@
+# Messages for Russian (Русский)
+# Exported from translatewiki.net
+# Author: Express2000
+# Author: TarzanASG
+
+help.gettingStarted=Начало работы
+help.welcome=Добро пожаловать
+help.whyOpenstreetmap=<p><b>Почему OpenStreetMap?</b> OSM - сервис картографии, в котором все данные постоянно обновляются и редактируются такими же людьми как и вы. Очевидным преимуществом является бесплатное использование сервиса, при этом он стал основным инструментом кризисного картографирования (например, использование данных OSM для координации усилий по оказанию помощи при землетрясении в Гаити). Точность этих данных имеет решающее значение, и мы надеемся, что вы сможете добровольно потратить немного своего времени!</p>
+help.activeMembers=<p><b>+ Для активных участников OpenStreetMap</b>, войдите в OSM перед редактированием.</p>
+help.newMembers=<p><b>+ Для новых участников</b>, пожалуйста посетите <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> для создания учетной записи, войдите в систему, а затем вернитесь для получения доступа к редактору Potlatch 2 для начала редактирования.</p>
+help.introText=<p><b>Potlatch 2</b> — редактор OpenStreetMap (OSM), позволяющий вносить изменения непосредственно через веб-сайт {0}.</p>
+help.introduction=Введение
+help.controls=Элементы управления
+help.interfaceControls=Элементы интерфейса
+help.mapBackground=<p>Выберите фоновый рисунок карты, выбрав один из элементов в списке или добавьте свой собственный векторный файл.</p>
+help.colourStyle=<p>Выберите стиль, в котором вы хотите просматривать карту. Цвета и общий стиль могут быть изменены и включают также другие варианты как, например, каркас.</p>
+help.gps=GPS
+help.createOsmMap=<p>Создание данных OSM карты, используя GPS-треки других людей в качестве подложки</p>
+help.myGps=МойGPS
+help.displayGps=<p>Отображение GPS-треков, загруженных вами на OpenStreetMap ранее.</p>
+help.undoRedo=Отменить / повторить
+help.madeMistake=<p>Сделали ошибку? Просто нажмите отменить и/или повторить для исправления изменений.</p>
+help.help=Помощь
+help.guideInfomation=<p>Открывает данное руководство в случае, если вам понадобится информация во время редактирования.</p>
+help.save=Сохранить
+help.addingFeatures=Добавление функций
+help.addingFeaturesText=<p><i>Прежде чем начать, первое правило, которое вы должны знать - это использование проприетарных (собственнических) данных. Данные с защищенных авторским правом карт или любых других собственнических источников строго запрещены! Не допускается копирование, трассировка или любое воспроизведение авторских работ! (Источник: <a href="http://wiki.openstreetmap.org/wiki/RU:%D0%90%D0%B2%D1%82%D0%BE%D1%80%D1%81%D0%BA%D0%B8%D0%B5_%D0%BF%D1%80%D0%B0%D0%B2%D0%B0?uselang=ru" target="_blank">авторское право - OpenStreetMap Вики</a>)</i></p>\n<p>\n<p>Линейные объекты вроде улиц, пешеходных дорожек, железных дорог и строительных контуров здесь и далее будут называться <b>линиями</b>.</p>\n<p>Если вы вдруг заметили, что боковая панель с ее значками пропали, то это произошло потому, что Вы выбрали на карте какой-то объект. Просто отмените выбор, щелкнув пустую область для восстановления значков.</p>\n<p><b>Для создания точки (или узла)</b>, просто перетащите соответствующий значок с боковой панели на карту. Посмотрите раздел добавление объектов, чтобы узнать больше о создании POI (Point of Interest - точек интереса)</p>\n<p><b>Для создания линии</b>, начните его щёлкнув по карте в точке её начала, а затем щелкайте на каждой его последующей точке. Дважды щелкните, чтобы закончить линию или нажмите клавишу Enter.</p>\n<p><b>Для создания полигона</b>, начните его, нажав на карте на его начальной точке, а затем щелкайте на каждой его вершине. Чтобы закончить полигон, щелкните на его первой вершине.</p>\n<p>Помните, если вы совершили ошибку, вы всегда можете нажать кнопку Отменить. Нажатие клавиши Esc отменяет все изменения для текущей функции.</p>
+help.editBeg=Редактирование (Нач.)
+help.editingFeatures=Редактирование (начинающим)
+help.editingFeaturesText=<p><b>Чтобы добавить точку на существующую линию</b>, выберите данную линию и, удерживая Shift, щёлкните в нужном месте.</p>\n<p><b>Чтобы удалить точку</b>, выберите точку и нажмите кнопку «Удалить элемент» в правом нижнем углу или нажмите на клавиатуре клавишу Delete (или Backspace).</p>\n<p><b>Чтобы удалить путь</b>, выберите путь и в правом нижнем углу нажмите кнопку Удалить элемент или нажмите Shift + Delete (или Shift + Backspace) на вашей клавиатуре.</p>\n<p><b>Чтобы переместить точку</b>, щелкните по ней и перетащите точку.</p>\n<p><b>Чтобы переместить линию</b>, щелкните по ней и перетащите её (Подсказка: захватите сегмент, где Вы не заденете случайно точку).</p>\n<p><b>Для расширения линии</b>, нажмите на одну из конечных точек пути. Затем можно продолжить рисование как обычно.</p>\n<p><b>Добавить новую линию расширяющийся от существующего</b>, щёлкните на одной из конечных точек пути удерживая Shift. Затем можно продолжить рисование как обычно.</p>
+help.editAdv=Редактирование (Опытным)
+help.editingFeaturesAdv=Редактирование (Опытным пользователям)
+help.editingFeaturesAdvText=<p><b>Для разделения линии</b>, выберите точку, в которой вы хотите разделить и щёлкните на инструмент Ножницы или нажмите X на вашей клавиатуре. (Подсказка: Добавьте сначала точку, чтобы разделить между точками.)</p>\n            <p><b>Чтобы соединить две линии</b>, рисуйте как обычно до тех пор, пока вам не понадобиться сделать соединение. Затем как только вы наведёте вашу мышь над другой линией, точки подсветятся голубым. Кликните на одной из голубых точек или другом желаемом месте на линии для создания соединения.</p>\n            <p><b>Чтобы разъединить соединение</b>, выберите точку на линии, которую вы хотите изменить. Нажмите "-" на вашей клавиатуре для удаления точки.</p>\n            <p><b>Для изменения направления линии</b>, кликните на кнопку Изменить направление в нижнем правом углу. Направление линии касается только для тех элементов, которые имеют тег "oneway" - односторонние улицы, береговые линии, острова и так далее.</p>\n            <p><b>Чтобы создать параллельную линию</b>, выберите линию и нажмите кнопку "Создать параллельную линию" в нижнем правом углу или нажмите P на вашей клавиатуре.</p>\n     <p><b>Для создания линии, которая имеет общие точки с существующей линией</b>, начните рисовать, нажмите на две первые общие точки, затем нажмите F для автоматического следования существующей линии.</p>\n            <p><i>Посетите <a href="http://wiki.openstreetmap.org/wiki/RU:%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B_Potlatch_2?uselang=ru" target="_blank">букварь по Potlatch 2</a> в вики OpenStreetMap для более расширенных методов редактирования и условных соглашений.</i></p>
+help.tag=Тег
+help.taggingFeatures=Функции теггирования
+help.taggingFeaturesText=<p>С Potlatch 2 создание меток стало достаточно простым при использовании графических меню и специальных полей/значков.</p>\n          <p><b>Создание меток для объекта</b></p>\n          <p>Выберите точку или путь для редактирования и выберите подходящую метку с левой боковой панели. После создания метки объекта будут доступны основные поля (Имя, ограничение скорости и ширина, в зависимости от метки, которую Вы присваиваете). Заполните как можно более подробно.</p><p>Продвинутые пользователи могут заметить отсутствие некоторых меток и их значений. В этом случае нажмите вкладку Подробно внизу боковой панели и отредактируйте или добавьте что считаете нужным.</p>\n          <p>В OpenStreetMap вики также можно найти <a href="wiki.openstreetmap.org/wiki/RU:Map_Features?uselang=ru" target="_blank">расширенный список меток и их значений</a>. Пожалуйста, обратитесь к документации OSM, если Вы не уверены какую метку стоит использовать.</p>
+help.shortcuts=Сочетания клавиш
+help.keyboardShortcuts=Клавиатурные сочетания клавиш
diff --git a/l10n/locale/ru/p2_main.properties b/l10n/locale/ru/p2_main.properties
new file mode 100644 (file)
index 0000000..506cff9
--- /dev/null
@@ -0,0 +1,47 @@
+# Messages for Russian (Русский)
+# Exported from translatewiki.net
+# Author: Cekli829
+# Author: Express2000
+# Author: TarzanASG
+# Author: Александр Сигачёв
+
+main.undo=Отменить
+main.redo=Повторить
+main.background=Подложка
+main.map_style=Стиль карты
+main.gpsButton=Данные GPS
+main.gps_data=Данные GPS
+main.my_tracks=Мои треки
+main.clear_gps=Очистить
+main.help=Помощь
+main.options=Настройки
+main.save=Сохранить
+tag_viewer.dndprompt=Добавьте новые точки, переместив их на карту
+toolbox.delete_node=Удалить точку (Delete)
+toolbox.delete_area=Удалить область (Shift + Delete)
+toolbox.delete_way=Удалить линию (Shift + Delete)
+toolbox.delete_item=Удалить элемент
+toolbox.reverse_direction=Обратить направление (V)
+toolbox.split_way=Разделить линию (X)
+toolbox.merge_ways=Объединить пути
+toolbox.straighten_way=Выпрямить путь
+toolbox.make_circular=Создать круговое движение
+toolbox.make_right_angled=Сделать прямой угол (Q)
+toolbox.create_parrallel_way=Создать параллельную линию (P)
+oauth.gotLinkBox=Нажмите на ссылку ниже, чтобы открыть веб-страницу, где вам будет предложено авторизовать доступ к этому приложению.
+oauth.authorized=Авторизовав доступ, нажмите внизу на кнопку «Испытать доступ»
+oauth.deniedLabel=<b>В доступе отказано, проверьте и повторите попытку</b>
+oauth.rememberMe=Запомнить меня
+oauth.permFail=<p>Сервер отклонил полномочия этого приложения: не удалось получить ссылку авторизации.</p>\n<p>             <b>OAuth доступ невозможен.</b>         </p>\n<p>Пожалуйста, свяжитесь с поставщиком приложения, чтобы выяснить подробности.</p>
+oauth.tempFail=Проблема подключения к серверу для получения авторизации.    Это может быть временной ошибкой, повторите попытку позже.
+oauth.tryAccessButton=Испытать доступ
+oauth.cancelButton=Отмена
+save.editDescription=Введите описание изменений. Это даст представление другим редакторам о сделанных вами изменениях.
+styleSelector.editButton=Изменить...
+backgroundSelector.dim=размыть
+backgroundSelector.sharpen=резкость
+backgroundSelector.editButton=Изменить...
+backgroundSelector.vectorButton=Векторный файл...
+options.tbcheck=Показать панель инструментов
+options.cursorcheck=Использовать свои курсоры
+options.ok=OK
diff --git a/l10n/locale/sq/help_dialog.properties b/l10n/locale/sq/help_dialog.properties
new file mode 100644 (file)
index 0000000..41c6b5b
--- /dev/null
@@ -0,0 +1,23 @@
+# Messages for Albanian (Shqip)
+# Exported from translatewiki.net
+# Author: Euriditi
+
+help.gettingStarted=Duke filluar
+help.welcome=Mirësevini
+help.whyOpenstreetmap=<p><b>Përse OpenStreetMap?</b> OSM është një shërbim harografik në të cilin të dhënat freskohen në mënyrë konstante çdo ditë nga njerëz si ju. Përfitimi i dukshëm është se gjithçka është falas dhe gjithashtu dhe ne kemi luajtur rol të veçantë në koordifikimin e fatkeqsive natyrore (p.sh. përdorimi i të dhënave nga OSM për të koordinuar përpjekjet e ndihmave gjatë tërmetit në Haiti). Saktësia e të dhënave nuk është e sigurtë dhe shpresojmë se ju do të na kushtoni vullnetarisht pak nga koha juaj!</p>
+help.activeMembers=<p><b>+ Anëtarët aktivë të OpenStreetMap</b>, janë të lutur të kyçen në OSM përpara se të redaktojnë.</p>
+help.newMembers=<p><b>+ Anëtarët e rinj</b>, për të krijuar një llogari janë të lutur të vizitojnë <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a>, më pas kyçuni në llogari, dhe pastaj rikthehuni këtu për të lejuar aksesin e Potlatch 2 në mënyrë që të redaktoni.</p>
+help.introText=<p><b>Potlatch 2</b> është një redaktor i OpenStreetMap (OSM) që ju lejon ju të bëni ndryshime direkte përmes uebsite-it {0}.</p>
+help.controls=Kontrolli
+help.interfaceControls=Ndërfaqja e kontrollit
+help.mapBackground=<p>Zgjidhni një nga artikujt e listuar më poshtë si sfond për hartën ose shto skedën tënde vektoriale.</p>
+help.colourStyle=<p>Zgjidhni stilin në të cilin dëshironi të shikoni hartën. Ngjyrat dhe stili variojnë dhe gjithashtu përfshijnë opsione shtesë si p.sh. korniza.</p>
+help.gps=GPS
+help.createOsmMap=<p>Krijo hartë OSM duke përdorur si sfond gjurmë GPS nga përdorues të tjerë</p>
+help.myGps=MyGPS
+help.displayGps=<p>Shfaq gjurmët GPS që ju i keni ngarkuar më parë në OpenStreetMap.</p>
+help.undoRedo=Zhbëje / Ribëje
+help.madeMistake=<p>Keni bërë ndonjë gabim? Thjesht shtypni zhbëje dhe/ose ribëje për të korrektuar redaktimin tuaj.</p>
+help.help=Ndihmë
+help.guideInfomation=<p>Shfaq këtë guidë në rast se keni nevojë për informacion gjatë redaktimit.</p>
+help.save=Ruaje
diff --git a/l10n/locale/ta/p2_main.properties b/l10n/locale/ta/p2_main.properties
new file mode 100644 (file)
index 0000000..314cde9
--- /dev/null
@@ -0,0 +1,21 @@
+# Messages for Tamil (தமிழ்)
+# Exported from translatewiki.net
+# Author: Aswn
+# Author: Karthi.dr
+
+main.undo=செயல்தவிர்
+main.redo=மீண்டும் செய்
+main.background=பின்னணி
+main.gpsButton=ஜி.பி.எஸ் தகவல்
+main.gps_data=புவியிடங்காட்டித் தரவு
+main.clear_gps=வெறுமையாக்கு
+main.help=உதவி
+main.options=விருப்பத் தேர்வுகள்
+main.save=சேமி
+toolbox.delete_item=உருப்படியை நீக்கு
+toolbox.merge_ways=வழிகளை ஒன்றுசேர்
+toolbox.straighten_way=வழியை நேராக்கு
+oauth.cancelButton=ரத்து செய்
+styleSelector.editButton=திருத்து...
+backgroundSelector.editButton=தொகு...
+options.ok=சரி
diff --git a/l10n/locale/tr/p2_main.properties b/l10n/locale/tr/p2_main.properties
new file mode 100644 (file)
index 0000000..c2d5119
--- /dev/null
@@ -0,0 +1,40 @@
+# Messages for Turkish (Türkçe)
+# Exported from translatewiki.net
+# Author: Emperyan
+# Author: Katpatuka
+
+main.undo=Geri al
+main.redo=Yinele
+main.background=Arka plan
+main.map_style=Harita Biçimi
+main.gpsButton=GPS Verisi
+main.gps_data=GPS Verisi
+main.my_tracks=GPS İzlerim
+main.clear_gps=Temizle
+main.help=Yardım
+main.options=Seçenekler
+main.save=Kaydet
+tag_viewer.dndprompt=Yeni noktaları sürükleyerek haritaya ekle
+toolbox.delete_node=Noktayı sil (Del)
+toolbox.delete_area=Alanı sil (Shift + Del)
+toolbox.delete_way=Yolu sil (Shift + Del)
+toolbox.delete_item=Öğeyi sil
+toolbox.reverse_direction=Yönünü tersine döndür (V)
+toolbox.split_way=Yolunu böl (X)
+toolbox.merge_ways=Yolları birleştir
+toolbox.straighten_way=Yolu hizala
+toolbox.make_circular=Dairesel yap
+toolbox.make_right_angled=Dik açılı yap (Q)
+toolbox.create_parrallel_way=Paralel yolu oluştur (P)
+oauth.rememberMe=Beni hatırla
+oauth.tryAccessButton=Erişim dene
+oauth.cancelButton=Vazgeç
+save.editDescription=Lütfen düzenlemelerinin açıklamasını yaz. Diğer haritacıları ne gibi değişiklikler yaptığını fikir verebilir.
+styleSelector.editButton=Düzenle...
+backgroundSelector.dim=söndür
+backgroundSelector.sharpen=keskinleştir
+backgroundSelector.editButton=Düzenle...
+backgroundSelector.vectorButton=Vektör dosyası...
+options.tbcheck=Araç kutusunu görüntüle
+options.cursorcheck=Özel imleçler kullan
+options.ok=Tamam
diff --git a/l10n/locale/uk/help_dialog.properties b/l10n/locale/uk/help_dialog.properties
new file mode 100644 (file)
index 0000000..48fd2e0
--- /dev/null
@@ -0,0 +1,37 @@
+# Messages for Ukrainian (Українська)
+# Exported from translatewiki.net
+# Author: Andygol
+
+help.gettingStarted=Початок роботи
+help.welcome=Ласкаво просимо!
+help.whyOpenstreetmap=<p><b>Чому OpenStreetMap?</b> OSM — це сервіс мап, в якому всі дані постійно оновлюються та виправляються звичайним людьми, такими як ви. Очевидною перевагою є те, що він безкоштовний для використання, він також став основним гравцем у кратографванні кризисних явищ (наприклад використання OSM даних під час надання допомоги під час землетрусу на Гаїті). Точність цих даних має вирішальне значення, і ми сподіваємося, що ви в змозі пожертвувати частину вашого часу!</p>
+help.activeMembers=<p><b>+ Для активних учасників OpenStreetMap</b>, будь ласка, увійдіть до OSM перед редагуванням.</p>
+help.newMembers=<p><b>+ Для нових учасників</b>, будь ласка, відвідайте <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> для створення облікового запису, увійдіть в систему, а потім поверніться сюди, щоб отримати доступ до Потлач 2 і почати редагування.</p>
+help.introText=<p><b>Потлач 2</b> є OpenStreetMap (OSM) редактором, який дозволяє зробити зміни безпосередньо через веб-сайт {0}.</p>
+help.introduction=Вступ
+help.controls=Елементи керування
+help.interfaceControls=Елементи інтерфейсу
+help.mapBackground=<p>Виберіть фонове зображення для мапи з елементів у списку, або додайте власний вектор файл.</p>
+help.colourStyle=<p>Виберіть стиль, в якому ви бажаєте переглядати мапу. Кольори і загальний стиль можна змінити і включають інші варіанти, такі як  каркас.</p>
+help.gps=GPS
+help.createOsmMap=<p>Створюйте  мапу OSM використовуючи GPS-треки інших людей в якості тла</p>
+help.myGps=МійGPS
+help.displayGps=<p>Показ GPS-треків, завантажених  раніше на OpenStreetMap.</p>
+help.undoRedo=Скасувати / Повернути
+help.madeMistake=<p>Зробили помилку? Просто натисніть Скасувати або повторити, щоб виправити ваші зміни.</p>
+help.help=Довідка
+help.guideInfomation=<p>Використовуйте це керівництво, якщо вам потрібна будь-яка інформація під час редагування.</p>
+help.save=Зберегти
+help.addingFeatures=Додавання об’єктів
+help.addingFeaturesText=<p><i>Перше ніж почати, перше правило, яке вам потрібно знати — ЗАБОРОНЕНО використовувати дані з джерел захищених авторським правом, чи даних, на використання яких у вас нема дозволу! Копіювання, обведення чи будь-яке відтворення таких даних недозволене!  (Джерело: <a href="http://wiki.openstreetmap.org/wiki/Copyright" target="_blank">Copyright - OpenStreetMap Wiki</a>)</i></p>\n  <p></p>\n  <p>Лінійні об’єкти, такі як вилиці, стежки, залізничні колії та контури будівель є <b>лініями</b>.</p>\n  <p>Якщо ви помітили, що бокова панель зі значками кудись поділась, не хвилюйтесь, — все через те, що ви виділили об’єкт на мапі. Зніміть виділення, клацнувши у будь-якому порожньому місці на мапі, щоб повернути панель із значками.</p>\n            <p><b>Для створення  точки</b>, просто перетягніть відповідний значок з бокової панелі у відповідне місце на мапі. Дивіться розділ Додавання POI, щоб дізнатись про створення точкових об’єктів — POI (Point of Interest)</p>\n            <p><b>Для створення ліній</b>, клацніть на мапі в місці початку лінії, потім клацайте у кожній потрібній точці, щоб лінія мали відповідну форму. Подвійне клацання, чи натискання на Enter призведе до завершення креслення лінії.</p>\n            <p><b>Для створення полігону</b>, робіть все так само як і для створення лінії, для завершення клацніть на початкову точку , щоб замкнути лінію полігону.</p>\n            <p>Запам’ятайте, якщо ви припустились помилки,завжди можна скористатись кнопкою Відмінити. Натискання Esc призведе до скасування усіх змін для поточного об’єкта.</p>
+help.editBeg=Правити (поч.)
+help.editingFeatures=Редагування об’єктів (початківцям)
+help.editingFeaturesText=<p><b>Щоб додати точку до існуючої лінії</b>, виділіть її натисніть клавішу shift та клацніть у потрібному місці.</p>\n    <p><b>Для вилучення точки</b>, виділіть її та натисніть «Влучити елемент» в правому нижньому куті або натисніть Delete (чи Backspace) на клавіатурі.</p>\n  <p><b>Для вилучення лінії</b>,  виділіть її та натисніть «Влучити елемент» в правому нижньому куті або натисніть shift+Delete (ч shift+Backspace)  на клавіатурі.</p>\n    <p><b>Для переміщення точки</b>, клацніть на еї та потягніть.</p>\n   <p><b>Для переміщення лінії</b>, клацніть та потягніть весь об’єкт. Підказка: Хапайтесь за відрізок, якщо ви не бажаєете випадково пересунути точку.</p>\n  <p><b>Для продовження лінії</b>, клацніть на один з її кінців, потім креслить як завжди.</p>\n    <p><b>Для додавання нової лінії, що з’єднується з інсуючою лінією</b>, клацніть на кінець лінії натиснувши shift, потім кресліть як звичайно.</p>
+help.editAdv=Редагування (Досв.)
+help.editingFeaturesAdv=Редагування об’єктів (Розширене)
+help.editingFeaturesAdvText=<p><b>Щоб розділити лінію</b>, виділіть точку в якій її треба розрізати та скористайтесь «Ножицями» або натисніть X на клавіатурі. Порада: Якщо в потрібному місці точка відсутня — спочатку додайте її, а потім розрізайте.</p>\n            <p><b>Щоб з’єднати дві лінії, що перехрещуються</b>, кресліть як звичайно до тих під доки вам не знадобиться створити перехрестя. Наведіть вказівник миші на іншу лінію, точки на ній підсвітяться синім, клацніть на синю точку або у потрібне місце на лінії для створення перехрестя.</p>\n            <p><b>Для роз’єднання перехрещених ліній</b>, виділіть точку на лінії, яку потрібно змінити. Натисніть «-» на клавіатурі для вилучення точки.</p>\n            <p><b>Для зміни напрямку лінії</b>, натисніть на кнопку «Змінити напрямок» у правому нижньому куті. Напрямок лінії має сенс лише для певних об’єктів таких як дороги з одностороннім рухом, берегова лінія, острови та таке інше.</p>\n            <p><b>Для створення паралельної лінії</b>, виділіть лінію та натисніть на кнопку «Створити паралельну лінію» в правому нижньому куті чи натисніть P на клавіатурі.</p>\n     <p><b>Для створення лінії, що використовує точки вже існуючої лінії</b>, почніть креслити, клацнувши на дві перші спільні точки, а потім натисніть F для автоматичного слідування точкам існуючої лінії.</p>\n            <p><i>Відвідайте <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer" target="_blank">Приклади Potlatch 2</a> на Вікі OpenStreetMap, щоб знайти більше інформації про методи та угоди редагування.</i></p>
+help.tag=Теґ
+help.taggingFeatures=Позначення об’єктів
+help.taggingFeaturesText=<p>В Potlatch 2, позначення об’єктів стало значно простішим з використанням графічних меню та спеціальних полів/значків.</p>\n          <p><b>Позначення об’єктів теґами</b></p>\n          <p>Виділіть точку чи лінію, яку ви бажаєте редагувати, оберіть відповідний теґ із панелі ліворуч. Після позначення об’єкту, з’являться кілька основних полів, такі як назва, обмеження швидкості, ширина, в залежності від обраного теґу. Заповніть їх потрібними значеннями.</p><p>Досвідчені користувачі можуть помітити відсутність деяких теґів та їх значень, які вони використовують. Якщо вам потрібно додати додаткові теґи скористайтесь вкладкою Розширені параметри знизу панелі у разі потреби.</p>\n          <p>Вікі OpenStreetMap також надає <a href="http://wiki.openstreetmap.org/wiki/Uk:Map_features" target="_blank">розширений перелік теґів та їх значнь</a>. Будь ласка, звертайтесь до документації OSM, якщо ви невпевнені, що до застосування теґів.</p>
+help.shortcuts=Комбінації клавіш
+help.keyboardShortcuts=Сполучення клавіш
diff --git a/l10n/locale/uk/p2_main.properties b/l10n/locale/uk/p2_main.properties
new file mode 100644 (file)
index 0000000..92e2765
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Ukrainian (Українська)
+# Exported from translatewiki.net
+# Author: Andygol
+
+main.undo=Скасувати
+main.redo=Повернути
+main.background=Фон
+main.map_style=Стиль мапи
+main.gpsButton=GPS-дані
+main.gps_data=GPS-дані
+main.my_tracks=Мої треки
+main.clear_gps=Очистити
+main.help=Довідка
+main.options=Параметри
+main.save=Зберегти
+tag_viewer.dndprompt=Додайте нові точки, перетягнувши їх на мапу
+toolbox.delete_node=Вилучити точку (Delete)
+toolbox.delete_area=Вилучити  ділянку (Shift+Delete)
+toolbox.delete_way=Вилучити лінію (Shift+Delete)
+toolbox.delete_item=Вилучити елемент
+toolbox.reverse_direction=Змінити напрямок (V)
+toolbox.split_way=Розділити лінію (X)
+toolbox.merge_ways=Об’єднати лінії
+toolbox.straighten_way=Випрямити лінію
+toolbox.make_circular=Створити коло
+toolbox.make_right_angled=Зробити кути прямими (Q)
+toolbox.create_parrallel_way=Створити паралельну лінію (P)
+oauth.gotLinkBox=Натисніть на посилання нижче, щоб відкрити веб-сторінку, де вам буде запропоновано дозволити доступ для цього застосунка.
+oauth.authorized=Автентифікований доступ можна перевірити натиснув на кнопки «Випробувати доступ»
+oauth.deniedLabel=<b>Відмовлено в доступі, перевірте і повторіть спробу</b>
+oauth.rememberMe=Запам’ятати мене
+oauth.permFail=<p>Сервер відхилив повноваження цього застосунку — не вдається отримати посилання на авторизації.</p>\n<p>        <b>OAuth доступу не можливий.</b>              </p>\n<p>Зверніться до постачальника застосунку, щоб з’ясувати, що відбувається.</p>
+oauth.tempFail=Сталася помилка підключення до сервера для отримання авторизації.    Це може бути тимчасова помилка, спробуйте ще раз пізніше.
+oauth.tryAccessButton=Випробувати доступ
+oauth.cancelButton=Скасувати
+save.editDescription=Будь ласка, введіть опис для ваших змін. Він дасть можливість іншим маперам мати уявлення про те, які зміни ви зробили.
+styleSelector.editButton=Правити…
+backgroundSelector.dim=приглушити
+backgroundSelector.sharpen=збільшити різкість
+backgroundSelector.editButton=Правити…
+backgroundSelector.vectorButton=Векторний файл…
+options.tbcheck=Показати панель інструментів
+options.cursorcheck=Використовувати власні курсори
+options.ok=Гаразд
index b5069509bf38b46a9bd0ac87cd6332b8e3873b3f..9fd363ca3b08365035f96c88af644eed595ca16c 100644 (file)
@@ -1,35 +1,37 @@
-# vi resources file
+# Messages for Vietnamese (Tiếng Việt)
+# Exported from translatewiki.net
+# Author: Minh Nguyen
 
-help.gettingStarted = Bắt đầu
-help.welcome = Hoan nghênh
-help.whyOpenstreetmap = <p><b>Tại sao OpenStreetMap?</b> OSM là một dịch vụ bản đồ có dữ liệu được cập nhật luôn luôn do công sức của những nguời thường như bạn. Dĩ nhiên bạn có thể sử dụng OSM miễn phí, nhưng nó cũng có điểm lợi khác. Nó là một trong những dịch vụ quan trọng nhất cung cấp bản đồ ở nơi thảm họa: dữ liệu OSM được sử dụng để phối hợp các nỗ lực cứu tế tại Haiti sau động đất. Dữ liệu bản đồ cần phải chính xác và đầy đủ. Hy vọng bạn sẽ tình nguyện để dành một tí thì giờ để đóng góp!</p>
-help.activeMembers = <p><b>• Các thành viên đã có tài khoản:</b> Xin vui lòng đăng nhập vào OpenStreetMap truớc khi sửa đổi</b></p>
-help.newMembers = <p><b>• Các thành viên mới:</b> Xin vui lòng ghé vào <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> để mở tài khoản mới truớc tiên. Sau đó, đăng nhập và trở về đây để cho phép Potlatch 2 truy cập tài khoản và bắt đầu sửa đổi.</p>
-help.introText = <p><b>Potlatch2</b> là một trình vẽ OpenStreetMap (OSM) cho phép bạn sửa đổi trực tiếp từ trang {0}.</p>
-help.introduction = Giới thiệu
-help.controls = Điều khiển
-help.interfaceControls = Các điều khiển giao diện
-help.mapBackground = <p>Chọn lớp nền bản đồ từ trình đơn hoặc thêm một tập tin vectơ của bạn.</p>
+help.gettingStarted=Bắt đầu
+help.welcome=Hoan nghênh
+help.whyOpenstreetmap=<p><b>Tại sao OpenStreetMap?</b> OSM là một dịch vụ bản đồ có dữ liệu được cập nhật luôn luôn do công sức của những nguời thường như bạn. Dĩ nhiên bạn có thể sử dụng OSM miễn phí, nhưng nó cũng có điểm lợi khác. Nó là một trong những dịch vụ quan trọng nhất cung cấp bản đồ ở nơi thảm họa: dữ liệu OSM được sử dụng để phối hợp các nỗ lực cứu tế tại Haiti sau động đất. Dữ liệu bản đồ cần phải chính xác và đầy đủ. Hy vọng bạn sẽ tình nguyện để dành một tí thì giờ để đóng góp!</p>
+help.activeMembers=<p><b>• Các thành viên đã có tài khoản:</b> Xin vui lòng đăng nhập vào OpenStreetMap truớc khi sửa đổi.</p>
+help.newMembers=<p><b>• Các thành viên mới:</b> Xin vui lòng ghé vào <a href="http://www.openstreetmap.org/user/new" target="_blank">http://www.openstreetmap.org</a> để mở tài khoản mới truớc tiên. Sau đó, đăng nhập và trở về đây để cho phép Potlatch 2 truy cập tài khoản và bắt đầu sửa đổi.</p>
+help.introText=<p><b>Potlatch2</b> là một trình vẽ OpenStreetMap (OSM) cho phép bạn sửa đổi trực tiếp từ trang {0}.</p>
+help.introduction=Giới thiệu
+help.controls=Điều khiển
+help.interfaceControls=Các điều khiển giao diện
+help.mapBackground=<p>Chọn lớp nền bản đồ từ trình đơn hoặc thêm một tập tin vectơ của bạn.</p>
 help.colourStyle=<p>Chọn kiểu để hiển thị bản đồ. Có sẵn nhiều kiểu màu sắc và kiểu vẽ đường, cũng như một số tùy chọn khác như Khung lưới.</p>
-help.gps = GPS
-help.createOsmMap = <p>Vẽ dữ liệu bản đồ OSM bằng cách đồ lên tuyến đường GPS của nguời khác.</p>
-help.myGps = MyGPX
-help.displayGps = <p>Hiện các tuyến đường GPS mà bạn đã tải lên OpenStreetMap.</p>
-help.undoRedo = Hoàn tác / Làm lại
-help.madeMistake = <p>Vừa vẽ nhầm lẫn? Chỉ việc bấm Hoàn tác hoặc Làm lại để chỉnh sửa các đối tượng vẽ.</p>
-help.help = Trợ giúp
-help.guideInfomation = <p>Mở hướng dẫn này để chỉ dẫn cách sửa đổi.</p>
-help.save = Lưu
-help.addingFeatures = Bổ sung Đối tượng
-help.addingFeaturesText = <p><i>Truớc tiên, bạn phải nhớ quy tắc quan trọng nhất về cách sử dụng dữ liệu mang tính thương mại: <b>không cho phép</b> sử dụng dữ liệu từ bất kỳ bản đồ có bản quyền hoặc bất kỳ dữ liệu thương mại khác! <b>Không cho phép</b> sao chép, đồ lên, hoặc tái sản xuất bằng bất cứ phương pháp nào! (Nguồn: <a href="http://wiki.openstreetmap.org/wiki/Copyright?uselang=vi" target="_blank">Quyền tác giả – OpenStreetMap Wiki</a>)</i></p> <p></p> <p>Hướng dẫn này chỉ đến các đối tượng hình tuyến như đường sá, đường bộ, đường sắt, và hình dạng tòa nhà với tên <b>lối</b>.</p> <p>Nếu bạn tình cờ nhận thấy rằng các hình tượng trên thanh bên bị mất, có lẽ một địa điểm hay lối đang được chọn trên bản đồ. Để bỏ chọn nó, nhấn chuột vào một vùng trống trên bản đồ; các hình tượng sẽ hiện ngay.</p> <p>Để <b>bổ sung một địa điểm (hoặc nốt)</b>, chỉ việc kéo một hình tượng trưng cho nó từ thanh bên và thả nó vào bản đồ. Xem “Bổ sung địa điểm” để biết thêm về việc tạo địa điểm ưa thích (POI)</p> <p>Để <b>vẽ một lối</b>, nhấn chuột vào bản đồ tại vị trí bắt đầu, rồi nhấn chuột vào mọi vị trí dẫn tiếp. Nhấn đúp hoặc bấm “Enter” trên bàn phím để kết thúc đường vẽ.</p> <p>Để <b>vẽ một hình đa giác (vùng)</b>, nhấn chuột vào bản đồ tại vị trí bắt đầu, rồi nhấn chuột vào mọi vị trí dẫn tiếp – y chang như việc vẽ lối – và nhấn chuột vào nốt đầu tiên để đóng hình đa giác.</p> <p>Nếu bạn vẽ nhầm lẫn, bạn có thể bấm nút Hoàn tác. Bấm “Esc” trên bàn phím để kết thúc sửa đổi điểm hay lối hiện hành.</p>
-help.editBeg = Sửa (Cơ bản)
-help.editingFeatures = Sửa đổi Đối tượng (Cơ bản)
-help.editingFeaturesText = <p>Để <b>thêm một nốt vào giữa một lối đã tồn tại</b>, chọn lối đó, rồi giữ bấm Shift và nhấn chuột vào vị trí của nốt mới.</p> <p>Để <b>xóa một nốt</b>, chọn nó và bấm nút “Xóa Nốt” ở phía duới bên phải hoặc bấm Delete (hoặc Backspace) trên bàn phím.</p> <p>Để <b>xóa cả một lối</b>, chọn lối đó và bấm nút “Xóa Lối” ở phía dưới bên phải, hoặc bấm Shift+Delete (hoặc Shift+Backspace) trên bàn phím.</p> <p>Để <b>di chuyển một điểm hay nốt</b>, chọn và kéo nó.</p> <p>Để <b>di chuyển một lối</b>, bấm và kéo cả lối đó. (Gợi ý: Khi kéo lối, tránh các nốt của lối).</p> <p>Để <b>kéo dài một lối</b>, nhấn chuột vào nốt tại đầu hay đuôi của lối, rồi tiếp tục vẽ lối bình thường.</p> <p>Để <b>vẽ một lối mới liền với đầu hay đuôi của lối đã tồn tại</b>, giữ Shift và nhấn chuột vào nốt tại đầu hay đuôi của lối đó, rồi tiếp tục vẽ lối mới bình thường.</p>
-help.editAdv = Sửa (Nâng cao)
-help.editingFeaturesAdv = Sửa đổi Đối tượng (Nâng cao)
-help.editingFeaturesAdvText = <p>Để <b>cắt đôi một lối</b>, chọn một điểm để cắt và nhấn chuột vào công cụ “Cắt đôi” (đôi kéo) hoặc bấm “X” trên bàn phím. (Gợi ý: Để cắt một lối giữa hai nốt, thêm một nốt mới trước tiên.)</p> <p>Để <b>nối liền hai lối</b>, vẽ các lối bình thường đến khi cần nối liền. Khi bạn chuyển con trỏ lên trên một lối khác, các nốt của lối đó sẽ được tô màu xanh. Nhấn chuột vào một trong những nốt xanh hoặc vào nơi khác nào đó trên lối để nối liền.</p> <p>Để <b>gỡ một lối khỏi nơi nối liền</b>, chọn nốt trên lối mà bạn muốn gỡ ra. Bấm “-” trên bàn phím để dời nốt khỏi lối.</p> <p>Để <b>đảo nguợc một lối</b>, bấm nút “Đảo nguợc” ở phía duới bên phải. Hướng của lối chỉ có ảnh hưởng đến các lối có thẻ “oneway” (một chiều) như các đường một chiều, cũng như các bờ biển, hòn đảo, v.v.</p> <p>Để <b>vẽ các lối song song</b>, chọn lối gốc và bấm nút “Vẽ Lối Song song” ở phía duới bên phải, hoặc bấm “P” trên bàn phím.</p> <p>Để <b>vẽ lối mới chạy theo lối khác</b>, bắt đầu vẽ lối mới, nhấn chuột vào ít nhất hai nốt trên lối khác, rồi cứ bấm “F” trên bàn phím để tự động chạy theo lối khác.</p> <p><i>Đọc <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer?uselang=vi" target="_blank">Hướng dẫn Potlatch2</a> trên OpenStreetMap Wiki để biết những cách sửa đổi nâng cao hơn.</i></p>
-help.tag = Thẻ
-help.taggingFeatures = Gắn thẻ vào Đối tượng
-help.taggingFeaturesText = <p>Trong Potlatch 2, bạn có thể sử dụng các trình đơn, hộp văn bản, và hình tượng để gắn thẻ dễ dàng.</p> <p><b>Gắn thẻ vào một địa điểm, nốt, hay lối</b></p> <p>Chọn nốt hay điểm để sửa đổi và chọn thẻ phù hợp từ thanh bên ở bên trái. Sau khi gắn thẻ vào đối tượng, bạn có thể tùy biến một số chi tiết cơ bản, thí dụ như “Tên”, “Tốc độ Tối đa”, và “Chiều rộng”, tùy thẻ được chọn. Điền biểu mẫu này càng đầy đủ càng tốt.</p><p>Những người dùng nâng cao có thể cần đặt một số thẻ và chi tiết ít phổ biến hơn. Trong trường hợp này, bấm thẻ “Nâng cao” ở phía duới của thanh bên và sửa đổi và bổ sung các thẻ khác.</p> <p>OpenStreetMap Wiki cung cấp một <a href="http://wiki.openstreetmap.org/wiki/Vi:Map_Features?uselang=vi" target="_blank">danh sách thẻ và giá trị thẻ đầy đủ</a>. Xin vui lòng tra cứu tài liệu OSM này khi nào không chắc chắn về các thẻ để sử dụng.</p>
-help.shortcuts = Phím tắt
-help.keyboardShortcuts = Phím tắt
+help.gps=GPS
+help.createOsmMap=<p>Vẽ dữ liệu bản đồ OSM bằng cách đồ lên tuyến đường GPS của nguời khác.</p>
+help.myGps=MyGPS
+help.displayGps=<p>Hiện các tuyến đường GPS mà bạn đã tải lên OpenStreetMap.</p>
+help.undoRedo=Hoàn tác / Làm lại
+help.madeMistake=<p>Vừa vẽ nhầm lẫn? Chỉ việc bấm Hoàn tác hoặc Làm lại để chỉnh sửa các đối tượng vẽ.</p>
+help.help=Trợ giúp
+help.guideInfomation=<p>Mở hướng dẫn này để chỉ dẫn cách sửa đổi.</p>
+help.save=Lưu
+help.addingFeatures=Bổ sung Đối tượng
+help.addingFeaturesText=<p><i>Truớc tiên, bạn phải nhớ quy tắc quan trọng nhất về cách sử dụng dữ liệu mang tính thương mại: <b>không cho phép</b> sử dụng dữ liệu từ bất kỳ bản đồ có bản quyền hoặc bất kỳ dữ liệu thương mại khác! <b>Không cho phép</b> sao chép, đồ lên, hoặc tái sản xuất bằng bất cứ phương pháp nào! (Nguồn: <a href="http://wiki.openstreetmap.org/wiki/Copyright?uselang=vi" target="_blank">Quyền tác giả – OpenStreetMap Wiki</a>)</i></p>\n<p></p>\n<p>Hướng dẫn này chỉ đến các đối tượng hình tuyến như đường sá, đường bộ, đường sắt, và hình dạng tòa nhà với tên <b>lối</b>.</p>\n<p>Nếu bạn tình cờ nhận thấy rằng các hình tượng trên thanh bên bị mất, có lẽ một địa điểm hay lối đang được chọn trên bản đồ. Để bỏ chọn nó, nhấn chuột vào một vùng trống trên bản đồ; các hình tượng sẽ hiện ngay.</p>\n<p>Để <b>bổ sung một địa điểm (hoặc nốt)</b>, chỉ việc kéo một hình tượng trưng cho nó từ thanh bên và thả nó vào bản đồ. Xem “Bổ sung địa điểm” để biết thêm về việc tạo địa điểm ưa thích (POI)</p>\n<p>Để <b>vẽ một lối</b>, nhấn chuột vào bản đồ tại vị trí bắt đầu, rồi nhấn chuột vào mọi vị trí dẫn tiếp. Nhấn đúp hoặc bấm “Enter” trên bàn phím để kết thúc đường vẽ.</p>\n<p>Để <b>vẽ một hình đa giác (vùng)</b>, nhấn chuột vào bản đồ tại vị trí bắt đầu, rồi nhấn chuột vào mọi vị trí dẫn tiếp – y chang như việc vẽ lối – và nhấn chuột vào nốt đầu tiên để đóng hình đa giác.</p>\n<p>Nếu bạn vẽ nhầm lẫn, bạn có thể bấm nút Hoàn tác. Bấm “Esc” trên bàn phím để kết thúc sửa đổi điểm hay lối hiện hành.</p>
+help.editBeg=Sửa (Cơ bản)
+help.editingFeatures=Sửa đổi Đối tượng (Cơ bản)
+help.editingFeaturesText=<p>Để <b>thêm một nốt vào giữa một lối đã tồn tại</b>, chọn lối đó, rồi giữ bấm Shift và nhấn chuột vào vị trí của nốt mới.</p>\n<p>Để <b>xóa một nốt</b>, chọn nó và bấm nút “Xóa Nốt” ở phía duới bên phải hoặc bấm Delete (hoặc Backspace) trên bàn phím.</p>\n<p>Để <b>xóa cả một lối</b>, chọn lối đó và bấm nút “Xóa Lối” ở phía dưới bên phải, hoặc bấm Shift+Delete (hoặc Shift+Backspace) trên bàn phím.</p>\n<p>Để <b>di chuyển một điểm hay nốt</b>, chọn và kéo nó.</p>\n<p>Để <b>di chuyển một lối</b>, bấm và kéo cả lối đó. (Gợi ý: Khi kéo lối, tránh các nốt của lối).</p>\n<p>Để <b>kéo dài một lối</b>, nhấn chuột vào nốt tại đầu hay đuôi của lối, rồi tiếp tục vẽ lối bình thường.</p>\n<p>Để <b>vẽ một lối mới liền với đầu hay đuôi của lối đã tồn tại</b>, giữ Shift và nhấn chuột vào nốt tại đầu hay đuôi của lối đó, rồi tiếp tục vẽ lối mới bình thường.</p>
+help.editAdv=Sửa (Nâng cao)
+help.editingFeaturesAdv=Sửa đổi Đối tượng (Nâng cao)
+help.editingFeaturesAdvText=<p>Để <b>cắt đôi một lối</b>, chọn một điểm để cắt và nhấn chuột vào công cụ “Cắt đôi” (đôi kéo) hoặc bấm “X” trên bàn phím. (Gợi ý: Để cắt một lối giữa hai nốt, thêm một nốt mới trước tiên.)</p>\n<p>Để <b>nối liền hai lối</b>, vẽ các lối bình thường đến khi cần nối liền. Khi bạn chuyển con trỏ lên trên một lối khác, các nốt của lối đó sẽ được tô màu xanh. Nhấn chuột vào một trong những nốt xanh hoặc vào nơi khác nào đó trên lối để nối liền.</p>\n<p>Để <b>gỡ một lối khỏi nơi nối liền</b>, chọn nốt trên lối mà bạn muốn gỡ ra. Bấm “-” trên bàn phím để dời nốt khỏi lối.</p>\n<p>Để <b>đảo nguợc một lối</b>, bấm nút “Đảo nguợc” ở phía duới bên phải. Hướng của lối chỉ có ảnh hưởng đến các lối có thẻ “oneway” (một chiều) như các đường một chiều, cũng như các bờ biển, hòn đảo, v.v.</p>\n<p>Để <b>vẽ các lối song song</b>, chọn lối gốc và bấm nút “Vẽ Lối Song song” ở phía duới bên phải, hoặc bấm “P” trên bàn phím.</p>\n<p>Để <b>vẽ lối mới chạy theo lối khác</b>, bắt đầu vẽ lối mới, nhấn chuột vào ít nhất hai nốt trên lối khác, rồi cứ bấm “F” trên bàn phím để tự động chạy theo lối khác.</p>\n<p><i>Đọc <a href="http://wiki.openstreetmap.org/wiki/Potlatch2/Primer?uselang=vi" target="_blank">Hướng dẫn Potlatch2</a> trên OpenStreetMap Wiki để biết những cách sửa đổi nâng cao hơn.</i></p>
+help.tag=Thẻ
+help.taggingFeatures=Gắn thẻ vào Đối tượng
+help.taggingFeaturesText=<p>Trong Potlatch 2, bạn có thể sử dụng các trình đơn, hộp văn bản, và hình tượng để gắn thẻ dễ dàng.</p>\n<p><b>Gắn thẻ vào một địa điểm, nốt, hay lối</b></p>\n<p>Chọn nốt hay điểm để sửa đổi và chọn thẻ phù hợp từ thanh bên ở bên trái. Sau khi gắn thẻ vào đối tượng, bạn có thể tùy biến một số chi tiết cơ bản, thí dụ như “Tên”, “Tốc độ Tối đa”, và “Chiều rộng”, tùy thẻ được chọn. Điền biểu mẫu này càng đầy đủ càng tốt.</p>\n<p>Những người dùng nâng cao có thể cần đặt một số thẻ và chi tiết ít phổ biến hơn. Trong trường hợp này, bấm thẻ “Nâng cao” ở phía duới của thanh bên và sửa đổi và bổ sung các thẻ khác.</p>\n<p>OpenStreetMap Wiki cung cấp một <a href="http://wiki.openstreetmap.org/wiki/Vi:Map_Features?uselang=vi" target="_blank">danh sách thẻ và giá trị thẻ đầy đủ</a>. Xin vui lòng tra cứu tài liệu OSM này khi nào không chắc chắn về các thẻ để sử dụng.</p>
+help.shortcuts=Phím tắt
+help.keyboardShortcuts=Phím tắt
index 0b16027668f505db41ef92b075f2318a2b43fc2e..8f15315e62f6e400ca280bcd45ba706f9699f12b 100644 (file)
@@ -1,48 +1,44 @@
-# vi resources file
-
-main.undo = Hoàn tác
-main.redo = Làm lại
-main.background = Lớp Nền
-main.map_style = Kiểu Bản đồ
-main.gpsButton = Dữ liệu GPS
-main.gps_data = Dữ liệu GPS
-main.my_tracks = Tuyến dường của Tôi
-main.clear_gps = Xóa
-main.help = Trợ giúp
-main.options = Tùy chọn
-main.save = Lưu
-
-tag_viewer.dndprompt = Để thêm dịa điểm mới, kéo nó vào bản đồ
-
-toolbox.delete_node = Xóa Nốt (Delete)
-toolbox.delete_area = Xóa Vùng (Shift+Delete)
-toolbox.delete_way = Xóa Lối (Shift+Delete)
-toolbox.delete_item = Xóa Đối tượng
-toolbox.reverse_direction = Đảo nguợc (V)
-toolbox.split_way = Cắt đôi Lối (X)
-toolbox.merge_ways = Hợp nhất các Lối
-toolbox.straighten_way = Làm Thẳng
-toolbox.make_circular = Làm Tròn
-toolbox.make_right_angled = Làm Vuông góc (Q)
-toolbox.create_parrallel_way = Vẽ Lối Song song (P)
+# Messages for Vietnamese (Tiếng Việt)
+# Exported from translatewiki.net
+# Author: Minh Nguyen
 
+main.undo=Hoàn tác
+main.redo=Làm lại
+main.background=Lớp Nền
+main.map_style=Kiểu Bản đồ
+main.gpsButton=Dữ liệu GPS
+main.gps_data=Dữ liệu GPS
+main.my_tracks=Tuyến dường của Tôi
+main.clear_gps=Xóa
+main.help=Trợ giúp
+main.options=Tùy chọn
+main.save=Lưu
+tag_viewer.dndprompt=Để thêm dịa điểm mới, kéo nó vào bản đồ
+toolbox.delete_node=Xóa Nốt (Delete)
+toolbox.delete_area=Xóa Vùng (Shift+Delete)
+toolbox.delete_way=Xóa Lối (Shift+Delete)
+toolbox.delete_item=Xóa Đối tượng
+toolbox.reverse_direction=Đảo nguợc (V)
+toolbox.split_way=Cắt đôi Lối (X)
+toolbox.merge_ways=Hợp nhất các Lối
+toolbox.straighten_way=Làm Thẳng
+toolbox.make_circular=Làm Tròn
+toolbox.make_right_angled=Làm Vuông góc (Q)
+toolbox.create_parrallel_way=Vẽ Lối Song song (P)
 oauth.gotLinkBox=Nhấn chuột vào liên kết ở duới để mở một trang Web xin bạn cho phép ứng dụng này truy cập vào tài khoản của bạn.
 oauth.authorized=Sau khi bạn cho phép ứng dụng này, bấm nút “Thử Truy cập” ở duới.
 oauth.deniedLabel=<b>Ứng dụng không có phép truy cập tài khoản của bạn. Xin vui lòng kiểm tra lại và thử lần nữa.</b>
 oauth.rememberMe=Nhớ thông tin đăng nhập của tôi
-oauth.permFail=<p>Máy chủ không thể xác nhận thông tin đăng nhập của ứng dụng này.</p><p> <b>Không thể truy cập tài khoản của OAuth.</b> </p><p> Xin vui lòng liên lạc với chủ ứng dụng để biết thêm chi tiết.</p>
+oauth.permFail=<p>Máy chủ không thể xác nhận thông tin đăng nhập của ứng dụng này.</p>\n<p> <b>Không thể truy cập tài khoản của OAuth.</b> </p>\n<p> Xin vui lòng liên lạc với chủ ứng dụng để biết thêm chi tiết.</p>
 oauth.tempFail=Xuất hiện trục trặc khi kết nối với máy chủ để kiểm tra thông tin đăng nhập. Đây có thể là một vấn đề tạm thời; xin thử lại sau.
 oauth.tryAccessButton=Thử Truy cập
 oauth.cancelButton=Hủy bỏ
-
 save.editDescription=Xin vui lòng miêu tả các sửa đổi của bạn, để cho những nguời dùng khác hiểu biết những thay đổi trên bản đồ.
-
 styleSelector.editButton=Sửa đổi…
 backgroundSelector.dim=Làm mờ
 backgroundSelector.sharpen=Làm rõ
 backgroundSelector.editButton=Sửa đổi…
-backgroundSelector.vectorButton=Tập tin Vectơ...
-
+backgroundSelector.vectorButton=Tập tin Vectơ…
 options.tbcheck=Hiện hộp công cụ
 options.cursorcheck=Hiện con trỏ đặc biệt
 options.ok=OK
diff --git a/l10n/locale/zh_CN/help_dialog.properties b/l10n/locale/zh_CN/help_dialog.properties
new file mode 100644 (file)
index 0000000..7fb76a4
--- /dev/null
@@ -0,0 +1,21 @@
+# Messages for Simplified Chinese (‪中文(简体)‬)
+# Exported from translatewiki.net
+# Author: Mmyangfl
+
+help.gettingStarted=入门
+help.welcome=欢迎
+help.activeMembers=<p><b>+ 活跃的 OpenStreetMap 成员</b>,在编辑之前请先登录到 OSM。</p>
+help.controls=控件
+help.interfaceControls=界面控件
+help.gps=GPS
+help.createOsmMap=<p>使用他人的 GPS 轨迹作为背景,以创建 OSM 地图数据</p>
+help.myGps=我的 GPS
+help.undoRedo=撤消/重做
+help.madeMistake=<p>错了吗?只需单击撤消和/或重做,就可更正您的编辑。</p>
+help.help=帮助
+help.save=保存
+help.editBeg=编辑(基础)
+help.editAdv=编辑(高级)
+help.tag=标签
+help.shortcuts=快捷键
+help.keyboardShortcuts=键盘快捷键
diff --git a/l10n/locale/zh_CN/p2_main.properties b/l10n/locale/zh_CN/p2_main.properties
new file mode 100644 (file)
index 0000000..5feaf76
--- /dev/null
@@ -0,0 +1,44 @@
+# Messages for Simplified Chinese (‪中文(简体)‬)
+# Exported from translatewiki.net
+# Author: Mmyangfl
+
+main.undo=撤销
+main.redo=重做
+main.background=背景
+main.map_style=地图样式
+main.gpsButton=GPS 数据
+main.gps_data=GPS 数据
+main.my_tracks=我的轨迹
+main.clear_gps=清除
+main.help=帮助
+main.options=选项
+main.save=保存
+tag_viewer.dndprompt=拖动它们到地图上以添加新的点
+toolbox.delete_node=删除节点(Delete)
+toolbox.delete_area=删除区域(Shift+Delete)
+toolbox.delete_way=删除路径(Shift+Delete)
+toolbox.delete_item=删除项目
+toolbox.reverse_direction=逆转方向(V)
+toolbox.split_way=分拆路径(X)
+toolbox.merge_ways=合并路径
+toolbox.straighten_way=拉直路径
+toolbox.make_circular=制作圆形
+toolbox.make_right_angled=制作直角(Q)
+toolbox.create_parrallel_way=创建平行路径(P)
+oauth.gotLinkBox=点击下面的链接打开一个网页,在那里你会被要求授权这个应用程序可以访问。
+oauth.authorized=一旦你已授权访问,点击下面的“尝试访问”按钮
+oauth.deniedLabel=<b>访问被拒绝,请检查,然后重试</b>
+oauth.rememberMe=记住我
+oauth.permFail=<p>服务器拒绝此应用程序的凭据 -- 无法获得授权链接。             </p>\n<p>       <b>OAuth 访问将不可用。</b>              </p>\n<p>       请联系应用程序提供商,以找出发生了什么事情。</p>
+oauth.tempFail=联系服务器获得授权时有一个问题。    这可能是一个暂时的错误,请稍后再试。
+oauth.tryAccessButton=尝试访问
+oauth.cancelButton=取消
+save.editDescription=请输入您的修改的说明。这将被用来告诉其他制图者您在做什么。
+styleSelector.editButton=编辑...
+backgroundSelector.dim=亮度
+backgroundSelector.sharpen=锐化
+backgroundSelector.editButton=编辑...
+backgroundSelector.vectorButton=矢量文件...
+options.tbcheck=显示工具栏
+options.cursorcheck=使用自定义光标
+options.ok=确定
index 2a5fa1cebd7d369a6a2f03c44f8b14fa6c9e5c64..3b8d9322b4187c524e4c73698061d8ca1ce4011f 100644 (file)
@@ -32,6 +32,9 @@
                                   { label : rMngr.getString('p2_main','main.my_tracks') },
                                   { label : rMngr.getString('p2_main','main.clear_gps') }
                                 ];
+          // ** FIXME: If the locale is en_US, then the above rMngr.getString calls return null.
+          //           Conversely, with any locale, the actual Label of gpsButton is never
+          //           updated and keeps showing 'GPS'.
 
           // Iterate all view instances and inject new dataProvider
           for each (var inst:potlatch2 in sri.targetInstances) {
diff --git a/net/systemeD/controls/Spinner.as b/net/systemeD/controls/Spinner.as
new file mode 100644 (file)
index 0000000..038aefa
--- /dev/null
@@ -0,0 +1,68 @@
+package net.systemeD.controls {
+       import flash.events.TimerEvent;
+       import flash.events.Event;
+       import flash.display.Sprite;
+       import flash.display.Shape;
+       import flash.utils.Timer;
+       import flash.filters.GlowFilter;
+       
+       // Adapted from http://www.stevensacks.net/2008/10/01/as3-apple-style-preloader/
+
+       public class Spinner extends Sprite {
+               private var timer:Timer;
+               private var slices:int;
+               private var radius:int;
+
+               public function Spinner(slices:int = 12, radius:int = 6) {
+                       super();
+                       this.slices = slices;
+                       this.radius = radius;
+                       draw();
+
+                       var filter:GlowFilter=new GlowFilter(0xFFFFFF,1,4,4,6);
+                       this.filters = [filter];
+               }
+
+               public function start():void {
+                       visible=true;
+                       if (timer) return;
+                       timer = new Timer(65);
+                       timer.addEventListener(TimerEvent.TIMER, onTimer, false, 0, true);
+                       timer.start();
+               }
+
+               public function stop():void {
+                       visible=false;
+                       if (!timer) return;
+                       timer.reset();
+                       timer.removeEventListener(TimerEvent.TIMER, onTimer);
+                       timer = null;
+               }
+
+               private function onTimer(event:TimerEvent):void {
+                       rotation = (rotation + (360 / slices)) % 360;
+               }
+               
+               private function draw():void {
+                       var i:int = slices;
+                       var degrees:int = 360 / slices;
+                       while (i--) {
+                               var slice:Shape = getSlice();
+                               slice.alpha = Math.max(0.2, 1 - (0.1 * i));
+                               var radianAngle:Number = (degrees * i) * Math.PI / 180;
+                               slice.rotation = -degrees * i;
+                               slice.x = Math.sin(radianAngle) * radius;
+                               slice.y = Math.cos(radianAngle) * radius;
+                               addChild(slice);
+                       }
+               }
+
+               private function getSlice():Shape {
+                       var slice:Shape = new Shape();
+                       slice.graphics.beginFill(0x666666);
+                       slice.graphics.drawRoundRect(-1, 0, 2, 6, 12, 12);
+                       slice.graphics.endFill();
+                       return slice;
+               }
+       }
+}
index 8aa038bb2a349fbaded354ad1709ef1ca5811d1a..7bbf018dda90677f8eb4c7796453f17d5aee83d9 100644 (file)
@@ -1,24 +1,22 @@
 package net.systemeD.halcyon {
 
-       /*
-               === DebugURLRequest ===
-
-               If nocache has been set to 'true' via FlashVars, this will make the URLRequest using 
-               POST rather than GET - thereby preventing FP from caching it
-               (see http://www.ultrashock.com/forums/actionscript/force-reload-files-only-using-as3-123408.html).
-               
-               Sadly we can't just subclass URLRequest, which is defined as final. So you need to create your 
-               new DebugURLRequest, then refer to its .request property.
-               
-               We use an evil Global because we don't know where loaderInfo.parameters will be.
-
-       */
-
        import flash.net.URLRequest;
        import flash.net.URLRequestMethod;
        import flash.system.Capabilities;
        import net.systemeD.halcyon.Globals;
 
+    /**
+    * If nocache has been set to 'true' via FlashVars, this will make the URLRequest using
+    * POST rather than GET - thereby preventing FP from caching it.
+    *
+    * <p>Sadly we can't just subclass URLRequest, which is defined as final. So you need to create your
+    * new DebugURLRequest, then refer to its .request property.</p>
+    *
+    * <p>We use an evil Global because we don't know where loaderInfo.parameters will be.</p>
+    *
+    * @see http://www.ultrashock.com/forums/actionscript/force-reload-files-only-using-as3-123408.html
+    */
+
        public class DebugURLRequest {
 
                public var request:URLRequest;
index 81a2419680ea2a22e67de2b584b030dd67d9e79c..294f9d946d966c159bd1a553bed4fb1f92511444 100644 (file)
@@ -3,14 +3,19 @@ package net.systemeD.halcyon {
        import flash.events.*;
     import flash.external.ExternalInterface;
 
-       /* JSController provides an interface for Halcyon to call the enclosing page, via JavaScript
-         */
+       /**
+       * JSController provides an interface for Halcyon to call the enclosing page, via JavaScript.
+       */
 
     public class JSController implements MapController {
 
         private var map:Map;
-               private var jsresponder:String;                                 // JavaScript function called when user clicks
+               private var jsresponder:String;
 
+        /**
+        * @param map
+        * @param jsresponder JavaScript function called when user clicks
+        */
         public function JSController(map:Map, jsresponder:String) {
             this.map = map;
             this.jsresponder = jsresponder;
index 3d3e9497f5287ac4f474483e2903cd362ebe78b4..833526ea19902a6f106cfb0fe6dcfb1f85cccca9 100644 (file)
@@ -430,6 +430,7 @@ package net.systemeD.halcyon {
 
                private function everyFrame(event:Event):void {
                        if (tileset) { tileset.serviceQueue(); }
+                       if (stage.focus && !stage.contains(stage.focus)) { stage.focus=stage; }
                }
 
                // ------------------------------------------------------------------------------------------
@@ -448,21 +449,5 @@ package net.systemeD.halcyon {
                        }
                }
 
-               // ------------------------------------------------------------------------------------------
-               // Debugging
-               
-               public function clearDebug():void {
-                       if (!Globals.vars.hasOwnProperty('debug')) return;
-                       Globals.vars.debug.text='';
-               }
-                       
-               public function addDebug(text:String):void {
-                       trace(text);
-                       if (!Globals.vars.hasOwnProperty('debug')) return;
-                       if (!Globals.vars.debug.visible) return;
-                       Globals.vars.debug.appendText(text+"\n");
-                       Globals.vars.debug.scrollV=Globals.vars.debug.maxScrollV;
-               }
-
        }
 }
index 3dfeeba14dc60db333110927f5334404a23b8196..907d6cf5a80c26ed1885872a57fba7a4c43f5613 100644 (file)
@@ -17,7 +17,7 @@ package net.systemeD.halcyon {
                public static const NUDGE_BACKGROUND:String = "nudge_background";
         /** Map has been created and is ready, although data is not yet downloaded. */
         public static const INITIALISED:String = "initialized";
-               /** Backrgound imagery has changed to one with attribution that must not be obscured. */
+               /** Background imagery has changed to one with attribution that must not be obscured. */
                public static const BUMP:String = "bump";
                public static const MOUSE_MOVE:String="mouse_move";
                public static const ERROR:String = "error";                             // ** FIXME - this should be a dedicated ErrorEvent class
index 5d2e1eacdcf11ea4222a5bd9ab90ed5a53613156..84d6576f9c8c9ec410ab8dbeff0dceac800529b5 100644 (file)
@@ -50,6 +50,11 @@ package net.systemeD.halcyon {
                public function init(params:Object, update:Boolean=false):void {
                        baseurl=params.url;
                        scheme =params.scheme ? params.scheme : '900913';
+                       requests=[]; waiting=loadcount=0;
+                       for (var tilename:String in tiles) {
+                               if (tiles[tilename] is Loader) tiles[tilename].unload();
+                               tiles[tilename]=null;
+                       }
                        tiles={};
                        offset_lon=offset_lat=x=y=0;
                        while (numChildren) { removeChildAt(0); }
@@ -133,8 +138,8 @@ package net.systemeD.halcyon {
                                        waiting++;
                                        var loader:Loader = new Loader();
                                        tiles[map.scale+','+tx+','+ty]=loader;
-                                       loader.contentLoaderInfo.addEventListener(Event.INIT, doImgInit);
-                       loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, missingTileError);
+                                       loader.contentLoaderInfo.addEventListener(Event.INIT, doImgInit, false, 0, true);
+                                       loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, missingTileError, false, 0, true);
                                        loader.load(new URLRequest(tileURL(tx,ty,tz)), 
                                                    new LoaderContext(true));
                                        l=this.getChildAt(map.scale-map.MINSCALE);
index 6b30d91cf73bd1ab5cccfc38bb45397eae3dfbeb..990f43bbe946681b92ee50e37e46bcd95101cd0a 100644 (file)
@@ -615,7 +615,7 @@ package net.systemeD.halcyon {
                /* Interaction */
         // TODO: can this be sped up? Hit testing for long ways (that go off the screen) seems to be very slow. */
                public function hitTest(x:Number, y:Number):Way {
-                       if (hitzone.hitTestPoint(x,y,true)) { return entity as Way; }
+                       if (hitzone && hitzone.hitTestPoint(x,y,true)) { return entity as Way; }
                        return null;
                }
        }
index e3a1c58a756eff4dfb669d6d38b57e2528fb7b75..5c67ba55f0601db1f338595dc4f3577104180ed3 100644 (file)
@@ -9,22 +9,25 @@ package net.systemeD.halcyon.connection {
     import net.systemeD.halcyon.connection.actions.*;
     import net.systemeD.halcyon.connection.bboxes.*;
     import net.systemeD.halcyon.Globals;
+    import net.systemeD.halcyon.styleparser.CSSTransform;
 
        public class Connection extends EventDispatcher {
 
                public var name:String;
                public var statusFetcher:StatusFetcher;
                public var inlineStatus:Boolean = false;
+               public var cssTransform:CSSTransform;
         protected var apiBaseURL:String;
         protected var policyURL:String;
         protected var params:Object;
 
-               public function Connection(cname:String,api:String,policy:String,initparams:Object=null) {
+               public function Connection(cname:String,api:String,policy:String,initparams:Object=null,transform:CSSTransform=null) {
                        initparams = (initparams!=null ? initparams:{});
                        name=cname;
                        apiBaseURL=api;
                        policyURL=policy;
                        params=initparams;
+                       cssTransform=transform;
                }
 
         public function getParam(name:String, defaultValue:String):String {
index 16306cf813832fffd6943cba7b56aea5d7c6fbbd..e05462e56efd179bad74c4be4313c71738c703e0 100644 (file)
@@ -31,6 +31,7 @@ package net.systemeD.halcyon.connection {
             this._version = version;
             this._uid = uid;
             this._timestamp = timestamp;
+            if (connection.cssTransform) tags=connection.cssTransform.run(this,tags);
             this.tags = tags;
                        this._loaded = loaded;
             modified = id < 0;
index ad7f6b85df90570867ac6788ba05e49b4fce1643..0511662c555f48ddd6067696b3743954bdc405bb 100644 (file)
@@ -16,6 +16,7 @@ package net.systemeD.halcyon.connection {
                private var addedToRelationTimer:Timer;
                private var removedFromRelationTimer:Timer;
                private var delayedEvents:Array = [];
+               private static const DIFFERENT:String = "<different>";
 
         public function EntityCollection(entities:Array) {
                        var conn:Connection=entities[0].connection;
@@ -35,6 +36,14 @@ package net.systemeD.halcyon.connection {
                        }
         }
                
+               public function releaseListeners():void {
+                       for each(var entity:Entity in _entities) {
+                               entity.removeEventListener(Connection.TAG_CHANGED, onTagChanged);
+                               entity.removeEventListener(Connection.ADDED_TO_RELATION, onAddedToRelation);
+                               entity.removeEventListener(Connection.REMOVED_FROM_RELATION, onRemovedFromRelation);
+                       }
+               }
+               
                public override function get entities():Array {
                        return _entities;
                }
@@ -66,20 +75,19 @@ package net.systemeD.halcyon.connection {
                
                private function getMergedTags():Object {
                        //Builds an object with tags of all entities in this collection. If the value of a tag differs or is not set in all entities, value is marked
-                       var differentMarker:String = "<different>";
                        var mergedTags:Object = _entities[0].getTagsCopy();
                        for each(var entity:Entity in _entities) {
                                var entityTags:Object = entity.getTagsHash();
                                for(var key:String in entityTags) {
                                        var value:String = entityTags[key];
                                        if(mergedTags[key] == null || mergedTags[key] != value) {
-                                               mergedTags[key] = differentMarker;
+                                               mergedTags[key] = DIFFERENT;
                                        }
                                }
                                for(var mergedKey:String in mergedTags) {
                                        var mergedValue:String = mergedTags[mergedKey];
                                        if(entityTags[mergedKey] == null || entityTags[mergedKey] != mergedValue) {
-                                               mergedTags[mergedKey] = differentMarker;
+                                               mergedTags[mergedKey] = DIFFERENT;
                                        }
                                }
                        }
@@ -115,6 +123,7 @@ package net.systemeD.halcyon.connection {
                }
                
                public override function setTag(key:String, value:String, performAction:Function):void {
+            if (value==DIFFERENT) return;
                        var oldValue:String = getMergedTags()[key];     
                        var undoAction:CompositeUndoableAction = new CompositeUndoableAction("set_tag_entity_collection");
                        for each (var entity:Entity in _entities) {
@@ -126,7 +135,9 @@ package net.systemeD.halcyon.connection {
         public override function renameTag(oldKey:String, newKey:String, performAction:Function):void {
                        var undoAction:CompositeUndoableAction = new CompositeUndoableAction("rename_tag_entity_collection");
                        for each (var entity:Entity in _entities) {
-                               undoAction.push(new SetTagKeyAction(entity, oldKey, newKey));
+                               if (entity.getTag(oldKey)) {
+                                       undoAction.push(new SetTagKeyAction(entity, oldKey, newKey));
+                               }
                        }
             performAction(undoAction);
         }
@@ -171,7 +182,7 @@ package net.systemeD.halcyon.connection {
                                                if (!relations[rel.id]) {
                                                        relations[rel.id]= { role: role, relation: rel, distinctCount: 0};
                                                } else if (relations[rel.id].role!=role) {
-                                                       relations[rel.id].role="<different>";
+                                                       relations[rel.id].role=DIFFERENT;
                                                }
                                        }
                                        relations[rel.id].distinctCount++;
index a02dbe6bf1a677c54c8648be29ef884b1d910297..900877e9ee582762cce135868a89157a4fa0daa6 100644 (file)
@@ -100,11 +100,19 @@ package net.systemeD.halcyon.connection {
         }
 
                public function removeMember(entity:Entity, performAction:Function):void {
-                       performAction(new RemoveEntityFromRelationAction(this, entity, members));
+                       if (length>1) {
+                               performAction(new RemoveEntityFromRelationAction(this, entity, members));
+                       } else {
+                               performAction(new DeleteRelationAction(this, setDeletedState, members));
+                       }
                }
 
         public function removeMemberByIndex(index:uint, performAction:Function):void {
-            performAction(new RemoveMemberByIndexAction(this, members, index));
+                       if (length>1) {
+                               performAction(new RemoveMemberByIndexAction(this, members, index));
+                       } else {
+                               performAction(new DeleteRelationAction(this, setDeletedState, members));
+                       }
         }
 
                public override function remove(performAction:Function):void {
@@ -143,6 +151,11 @@ package net.systemeD.halcyon.connection {
                        return desc;
                }
                
+               public function getRelationType():String {
+                       var relTags:Object = getTagsHash();
+                       return relTags["type"] ? relTags["type"] : getType();
+               }
+               
                private function getSignificantName(entity:Entity):String {
                        if (!entity.loaded || (entity is Relation)) return '';
 
index 2f9289b5ab3c7b2d999572d112d5c82cdbfd6bed..26911edec7d9de6cc63bec22f7c8425c0cc51439 100644 (file)
@@ -19,7 +19,7 @@ package net.systemeD.halcyon.connection {
             var oldKey:String = _key;
             var realVal:String = entity.getTag(oldKey);
             _key = key;
-            if ( oldKey != null && realVal != null && realVal != "" )
+            if ( oldKey != null && realVal != null && realVal != "" && oldKey!=key )
                 entity.renameTag(oldKey, key, MainUndoStack.getGlobalStack().addAction);
         }
 
index 9cd917eb0076a93342e46866101fb77eb5764274..4e661270622c0fe05e110bc576e3f28eabbe5c6f 100644 (file)
@@ -22,7 +22,7 @@ package net.systemeD.halcyon.connection {
         public function get newValue():String { return _newValue; }
 
         public override function toString():String {
-            return super.toString() + "::'"+_oldKey+"' '"+_key +"' '"+_oldValue+"' '"+_newValue+"'";
+            return super.toString() + "::'"+_oldKey+"' '"+_key +"' '"+_oldValue+"' '"+_newValue+"' ["+item+"]";
         }
     }
 
index 8f1172bf4a35c09265c36ebd295ba441f6a36966..fc046c251964e5f29d618aac1b056a6e838d21d6 100644 (file)
@@ -74,18 +74,23 @@ package net.systemeD.halcyon.connection {
 
                private function sendLoadRequest(request:URLRequest):void {
                        var mapLoader:URLLoader = new URLLoader();
+            var errorHandler:Function = function(event:IOErrorEvent):void {
+                errorOnMapLoad(event, request);
+            }
                        mapLoader.addEventListener(Event.COMPLETE, loadedMap);
-                       mapLoader.addEventListener(IOErrorEvent.IO_ERROR, errorOnMapLoad);
+                       mapLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
                        mapLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, mapLoadStatus);
             request.requestHeaders.push(new URLRequestHeader("X-Error-Format", "XML"));
                        mapLoader.load(request);
                        dispatchEvent(new Event(LOAD_STARTED));
                }
 
-        private function errorOnMapLoad(event:Event):void {
-                       dispatchEvent(new MapEvent(MapEvent.ERROR, { message: "Couldn't load the map" } ));
-                       dispatchEvent(new Event(LOAD_COMPLETED));
+        private function errorOnMapLoad(event:Event, request:URLRequest):void {
+            var url:String = request.url + '?' + URLVariables(request.data).toString(); // for get reqeusts, at least
+            dispatchEvent(new MapEvent(MapEvent.ERROR, { message: "There was a problem loading the map data.\nPlease check your internet connection, or try zooming in.\n\n" + url } ));
+            dispatchEvent(new Event(LOAD_COMPLETED));
         }
+
         private function mapLoadStatus(event:HTTPStatusEvent):void {
         }
 
index f2fd1bc651d3506849721c3b6843afd47e0579ab..59d91a301f4a75d2f966e54c51ea4d078784e75b 100644 (file)
@@ -30,6 +30,8 @@ package net.systemeD.halcyon.connection.actions {
                                way.dispatchEvent(new WayNodeEvent(Connection.WAY_NODE_REMOVED, node, way, 0));
                 if (!node.hasParents && !node.hasInterestingTags()) { //need to trigger redraw of new POIs?
                   node.remove(effects.push);
+                } else {
+                  if (!node.hasParentWays) node.connection.registerPOI(node);
                 }
                        }
                        effects.doAction();
@@ -61,6 +63,7 @@ package net.systemeD.halcyon.connection.actions {
             for each(var node:Node in oldNodeList) {
                 nodeList.push(node);
                node.addParent(way);
+               node.connection.unregisterPOI(node);
                 way.dispatchEvent(new WayNodeEvent(Connection.WAY_NODE_ADDED, node, way, 0));
             }
                        way.resume();
diff --git a/net/systemeD/halcyon/styleparser/CSSTransform.as b/net/systemeD/halcyon/styleparser/CSSTransform.as
new file mode 100644 (file)
index 0000000..27a7747
--- /dev/null
@@ -0,0 +1,35 @@
+package net.systemeD.halcyon.styleparser {
+
+       import flash.net.*;
+    import flash.events.*;
+       import net.systemeD.halcyon.connection.Entity;
+
+    public class CSSTransform {
+
+               private static const GLOBAL_INSTANCE:CSSTransform = new CSSTransform();
+               public static function getInstance():CSSTransform { return GLOBAL_INSTANCE; }
+
+               [Bindable] public var url:String='';
+               private var ruleset:RuleSet;
+               
+               public function loadFromUrl(filename:String):void {
+                       url=filename;
+                       ruleset=new RuleSet(0,30,cssReady);
+                       ruleset.loadFromCSS(url);
+               }
+
+               public function clear():void {
+                       ruleset=null;
+                       url='';
+               }
+
+               private function cssReady():void {
+               }
+               
+               public function run(entity:Entity,tags:Object):Object {
+                       if (ruleset) return ruleset.runInstructions(entity,tags);
+                       return tags;
+               }
+
+       }
+}
index 1dec03ed089c09b4e9f93613124b1e891ddfb446..82d5c79a79a8a2c6c86ce431a9507a5b5e5382a0 100644 (file)
@@ -2,15 +2,28 @@ package net.systemeD.halcyon.styleparser {
 
        public class InstructionStyle extends Style {
 
-               public var set_tags:Object;
+               public var set_tags:Object={};
                public var breaker:Boolean=false;
+               public var set_tags_order:Array=[];
 
                public function addSetTag(k:String,v:*):void {
+                       if (v is Eval) { evals[k]=v; }
+                       else if (v is TagValue) { tagvalues[k]=v; }
+                       
                        edited=true;
-                       if (!set_tags) { set_tags=new Object(); }
+                       set_tags_order.push(k);
                        set_tags[k]=v;
                }
 
+               public function assignSetTags(tags:Object):void {
+                       for (var i:uint=0; i<set_tags_order.length; i++) {
+                               var k:String=set_tags_order[i];
+                               var v:*=set_tags[k];
+                               if (v is TagValue) { v=v.getValue(tags); }
+                               if (v=='') { delete tags[k]; }
+                               else { tags[k]=v; }
+                       }
+               }
        }
 
 }
index 99183d5c61a46f2ac1956a853df5816739da0342..d0842145ce594d55702a28b1c891750a8de6e025 100644 (file)
@@ -9,13 +9,15 @@ package net.systemeD.halcyon.styleparser {
     import net.systemeD.halcyon.FileBank;
 
     import net.systemeD.halcyon.connection.*;
-       
-       /** A complete stylesheet, as loaded from a MapCSS file. It contains all selectors, declarations, 
-               and embedded images.                                                                                                                                                            </p><p>
-               
-               The RuleSet class has two principal methods: getStyles, which calculates the styles that apply
-               to an entity (returned as a StyleList); and parse, which parses a MapCSS stylesheet into
-               a complete RuleSet. */
+
+    /**
+    * A complete stylesheet, as loaded from a MapCSS file. It contains all selectors, declarations,
+    * and embedded images.
+    *
+    * <p>The RuleSet class has two principal methods: getStyles, which calculates the styles that apply
+    * to an entity (returned as a StyleList); and parse, which parses a MapCSS stylesheet into
+    * a complete RuleSet.</p>
+    */
 
        public class RuleSet {
 
@@ -59,12 +61,15 @@ package net.systemeD.halcyon.styleparser {
                private static const CONDITION_LE:RegExp        =/^ \s* ([:\w]+) \s* <= \s* (.+) \s* $/sx;
                private static const CONDITION_REGEX:RegExp     =/^ \s* ([:\w]+) \s* =~\/ \s* (.+) \/ \s* $/sx;
 
-               private static const ASSIGNMENT_EVAL:RegExp     =/^ \s* (\S+) \s* \:      \s* eval \s* \( \s* ' (.+?) ' \s* \) \s* $/isx;
-               private static const ASSIGNMENT:RegExp          =/^ \s* (\S+) \s* \:      \s*          (.+?) \s*                   $/sx;
-               private static const SET_TAG_EVAL:RegExp        =/^ \s* set \s+(\S+)\s* = \s* eval \s* \( \s* ' (.+?) ' \s* \) \s* $/isx;
-               private static const SET_TAG:RegExp                     =/^ \s* set \s+(\S+)\s* = \s*          (.+?) \s*                   $/isx;
-               private static const SET_TAG_TRUE:RegExp        =/^ \s* set \s+(\S+)\s* $/isx;
-               private static const EXIT:RegExp                        =/^ \s* exit \s* $/isx;
+               private static const ASSIGNMENT_EVAL:RegExp             =/^ \s* (\S+) \s* \:      \s* eval \s* \( \s* ' (.+?) ' \s* \) \s* $/isx;
+               private static const ASSIGNMENT_TAGVALUE:RegExp =/^ \s* (\S+) \s* \:      \s* tag  \s* \( \s* ' (.+?) ' \s* \) \s* $/isx;
+               private static const ASSIGNMENT:RegExp                  =/^ \s* (\S+) \s* \:      \s*          (.+?) \s*                   $/sx;
+               private static const SET_TAG_EVAL:RegExp                =/^ \s* set \s+(\S+)\s* = \s* eval \s* \( \s* ' (.+?) ' \s* \) \s* $/isx;
+               private static const SET_TAG_TAGVALUE:RegExp    =/^ \s* set \s+(\S+)\s* = \s* tag  \s* \( \s* ' (.+?) ' \s* \) \s* $/isx;
+               private static const SET_TAG:RegExp                             =/^ \s* set \s+(\S+)\s* = \s*          (.+?) \s*                   $/isx;
+               private static const SET_TAG_TRUE:RegExp                =/^ \s* set \s+(\S+)\s* $/isx;
+               private static const DELETE_TAG:RegExp                  =/^ \s* delete \s+(\S+)\s* $/isx;
+               private static const EXIT:RegExp                                =/^ \s* exit \s* $/isx;
 
                private static const oZOOM:uint=2;
                private static const oGROUP:uint=3;
@@ -250,6 +255,14 @@ package net.systemeD.halcyon.styleparser {
                        return sl;
                }
 
+               /** Run instruction styles only, for CSSTransform. */
+               public function runInstructions(obj:Entity, tags:Object):Object {
+                       for each (var sc:StyleChooser in choosers) {
+                               tags=sc.runInstructions(obj,tags);
+                       }
+                       return tags;
+               }
+
                // ---------------------------------------------------------------------------------------------------------
                // Loading stylesheet
 
@@ -430,11 +443,14 @@ package net.systemeD.halcyon.styleparser {
                        var xs:InstructionStyle=new InstructionStyle(); 
 
                        for each (a in s.split(';')) {
-                               if ((o=ASSIGNMENT_EVAL.exec(a)))   { t[o[1].replace(DASH,'_')]=saveEval(o[2]); }
-                               else if ((o=ASSIGNMENT.exec(a)))   { t[o[1].replace(DASH,'_')]=o[2]; }
-                               else if ((o=SET_TAG_EVAL.exec(a))) { xs.addSetTag(o[1],saveEval(o[2])); }
-                               else if ((o=SET_TAG.exec(a)))      { xs.addSetTag(o[1],o[2]); }
-                               else if ((o=SET_TAG_TRUE.exec(a))) { xs.addSetTag(o[1],true); }
+                               if      ((o=ASSIGNMENT_EVAL.exec(a)))           { t[o[1].replace(DASH,'_')]=saveEval(o[2]); }
+                               else if ((o=ASSIGNMENT_TAGVALUE.exec(a)))       { t[o[1].replace(DASH,'_')]=new TagValue(o[2]); }
+                               else if ((o=ASSIGNMENT.exec(a)))                        { t[o[1].replace(DASH,'_')]=o[2]; }
+                               else if ((o=SET_TAG_EVAL.exec(a)))                      { xs.addSetTag(o[1],saveEval(o[2])); }
+                               else if ((o=SET_TAG_TAGVALUE.exec(a)))          { xs.addSetTag(o[1],new TagValue(o[2])); }
+                               else if ((o=SET_TAG.exec(a)))                           { xs.addSetTag(o[1],o[2]); }
+                               else if ((o=SET_TAG_TRUE.exec(a)))                      { xs.addSetTag(o[1],true); }
+                               else if ((o=DELETE_TAG.exec(a)))                        { xs.addSetTag(o[1],''); }
                                else if ((o=EXIT.exec(a))) { xs.setPropertyFromString('breaker',true); }
                        }
 
@@ -517,7 +533,7 @@ package net.systemeD.halcyon.styleparser {
 
         public static function parseCSSColor(colorStr:String):uint {
             colorStr = colorStr.toLowerCase();
-            if (CSSCOLORS[colorStr]) {
+            if (CSSCOLORS[colorStr] != undefined) {
                 return CSSCOLORS[colorStr];
             } else {
                 var match:Object = HEX.exec(colorStr);
index 1ec99967c869c7552aabba1d2cb2b221cbc3d60d..ca180df4e9780fc5993c68a15c5c71e362e98f60 100644 (file)
@@ -4,7 +4,7 @@ package net.systemeD.halcyon.styleparser {
        
        public class ShapeStyle extends Style {
 
-               public var width:Number=0;
+               public var width:Number;
                public var color:Number;
                public var opacity:Number;
                public var dashes:Array=[];
@@ -32,7 +32,7 @@ package net.systemeD.halcyon.styleparser {
                }
                
                override public function get drawn():Boolean {
-                       return (fill_image || !isNaN(fill_color) || width || casing_width);
+                       return (fill_image || !isNaN(fill_color) || !isNaN(width) || casing_width);
                }
 
                public function applyStrokeStyle(g:Graphics):void {
index 7ee5b0033782727ddf8676a080b427d92fcbe48b..f84eab711b330a534d424f8ebae069317f5e2cc1 100644 (file)
@@ -34,6 +34,9 @@ package net.systemeD.halcyon.styleparser {
                /** Compiled SWFs for each eval. We keep it here, not in the property itself, so that we can retain typing for each property. */
                public var evals:Object={};
                
+               /** TagValue assignments, e.g. { width: tag('lanes'); } */
+               public var tagvalues:Object={};
+               
                /** Make an exact copy of an object.
                        Used when merging cascading styles. (FIXME: this needs some benchmarking - it may be quicker to simply iterate over .properties, 
                        copying each one. */
@@ -53,7 +56,7 @@ package net.systemeD.halcyon.styleparser {
                public function mergeWith(additional:Style):void {
                        for each (var prop:String in properties) {
                                // Note extra check for empty arrays, which we use to mean 'undefined' (see setPropertyFromString below)
-                               if (additional[prop] && !((additional[prop] is Array) && additional[prop].length==0)) {
+                               if (additional[prop]!=undefined && !((additional[prop] is Number) && isNaN(additional[prop])) && !((additional[prop] is Array) && additional[prop].length==0)) {
                                        this[prop]=additional[prop];
                                }
                        }
@@ -70,7 +73,7 @@ package net.systemeD.halcyon.styleparser {
                        return false;
                }
                
-               /** Are there any eval functions defined? */
+               /** Are there any eval functions defined? (This isn't used.) */
                public function hasEvals():Boolean {
                        for (var k:String in evals) { return true; }
                        return false;
@@ -79,16 +82,14 @@ package net.systemeD.halcyon.styleparser {
                /** Run all evals for this Style over the supplied tags.
                        If, for example, the stylesheet contains width=eval('_width+2'), then this will set Style.width to 7. */
                public function runEvals(tags:Object):void {
-                       for (var k:String in evals) {
-                               // ** Do we need to do typing here?
-                               this[k]=evals[k].exec(tags);
-                       }
+                       for (var k:String in evals) this[k]=evals[k].exec(tags);
                }
-
+               
                /** Set a property, casting as correct type. */
                public function setPropertyFromString(k:String,v:*):Boolean {
                        if (!this.hasOwnProperty(k)) { return false; }
                        if (v is Eval) { evals[k]=v; v=1; }
+                       else if (v is TagValue) { tagvalues[k]=v; v=1; }
 
                        // Arrays don't return a proper typeof, so check manually
                        // Note that undefined class variables always have typeof=object,
@@ -117,6 +118,7 @@ package net.systemeD.halcyon.styleparser {
             for each (var k:String in this.properties) {
                                if (this.hasOwnProperty(k)) { str+=k+"="+this[k]+"; "; }
                        }
+                       for each (k in tagvalues) str+=k+";"; 
                        return str;
         }
        }
index 9ae6343839f7b72ccc5d6b24b9bc0f2c7d8094b2..f0e95bc50745152858eabec3721315a1b5927622 100644 (file)
@@ -52,7 +52,8 @@ package net.systemeD.halcyon.styleparser {
                                        sl.addSubpart(c.subpart);
 
                                        // Update StyleList
-                                       for each (var r:Style in styles) {
+                                       for (var i:uint=0; i<styles.length; i++) {
+                                               var r:Style=styles[i];
                                                var a:Object;
                                                if (r is ShapeStyle) {
                                                        a=sl.shapeStyles;
@@ -73,9 +74,7 @@ package net.systemeD.halcyon.styleparser {
                                                        if (w>sl.maxwidth) { sl.maxwidth=w; }
                                                } else if (r is InstructionStyle) {
                                                        if (InstructionStyle(r).breaker) { return; }
-                                                       if (InstructionStyle(r).set_tags) {
-                                                               for (var k:String in InstructionStyle(r).set_tags) { tags[k]=InstructionStyle(r).set_tags[k]; }
-                                                       }
+                                                       InstructionStyle(r).assignSetTags(tags);
                                                        continue;
                                                }
                                                if (r.drawn) { tags[':drawn']='yes'; }
@@ -96,6 +95,24 @@ package net.systemeD.halcyon.styleparser {
                        }
                }
                
+               /** Cut-down version of updateStyles that runs InstructionStyles only - for CSSTransform usage. */
+
+               public function runInstructions(obj:Entity, tags:Object):Object {
+                       for each (var c:RuleChain in ruleChains) {
+                               if (c.test(-1,obj,tags,10)) {
+                                       for (var i:uint=0; i<styles.length; i++) {
+                                               var r:Style=styles[i];
+                                               if (r is InstructionStyle) {
+                                                       if (InstructionStyle(r).breaker) { return tags; }
+                                                       InstructionStyle(r).assignSetTags(tags);
+                                               }
+                                               r.runEvals(tags);
+                                       }
+                               }
+                       }
+                       return tags;
+               }
+               
                
                // ---------------------------------------------------------------------------------------------
                // Methods to add properties (used by parsers such as MapCSS)
diff --git a/net/systemeD/halcyon/styleparser/TagValue.as b/net/systemeD/halcyon/styleparser/TagValue.as
new file mode 100644 (file)
index 0000000..06cc583
--- /dev/null
@@ -0,0 +1,33 @@
+package net.systemeD.halcyon.styleparser {
+
+       /*
+               === TagValue ===
+
+               This is a custom declaration value that means 'use the value of this tag'.
+               In other words,
+                       { set ref=tag('dftnumber'); }
+               parses to
+                       TagValue('dftnumber')
+               and returns the value of the dftnumber tag.
+               
+               There isn't really any logic contained within this class, it's just here 
+               so that we can store it as a custom property within Styles (like Eval).
+
+       */
+
+       public class TagValue {
+               private var key:String;
+
+               public function TagValue(k:String) {
+                       key=k;
+               }
+
+               public function getValue(tags:Object):String {
+                       return tags[key];
+               }
+               
+               public function toString():String {
+                       return "TagValue("+key+")";
+               }
+       }
+}
index f70cc2171d35e525879fb3522bff393d3bda4288..5cb00fbd0d1b80d1d02c67ad6a0b94e10504b296 100644 (file)
@@ -15,6 +15,7 @@ package net.systemeD.potlatch2 {
        import flash.ui.Keyboard;
        import flash.ui.Mouse;
        import flash.ui.MouseCursorData;
+       import flash.system.Capabilities;
        import flash.text.TextField;
     import mx.controls.TextArea;
 
@@ -29,7 +30,12 @@ package net.systemeD.potlatch2 {
         /** The current ControllerState */
         public var state:ControllerState;
         
+               /** Hash of when a key was pressed. A user can keyDown within a TextInput, press Enter (leaving
+                   the TextInput), and then keyup - resulting in the keypress being interpreted again. 
+                   We prevent this by tracking keyDowns within the TextInput and ignoring corresponding keyUps. */
                private var keys:Object={};
+
+               public var spaceHeld:Boolean=false;
                public var clipboards:Object={};
                public var cursorsEnabled:Boolean=true;
         private var maximised:Boolean=false;
@@ -68,11 +74,13 @@ package net.systemeD.potlatch2 {
                 map.addEventListener(MapEvent.MOVE, moveHandler);
             }
 
-                       createBitmapCursor("pen"     ,new pen());
-                       createBitmapCursor("pen_x"   ,new pen_x());
-                       createBitmapCursor("pen_o"   ,new pen_o());
-                       createBitmapCursor("pen_so"  ,new pen_so());
-                       createBitmapCursor("pen_plus",new pen_plus());
+                       if (supportsMouseCursors()) {
+                               createBitmapCursor("pen"     ,new pen());
+                               createBitmapCursor("pen_x"   ,new pen_x());
+                               createBitmapCursor("pen_o"   ,new pen_o());
+                               createBitmapCursor("pen_so"  ,new pen_so());
+                               createBitmapCursor("pen_plus",new pen_plus());
+                       }
         }
 
         public function setActive():void {
@@ -100,14 +108,19 @@ package net.systemeD.potlatch2 {
                }
         
         private function keyDownHandler(event:KeyboardEvent):void {
-                       if ((event.target is TextField) || (event.target is TextArea)) return;
-                       keys[event.keyCode]=true;
+                       if ((event.target is TextField) || (event.target is TextArea)) {
+                               keys[event.keyCode]=new Date().getTime();
+                               return;
+                       }
+                       delete keys[event.keyCode];
+                       if (event.keyCode==Keyboard.SPACE) spaceHeld=true;
                }
 
         private function keyUpHandler(event:KeyboardEvent):void {
-            if (!keys[event.keyCode]) return;
-            delete keys[event.keyCode];
-            if ((event.target is TextField) || (event.target is TextArea)) return;                             // not meant for us
+                       if ((event.target is TextField) || (event.target is TextArea)) return;
+                       if (event.keyCode==Keyboard.SPACE) spaceHeld=false;
+                       if (keys[event.keyCode] && new Date().getTime()-keys[event.keyCode]<300) return;
+                       delete keys[event.keyCode];
 
                        if (FunctionKeyManager.instance().handleKeypress(event.keyCode)) { return; }
             
@@ -116,11 +129,6 @@ package net.systemeD.potlatch2 {
             setState(newState);            
                }
 
-               /** Is the given key currently pressed? */
-               public function keyDown(key:Number):Boolean {
-                       return Boolean(keys[key]);
-               }
-
         private function mapMouseEvent(event:MouseEvent):void {
             if (isInteractionEvent(event)) map.stage.focus = map.parent;
             if (event.type==MouseEvent.MOUSE_UP && map.dragstate==map.DRAGGING) { return; }
@@ -188,7 +196,7 @@ package net.systemeD.potlatch2 {
 
                /** Set a mouse pointer. */
                public function setCursor(name:String=""):void {
-                       if (name && cursorsEnabled) { Mouse.cursor=name; }
+                       if (name && cursorsEnabled && supportsMouseCursors()) { Mouse.cursor=name; }
                        else { Mouse.cursor=flash.ui.MouseCursor.AUTO; }
                }
 
@@ -201,6 +209,12 @@ package net.systemeD.potlatch2 {
                        Mouse.registerCursor(name, cursorData);
                }
 
+               private function supportsMouseCursors():Boolean {
+                       var fpArray:Array=Capabilities.version.split(",");
+                       var fpVersion:Number=Number(fpArray[0].split(" ")[1])+Number(fpArray[1])/10;
+                       return (fpVersion>10.1);
+               }
+
         private function toggleSize():void {
             if (maximised) {
                 if (minimiseFunction) {
index c5720efc217ff8ad14e735519dbb2d2c1db49d5e..0d5df272b93f7e63b84f87f30e18c89c89d2c251 100644 (file)
@@ -93,6 +93,7 @@
 
                /** Update dataProvider in response to a tag being edited or removed */
                private function tagChanged(event:TagEvent):void {
+                       if (event.key==event.oldKey && event.oldValue==event.newValue) return;
                        var set:Boolean=false;
                        for (var i:uint=0; i<tagDataProvider.length; i++) {
                                if (tagDataProvider[i].key==event.oldKey || tagDataProvider[i].key==event.key) {
index 035937250bdd7f97b748d04df0d15ddb8929529c..b6494e54f4167d1519d80271955d295bfc8ac3fc 100644 (file)
@@ -1,4 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!---
+  The TagViewer is the container for the entire sidebar. It has a number of components, and subpanels, in a ViewStack that change
+  depending on what is selected, i.e. the ControllerState.
+
+  @see net.systemeD.potlatch2.controller.ControllerState
+    -->
 <mx:VBox
     xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:mx="library://ns.adobe.com/flex/mx"
@@ -57,8 +63,8 @@
 
   <!-- Standard tagging panel -->
 
-  <mx:VBox id="tagsPanel" width="100%" height="100%" creationPolicy="auto">
-    <mx:ViewStack id="stack" width="100%" height="100%">
+  <mx:VBox id="tagsPanel" width="100%" height="100%" creationPolicy="auto" tabChildren="true">
+    <mx:ViewStack id="stack" width="100%" height="100%" change="tagsPanel.tabChildren=(event.newIndex==0)">
       <mx:VBox width="100%" height="100%" label="Simple" id="editorContainer" creationComplete="initEditorStackUIs()" styleName="dndPanelVbox">
         <mx:VBox width="100%" verticalGap="1" styleName="dndTagHeader">
           <mx:HBox width="100%" id="iconContainer" styleName="featureSelector">
       import net.systemeD.controls.CollapsiblePanel;
 
       import mx.collections.*;
-      import mx.containers.*;
+      import mx.containers.VBox;
+      import mx.containers.HBox;
+      import mx.containers.TabNavigator;
+      import mx.containers.Accordion;
       import mx.events.*;
       import mx.core.*;
       import mx.managers.PopUpManager;
       import mx.managers.DragManager;
       import mx.core.DragSource;
       import mx.controls.TabBar;
+      import spark.components.Form;
+      import spark.layouts.FormLayout;
 //    import flexlib.containers.SuperTabNavigator;
 
       [Bindable] [Embed(source="../../../embedded/tab_basic.png"       )] private var tabIconBasic:Class;
                        selectedEntity.removeEventListener(Connection.TAG_CHANGED, tagChanged);
                        selectedEntity.removeEventListener(Connection.ADDED_TO_RELATION, addedToRelation);
                        selectedEntity.removeEventListener(Connection.REMOVED_FROM_RELATION, removedFromRelation);
+                       if (selectedEntity is EntityCollection) EntityCollection(selectedEntity).releaseListeners();
                }
 
                if (entities.length==0) {
               markerPanelContents.init(selectedEntity, layer);
               sidebar.selectedChild = markerPanel;
             } else if (connection is SnapshotConnection) {
-              backgroundPanelContents.init(selectedEntity, layer);
+              backgroundPanelContents.init(selectedEntity);
               sidebar.selectedChild = backgroundPanel;
             } else {
               refreshFeatureIcon();
                        // Add to basic editor box first
                        if ( factory.presence.isEditorPresent(factory, selectedEntity, null) ) {
                                var editor:DisplayObject = factory.createEditorInstance(selectedEntity);
-                               if (editor) basicEditorBox.addChild(editor);
+                               if (editor) Form(basicEditorBox.getChildByName("form")).addElement(UIComponent(editor));
                        }
 
                        // Then prepare to add to category panel
                                        subpanel.styleName="subcategoryPanel";
                                        subpanel.title=subcategory;
                                        subpanels[category][subcategory]=subpanel;
+                                       addConstrainedForm(subpanel);
                                        tabComponents[tab].push(subpanel);
                                }
-                               subpanel.addChild(catEditor);
+                               Form(subpanel.getChildByName("form")).addElement(UIComponent(catEditor));
                        } else {
                                tabComponents[tab].push(catEditor);
                        }
                return 0;
        }
        
-      private function createEditorBox():VBox {
-          var box:VBox = new VBox();
-          box.percentWidth = 100;
-          box.percentHeight = 100;
-          box.styleName = "dndEditorContainer";
-          return box;
-      }
+       private function createEditorBox():VBox {
+               var box:VBox = new VBox();
+               box.percentWidth = 100;
+               box.percentHeight = 100;
+               box.styleName = "dndEditorContainer";
+               addConstrainedForm(box);
+               return box;
+       }
+       
+       private function addConstrainedForm(parentObject:DisplayObjectContainer):void {
+               var form:Form = new Form();
+               form.name = "form";
+               form.percentWidth=100;
+               form.addEventListener(mx.events.ResizeEvent.RESIZE, formResizeHandler, false, 0, true);
+               parentObject.addChild(form);
+               if (parentObject.width>0) form.maxWidth=parentObject.width;
+       }
+       
+       private function formResizeHandler(e:Event):void {
+               var form:Form=Form(e.target);
+               if (form.parent.width>0) form.maxWidth=form.parent.width;
+       }
 
-      private function ensureEditorsPopulated(tab:VBox):void {
-          var components:Array = tabComponents[tab];
-          if ( components == null || tab == null || tab.numChildren >= components.length )
-              return;
-          for each (var component:DisplayObject in components ) {
-              tab.addChild(component);
-          }
-      }
+       private function ensureEditorsPopulated(tab:VBox):void {
+               var components:Array = tabComponents[tab];
+               var form:Form=Form(tab.getChildByName("form"));
+               if ( components == null || tab == null || form.numElements >= components.length ) return;
+               for each (var component:DisplayObject in components ) {
+                       form.addElement(UIComponent(component));
+               }
+       }
 
        private function initEditorStackUIs():void {
                editorStackTabNavigator = new TabNavigator();
       }
 
          public function addNewTag():void {
-               if (stack.selectedChild!=advancedContainer) { return; }
-               advancedTagGrid.addNewTag();
+               if (sidebar.selectedChild==multiplePanel) { multiAdvancedTagGrid.addNewTag(); }
+               else if (stack.selectedChild==advancedContainer) { advancedTagGrid.addNewTag(); }
          }
 
       private function addedToRelation(event:RelationMemberEvent):void {
                                break;
                        
                        case 3: // Delete relation
-                               Alert.show("Do you really want to delete the relation?","Are you sure?",Alert.YES | Alert.CANCEL,null,
+                               var warning:String="This relation has # members. Deleting it will affect all of them and erase this $. Are you really sure?";
+                               warning=warning.replace("#",rel.length).replace("$",rel.getRelationType());
+                               Alert.show(warning,"Are you sure?",Alert.YES | Alert.CANCEL,null,
                                        function(event:CloseEvent):void { 
                                                if (event.detail==Alert.CANCEL) return;
                                                rel.remove(MainUndoStack.getGlobalStack().addAction);
-                                       } );
+                                       } , null, Alert.CANCEL);
                                break;
                }
        }
                if (rows!=Math.floor(rows)) { rows=Math.floor(rows+1); }
                event.target.height=rows*(event.target.rowHeight+1);
        }
+
   ]]></fx:Script>
 </mx:VBox>
 
index 5ed66ea30f3117a0e5ae1921347b24f7cc29e5bd..a58c97b0d99dbfd5969416567af579831f8c6f8c 100644 (file)
@@ -14,7 +14,7 @@
                <!-- Top row -->
 
                <s:Button icon="@Embed('../../../embedded/delete.svg')"
-                       click='doDelete();' 
+                       click='doDelete(event.ctrlKey,event.shiftKey);' 
                        enabled="{canDo('delete')}" 
                        alpha="{getAlpha('delete')}" 
                        toolTip="{deleteToolTipText()}" 
                // --------------------------------------------------------------------------------
                // Individual toolbox actions
 
-               public function doDelete():void {
+               public function doDelete(controlKey:Boolean,shiftKey:Boolean):void {
                        var undo:CompositeUndoableAction = new CompositeUndoableAction("Delete objects");
-                       for each (var entity:Entity in controller.state.selection) {
-                               if (entity is Node) { entity.connection.unregisterPOI(Node(entity)); }
-                               entity.remove(undo.push);
-                       }
-                       MainUndoStack.getGlobalStack().addAction(undo);
-
-                       if (controller.state is SelectedWayNode) {
-                               controller.setState(new SelectedWay(SelectedWayNode(controller.state).selectedWay));
-                       } else {
+                       if (controlKey) {
+                               // Temporary function to delete everything with non-accepting status
+                               var conn:Connection=controller.state.selection[0].connection;
+                               var o:Object=conn.getObjectsByBbox(controller.map.edge_l, controller.map.edge_r, controller.map.edge_t, controller.map.edge_b);
+                               for each (var way:Way in o.waysInside) {
+                                       if (way.status=='no' || (shiftKey && way.status=='partial')) { way.remove(undo.push); }
+                               }
+                               for each (var poi:Node in o.poisInside) {
+                                       if (poi.status=='no' || (shiftKey && way.status=='partial')) { poi.connection.unregisterPOI(poi); poi.remove(undo.push); }
+                               }
+                               MainUndoStack.getGlobalStack().addAction(undo);
                                controller.setState(new NoSelection());
+                               
+                       } else {
+                               // Standard delete function
+                               for each (var entity:Entity in controller.state.selection) {
+                                       if (entity is Node) { entity.connection.unregisterPOI(Node(entity)); }
+                                       entity.remove(undo.push);
+                               }
+                               MainUndoStack.getGlobalStack().addAction(undo);
+
+                               if (controller.state is SelectedWayNode) {
+                                       controller.setState(new SelectedWay(SelectedWayNode(controller.state).selectedWay));
+                               } else {
+                                       controller.setState(new NoSelection());
+                               }
                        }
                }
                
index 90133108e1c89306c103793dc6f92603049fddf5..5f49e1042bf228653404cb851e4605f5549ad78c 100644 (file)
@@ -4,7 +4,7 @@
         xmlns:mx="library://ns.adobe.com/flex/mx"
         layout="vertical" showCloseButton="true"
         horizontalAlign="center" title="Load vector file"
-        width="500" height="350" verticalGap="0">
+        width="500" height="450" verticalGap="0">
 
        <mx:DataGrid editable="true" width="100%" height="100%" id="dataGrid" 
                dataProvider="{vectorLayers}" itemEditEnd="dataEdited(event)">
@@ -50,7 +50,9 @@
        </mx:HBox>
 
        <mx:VBox width="100%" paddingTop="10">
-               <mx:Label htmlText="&lt;b&gt;Add new vector layer&lt;/b&gt;" />
+               <mx:HRule width="100%" />
+               <!-- ** FIXME: this looks horrid - make into a nicely laid out form -->
+               <mx:Label text="Add new vector layer" fontSize="12" fontWeight="bold" />
                <mx:HBox>
                        <mx:RadioButtonGroup id="filetype" />
                        <mx:RadioButton width="100%" groupName="filetype" value="gpx" id="gpx" label="GPX" selected="true" />
                                        <fx:Object label="NAD83" data="EPSG:4269" />
                                </mx:ArrayCollection>
                        </mx:ComboBox>
-                       <mx:CheckBox width="100%" label="Simplify paths" selected="true" id="simplify" />
+                       <mx:CheckBox width="100%" label="Simplify paths" id="simplify" />
                </mx:HBox>
                <mx:HBox>
                        <mx:Text text="URL:"/>
                        <mx:TextInput width="100%" id="src" text="" change="selectByExtension()" />
                        <mx:Button label="Load" click="loadFiles(src.text, filetype.selectedValue.toString(), simplify.selected, projection.selectedItem.data);" enabled="{src.text == '' ? false : true}"/>
                </mx:HBox>
+               <mx:HBox>
+                       <mx:Text text="Tag transform:"/>
+                       <mx:TextInput width="100%" id="transformsrc" text="{CSSTransform.getInstance().url}"/>
+                       <mx:Button label="Load" click="loadTransform(transformsrc.text);" enabled="{transformsrc.text == '' ? false : true}"/>
+                       <mx:Button label="Clear" click="clearTransform();" enabled="{transformsrc.text == '' ? false : true}"/>
+               </mx:HBox>
        </mx:VBox>
 
   <fx:Script><![CDATA[
        import net.systemeD.halcyon.MapPaint;
        import net.systemeD.halcyon.Globals;
        import net.systemeD.halcyon.connection.Connection;
-       import net.systemeD.potlatch2.utils.Importer;
-       import net.systemeD.potlatch2.utils.GpxImporter;
-       import net.systemeD.potlatch2.utils.KmlImporter;
-       import net.systemeD.potlatch2.utils.ShpImporter;
-       import net.systemeD.potlatch2.utils.OsmImporter;
+       import net.systemeD.halcyon.styleparser.CSSTransform;
+       import net.systemeD.potlatch2.utils.*;
        import net.systemeD.potlatch2.collections.Stylesheets;
     import mx.managers.PopUpManager;
     import mx.events.DataGridEvent;
                var stylesheet:String="stylesheets/potlatch.css";
                if (type=='gpx') { stylesheet="stylesheets/gpx.css"; }
 
-               var connection:Connection = new Connection(name, url, null, null);
+               var connection:Connection = new Connection(name, url, null, null, CSSTransform.getInstance());
 
-                var filesLoaded:Function = function(success:Boolean,message:String=null):void {
-                        if (success) {
-                            var paint:MapPaint = map.addLayer(connection, stylesheet);
-                            paint.updateEntityUIs(false, false);
-                            dispatchEvent(new Event("layers_changed"));
-                        } else {
-                            Alert.show(message, 'Error', mx.controls.Alert.OK);
-                        }
-                }
+               var filesLoaded:Function = function(success:Boolean,message:String=null):void {
+                       if (success) {
+                               var paint:MapPaint = map.addLayer(connection, stylesheet);
+                               paint.updateEntityUIs(false, false);
+                               dispatchEvent(new Event("layers_changed"));
+                       } else {
+                               Alert.show(message, 'Error', mx.controls.Alert.OK);
+                       }
+               }
 
                if (type=='gpx') {
                        var gpx:GpxImporter=new GpxImporter(connection, map, [url], filesLoaded, simplify);
                                                            [url+".shp",url+".shx",url+".dbf"], filesLoaded, simplify, projection);
                }
        }
+       
+       private function loadTransform(url:String):void {
+               CSSTransform.getInstance().loadFromUrl(url);
+       }
+       private function clearTransform():void {
+               CSSTransform.getInstance().clear();
+       }
 
               ]]>
   </fx:Script>
index 8ec7e5fad20aedb92459e4eee421f1920a3c8893..34a4fcc681a166e47bd6a8ff36d7f9e3dba04672 100644 (file)
@@ -35,98 +35,100 @@ package net.systemeD.potlatch2.collections {
                        // use .forEach to avoid closure problem (http://stackoverflow.com/questions/422784/how-to-fix-closure-problem-in-actionscript-3-as3#3971784)
                        sets.forEach(function(set:XML, index:int, array:Array):void {
 
-                               if (!(set.policyfile == undefined)) {
-                                       Security.loadPolicyFile(String(set.policyfile));
-                               }
+                               // Skip if just an example
+                               if (!(set.@disabled=="true")) {
+
+                                       if (!(set.policyfile == undefined)) {
+                                               Security.loadPolicyFile(String(set.policyfile));
+                                       }
 
-                // Check for any bounds for the vector layer. Obviously won't kick in during subsequent panning
-                var validBbox:Boolean = false;
-                if (set.@minlon && String(set.@minlon) != '') {
-                    if (((_map.edge_l>set.@minlon && _map.edge_l<set.@maxlon) ||
-                         (_map.edge_r>set.@minlon && _map.edge_r<set.@maxlon) ||
-                         (_map.edge_l<set.@minlon && _map.edge_r>set.@maxlon)) &&
-                        ((_map.edge_b>set.@minlat && _map.edge_b<set.@maxlat) ||
-                         (_map.edge_t>set.@minlat && _map.edge_t<set.@maxlat) ||
-                         (_map.edge_b<set.@minlat && _map.edge_t>set.@maxlat))) {
-                        validBbox = true;
-                    } else {
-                        validBbox = false; // out of bounds
-                    }
-                } else {
-                    validBbox = true; // global set
-                }
-
-                               if (set.@disabled == "true") {
-                    // Don't do anything with it. The "disabled" attribute allows examples to appear in the config file
-                               } else if (validBbox) {
-
-                                       var name:String = (set.name == undefined) ? null : String(set.name);
-                                       var loader:String = set.loader;
-                                       switch (loader) {
-                                               case "TrackLoader":
-                                                       break;
-                                               case "KMLImporter":
-                                                       break;
-                                               case "GPXImporter":
-                                                       if (set.url) {
-                                                               if (set.@loaded == "true") {
-                                                                       name ||= 'GPX file';
-                                                                       var gpx_url:String = String(set.url);
-
-                                                                       var connection:Connection = new Connection(name, gpx_url, null, null);
-                                                                       var gpx:GpxImporter=new GpxImporter(connection, _map, [gpx_url],
-                                                                       function(success:Boolean,message:String=null):void {
-                                                                               if (!success) return;
-                                                                               var paint:MapPaint = _map.addLayer(connection, "stylesheets/gpx.css");
-                                                                               paint.updateEntityUIs(false, false);
-                                                                               dispatchEvent(new Event("layers_changed"));
-                                                                       }, false);
+                       // Check for any bounds for the vector layer. Obviously won't kick in during subsequent panning
+                       var validBbox:Boolean = false;
+                       if (set.@minlon && String(set.@minlon) != '') {
+                           if (((_map.edge_l>set.@minlon && _map.edge_l<set.@maxlon) ||
+                                (_map.edge_r>set.@minlon && _map.edge_r<set.@maxlon) ||
+                                (_map.edge_l<set.@minlon && _map.edge_r>set.@maxlon)) &&
+                               ((_map.edge_b>set.@minlat && _map.edge_b<set.@maxlat) ||
+                                (_map.edge_t>set.@minlat && _map.edge_t<set.@maxlat) ||
+                                (_map.edge_b<set.@minlat && _map.edge_t>set.@maxlat))) {
+                               validBbox = true;
+                           } else {
+                               validBbox = false; // out of bounds
+                           }
+                       } else {
+                           validBbox = true; // global set
+                       }
+
+                                       if (validBbox) {
+
+                                               var name:String = (set.name == undefined) ? null : String(set.name);
+                                               var loader:String = set.loader;
+                                               switch (loader) {
+                                                       case "TrackLoader":
+                                                               break;
+                                                       case "KMLImporter":
+                                                               break;
+                                                       case "GPXImporter":
+                                                               if (set.url) {
+                                                                       if (set.@loaded == "true") {
+                                                                               name ||= 'GPX file';
+                                                                               var gpx_url:String = String(set.url);
+
+                                                                               var connection:Connection = new Connection(name, gpx_url, null, null);
+                                                                               var gpx:GpxImporter=new GpxImporter(connection, _map, [gpx_url],
+                                                                               function(success:Boolean,message:String=null):void {
+                                                                                       if (!success) return;
+                                                                                       var paint:MapPaint = _map.addLayer(connection, "stylesheets/gpx.css");
+                                                                                       paint.updateEntityUIs(false, false);
+                                                                                       dispatchEvent(new Event("layers_changed"));
+                                                                               }, false);
+                                                                       } else {
+                                                                       trace("VectorBackgrounds: configured but not loaded isn't supported yet");
+                                                                       }
                                                                } else {
-                                                               trace("VectorBackgrounds: configured but not loaded isn't supported yet");
+                                                                       trace("VectorBackgrounds: no url for GPXImporter");
                                                                }
-                                                       } else {
-                                                               trace("VectorBackgrounds: no url for GPXImporter");
-                                                       }
-                                                       break;
-
-                                               case "BugLoader":
-                                                       if (set.url && set.apiKey) {
-                                                               name ||= 'Bugs';
-                                                               var bugLoader:BugLoader = new BugLoader(_map, String(set.url), String(set.apikey), name, String(set.details));
-                                                               if (set.@loaded == "true") {
-                                                                       bugLoader.load();
+                                                               break;
+
+                                                       case "BugLoader":
+                                                               if (set.url && set.apiKey) {
+                                                                       name ||= 'Bugs';
+                                                                       var bugLoader:BugLoader = new BugLoader(_map, String(set.url), String(set.apikey), name, String(set.details));
+                                                                       if (set.@loaded == "true") {
+                                                                               bugLoader.load();
+                                                                       }
+                                                               } else {
+                                                                       trace("VectorBackgrounds: error with BugLoader");
                                                                }
-                                                       } else {
-                                                               trace("VectorBackgrounds: error with BugLoader");
-                                                       }
-                                                       break;
-
-                                               case "BikeShopLoader":
-                                                       if (set.url) {
-                                                               name ||= 'Missing Bike Shops'
-                                                               var bikeShopLoader:BikeShopLoader = new BikeShopLoader(_map, String(set.url), name);
-                                                               if (set.@loaded == "true") {
-                                                                       bikeShopLoader.load();
+                                                               break;
+
+                                                       case "BikeShopLoader":
+                                                               if (set.url) {
+                                                                       name ||= 'Missing Bike Shops'
+                                                                       var bikeShopLoader:BikeShopLoader = new BikeShopLoader(_map, String(set.url), name);
+                                                                       if (set.@loaded == "true") {
+                                                                               bikeShopLoader.load();
+                                                                       }
+                                                               } else {
+                                                                       trace("VectorBackgrounds: no url for BikeShopLoader");
                                                                }
-                                                       } else {
-                                                               trace("VectorBackgrounds: no url for BikeShopLoader");
-                                                       }
-                                                       break;
-
-                                               case "SnapshotLoader":
-                                                       if (set.url) {
-                                                               name ||= 'Snapshot Server'
-                                                               var snapshotLoader:SnapshotLoader = new SnapshotLoader(_map, String(set.url), name, String(set.style));
-                                                               if (set.@loaded == "true") {
-                                                                       snapshotLoader.load();
+                                                               break;
+
+                                                       case "SnapshotLoader":
+                                                               if (set.url) {
+                                                                       name ||= 'Snapshot Server'
+                                                                       var snapshotLoader:SnapshotLoader = new SnapshotLoader(_map, String(set.url), name, String(set.style));
+                                                                       if (set.@loaded == "true") {
+                                                                               snapshotLoader.load();
+                                                                       }
+                                                               } else {
+                                                                       trace("VectorBackgrounds: no url for SnapshotLoader");
                                                                }
-                                                       } else {
-                                                               trace("VectorBackgrounds: no url for SnapshotLoader");
-                                                       }
-                                                       break;
+                                                               break;
 
-                                               default:
-                                                       trace("VectorBackgrounds: unknown loader: " + loader);
+                                                       default:
+                                                               trace("VectorBackgrounds: unknown loader: " + loader);
+                                               }
                                        }
                                }
                        });
index 27f3b56754e5baeff5e5e6c1dc798fc596b24cbc..e9270a0964c3b5a0895471a964322e30b2970682 100644 (file)
@@ -75,6 +75,7 @@ package net.systemeD.potlatch2.controller {
                protected function sharedKeyboardEvents(event:KeyboardEvent):ControllerState {
                        var editableLayer:MapPaint=controller.map.editableLayer;                                                                // shorthand for this method
                        switch (event.keyCode) {
+                               case 48:        removeTags(); break;                                                                                                    // 0 - remove all tags
                                case 66:        setSourceTag(); break;                                                                                                  // B - set source tag for current object
                                case 67:        editableLayer.connection.closeChangeset(); break;                                               // C - close changeset
                                case 68:        editableLayer.alpha=1.3-editableLayer.alpha; return null;                               // D - dim
@@ -110,12 +111,13 @@ package net.systemeD.potlatch2.controller {
                        if ( paint && paint.isBackground ) {
                                if (event.type == MouseEvent.MOUSE_DOWN && ((event.shiftKey && event.ctrlKey) || event.altKey) ) {
                                        // alt-click to pull data out of vector background layer
-                                       // first, create a list of the alt-clicked item, plus anything else already selected (assuming it's in the same layer!)
+                                       // extend the current selection (alt-ctrl) or create a new one (alt)?
+                                       var newSelection:Array=(event.altKey && event.ctrlKey) ? _selection : [];
+                                       // create a list of the alt-clicked item, plus anything else already selected (assuming it's in the same layer!)
                                        var itemsToPullThrough:Array=[]
                                        if (_selection.length && firstSelected.connection==entity.connection) itemsToPullThrough=_selection.slice();
                                        if (itemsToPullThrough.indexOf(entity)==-1) itemsToPullThrough.push(entity);
                                        // make sure they're unhighlighted, and pull them through
-                                       var newSelection:Array=[]
                                        for each (var entity:Entity in itemsToPullThrough) {
                                                paint.setHighlight(entity, { hover:false, selected: false });
                                                if (entity is Way) paint.setHighlightOnNodes(Way(entity), { selectedway: false });
@@ -138,7 +140,7 @@ package net.systemeD.potlatch2.controller {
                                if ( entity is Node && selectedWay && entity.hasParent(selectedWay) ) {
                                        // select node within this way
                                        return new DragWayNode(selectedWay,  getNodeIndex(selectedWay,entity as Node),  event, false);
-                               } else if ( controller.keyDown(Keyboard.SPACE) ) {
+                               } else if ( controller.spaceHeld ) {
                                        // drag the background imagery to compensate for poor alignment
                                        return new DragBackground(event);
                                } else if (entity && selection.indexOf(entity)>-1) {
@@ -200,6 +202,20 @@ package net.systemeD.potlatch2.controller {
 
 
                }
+               
+               /** Remove all tags from current selection. */
+               protected function removeTags():void {
+                       if (selectCount==0) return;
+                       var undo:CompositeUndoableAction = new CompositeUndoableAction("Remove tags");
+                       for each (var item:Entity in _selection) {
+                               item.suspend();
+                               var tags:Array=item.getTagArray();
+                               for each (var tag:Tag in tags) item.setTag(tag.key,null,undo.push);
+                       }
+                       MainUndoStack.getGlobalStack().addAction(undo);
+                       controller.updateSelectionUI();
+                       for each (item in _selection) item.resume();
+               }
 
                /** Create an action to add "source=*" tag to current entity based on background imagery. This is a convenient shorthand for users. */
                protected function setSourceTag():void {
@@ -219,7 +235,7 @@ package net.systemeD.potlatch2.controller {
                        for each (var item:Entity in _selection)
                                if (item.id>0) revertable=true;
                        if (revertable)
-                               Alert.show("Revert selected items to the last saved version, discarding your changes?","Are you sure?",Alert.YES | Alert.CANCEL,null,revertHandler);
+                               Alert.show("Revert selected items to the last saved version, discarding your changes?","Are you sure?",Alert.YES | Alert.CANCEL,null,revertHandler,null,Alert.CANCEL);
                }
                protected function revertHandler(event:CloseEvent):void {
                        if (event.detail==Alert.CANCEL) return;
index f78d0d3f5941e248f33c2fb2d505d968633eac0b..939ddb8124e1e2f712fb56548bea05470a4e63ee 100644 (file)
@@ -18,7 +18,7 @@ package net.systemeD.potlatch2.controller {
                        if (event.type==MouseEvent.MOUSE_MOVE || event.type==MouseEvent.ROLL_OVER || event.type==MouseEvent.MOUSE_OUT) { return this; }
                        var focus:Entity = getTopLevelFocusEntity(entity);
 
-                       if ( event.type == MouseEvent.MOUSE_DOWN && entity && event.ctrlKey ) {
+                       if ( event.type == MouseEvent.MOUSE_DOWN && entity && event.ctrlKey && !event.altKey ) {
                                // modify selection
                                layer.setHighlight(entity, { selected: toggleSelection(entity) });
                                controller.updateSelectionUI();
index b3279501b6e09cf4ac9a99cd131e766c81f02218..8ffbf31cc4d9e0a35ff273411be53d057b81c46a 100644 (file)
@@ -37,7 +37,7 @@ package net.systemeD.potlatch2.controller {
                        if (event.type==MouseEvent.MOUSE_MOVE) { return this; }
                        var paint:MapPaint = getMapPaint(DisplayObject(event.target));
 
-                       if (event.type==MouseEvent.MOUSE_DOWN && event.ctrlKey && entity && entity!=firstSelected && paint==layer) {
+                       if (event.type==MouseEvent.MOUSE_DOWN && event.ctrlKey && !event.altKey && entity && entity!=firstSelected && paint==layer) {
                                return new SelectedMultiple([firstSelected,entity],layer);
                        } else if (event.type==MouseEvent.MOUSE_DOWN && event.shiftKey && !entity && !layer.isBackground) {
                                return new DrawQuadrilateral(firstSelected as Node);
index d23c28df432f69f28ad5c5ed95290c9b62d1186b..05bae453abbcaad36429a9147876b5dc326c0e01 100644 (file)
@@ -58,7 +58,7 @@ package net.systemeD.potlatch2.controller {
                 var d:DragWayNode=new DragWayNode(firstSelected as Way, -1, event, true);
                                d.forceDragStart();
                                return d;
-                       } else if ( event.type == MouseEvent.MOUSE_DOWN && event.ctrlKey && entity && entity!=firstSelected) {
+                       } else if ( event.type == MouseEvent.MOUSE_DOWN && event.ctrlKey && !event.altKey && entity && entity!=firstSelected) {
                                // multiple selection
                                return new SelectedMultiple([firstSelected,entity],layer);
                        } else if ( event.type == MouseEvent.MOUSE_UP && focus==firstSelected ) {
index 33c720833a80d84f1d5d95ba9360929783a5c90a..4553ddabfa9dcd1f91b44ab1cc4f793785adf355 100644 (file)
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!---
+    VideoPlayer component for P2 help dialog.
+    Embed like this:
+
+    <listing>
+    &lt;help:VideoPlayer width="400" height="300"
+        file="videos/test.flv"
+        previewImage="videos/test_preview.png" /&gt;
+    </listing>
+
+    <p>previewImage is the image that will be shown in the video pane
+    before the user clicks 'play' - usually a still of the first frame
+    of the video. (This means the video file won't be downloaded unless
+    the user actually wants it.)</p>
+
+    -->
 <mx:VBox
     xmlns:fx="http://ns.adobe.com/mxml/2009"
     xmlns:mx="library://ns.adobe.com/flex/mx"
        <fx:Script>
                <![CDATA[ 
 
-                       /** VideoPlayer component for P2 help dialog.
-                               Embed like this:
-
-                               <help:VideoPlayer width="400" height="300" 
-                                       file="videos/test.flv" 
-                                       previewImage="videos/test_preview.png" />
-                                       
-                               previewImage is the image that will be shown in the video pane
-                               before the user clicks 'play' - usually a still of the first frame
-                               of the video. (This means the video file won't be downloaded unless 
-                               the user actually wants it.)
-                       */
-
                        [Bindable] public var file:String;
                        [Bindable] public var previewImage:String; 
                        private var wasPlaying:Boolean;
index 66b997b416bf563f0dbdea20b21d1636a749e31e..03cbe19e2a552fe6790242a9a8d2fc6caeafc193 100644 (file)
@@ -2,17 +2,17 @@
 <edit:SingleTagEditor
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:mx="library://ns.adobe.com/flex/mx"
+    xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        xmlns:flexlib="flexlib.controls.*"
-       verticalGap="0"
        width="100%"
        toolTip="{fieldDescription}"
-    direction="horizontal">
+       label="{fieldName}:">
+
+    <mx:CheckBox id="inputBox" creationComplete="initCheckbox()"
+                labelPlacement="right" label=""
+                change="value=toYesNo()" />
 
-       <mx:Label text="{fieldName}:"/>
-       <mx:CheckBox id="inputBox" creationComplete="initCheckbox()"
-                                labelPlacement="right" label=""
-                                change="value=toYesNo()" />
 
   <fx:Script><![CDATA[
   
index cd7489d79567bf6da705d8b40d15e7278b60149f..4bfe220bdae420312986f7f071d2ea98e7336133 100644 (file)
@@ -5,26 +5,26 @@
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        toolTip="{fieldDescription}"
-    direction="{fieldDirection}" styleName="titledEditor">
+       label="{fieldName}:"
+    styleName="titledEditor">
 
-  <mx:Label text="{fieldName}:"/>
-  <s:DropDownList id="inputBox" dataProvider="{choices}" selectedItem="{selectFromTag}"
-      change="value = inputBox.selectedItem.value" labelField="label">
-      <s:itemRenderer>
-        <fx:Component>
-        <mx:HBox toolTip="{data.description}" horizontalScrollPolicy="off">
-          <mx:Image source="{Choice(data).icon}"/>
-          <mx:Label htmlText="{getStyledLabel(Choice(data))}"/>
-                       <fx:Script><![CDATA[
-                             public function getStyledLabel(choice:Choice):String {
-                                 if (choice.value==null) return "<font color='#a0a0a0'><i>"+choice.label+"</i></font>";
-                                 return choice.label;
-                                 }
-                       ]]></fx:Script>
-        </mx:HBox>
-        </fx:Component>
-      </s:itemRenderer>
-  </s:DropDownList>
+    <s:DropDownList id="inputBox" dataProvider="{choices}" selectedItem="{selectFromTag}"
+        change="value = inputBox.selectedItem.value" labelField="label">
+        <s:itemRenderer>
+          <fx:Component>
+          <mx:HBox toolTip="{data.description}" horizontalScrollPolicy="off">
+            <mx:Image source="{Choice(data).icon}"/>
+            <mx:Label htmlText="{getStyledLabel(Choice(data))}"/>
+              <fx:Script><![CDATA[
+                    public function getStyledLabel(choice:Choice):String {
+                        if (choice.value==null) return "<font color='#a0a0a0'><i>"+choice.label+"</i></font>";
+                        return choice.label;
+                    }
+              ]]></fx:Script>
+          </mx:HBox>
+          </fx:Component>
+        </s:itemRenderer>
+    </s:DropDownList>
 
   <fx:Script><![CDATA[
       import mx.collections.*;
index 08ed76e89aec9c188dae89c0fd61c0618858b8a9..74ae6959a59ef3912dfa65e662377248f9151096 100644 (file)
@@ -2,20 +2,18 @@
 <edit:SingleTagEditor
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:mx="library://ns.adobe.com/flex/mx"
+    xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        xmlns:flexlib="flexlib.controls.*"
        xmlns:controls="net.systemeD.controls.*"
        width="100%"
        toolTip="{fieldDescription}"
-    direction="{fieldDirection}" styleName="titledEditor">
+    styleName="titledEditor" label="{fieldName}:">
 
-  <mx:Label text="{fieldName}:"/>
-  <controls:PromptingTextInputWarning id="inputBox" prompt="{prompt}" text="{value}" width="100%" 
-      focusOut="value = inputBox.text" enter="value = inputBox.text"
+    <controls:PromptingTextInputWarning id="inputBox" prompt="{prompt}" text="{value}" width="100%"
+      focusOut="value = inputBox.text" enter="value = inputBox.text; focusManager.getNextFocusManagerComponent().setFocus();"
       restrict="&#x0020;-&#x10FFFF;" />
-
   <fx:Script><![CDATA[
-  
       [Bindable(event="factory_set")]
       protected function get prompt():String {
           return _factory == null ? null : FreeTextEditorFactory(_factory).notPresentText;
index ecf87611213e51af28cf10a03ac101b92079a154..7d8261493b26ce71f6e1555528a13224982200da 100644 (file)
@@ -2,26 +2,26 @@
 <edit:SingleTagEditor
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:mx="library://ns.adobe.com/flex/mx"
+       xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        xmlns:flexlib="flexlib.controls.*"
-       verticalGap="0"
        width="100%"
        toolTip="{fieldDescription}"
-    direction="{fieldDirection}" styleName="titledEditor">
+       label="{fieldName}:"
+    styleName="titledEditor">
 
-       <mx:Label text="{fieldName}:"/>
-    <mx:HBox horizontalGap="3" verticalAlign="middle">
-        <!-- it would be great if the numericStepper showed something other than zero when unset -->
-           <mx:NumericStepper id="input"
-                 minimum="{minimum}" maximum="{maximum}"
-                 stepSize="{stepSize}"
-                 value="{translatedValue}"
-                 enabled="{isValueValid}"
-                                change="value = input.value.toString()" />
-        <mx:LinkButton label="Clear" click="clear()" enabled="{isValueClearable}" />
-        <mx:Label text="{prompt}" visible="{value == null || value == ''}" includeInLayout="{value == null || value == ''}" styleName="promptText"/>
-        <mx:Label text="{warning}" visible="{!isValueValid}" includeInLayout="{!isValueValid}" styleName="warningText" />
-    </mx:HBox>
+      <mx:HBox horizontalGap="3" verticalAlign="middle">
+          <!-- it would be great if the numericStepper showed something other than zero when unset -->
+          <mx:NumericStepper id="input"
+                  minimum="{minimum}" maximum="{maximum}"
+                  stepSize="{stepSize}"
+                  value="{translatedValue}"
+                  enabled="{isValueValid}"
+                  change="value = input.value.toString()" />
+          <mx:LinkButton label="Clear" click="clear()" enabled="{isValueClearable}" />
+          <mx:Label text="{prompt}" visible="{value == null || value == ''}" includeInLayout="{value == null || value == ''}" styleName="promptText"/>
+          <mx:Label text="{warning}" visible="{!isValueValid}" includeInLayout="{!isValueValid}" styleName="warningText" />
+      </mx:HBox>
 
   <fx:Script><![CDATA[
     [Bindable(event="factory_set")]
index 8aa73f4dfa0d290cd28190e5d12aed4eeaa42291..cc2b5ab35369229daf9a413a0012d7c8a8f8cf90 100644 (file)
@@ -6,12 +6,12 @@ package net.systemeD.potlatch2.mapfeatures.editors {
     import net.systemeD.potlatch2.mapfeatures.*;
 
        public class RelationMemberEditorFactory extends EditorFactory {
-           /** Contains "route"=["hiking","foot"] key/values. The <match> map_features tag is parsed here from
+           /** Contains "route"=["hiking","foot"] key/values. The &lt;match&gt; map_features tag is parsed here from
            * "hiking|foot" pipe-separated values. */
            private var _relationTagPatterns:Object;
                private var _role:String;
         
-        /** Constructs the editing panel for a relation(###), given its <relation> in map_features.xml */
+        /** Constructs the editing panel for a relation(###), given its &lt;relation&gt; in map_features.xml */
         public function RelationMemberEditorFactory(inputXML:XML) {
             super(inputXML);
             _relationTagPatterns = {};
index cfd4a9c0a8f9117b8bb3859d40337bb90ca15d31..1a8ea2ef4a200a572a78b8f7fa99e17f9015146a 100644 (file)
@@ -2,6 +2,7 @@
 <edit:RelationMemberEditor
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:mx="library://ns.adobe.com/flex/mx"
+    xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        xmlns:flexlib="flexlib.controls.*"
        verticalGap="0"
@@ -9,7 +10,7 @@
        toolTip="{fieldDescription}"
        initialize="addRoutes()">
 
-  <mx:Label text="{fieldName}:"/>
+  <s:FormHeading label="{fieldName}"/>
   <mx:VBox verticalGap="0" width="100%" id="routeIcons"/>
   <mx:LinkButton label="Add to a route" click="addToRelation()" />
 
index d28e869a595b1b6a98d38911eb54f586a21c8df7..60df3b8ec1acd6e56f7516eb6adcdf0982dae4a0 100644 (file)
@@ -2,10 +2,10 @@ package net.systemeD.potlatch2.mapfeatures.editors {
 
     import net.systemeD.halcyon.connection.*;
     import net.systemeD.potlatch2.mapfeatures.*;
-    import mx.containers.Box;
+    import spark.components.FormItem;
     import flash.events.*;
 
-    public class SingleTagEditor extends Box {
+    public class SingleTagEditor extends FormItem {
 
       protected var _factory:SingleTagEditorFactory;
       protected var _entity:Entity;
index 2638b115df2d7f2825ba521b54f1833d36ee95f5..78b96090e6682da8f7f07079255f99bfa75642be 100644 (file)
@@ -24,7 +24,7 @@ package net.systemeD.potlatch2.mapfeatures.editors {
         }
         
         public function get direction():String {
-            return boxDirection;
+            return "ltr";
         }
         
         override public function createEditorInstance(entity:Entity):DisplayObject {
index e878850be5bbf988b146c9a56865381fff5894a2..ba17e6a8ab1fd8f7ef6d2d1428beefde81045568 100644 (file)
@@ -2,22 +2,22 @@
 <edit:SingleTagEditor
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:mx="library://ns.adobe.com/flex/mx"
+    xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        xmlns:flexlib="flexlib.controls.*"
-       verticalGap="0"
        width="100%"
        toolTip="{fieldDescription}"
-    direction="horizontal" styleName="titledEditor">
+       label="{fieldName}:"
+       styleName="titledEditor">
 
-       <mx:Label text="{fieldName}:"/>
-       <mx:HSlider id="inputSlider"
-                 minimum="{sliderMinimum}" maximum="{sliderMaximum}"
-                 snapInterval="{sliderSnapInterval}" tickInterval="{sliderSnapInterval}"
-                 labels="{sliderLabels}" dataTipFormatFunction="formatDataTip"
-                 value="{translatedValue}"
-                 enabled="{isValueValid}"
-                 liveDragging="true"
-                                change="setTagValueFromSlider()" />
+    <mx:HSlider id="inputSlider"
+                minimum="{sliderMinimum}" maximum="{sliderMaximum}"
+                snapInterval="{sliderSnapInterval}" tickInterval="{sliderSnapInterval}"
+                labels="{sliderLabels}" dataTipFormatFunction="formatDataTip"
+                value="{translatedValue}"
+                enabled="{isValueValid}"
+                liveDragging="true"
+                change="setTagValueFromSlider()" />
 
   <fx:Script><![CDATA[
 
index de780161a0e2e65ff635c9aa76cab4266f0dd81c..39450d6ae6711e845bfcaa0bb3f86ae8579508ce 100644 (file)
@@ -4,16 +4,18 @@
        xmlns:mx="library://ns.adobe.com/flex/mx"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        toolTip="{fieldDescription}"
-       direction="horizontal" styleName="titledEditor">
+       label="{fieldName}:"
+    styleName="titledEditor">
 
-  <mx:Label text="{fieldName}:"/>
-  <edit:ChoiceComboBox id="inputBox" dataProvider="{choices}" selectedItem="{selectFromTag}"
-      dropdownFactory="mx.controls.TileList"
-      change="value = inputBox.selectedItem.value"
-      itemRenderer="net.systemeD.potlatch2.mapfeatures.editors.RestrictionRenderer"
-      dropdownWidth="250" rowCount="4"
-      fontWeight="normal">
-  </edit:ChoiceComboBox>
+  <mx:VBox> <!-- This wrapper shouldn't be necessary, but without it the layout goes nuts -->
+    <edit:ChoiceComboBox id="inputBox" dataProvider="{choices}" selectedItem="{selectFromTag}"
+        dropdownFactory="mx.controls.TileList"
+        change="value = inputBox.selectedItem.value"
+        itemRenderer="net.systemeD.potlatch2.mapfeatures.editors.RestrictionRenderer"
+        dropdownWidth="250" rowCount="4"
+        fontWeight="normal">
+    </edit:ChoiceComboBox>
+  </mx:VBox>
 
   <fx:Script><![CDATA[
       import mx.collections.*;
index 27c7f2f3b701288e3c2b75f6d0da529bdc3a1a0c..3b770ffca2e543df7059cd506ac21d0b73392c7a 100644 (file)
@@ -2,16 +2,17 @@
 <edit:RelationMemberEditor
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:mx="library://ns.adobe.com/flex/mx"
+    xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:edit="net.systemeD.potlatch2.mapfeatures.editors.*"
        xmlns:flexlib="flexlib.controls.*"
        verticalGap="0"
        width="100%"
        toolTip="{fieldDescription}"
+       label="{fieldName}:"
        initialize="addTurnRestrictions()">
 
-  <mx:Label text="{fieldName}:"/>
-  <mx:VBox verticalGap="0" width="100%" id="turnRestrictionIcons"/>
-  <mx:LinkButton label="Add new turn restriction" click="addNewTurnRestriction()" />
+    <mx:VBox verticalGap="0" width="100%" id="turnRestrictionIcons"/>
+    <mx:LinkButton label="Add new turn restriction" click="addNewTurnRestriction()" />
 
   <fx:Script><![CDATA[
        import net.systemeD.halcyon.connection.*;
index f22182355631d52855396f82cf3dfb1699a4779e..a68da1bb09e428e465e1bdd650c6fc3eded8de6c 100644 (file)
@@ -1,22 +1,28 @@
 <?xml version="1.0" encoding="utf-8"?>
-
-<!--
-    Background Merge Panel
+<!---
+    The Background Merge Panel allows the tags from two features - one from
+    a read-only vector background layer, one from an editable layer - to be
+    compared. Tags are highlighted depending whether they match, and tags from
+    the background layer can be easily merged.
 -->
 
-<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" height="100%">
-  <mx:Text id="backgroundMergePanelText" text="Review and Merge tags from the Background layer" width="100%" styleName="helpInfo" />
+<mx:VBox
+    xmlns:fx="http://ns.adobe.com/mxml/2009"
+    xmlns:mx="library://ns.adobe.com/flex/mx"
+    xmlns:s="library://ns.adobe.com/flex/spark"
+    height="100%">
+  <s:RichText id="backgroundMergePanelText" width="100%">Review and Merge tags from the Background layer</s:RichText>
   <mx:DataGrid editable="false" id="backgroundPanelDG" width="100%" height="50%">
     <mx:columns>
       <mx:DataGridColumn editable="false" dataField="k" headerText="Key" />
       <mx:DataGridColumn editable="false" dataField="e" headerText="OSM value" />
-      <mx:DataGridColumn editable="false" headerText="Merge" width="50" textAlign="center">
+      <mx:DataGridColumn editable="false" headerText="Merge" width="150" textAlign="center">
         <mx:itemRenderer>
-          <mx:Component>
-            <mx:HBox horizontalAlign="center" verticalAlign="middle">
-              <mx:Button label="&lt;&lt;" visible="{parentDocument.buttonVisible(data.b, data.e)}" click="parentDocument.mergeForKey(data.k);" />
+          <fx:Component>
+            <mx:HBox horizontalAlign="center" verticalAlign="middle" width="100%">
+              <s:Button width="50" label="&lt;&lt;" visible="{parentDocument.buttonVisible(data.b, data.e)}" click="parentDocument.mergeForKey(data.k);" />
             </mx:HBox>
-          </mx:Component>
+          </fx:Component>
         </mx:itemRenderer>
       </mx:DataGridColumn>
       <mx:DataGridColumn editable="false" itemRenderer="net.systemeD.potlatch2.panels.BackgroundMergeFieldComponent" dataField="b" headerText="Background value" />
   <mx:ViewStack id="statusStack" resizeToContent="true" width="100%">
     <mx:VBox id="empty" />
     <mx:VBox id="not_complete">
-      <mx:Text text="All the data copied to the main layer? Click 'complete'!" />
-      <mx:Button label="Complete" click="markComplete()"/>
+      <s:VGroup width="100%">
+        <s:RichText width="100%">If all the information from this feature is accounted for in the main layer, you can mark this feature as 'complete'.</s:RichText>
+        <s:RichText width="100%">This lets other contributors see what still needs reconciling.</s:RichText>
+        <s:Button label="Mark feature as Complete" click="markComplete()"/>
+      </s:VGroup>
     </mx:VBox>
-    <mx:VBox id="complete">
-      <mx:Text text="This feature has been marked as complete. If this is wrong, press the button below." />
-      <mx:Button label="Not complete" click="markNotComplete()"/>
+    <mx:VBox id="complete" width="100%">
+      <s:VGroup width="100%">
+        <s:RichText width="100%">This feature has been marked as 'complete'. If this is incorrect, and there is still reconciling required, you can mark this feature as 'not complete'.</s:RichText>
+        <s:Button label="Mark feature as Not complete" click="markNotComplete()"/>
+      </s:VGroup>
     </mx:VBox>
   </mx:ViewStack>
-  <mx:Script><![CDATA[
+  <fx:Script><![CDATA[
 
       import net.systemeD.halcyon.connection.*;
       import net.systemeD.halcyon.MapPaint;
       private var backgroundEntity:Entity;
       private var tagDataProvider:ArrayCollection;
 
+      /**
+      * @param entities The two entities that are being compared. One should be from a background layer, but the
+      *                 order is not important.
+      */
       public function init(entities:Array):void {
           if ( tagDataProvider == null ) {
               tagDataProvider = new ArrayCollection();
           updateTagDataProvider();
       }
 
+      /**
+      * Should the button for merging tags be shown?
+      *
+      * @param b The tag value for the background entity
+      * @param e The tag value for the editable entity
+      */
       public function buttonVisible(b:String, e:String):Boolean {
           if (b != null && b != e) {