Merge remote-tracking branch 'gravitystorm/docs'
authorRichard Fairhurst <richard@systemeD.net>
Mon, 28 Nov 2011 20:24:48 +0000 (20:24 +0000)
committerRichard Fairhurst <richard@systemeD.net>
Mon, 28 Nov 2011 20:24:48 +0000 (20:24 +0000)
22 files changed:
build.properties.template
build.xml
l10n/locale/de_DE/p2_main.properties
l10n/locale/en_GB/p2_main.properties
l10n/locale/en_US/help_dialog.properties
l10n/locale/en_US/p2_main.properties
l10n/locale/ja_JP/help_dialog.properties [new file with mode: 0644]
l10n/locale/ja_JP/p2_main.properties [new file with mode: 0644]
l10n/locale/vi_VN/help_dialog.properties [new file with mode: 0644]
l10n/locale/vi_VN/p2_main.properties [new file with mode: 0644]
l10n/map/LocalizationMap.mxml
lib/Framework_BabelFx-2.0.4.swc [new file with mode: 0644]
lib/Framework_BabelFx-g400a96.swc [deleted file]
lib/ant-contrib-1.0b3.jar [new file with mode: 0644]
net/systemeD/potlatch2/BackgroundSelector.mxml
net/systemeD/potlatch2/StyleSelector.mxml
net/systemeD/potlatch2/help/HelpDialog.mxml
net/systemeD/potlatch2/options/OptionsDialog.mxml
net/systemeD/potlatch2/save/OAuthPanel.mxml
net/systemeD/potlatch2/save/SaveDialog.mxml
potlatch2.mxml
resources/potlatch2.html

index 55fcec5..d24b972 100644 (file)
@@ -19,4 +19,4 @@ test.src.dir = ${basedir}/tests/src
 test.fakeroot.dir = ${basedir}/tests/fakeroot
 test.bin.dir = ${basedir}/tests/bin
 report.dir = ${basedir}/tests/report
-report.html.dir = ${basedir}/tests/report/html
\ No newline at end of file
+report.html.dir = ${basedir}/tests/report/html
index 9e759c9..45c5ee6 100644 (file)
--- a/build.xml
+++ b/build.xml
@@ -1,4 +1,4 @@
-<project name="Potlatch 2" default="debug">
+<project name="Potlatch 2" default="debug" xmlns:ac="antlib:net.sf.antcontrib">
 
   <!-- load properties from the environment -->
   <property environment="env" />
@@ -9,6 +9,9 @@
   <!-- flexTasks comes with flex, but apparently it's good practice to put in the libs folder -->
   <taskdef resource="flexTasks.tasks" classpath="${basedir}/lib/flexTasks.jar"/>
 
+  <!-- ant-contrib to build multiple locales -->
+  <taskdef uri="antlib:net.sf.antcontrib" resource="net/sf/antcontrib/antlib.xml" classpath="${basedir}/lib/ant-contrib-1.0b3.jar"/>
+
   <!-- if you are running git-svn, you need to run "git tag -a 0.4 0ac0de" where 0ac0de corresponds to the commitid of
       potlatch2 v0.4 . You need to do this for each point release while we're still in SVN.
       If you don't, then expect "git describe" to fail miserably.
@@ -58,7 +61,7 @@
   </target>
 
   <!-- note that there's an asdoc target in Flex 4, if/when we move to that -->
-  <target name="docs" depends="manifests">
+  <target name="docs" depends="manifests,makeLocalesList">
     <exec executable="${ASDOC}" failonerror="true">
       <arg line="-source-path ."/>
       <arg line="-doc-sources net/systemeD/"/>
@@ -92,6 +95,8 @@
       <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" />
     </exec>
   </target>
 
     </sequential>
   </macrodef>
 
-  <target name="buildLocales">
-    <echo>Building Localization .swf's</echo>
-    <compileLocale locale="en_US" />
-    <compileLocale locale="en_GB" />
-    <compileLocale locale="fr_FR" />
-    <compileLocale locale="de_DE" />
-    <compileLocale locale="pl_PL" />
+  <target name="makeLocalesList">
+    <ac:for param="dirname">
+      <path>
+        <dirset dir="${basedir}/l10n/locale/">
+          <exclude name="bundles"/>
+          <include name="??_??"/>
+        </dirset>
+      </path>
+      <sequential>
+        <ac:var name="localename" unset="true"/>
+        <basename property="localename" file="@{dirname}" />
+        <script language="javascript"><![CDATA[
+            if ((l = project.getProperty("locales.list")) != null) {
+               project.setUserProperty("locales.list", l+ "," +project.getProperty("localename"));
+            } else {
+               project.setUserProperty("locales.list", project.getProperty("localename"));
+            }
+        ]]></script>
+      </sequential>
+    </ac:for>
   </target>
 
