Changeset 19452 in osm for applications/editors/josm/plugins
- Timestamp:
- 2010-01-13T14:48:46+01:00 (15 years ago)
- Location:
- applications/editors/josm/plugins/michigan_left
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/michigan_left/build.xml
r17649 r19452 20 20 ** dialog. You have to check it in first. 21 21 ** 22 ** Use the ant target 'publish' to check in the plugin and make it available to other 23 ** JOSM users: 24 ** set the properties commit.message and plugin.main.version 25 ** and run 26 ** > ant publish 27 ** 28 ** 22 29 --> 23 30 <project name="michigan_left" default="dist" basedir="."> 24 <!-- 31 32 <!-- enter the SVN commit message --> 33 <property name="commit.message" value="Commit message" /> 34 <!-- enter the *lowest* JOSM version this plugin is currently compatible with --> 35 <property name="plugin.main.version" value="" /> 36 37 <!-- 25 38 ************************************************ 26 39 ** should not be necessary to change the following properties 27 40 --> 28 29 30 31 32 33 34 35 36 37 41 <property name="josm" location="../../core/dist/josm-custom.jar"/> 42 <property name="plugin.build.dir" value="build"/> 43 <property name="plugin.src.dir" value="src"/> 44 <!-- this is the directory where the plugin jar is copied to --> 45 <property name="plugin.dist.dir" value="../../dist"/> 46 <property name="ant.build.javac.target" value="1.5"/> 47 <property name="plugin.dist.dir" value="../../dist"/> 48 <property name="plugin.jar" value="${plugin.dist.dir}/${ant.project.name}.jar"/> 49 50 <!-- 38 51 ********************************************************** 39 52 ** init - initializes the build 40 53 ********************************************************** 41 54 --> 42 43 44 45 46 55 <target name="init"> 56 <mkdir dir="${plugin.build.dir}"/> 57 </target> 58 59 <!-- 47 60 ********************************************************** 48 61 ** compile - complies the source tree 49 62 ********************************************************** 50 63 --> 51 52 53 54 55 56 57 58 59 64 <target name="compile" depends="init"> 65 <echo message="compiling sources for ${plugin.jar} ... "/> 66 <javac srcdir="src" classpath="${josm}" debug="true" destdir="${plugin.build.dir}"> 67 <compilerarg value="-Xlint:deprecation"/> 68 <compilerarg value="-Xlint:unchecked"/> 69 </javac> 70 </target> 71 72 <!-- 60 73 ********************************************************** 61 74 ** dist - creates the plugin jar 62 75 ********************************************************** 63 76 --> 64 65 66 67 68 69 70 71 72 73 74 75 76 77 <target name="dist" depends="compile,revision"> 78 <echo message="creating ${plugin.jar.name} ... "/> 79 <copy todir="${plugin.build.dir}/images"> 80 <fileset dir="images"/> 81 </copy> 82 <copy todir="${plugin.build.dir}"> 83 <fileset dir="."> 84 <include name="README" /> 85 <include name="LICENSE" /> 86 </fileset> 87 </copy> 88 <jar destfile="${plugin.jar}" basedir="${plugin.build.dir}"> 89 <!-- 77 90 ************************************************ 78 91 ** configure these properties. Most of them will be copied to the plugins … … 82 95 ************************************************ 83 96 --> 84 85 86 87 88 89 90 <attribute name="Plugin-Mainversion" value="1"/>91 92 93 94 95 96 97 <manifest> 98 <attribute name="Author" value="Nakor"/> 99 <attribute name="Plugin-Class" value="MichiganLeft.MichiganLeft"/> 100 <attribute name="Plugin-Date" value="${version.entry.commit.date}"/> 101 <attribute name="Plugin-Description" value="Adds no left turn for sets of 4 or 5 ways"/> 102 <attribute name="Plugin-Link" value="http://wiki.openstreetmap.org/wiki/JOSM/Plugins/MichiganLeft"/> 103 <attribute name="Plugin-Mainversion" value="${plugin.main.version}"/> 104 <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/> 105 </manifest> 106 </jar> 107 </target> 108 109 <!-- 97 110 ********************************************************** 98 111 ** revision - extracts the current revision number for the … … 101 114 ********************************************************** 102 115 --> 103 104 105 106 107 108 109 110 111 112 113 114 115 116 <target name="revision"> 117 118 <exec append="false" output="REVISION" executable="svn" failifexecutionfails="false"> 119 <env key="LANG" value="C"/> 120 <arg value="info"/> 121 <arg value="--xml"/> 122 <arg value="."/> 123 </exec> 124 <xmlproperty file="REVISION" prefix="version" keepRoot="false" collapseAttributes="true"/> 125 <delete file="REVISION"/> 126 </target> 127 128 <!-- 116 129 ********************************************************** 117 130 ** clean - clean up the build environment 118 131 ********************************************************** 119 132 --> 120 121 122 123 124 125 133 <target name="clean"> 134 <delete dir="${plugin.build.dir}"/> 135 <delete file="${plugin.jar}"/> 136 </target> 137 138 <!-- 126 139 ********************************************************** 127 140 ** install - install the plugin in your local JOSM installation 128 141 ********************************************************** 129 142 --> 130 <target name="install" depends="dist"> 131 <property environment="env"/> 132 <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins"> 133 <and> 134 <os family="windows"/> 135 </and> 136 </condition> 137 <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/> 138 </target> 143 <target name="install" depends="dist"> 144 <property environment="env"/> 145 <condition property="josm.plugins.dir" value="${env.APPDATA}/JOSM/plugins" else="${user.home}/.josm/plugins"> 146 <and> 147 <os family="windows"/> 148 </and> 149 </condition> 150 <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/> 151 </target> 152 153 <!-- 154 ************************** Publishing the plugin *********************************** 155 --> 156 <!-- 157 ** extracts the JOSM release for the JOSM version in ../core and saves it in the 158 ** property ${coreversion.info.entry.revision} 159 ** 160 --> 161 <target name="core-info"> 162 <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false"> 163 <env key="LANG" value="C"/> 164 <arg value="info"/> 165 <arg value="--xml"/> 166 <arg value="../../core"/> 167 </exec> 168 <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/> 169 <echo>Building against core revision ${coreversion.info.entry.revision}.</echo> 170 <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo> 171 <delete file="core.info.xml" /> 172 </target> 173 174 <!-- 175 ** commits the source tree for this plugin 176 --> 177 <target name="commit-current"> 178 <echo>Commiting the plugin source with message '${commit.message}' ...</echo> 179 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false"> 180 <env key="LANG" value="C"/> 181 <arg value="commit"/> 182 <arg value="-m '${commit.message}'"/> 183 <arg value="."/> 184 </exec> 185 </target> 186 187 <!-- 188 ** updates (svn up) the source tree for this plugin 189 --> 190 <target name="update-current"> 191 <echo>Updating plugin source ...</echo> 192 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false"> 193 <env key="LANG" value="C"/> 194 <arg value="up"/> 195 <arg value="."/> 196 </exec> 197 <echo>Updating ${plugin.jar} ...</echo> 198 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false"> 199 <env key="LANG" value="C"/> 200 <arg value="up"/> 201 <arg value="../dist/${plugin.jar}"/> 202 </exec> 203 </target> 204 205 <!-- 206 ** commits the plugin.jar 207 --> 208 <target name="commit-dist"> 209 <echo> 210 ***** Properties of published ${plugin.jar} ***** 211 Commit message : '${commit.message}' 212 Plugin-Mainversion: ${plugin.main.version} 213 JOSM build version: ${coreversion.info.entry.revision} 214 Plugin-Version : ${version.entry.commit.revision} 215 ***** / Properties of published ${plugin.jar} ***** 216 217 Now commiting ${plugin.jar} ... 218 </echo> 219 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false"> 220 <env key="LANG" value="C"/> 221 <arg value="-m '${commit.message}'"/> 222 <arg value="commit"/> 223 <arg value="${plugin.jar}"/> 224 </exec> 225 </target> 226 227 <!-- ** make sure svn is present as a command line tool ** --> 228 <target name="ensure-svn-present"> 229 <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false" failonerror="false" resultproperty="svn.exit.code"> 230 <env key="LANG" value="C" /> 231 <arg value="--version" /> 232 </exec> 233 <fail message="Fatal: command 'svn --version' failed. Please make sure svn is installed on your system."> 234 <!-- return code not set at all? Most likely svn isn't installed --> 235 <condition> 236 <not> 237 <isset property="svn.exit.code" /> 238 </not> 239 </condition> 240 </fail> 241 <fail message="Fatal: command 'svn --version' failed. Please make sure a working copy of svn is installed on your system."> 242 <!-- error code from SVN? Most likely svn is not what we are looking on this system --> 243 <condition> 244 <isfailure code="${svn.exit.code}" /> 245 </condition> 246 </fail> 247 </target> 248 249 <target name="publish" depends="ensure-svn-present,core-info,commit-current,update-current,clean,dist,commit-dist"> 250 </target> 139 251 </project> -
applications/editors/josm/plugins/michigan_left/src/MichiganLeft/MichiganLeft.java
r17647 r19452 6 6 import org.openstreetmap.josm.gui.MainMenu; 7 7 import org.openstreetmap.josm.plugins.Plugin; 8 import org.openstreetmap.josm.plugins.PluginInformation; 8 9 9 10 public class MichiganLeft extends Plugin { 10 11 JMenuItem MichiganLeft; 11 12 12 public MichiganLeft() { 13 public MichiganLeft(PluginInformation info) { 14 super(info); 13 15 MichiganLeft = MainMenu.add(Main.main.menu.toolsMenu, new MichiganLeftAction()); 14 16
Note:
See TracChangeset
for help on using the changeset viewer.