Ignore:
Timestamp:
2009-12-12T13:33:59+01:00 (15 years ago)
Author:
guggis
Message:

'Update to JOSM 2616'

Location:
applications/editors/josm/plugins/waydownloader
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/waydownloader/build.xml

    r18962 r19045  
    2222-->
    2323<project name="waydownloader" default="dist" basedir=".">
    24        
     24
    2525        <!--
    2626      ** update before publishing
    2727        -->
    28         <property name="commit.message" value="Publishing: various fixes and improvements, see 18613" />               
    29         <property name="plugin.main.version" value="2578" />
    30        
    31        
    32     <!--
     28        <property name="commit.message" value="Update to JOSM 2616" />
     29        <property name="plugin.main.version" value="2616" />
     30
     31
     32        <!--
    3333      ************************************************
    3434      ** should not be necessary to change the following properties
    3535     -->
    36     <property name="josm"                   location="../../core/dist/josm-custom.jar"/>
    37     <property name="plugin.build.dir"       value="build"/>
    38     <property name="plugin.src.dir"         value="src"/>
    39     <!-- this is the directory where the plugin jar is copied to -->
    40     <property name="plugin.dist.dir"        value="../../dist"/>
    41     <property name="ant.build.javac.target" value="1.5"/>
    42     <property name="plugin.dist.dir"        value="../../dist"/>
    43     <property name="plugin.jar"             value="${plugin.dist.dir}/${ant.project.name}.jar"/>
    44 
    45     <!--
     36        <property name="josm"                   location="../../core/dist/josm-custom.jar"/>
     37        <property name="plugin.build.dir"       value="build"/>
     38        <property name="plugin.src.dir"         value="src"/>
     39        <!-- this is the directory where the plugin jar is copied to -->
     40        <property name="plugin.dist.dir"        value="../../dist"/>
     41        <property name="ant.build.javac.target" value="1.5"/>
     42        <property name="plugin.dist.dir"        value="../../dist"/>
     43        <property name="plugin.jar"             value="${plugin.dist.dir}/${ant.project.name}.jar"/>
     44
     45        <!--
    4646    **********************************************************
    4747    ** init - initializes the build
    4848    **********************************************************
    4949    -->
    50     <target name="init">
    51         <mkdir dir="${plugin.build.dir}"/>
    52     </target>
    53 
    54     <!--
     50        <target name="init">
     51                <mkdir dir="${plugin.build.dir}"/>
     52        </target>
     53
     54        <!--
    5555    **********************************************************
    5656    ** compile - complies the source tree
    5757    **********************************************************
    5858    -->
    59     <target name="compile" depends="init">
    60         <echo message="compiling sources for  ${plugin.jar} ... "/>
    61         <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}">
    62             <compilerarg value="-Xlint:deprecation"/>
    63             <compilerarg value="-Xlint:unchecked"/>
    64         </javac>
    65     </target>
    66 
    67     <!--
     59        <target name="compile" depends="init">
     60                <echo message="compiling sources for  ${plugin.jar} ... "/>
     61                <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}">
     62                        <compilerarg value="-Xlint:deprecation"/>
     63                        <compilerarg value="-Xlint:unchecked"/>
     64                </javac>
     65        </target>
     66
     67        <!--
    6868    **********************************************************
    6969    ** dist - creates the plugin jar
    7070    **********************************************************
    7171    -->
    72     <target name="dist" depends="compile,revision">
    73         <echo message="creating ${plugin.jar} ... "/>
    74         <copy todir="${plugin.build.dir}/resources">
    75             <fileset dir="resources"/>
    76         </copy>
    77         <copy todir="${plugin.build.dir}/images">
    78             <fileset dir="images"/>
    79         </copy>
    80         <copy todir="${plugin.build.dir}">
    81             <fileset dir=".">
    82                 <include name="README" />
    83                 <include name="LICENSE" />
    84             </fileset>
    85         </copy>
    86         <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
    87     <!--
     72        <target name="dist" depends="compile,revision">
     73                <echo message="creating ${plugin.jar} ... "/>
     74                <copy todir="${plugin.build.dir}/resources">
     75                        <fileset dir="resources"/>
     76                </copy>
     77                <copy todir="${plugin.build.dir}/images">
     78                        <fileset dir="images"/>
     79                </copy>
     80                <copy todir="${plugin.build.dir}">
     81                        <fileset dir=".">
     82                                <include name="README" />
     83                                <include name="LICENSE" />
     84                        </fileset>
     85                </copy>
     86                <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}">
     87                        <!--
    8888        ************************************************
    8989        ** configure these properties. Most of them will be copied to the plugins
     
    9393        ************************************************
    9494    -->
    95             <manifest>
    96                 <attribute name="Author" value="Harry Wood"/>
    97                 <attribute name="Plugin-Class" value="org.openstreetmap.josm.plugins.waydownloader.WayDownloaderPlugin"/>
    98                 <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
    99                 <attribute name="Plugin-Description" value="Easy downloading along a long set of interconnected ways"/>
    100                 <attribute name="Plugin-Link" value="http://wiki.openstreetmap.org/wiki/JOSM/Plugins/WayDownloaderPlugin"/>
    101                 <attribute name="Plugin-Mainversion" value="2401"/>
    102                 <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
    103             </manifest>
    104         </jar>
    105     </target>
    106 
    107     <!--
     95                        <manifest>
     96                                <attribute name="Author" value="Harry Wood"/>
     97                                <attribute name="Plugin-Class" value="org.openstreetmap.josm.plugins.waydownloader.WayDownloaderPlugin"/>
     98                                <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
     99                                <attribute name="Plugin-Description" value="Easy downloading along a long set of interconnected ways"/>
     100                                <attribute name="Plugin-Link" value="http://wiki.openstreetmap.org/wiki/JOSM/Plugins/WayDownloaderPlugin"/>
     101                                <attribute name="Plugin-Mainversion" value="${plugin.main.version}"/>
     102                                <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
     103                        </manifest>
     104                </jar>
     105        </target>
     106
     107        <!--
    108108    **********************************************************
    109109    ** revision - extracts the current revision number for the
     
    112112    **********************************************************
    113113    -->
    114     <target name="revision">
    115 
    116         <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
    117             <env key="LANG" value="C"/>
    118             <arg value="info"/>
    119             <arg value="--xml"/>
    120             <arg value="."/>
    121         </exec>
    122         <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
    123         <delete file="REVISION"/>
    124     </target>
    125 
    126     <!--
     114        <target name="revision">
     115
     116                <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false">
     117                        <env key="LANG" value="C"/>
     118                        <arg value="info"/>
     119                        <arg value="--xml"/>
     120                        <arg value="."/>
     121                </exec>
     122                <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/>
     123                <delete file="REVISION"/>
     124        </target>
     125
     126        <!--
    127127    **********************************************************
    128128    ** clean - clean up the build environment
    129129    **********************************************************
    130130    -->
    131     <target name="clean">
    132         <delete dir="${plugin.build.dir}"/>
    133         <delete file="${plugin.jar}"/>
    134     </target>
    135 
    136     <!--
     131        <target name="clean">
     132                <delete dir="${plugin.build.dir}"/>
     133                <delete file="${plugin.jar}"/>
     134        </target>
     135
     136        <!--
    137137    **********************************************************
    138138    ** install - install the plugin in your local JOSM installation
    139139    **********************************************************
    140140    -->
    141     <target name="install" depends="dist">
    142         <property environment="env"/>
    143         <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
    144             <and>
    145                 <os family="windows"/>
    146             </and>
    147         </condition>
    148         <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
    149     </target>
    150        
    151        
     141        <target name="install" depends="dist">
     142                <property environment="env"/>
     143                <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins">
     144                        <and>
     145                                <os family="windows"/>
     146                        </and>
     147                </condition>
     148                <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
     149        </target>
     150
     151
    152152        <!--
    153153                 ************************** Publishing the plugin ***********************************
    154                 -->
    155                         <!--
    156                           ** extracts the JOSM release for the JOSM version in ../core and saves it in the
    157                           ** property ${coreversion.info.entry.revision}
    158                           **
    159                         -->
    160                         <target name="core-info">
    161                         <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
    162                                     <env key="LANG" value="C"/>
    163                                     <arg value="info"/>
    164                                     <arg value="--xml"/>
    165                                     <arg value="../../core"/>
    166                         </exec>
    167                         <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
    168                                 <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>                 
    169                                 <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
    170                                 <delete file="core.info.xml" />
    171                         </target>
    172 
    173                         <!--
    174                          ** commits the source tree for this plugin
    175                         -->
    176                         <target name="commit-current">
    177                                 <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
    178                             <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    179                                             <env key="LANG" value="C"/>
    180                                                 <arg value="-m '${commit.message}'"/>
    181                                                         <arg value="commit"/>
    182                                             <arg value="."/>
    183                             </exec>         
    184                         </target>
    185 
    186                         <!--
    187                         ** updates (svn up) the source tree for this plugin
    188                         -->
    189                         <target name="update-current">
    190                                 <echo>Updating plugin source ...</echo>
    191                             <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    192                                             <env key="LANG" value="C"/>
    193                                             <arg value="up"/>
    194                                             <arg value="."/>
    195                             </exec>         
    196                                 <echo>Updating ${plugin.jar} ...</echo>
    197                             <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    198                                             <env key="LANG" value="C"/>
    199                                             <arg value="up"/>
    200                                             <arg value="../dist/${plugin.jar}"/>
    201                             </exec>         
    202                         </target>
    203                        
    204                         <!--
    205                          ** commits the plugin.jar
    206                          -->
    207                         <target name="commit-dist">
    208                                         <echo>
     154        -->
     155        <!--
     156        ** extracts the JOSM release for the JOSM version in ../core and saves it in the
     157        ** property ${coreversion.info.entry.revision}
     158        **
     159        -->
     160        <target name="core-info">
     161                <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
     162                        <env key="LANG" value="C"/>
     163                        <arg value="info"/>
     164                        <arg value="--xml"/>
     165                        <arg value="../../core"/>
     166                </exec>
     167                <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
     168                <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>
     169                <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
     170                <delete file="core.info.xml" />
     171        </target>
     172
     173        <!--
     174        ** commits the source tree for this plugin
     175        -->
     176        <target name="commit-current">
     177                <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
     178                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     179                        <env key="LANG" value="C"/>
     180                        <arg value="-m '${commit.message}'"/>
     181                        <arg value="commit"/>
     182                        <arg value="."/>
     183                </exec>
     184        </target>
     185
     186        <!--
     187        ** updates (svn up) the source tree for this plugin
     188        -->
     189        <target name="update-current">
     190                <echo>Updating plugin source ...</echo>
     191                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     192                        <env key="LANG" value="C"/>
     193                        <arg value="up"/>
     194                        <arg value="."/>
     195                </exec>
     196                <echo>Updating ${plugin.jar} ...</echo>
     197                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     198                        <env key="LANG" value="C"/>
     199                        <arg value="up"/>
     200                        <arg value="../dist/${plugin.jar}"/>
     201                </exec>
     202        </target>
     203
     204        <!--
     205        ** commits the plugin.jar
     206        -->
     207        <target name="commit-dist">
     208                <echo>
    209209        ***** Properties of published ${plugin.jar} *****
    210210        Commit message    : '${commit.message}'                                 
     
    215215                                               
    216216        Now commiting ${plugin.jar} ...
    217         </echo>                                 
    218                                     <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
    219                                                     <env key="LANG" value="C"/>
    220                                                                 <arg value="-m '${commit.message}'"/>
    221                                                                 <arg value="commit"/>                                           
    222                                                 <arg value="${plugin.jar}"/>
    223                                     </exec>         
    224                         </target>
    225                                        
    226                         <target name="publish" depends="core-info,commit-current,update-current,clean,dist,commit-dist">
    227                         </target>       
     217        </echo>
     218                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     219                        <env key="LANG" value="C"/>
     220                        <arg value="-m '${commit.message}'"/>
     221                        <arg value="commit"/>
     222                        <arg value="${plugin.jar}"/>
     223                </exec>
     224        </target>
     225
     226        <!-- ** make sure svn is present as a command line tool ** -->
     227        <target name="ensure-svn-present">
     228                <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false" failonerror="false" resultproperty="svn.exit.code">
     229                        <env key="LANG" value="C" />
     230                        <arg value="--version" />
     231                </exec>
     232                <fail message="Fatal: command 'svn --version' failed. Please make sure svn is installed on your system.">
     233                        <!-- return code not set at all? Most likely svn isn't installed -->
     234                        <condition>
     235                                <not>
     236                                        <isset property="svn.exit.code" />
     237                                </not>
     238                        </condition>
     239                </fail>
     240                <fail message="Fatal: command 'svn --version' failed. Please make sure a working copy of svn is installed on your system.">
     241                        <!-- error code from SVN? Most likely svn is not what we are looking for on this system -->
     242                        <condition>
     243                                <isfailure code="${svn.exit.code}" />
     244                        </condition>
     245                </fail>
     246        </target>
     247
     248        <target name="publish" depends="ensure-svn-present, core-info,commit-current,update-current,clean,dist,commit-dist">
     249        </target>
    228250</project>
  • applications/editors/josm/plugins/waydownloader/src/org/openstreetmap/josm/plugins/waydownloader/WayDownloaderPlugin.java

    r18962 r19045  
    9292        public void actionPerformed(ActionEvent e) {
    9393            selectedNode = null;
    94             Collection<OsmPrimitive> selection = Main.main.getCurrentDataSet().getSelectedNodes();
     94            Collection<Node> selection = Main.main.getCurrentDataSet().getSelectedNodes();
    9595            if (selection.size()==0) {
    96                 selection = Main.main.getCurrentDataSet().getSelectedWays();
    97                 if (!workFromWaySelection(selection)) {
     96                Collection<Way> selWays = Main.main.getCurrentDataSet().getSelectedWays();
     97                if (!workFromWaySelection(selWays)) {
    9898                    showWarningMessage(tr("<html>Neither a node nor a way with an endpoint outside of the<br>current download areas is selected.<br>Select a node on the start or end of a way or an entire way first.</html>"));
    9999                    return;
     
    302302     * return true if this worked
    303303     */
    304     private boolean workFromWaySelection(Collection<OsmPrimitive> selection) {
     304    private boolean workFromWaySelection(Collection<? extends OsmPrimitive> selection) {
    305305        if (selection.size() != 1)
    306306            return false;
Note: See TracChangeset for help on using the changeset viewer.