+  <target name="buildLocales" depends="makeLocalesList">
+    <echo>Building Localization .swf's</echo>
+    <ac:for list="${locales.list}" keepgoing="true" param="localename">
+      <sequential>
+        <compileLocale locale="@{localename}" />
+      </sequential>
+    </ac:for>
+  </target>
 
   <target name="deployLocales" depends="buildLocales">
     <echo>Deploying the compiled swf and assets package for the given locales</echo>
-    <deployLocale locale="en_US" />
-    <deployLocale locale="en_GB" />
-    <deployLocale locale="fr_FR" />
-    <deployLocale locale="de_DE" />
-    <deployLocale locale="pl_PL" />
+    <ac:for list="${locales.list}" keepgoing="true" param="localename">
+      <sequential>
+        <deployLocale locale="@{localename}" />
+      </sequential>
+    </ac:for>
   </target>
 
 
index 2a43a64..8deccda 100644 (file)
@@ -4,6 +4,7 @@ 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
@@ -23,4 +24,25 @@ toolbox.merge_ways = Wege verbinden
 toolbox.straighten_way = Weg begradigen
 toolbox.make_circular = Kreisförmig anordnen
 toolbox.make_right_angled = Rechtwinklig anordnen (Q)
-toolbox.create_parrallel_way = Parallelen Weg erstellen (P)
\ No newline at end of file
+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>
+oauth.rememberMe=Erinnere dich an mich
+oauth.permFail=<p>Der Server verweigert diese Anwendung die Anmeldeinformationen -- eine Genehmigung Link konnte nicht abgerufen werden. </p><p> <b>OAuth Zugriff nicht möglich sein wird.</b></p><p>Bitte kontaktieren Sie Hersteller, um herauszufinden, was los ist.</p>
+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 3a70d5d..e03f995 100644 (file)
@@ -23,4 +23,25 @@ toolbox.merge_ways = Merge ways
 toolbox.straighten_way = Straighten Way
 toolbox.make_circular = Make circular
 toolbox.make_right_angled = Make right-angled (Q)
-toolbox.create_parrallel_way = Create parallel way (P)
\ No newline at end of file
+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.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.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.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
index 32d1870..244afea 100644 (file)
@@ -2,5 +2,34 @@
 
 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.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
index a97e062..6819637 100644 (file)
@@ -4,9 +4,45 @@ 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 to this app.
+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.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.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
diff --git a/l10n/locale/ja_JP/help_dialog.properties b/l10n/locale/ja_JP/help_dialog.properties
new file mode 100644 (file)
index 0000000..3f66aca
--- /dev/null
@@ -0,0 +1,35 @@
+# ja_JP resources file
+
+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.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
diff --git a/l10n/locale/ja_JP/p2_main.properties b/l10n/locale/ja_JP/p2_main.properties
new file mode 100644 (file)
index 0000000..20f955f
--- /dev/null
@@ -0,0 +1,49 @@
+# 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 = 新規ポイントを地図にドラッグすることで作成
+
+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><p><b>OAuthアクセスはできません。</b>      </p><p>アプリケーションベンダーにどうすればいいか、確認してください。</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/vi_VN/help_dialog.properties b/l10n/locale/vi_VN/help_dialog.properties
new file mode 100644 (file)
index 0000000..93cb426
--- /dev/null
@@ -0,0 +1,6 @@
+# vi resources file
+
+help.gettingStarted = Bắt đầu
+help.welcome = Hoan nghênh
+
+
diff --git a/l10n/locale/vi_VN/p2_main.properties b/l10n/locale/vi_VN/p2_main.properties
new file mode 100644 (file)
index 0000000..2ad3ca0
--- /dev/null
@@ -0,0 +1,11 @@
+# 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.gps_data = Dữ liệu GPS
+main.my_tracks = Tuyến dường của Tôi
+main.help = Trợ giúp
+main.options = Tùy chọn
+main.save = Lưu
index b96a414..2a5fa1c 100644 (file)
@@ -2,22 +2,31 @@
 <LocaleMap enableLog="false"
     xmlns:mx="http://www.adobe.com/2006/mxml"
     xmlns:factory="mx.core.*"
