Ignore:
Timestamp:
2009-12-03T21:01:48+01:00 (16 years ago)
Author:
guggis
Message:

'Updated to new referrer support in OsmPrimitive'

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

Legend:

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

    r18621 r18926  
     1<!--
     2** This is the buld file for the utilsplugin plugin
     3**
     4** Maintaining versions
     5** ====================
     6** see README.template
     7**
     8** Usage
     9** =====
     10** To build it run
     11**
     12**    > ant  dist
     13**
     14** To install the generated plugin locally (in your default plugin directory) run
     15**
     16**    > ant  install
     17**
     18** To build against the core in ../../core, create a correct manifest and deploy to
     19** SVN,
     20**    set the properties commit.message and plugin.main.version
     21** and run
     22**    > ant  publish
     23**
     24**
     25-->
    126<project name="utilsplugin" default="dist" basedir=".">
    227    <property name="josm"                   location="../../core/dist/josm-custom.jar"/>
     
    530    <property name="plugin.jar"             value="${plugin.dist.dir}/${ant.project.name}.jar"/>
    631    <property name="ant.build.javac.target" value="1.5"/>
     32       
     33
     34    <property name="commit.message" value="Updated to new referrer support in OsmPrimitive" />         
     35    <property name="plugin.main.version" value="2565" />
     36       
     37       
    738    <target name="init">
    839        <mkdir dir="${plugin.build.dir}"/>
     
    2556                <attribute name="Plugin-Date" value="${version.entry.commit.date}"/>
    2657                <attribute name="Plugin-Description" value="Several utilities that make your life easier: e.g. simplify way, join areas, jump to position."/>
    27                 <attribute name="Plugin-Mainversion" value="2402"/>
     58                <attribute name="Plugin-Mainversion" value="${plugin.main.version}"/>
    2859                <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
    2960            </manifest>
     
    5384        <copy file="${plugin.jar}" todir="${josm.plugins.dir}"/>
    5485    </target>
     86       
     87        <!--
     88                         ************************** Publishing the plugin ***********************************
     89                        -->
     90                                <!--
     91                                  ** extracts the JOSM release for the JOSM version in ../core and saves it in the
     92                                  ** property ${coreversion.info.entry.revision}
     93                                  **
     94                                -->
     95                                <target name="core-info">
     96                                <exec append="false" output="core.info.xml" executable="svn" failifexecutionfails="false">
     97                                            <env key="LANG" value="C"/>
     98                                            <arg value="info"/>
     99                                            <arg value="--xml"/>
     100                                            <arg value="../../core"/>
     101                                </exec>
     102                                <xmlproperty file="core.info.xml" prefix="coreversion" keepRoot="true" collapseAttributes="true"/>
     103                                        <echo>Building against core revision ${coreversion.info.entry.revision}.</echo>                 
     104                                        <echo>Plugin-Mainversion is set to ${plugin.main.version}.</echo>
     105                                        <delete file="core.info.xml" />
     106                                </target>
     107
     108                                <!--
     109                                 ** commits the source tree for this plugin
     110                                -->
     111                                <target name="commit-current">
     112                                        <echo>Commiting the plugin source with message '${commit.message}' ...</echo>
     113                                    <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     114                                                    <env key="LANG" value="C"/>
     115                                                    <arg value="commit"/>
     116                                                    <arg value="-m '${commit.message}'"/>
     117                                                    <arg value="."/>
     118                                    </exec>         
     119                                </target>
     120
     121                                <!--
     122                                ** updates (svn up) the source tree for this plugin
     123                                -->
     124                                <target name="update-current">
     125                                        <echo>Updating plugin source ...</echo>
     126                                    <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     127                                                    <env key="LANG" value="C"/>
     128                                                    <arg value="up"/>
     129                                                    <arg value="."/>
     130                                    </exec>         
     131                                        <echo>Updating ${plugin.jar} ...</echo>
     132                                    <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     133                                                    <env key="LANG" value="C"/>
     134                                                    <arg value="up"/>
     135                                                    <arg value="../dist/${plugin.jar}"/>
     136                                    </exec>         
     137                                </target>
     138                               
     139                                <!--
     140                                 ** commits the plugin.jar
     141                                 -->
     142                                <target name="commit-dist">
     143                                                <echo>
     144                ***** Properties of published ${plugin.jar} *****
     145                Commit message    : '${commit.message}'                                 
     146                Plugin-Mainversion: ${plugin.main.version}
     147                JOSM build version: ${coreversion.info.entry.revision}
     148                Plugin-Version    : ${version.entry.commit.revision}
     149                ***** / Properties of published ${plugin.jar} *****                                     
     150                                                       
     151                Now commiting ${plugin.jar} ...
     152                </echo>                                 
     153                                            <exec append="true" output="svn.log" executable="svn" failifexecutionfails="false">
     154                                                            <env key="LANG" value="C"/>
     155                                                                        <arg value="-m '${commit.message}'"/>
     156                                                                        <arg value="commit"/>                                           
     157                                                        <arg value="${plugin.jar}"/>
     158                                            </exec>         
     159                                </target>
     160                                               
     161                                <target name="publish" depends="core-info,commit-current,update-current,clean,dist,commit-dist">
     162                                </target>               
    55163</project>
  • applications/editors/josm/plugins/utilsplugin/src/UtilsPlugin/SimplifyWayAction.java

    r17707 r18926  
    2626import org.openstreetmap.josm.data.osm.OsmPrimitive;
    2727import org.openstreetmap.josm.data.osm.Way;
    28 import org.openstreetmap.josm.data.osm.visitor.CollectBackReferencesVisitor;
    2928import org.openstreetmap.josm.gui.layer.OsmDataLayer;
    3029import org.openstreetmap.josm.tools.Shortcut;
     
    107106
    108107        int toI = wnew.getNodesCount() - 1;
     108        List<OsmPrimitive> parents = new ArrayList<OsmPrimitive>();
    109109        for (int i = wnew.getNodesCount() - 1; i >= 0; i--) {
    110             CollectBackReferencesVisitor backRefsV = new CollectBackReferencesVisitor(Main.main.getCurrentDataSet(), false);
    111             backRefsV.visit(wnew.getNode(i));
     110            //CollectBackReferencesVisitor backRefsV = new CollectBackReferencesVisitor(Main.main.getCurrentDataSet(), false);
     111            //backRefsV.visit(wnew.getNode(i));
     112                parents.addAll(w.getNode(i).getReferrers());
    112113            boolean used = false;
    113             if (backRefsV.getData().size() == 1) {
     114            if (parents.size() == 1) {
    114115                used = Collections.frequency(w.getNodes(), wnew.getNode(i)) > 1;
    115116            } else {
    116                 backRefsV.getData().remove(w);
    117                 used = !backRefsV.getData().isEmpty();
     117                parents.remove(w);
     118                used = !parents.isEmpty();
    118119            }
    119120            if (!used)
Note: See TracChangeset for help on using the changeset viewer.