-    xmlns="library://ns.babelfx.org/l10n/flex/" >
+    xmlns="http://l10n.babelfx.org/" >
 
   <!-- Support for Locale ResourceBundle changes -->
   <mx:Script>
     <![CDATA[
-      import com.mindspace.l10n.commands.ExternalLocaleCommand;
+      import org.babelfx.commands.ExternalLocaleCommand;
+      import org.babelfx.events.LocaleEvent;
       import mx.resources.ResourceManager;
       import mx.resources.IResourceManager;
 
       import net.systemeD.potlatch2.help.HelpDialog;
+
       import net.systemeD.potlatch2.TagViewer;
       import net.systemeD.potlatch2.Toolbox;
+      import net.systemeD.potlatch2.StyleSelector;
+      import net.systemeD.potlatch2.BackgroundSelector;
+
+      import net.systemeD.potlatch2.save.OAuthPanel;
+      import net.systemeD.potlatch2.save.SaveDialog;
+
+      import net.systemeD.potlatch2.options.OptionsDialog;
 
       private function onLocaleChanged(event:Event):void {
           var rMngr : IResourceManager = ResourceManager.getInstance();
-          var sri : SmartResourceInjector = event.target as SmartResourceInjector;
+          var sri : ResourceInjector = event.target as ResourceInjector;
           var options : Array = [
                                   { label : rMngr.getString('p2_main','main.gps_data') },
                                   { label : rMngr.getString('p2_main','main.my_tracks') },
   </commandFactory>
 
   <!--
-  SmartResourceInjectors for targeted class instantiations. Instead of dependency injection of UI instances,
-  we use SRI(s) here to remove any need to know view hierarchy relationships... we simply want a reference
+  ResourceInjectors(at v2) for targeted class instantiations. Instead of dependency injection of UI instances,
+  we use RI(s) here to remove any need to know view hierarchy relationships... we simply want a reference
   to the UI instance when ready.
   -->
 
-  <SmartResourceInjector bundleName="help_dialog" target="{HelpDialog}">
-    <ResourceProxy property="gettingStarted.text" key="help.gettingStarted" />
-    <ResourceProxy property="welcome.label" key="help.welcome" />
-  </SmartResourceInjector>
-
-  <SmartResourceInjector bundleName="p2_main" target="{potlatch2}" localeChange="onLocaleChanged(event)">
-    <ResourceProxy property="bgButton.label" key="main.background" />
-    <ResourceProxy property="styleButton.label" key="main.map_style" />
-    <ResourceProxy property="undo.label" key="main.undo" />
-    <ResourceProxy property="redo.label" key="main.redo" />
-    <ResourceProxy property="helpButton.label" key="main.help" />
-    <ResourceProxy property="optionsButton.label" key="main.options" />
-    <ResourceProxy property="saveButton.label" key="main.save" />
-  </SmartResourceInjector>
-
-  <SmartResourceInjector bundleName="p2_main" target="{TagViewer}">
-    <ResourceProxy property="dndPrompt" key="tag_viewer.dndprompt" />
-  </SmartResourceInjector>
-
-  <SmartResourceInjector bundleName="p2_main" target="{Toolbox}">
-    <ResourceProxy property="deleteNode" key="toolbox.delete_node" />
-    <ResourceProxy property="deleteWay" key="toolbox.delete_way" />
-    <ResourceProxy property="deleteArea" key="toolbox.delete_area" />
-    <ResourceProxy property="deleteItem" key="toolbox.delete_item" />
-    <ResourceProxy property="reverseButton.toolTip" key="toolbox.reverse_direction" />
-    <ResourceProxy property="splitButton.toolTip" key="toolbox.split_way" />
-    <ResourceProxy property="mergeButton.toolTip" key="toolbox.merge_ways" />
-    <ResourceProxy property="straightenButton.toolTip" key="toolbox.straighten_way" />
-    <ResourceProxy property="circulariseButton.toolTip" key="toolbox.make_circular" />
-    <ResourceProxy property="quadrilateraliseButton.toolTip" key="toolbox.make_right_angled" />
-    <ResourceProxy property="parralleliseButton.toolTip" key="toolbox.create_parrallel_way" />
-  </SmartResourceInjector>
-
-</LocaleMap>
\ No newline at end of file
+  <ResourceInjector bundleName="help_dialog" target="{HelpDialog}">
+    <ResourceSetter property="gettingStarted.text" key="help.gettingStarted" />
+    <ResourceSetter property="welcome.label" key="help.welcome" />
+    <ResourceSetter property="whyOpenStreetMap.htmlText" key="help.whyOpenstreetmap" />
+    <ResourceSetter property="activeMembers.htmlText" key="help.activeMembers" />
+    <ResourceSetter property="newMembersText.htmlText" key="help.newMembers" />
+    <!-- wanna call loaderInfo.parameters["site_name"] or getIntroText() -->
+    <!-- <ResourceSetter property="introText.htmlText" key="help.introText" parameters="that"/> -->
+    <ResourceSetter property="introduction.label" key="help.introduction" />
+    <ResourceSetter property="Controls.label" key="help.controls" />
+    <ResourceSetter property="interfaceControls.label" key="help.interfaceControls"/>
+    <ResourceSetter property="background.label" key="help.background"/>
+    <ResourceSetter property="mapBackground.htmlText" key="help.mapBackground"/>
+    <ResourceSetter property="mapStyle.label" key="help.mapStyle"/>
+    <ResourceSetter property="colourStyle.htmlText" key="help.colourStyle"/>
+    <ResourceSetter property="gps.label" key="help.gps"/>
+    <ResourceSetter property="createOsmMap.htmlText" key="help.createOsmMap"/>
+    <ResourceSetter property="undoRedo.label" key="help.undoRedo" />
+    <ResourceSetter property="madeMistake.htmlText" key="help.madeMistake" />
+    <ResourceSetter property="help.label" key="help.help" />
+    <ResourceSetter property="guideInfomation.htmlText" key="help.guideInfomation" />
+    <ResourceSetter property="save.label" key="help.save" />
+ <!--   <ResourceSetter property="saveText.htmlText" key="help.saveText" />    -->
+    <ResourceSetter property="addingFeatures.label" key="help.addingFeatures" />
+    <ResourceSetter property="addingFeaturesText.htmlText" key="help.addingFeaturesText" />
+    <ResourceSetter property="editBeg.label" key="help.editBeg" />
+    <ResourceSetter property="editingFeatures.label" key="help.editingFeatures" />
+    <ResourceSetter property="editingFeaturesText.htmlText" key="help.editingFeaturesText" />
+    <ResourceSetter property="editAdv.label" key="help.editAdv" />
+    <ResourceSetter property="editingFeaturesAdv.label" key="help.editingFeaturesAdv"/>
+    <ResourceSetter property="editingFeaturesAdvText.htmlText" key="help.editingFeaturesAdvText"/>
+    <ResourceSetter property="tag.label" key="help.tag" />
+    <ResourceSetter property="taggingFeatures.label" key="help.taggingFeatures" />
+    <ResourceSetter property="taggingFeaturesText.htmlText" key="help.taggingFeaturesText" />
+    <ResourceSetter property="shortcuts.label" key="help.shortcuts" />
+    <ResourceSetter property="keyboardShortcuts.label" key="help.keyboardShortcuts" />
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{potlatch2}" localeChange="onLocaleChanged(event);">
+    <ResourceSetter property="bgButton.label" key="main.background" />
+    <ResourceSetter property="styleButton.label" key="main.map_style" />
+    <ResourceSetter property="undo.label" key="main.undo" />
+    <ResourceSetter property="redo.label" key="main.redo" />
+    <ResourceSetter property="helpButton.label" key="main.help" />
+    <ResourceSetter property="optionsButton.label" key="main.options" />
+    <ResourceSetter property="saveButton.label" key="main.save" />
+    <ResourceSetter property="gpsButton.label" key="main.gpsButton" />
+  <!--   These are setted on onLocaleChanged()
+    <ResourceSetter property="gpsData.label" key="main.gps_data" />
+    <ResourceSetter property="myTrack.label" key="main.my_track" />
+    <ResourceSetter property="clearGps.label" key="main.clear_gps" />
+    -->
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{OAuthPanel}">
+    <ResourceSetter property="gotLinkBox.text" key="oauth.gotLinkBox" />
+    <ResourceSetter property="authorized.text" key="oauth.authorized" />
+    <ResourceSetter property="deniedLabel.text" key="oauth.deniedLabel" />
+    <ResourceSetter property="rememberMe.label" key="oauth.rememberMe" />
+    <ResourceSetter property="permFail.htmlText" key="oauth.permFail" />
+    <ResourceSetter property="tempFail.text" key="oauth.tempFail" />
+    <ResourceSetter property="tryAccessButton.label" key="oauth.tryAccessButton" />
+    <ResourceSetter property="cancelButton.label" key="oauth.cancelButton" />
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{TagViewer}">
+    <ResourceSetter property="dndPrompt" key="tag_viewer.dndprompt" />
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{Toolbox}">
+    <ResourceSetter property="deleteNode" key="toolbox.delete_node" />
+    <ResourceSetter property="deleteWay" key="toolbox.delete_way" />
+    <ResourceSetter property="deleteArea" key="toolbox.delete_area" />
+    <ResourceSetter property="deleteItem" key="toolbox.delete_item" />
+    <ResourceSetter property="reverseButton.toolTip" key="toolbox.reverse_direction" />
+    <ResourceSetter property="splitButton.toolTip" key="toolbox.split_way" />
+    <ResourceSetter property="mergeButton.toolTip" key="toolbox.merge_ways" />
+    <ResourceSetter property="straightenButton.toolTip" key="toolbox.straighten_way" />
+    <ResourceSetter property="circulariseButton.toolTip" key="toolbox.make_circular" />
+    <ResourceSetter property="quadrilateraliseButton.toolTip" key="toolbox.make_right_angled" />
+    <ResourceSetter property="parralleliseButton.toolTip" key="toolbox.create_parrallel_way" />
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{StyleSelector}">
+    <ResourceSetter property="editButton.label" key="styleSelector.editButton" />
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{BackgroundSelector}">
+    <ResourceSetter property="dim.label" key="backgroundSelector.dim" />
+    <ResourceSetter property="sharpen.label" key="backgroundSelector.sharpen" />
+    <ResourceSetter property="editButton.label" key="backgroundSelector.editButton" />
+    <ResourceSetter property="vectorButton.label" key="backgroundSelector.vectorButton" />
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{SaveDialog}">
+    <ResourceSetter property="editDescription.text" key="save.editDescription" />
+    <ResourceSetter property="commentLabel.label" key="save.commentLabel" />
+  </ResourceInjector>
+
+  <ResourceInjector bundleName="p2_main" target="{OptionsDialog}">
+    <ResourceSetter property="tbcheck.label" key="options.tbcheck" />
+    <ResourceSetter property="cursorcheck.label" key="options.cursorcheck" />
+    <ResourceSetter property="ok.label" key="option.ok" />
+  </ResourceInjector>
+</LocaleMap>
diff --git a/lib/Framework_BabelFx-2.0.4.swc b/lib/Framework_BabelFx-2.0.4.swc
new file mode 100644 (file)
index 0000000..e4ec660
Binary files /dev/null and b/lib/Framework_BabelFx-2.0.4.swc differ
diff --git a/lib/Framework_BabelFx-g400a96.swc b/lib/Framework_BabelFx-g400a96.swc
deleted file mode 100644 (file)
index ccba27d..0000000
Binary files a/lib/Framework_BabelFx-g400a96.swc and /dev/null differ
diff --git a/lib/ant-contrib-1.0b3.jar b/lib/ant-contrib-1.0b3.jar
new file mode 100644 (file)
index 0000000..a7cd45b
Binary files /dev/null and b/lib/ant-contrib-1.0b3.jar differ
index 78d4b91..4b339d0 100644 (file)
@@ -18,7 +18,7 @@
        </mx:HBox>
 
        <mx:HBox>
-       <mx:Button label="Edit..." click="FlexGlobals.topLevelApplication.bgButton.close(); new BackgroundDialog().init('Background imagery',background,Imagery.instance());" />
+       <mx:Button id="editLabel" label="Edit..." click="FlexGlobals.topLevelApplication.bgButton.close(); new BackgroundDialog().init('Background imagery',background,Imagery.instance());" />
        <mx:Button label="Vector file..." click="FlexGlobals.topLevelApplication.bgButton.close(); new VectorSourceDialog().init();" />
        </mx:HBox>
 
index 7ac5c6b..057e6f8 100644 (file)
@@ -11,7 +11,7 @@
                dataProvider="{Stylesheets.instance().getCollection()}"
                rowCount="{Stylesheets.instance().getCollection().length}" />
 
-       <mx:Button label="Edit..." click="FlexGlobals.topLevelApplication.styleButton.close(); new BackgroundDialog().init('Map style',mapStyle,Stylesheets.instance());" />
+       <mx:Button id="editButton" label="Edit..." click="FlexGlobals.topLevelApplication.styleButton.close(); new BackgroundDialog().init('Map style',mapStyle,Stylesheets.instance());" />
 
        <fx:Script><![CDATA[
                import net.systemeD.halcyon.*;
index 45f2972..432b9e0 100644 (file)
     import mx.events.CloseEvent;
     import mx.core.Application;
     import mx.core.FlexGlobals;
+    import net.systemeD.halcyon.Globals;
 
        [Bindable] private var application:Object = FlexGlobals.topLevelApplication;
+       [Bindable] private var locale:String = Globals.vars.locale;
 
     /** Pops up a multi-tabbed help window in the middle of the screen, then remembers that the user has seen it. */
     public function init():void {
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text id="whyOpenStreetMap" condenseWhite="true" width="100%">
               <mx:htmlText>
                 <![CDATA[
                   <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>
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text condenseWhite="true" width="100%" id="activeMembers">
               <mx:htmlText>
                 <![CDATA[
                   <p><b>+ For active OpenStreetMap members</b>, please sign in to OSM before editing</b></p>
       </mx:Grid>
     </mx:VBox>
 
-    <mx:VBox label="Introduction" width="100%" height="100%" hide="introvideo.stopPlaying()" removedFromStage="introvideo.stopPlaying()">
+    <mx:VBox id="introduction" label="Introduction" width="100%" height="100%" hide="introvideo.stopPlaying()" removedFromStage="introvideo.stopPlaying()">
                <help:VideoPlayer width="640" height="369" id="introvideo"
                        file="help/introduction.mp4" 
                        previewImage="help/introduction.jpg" />
        </mx:VBox>
 
-    <mx:VBox label="Controls" width="100%" height="100%">
-      <mx:Label text="Interface Controls" textAlign="center" width="100%" styleName="helpPageHeader"/>
+    <mx:VBox id="Controls" label="Controls" width="100%" height="100%">
+      <mx:Label id="interfaceControls" text="Interface Controls" textAlign="center" width="100%" styleName="helpPageHeader"/>
       <mx:Grid width="100%">
         <mx:GridRow width="100%">
           <mx:GridItem>
-            <mx:Label width="100%" text="Background" styleName="helpHeaderText" />
+            <mx:Label id="background" width="100%" text="Background" styleName="helpHeaderText" />
           </mx:GridItem>
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text id="mapBackground" condenseWhite="true" width="100%">
               <mx:htmlText>
                 <![CDATA[
                   <p>Choose your map background from one of the items in the list or add your own vector file.</p>
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem>
-            <mx:Label width="100%" text="Map Style" styleName="helpHeaderText" />
+            <mx:Label id="mapStyle" width="100%" text="Map Style" styleName="helpHeaderText" />
           </mx:GridItem>
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text id="colourStyle" condenseWhite="true" width="100%">
               <mx:htmlText>
                 <![CDATA[
                   <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>
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem>
-            <mx:Label width="100%" text="GPS" styleName="helpHeaderText" />
+            <mx:Label id="gps" width="100%" text="GPS" styleName="helpHeaderText" />
           </mx:GridItem>
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text id="createOsmMap" condenseWhite="true" width="100%">
               <mx:htmlText>
                 <![CDATA[
                   <p>Create OSM map data using other people's GPS tracks as a background</p>
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem>
-            <mx:Label width="100%" text="MyGPX" styleName="helpHeaderText" />
+            <mx:Label id="myGpx" width="100%" text="MyGPX" styleName="helpHeaderText" />
           </mx:GridItem>
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text id="displayGps" condenseWhite="true" width="100%">
               <mx:htmlText>
                 <![CDATA[
                   <p>Display GPS traces that you've previously uploaded to OpenStreetMap.</p>
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem>
-            <mx:Label width="100%" text="Undo / Redo" styleName="helpHeaderText" />
+            <mx:Label id="undoRedo" width="100%" text="Undo / Redo" styleName="helpHeaderText" />
           </mx:GridItem>
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text id="madeMistake" condenseWhite="true" width="100%">
               <mx:htmlText>
                 <![CDATA[
                   <p>Made a mistake? Just hit undo and/or redo to correct your edits.</p>
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem>
-            <mx:Label width="100%" text="Help" styleName="helpHeaderText" />
+            <mx:Label id="help" width="100%" text="Help" styleName="helpHeaderText" />
           </mx:GridItem>
           <mx:GridItem width="100%">
-            <mx:Text condenseWhite="true" width="100%">
+            <mx:Text id="guideInfomation" condenseWhite="true" width="100%">
               <mx:htmlText>
                 <![CDATA[
                   <p>Brings up this guide in case you need any information as you begin editing.</p>
         </mx:GridRow>
         <mx:GridRow width="100%">
           <mx:GridItem>
-            <mx:Label width="100%" text="Save" styleName="helpHeaderText" />
+            <mx:Label id="save" width="100%" text="Save" styleName="helpHeaderText" />
           </mx:GridItem>
           <mx:GridItem width="100%">
             <mx:Text id="saveText" condenseWhite="true" width="100%" htmlText="{getSaveText()}" initialize="applyTextStyle(saveText)" />
       </mx:Grid>
     </mx:VBox>
     <mx:VBox label="Adding">
-      <mx:Label text="Adding Features" textAlign="center" width="100%" styleName="helpPageHeader" />
+      <mx:Label id="addingFeatures" text="Adding Features" textAlign="center" width="100%" styleName="helpPageHeader" />
       <mx:Text condenseWhite="true" width="100%" id="addingFeaturesText" initialize="applyTextStyle(addingFeaturesText)">
         <mx:htmlText>
           <![CDATA[
         </mx:htmlText>
       </mx:Text>
     </mx:VBox>
-    <mx:VBox label="Edit (Beg.)">
-      <mx:Label text="Editing Features (Beginner)" textAlign="center" width="100%" styleName="helpPageHeader" />
-      <mx:Text condenseWhite="true" width="100%" height="100%">
+    <mx:VBox id="editBeg" label="Edit (Beg.)">
+      <mx:Label id="editingFeatures" text="Editing Features (Beginner)" textAlign="center" width="100%" styleName="helpPageHeader" />
+      <mx:Text id="editingFeaturesText" condenseWhite="true" width="100%" height="100%">
         <mx:htmlText>
           <![CDATA[
             <p><b>To add a point to an existing way</b>, select the way and shift+click at the desired location.</p>
         </mx:htmlText>
       </mx:Text>
     </mx:VBox>
-    <mx:VBox label="Edit (Adv.)">
-      <mx:Label text="Editing Features (Advanced)" textAlign="center" width="100%" styleName="helpPageHeader" />
-      <mx:Text condenseWhite="true" width="100%" height="100%">
+    <mx:VBox id="editAdv" label="Edit (Adv.)">
+      <mx:Label id="editingFeaturesAdv" text="Editing Features (Advanced)" textAlign="center" width="100%" styleName="helpPageHeader" />
+      <mx:Text id="editingFeaturesAdvText" condenseWhite="true" width="100%" height="100%">
         <mx:htmlText>
           <![CDATA[
             <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>
         </mx:htmlText>
       </mx:Text>
     </mx:VBox>
-    <mx:VBox label="Tag">
-    <mx:Label text="Tagging Features" textAlign="center" width="100%" styleName="helpPageHeader" />
+    <mx:VBox id="tag" label="Tag">
+    <mx:Label id="taggingFeatures" text="Tagging Features" textAlign="center" width="100%" styleName="helpPageHeader" />
       <mx:Text condenseWhite="true" width="100%" height="100%" id="taggingFeaturesText" initialize="applyTextStyle(taggingFeaturesText)">
         <mx:htmlText>
           <![CDATA[
       </mx:Text>
     </mx:VBox>
     <mx:VBox label="Shortcuts" id="shortcuts">
-      <mx:Label text="Keyboard Shortcuts" textAlign="center" width="100%" styleName="helpPageHeader" />
+      <mx:Label text="Keyboard Shortcuts" textAlign="center" width="100%" styleName="helpPageHeader" id="keyboardShortcuts" />
       <mx:HBox id="shortcuts1" width="100%"/>
       <mx:HBox id="shortcuts2" width="100%">
         <mx:HBox id="shortcuts2a" width="100%" />
   </mx:TabNavigator>
 
   <mx:ControlBar>
-    <mx:Label text="Version: {application.version} Build: {application.build_number}" />
+    <mx:VBox>
+      <mx:Label text="Version: {application.version} Build: {application.build_number}" />
+      <mx:Label text="Locale: {locale}" />
+    </mx:VBox>
     <mx:Spacer width="100%"/>
     <mx:Button label="Ok" click="PopUpManager.removePopUp(this);" styleName="titleWindowButton" />
   </mx:ControlBar>
index 6e3fdb2..ab17648 100644 (file)
@@ -90,7 +90,7 @@
 
   <mx:ControlBar>
     <mx:Spacer width="100%"/>
-    <mx:Button label="Ok" click="PopUpManager.removePopUp(this);" styleName="titleWindowButton" />
+    <mx:Button id="ok" label="Ok" click="PopUpManager.removePopUp(this);" styleName="titleWindowButton" />
   </mx:ControlBar>
 
 </mx:TitleWindow>
index cf5f663..f345701 100644 (file)
@@ -21,7 +21,7 @@
            <mx:LinkButton id="link"
                label="http://oauth.dev.openstreetmap.org/oauth/authorize?somekey"
                click="openURL(authoriseURL); tryAccessButton.enabled=true;"/>
-           <mx:Text width="100%">
+           <mx:Text id="authorized" width="100%">
              <mx:text>Once you've authorised the access click the 'Try Access' button below</mx:text> <!-- ' -->
            </mx:Text>
            <mx:Text styleName="failText" visible="false" id="deniedLabel">
@@ -34,7 +34,7 @@
        </mx:VBox>
        
        <mx:VBox id="permFailPanel" width="100%" height="100%">
-         <mx:Text styleName="failText" width="100%" condenseWhite="true">
+         <mx:Text id="permFail" styleName="failText" width="100%" condenseWhite="true">
            <mx:htmlText><![CDATA[
              <p>The server refused this application's credentials -- an authorisation link
              could not be obtained.
@@ -47,7 +47,7 @@
        </mx:VBox>
        
        <mx:VBox id="tempFailPanel" width="100%" height="100%">
-         <mx:Text width="100%">
+         <mx:Text id="tempFail" width="100%">
            <mx:text>
              There was a problem contacting the server to get authorisation.
              This may be a temporary error, try again later.
@@ -63,7 +63,7 @@
                indeterminate="true"/>
         <mx:Spacer width="100%"/>
 
-           <mx:Button label="Cancel" click="PopUpManager.removePopUp(this);" styleName="titleWindowButton" />
+           <mx:Button id="cancelButton" label="Cancel" click="PopUpManager.removePopUp(this);" styleName="titleWindowButton" />
            <mx:Button id="tryAccessButton" label="Try Access" click="getAccessToken()" enabled="false" styleName="titleWindowButton" />
        </mx:ControlBar>
        
index d587f4b..0dda019 100644 (file)
     <mx:VBox width="100%" height="100%" verticalGap="0">
       <mx:ViewStack id="tagStack" width="100%" height="100%">
         <mx:VBox width="100%" height="100%" label="Simple">
-          <mx:Text width="100%">
+          <mx:Text id="editDescription" width="100%">
             <mx:text>
                Please enter a description of your edits. This will be used to give other
                mappers an idea of what changes you are making.
             </mx:text>
           </mx:Text>
-          <mx:Label text="Comment:"/>
+          <mx:Label id="commentLabel" text="Comment:"/>
           <mx:TextArea id="comment" maxChars="255" width="100%" height="100%" change="commentChanged(event);" textInput="monitorEnter(event);" />
         </mx:VBox>
         
index 7c16e28..fc3c224 100644 (file)
@@ -48,7 +48,7 @@
             creationComplete="bgButton.popUp = new BackgroundSelector();"/>
         <mx:PopUpButton id="styleButton" label="Map Style" openAlways="true" styleName="appBarButton"
             creationComplete="styleButton.popUp = new StyleSelector();"/>
-               <mx:PopUpMenuButton id="gpsButton" styleName="appBarButton"
+               <mx:PopUpMenuButton id="gpsButton" label="GPS Data" styleName="appBarButton"
                    itemClick="if (event.index==0) { trackLoader.load(); } 
                          else if (event.index==1) { new MyGpxDialog().init(); } 
                                              else { mx.controls.Menu(gpsButton.popUp).selectedIndex=0; 
         import mx.managers.DragManager;
         import mx.core.DragSource;
         import mx.controls.Alert;
-        import com.mindspace.l10n.events.LocaleEvent;
+        import org.babelfx.events.LocaleEvent;
 
         public var theMap:Map;
         public var theController:EditController;
         include "version.as";
 
                private function startInit():void {
-            /* For reasons that I don't yet understand, the en_US locale is the default and doesn't work at all. */
-            /* Change this to another locale (e.g. fr_FR) to see the differences. */
-            if (loaderInfo.parameters['locale']) {
-              dispatchEvent(new LocaleEvent(LocaleEvent.LOAD_LOCALE,loaderInfo.parameters['locale']));
-            }
                        var loader:Loader = new Loader();
                        loader.contentLoaderInfo.addEventListener(Event.COMPLETE, startApp);
                        loader.load(new URLRequest("FontLibrary.swf"));
+
+            if (loaderInfo.parameters['locale']) {
+                Globals.vars.locale = loaderInfo.parameters['locale'];
+                dispatchEvent(new LocaleEvent(LocaleEvent.LOAD_LOCALE, loaderInfo.parameters['locale']));
+                dispatchEvent(new LocaleEvent(LocaleEvent.LOAD_LOCALE, 'en_US')); // think en_US is default
+                resourceManager.localeChain = [loaderInfo.parameters['locale'], 'en_US'];
+            }
                }
                
                private function startApp(event:Event):void {
index 5b17f06..0808064 100644 (file)
@@ -69,6 +69,7 @@
       args["show_help"] = "once";
       args["site_name"] = "OpenStreetMap";
       args["force_auth"] = "force";
+      args["locale"] = 'en_US';      // you can enjoy de_DE, pl_PL, fr_FR, ja_JP, id_ID, en_GB
 
       var params = false;