Changeset 1649 in josm for trunk/src/org/openstreetmap/josm


Ignore:
Timestamp:
2009-06-07T11:22:20+02:00 (15 years ago)
Author:
stoecker
Message:

fix #1946 - plugin update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/plugins/PluginSelection.java

    r1647 r1649  
    4747    private Map<String, Boolean> pluginMap;
    4848    private Map<String, PluginInformation> availablePlugins;
     49    private Map<String, PluginInformation> localPlugins;
    4950
    5051    public void updateDescription(JPanel pluginPanel) {
     
    6869        StringBuilder toUpdateStr = new StringBuilder();
    6970        for (PluginProxy proxy : PluginHandler.pluginList) {
    70             PluginInformation description = availablePlugins.get(proxy.info.name);
     71            PluginInformation local = localPlugins.get(proxy.info.name);
     72            PluginInformation description = availablePlugins.get(local.name);
     73
    7174            if (description != null && (description.version == null || description.version.equals("")) ?
    72             (proxy.info.version != null && proxy.info.version.equals("")) : !description.version.equals(proxy.info.version)) {
     75            (local.version != null && local.version.equals("")) : !description.version.equals(local.version)) {
    7376                toUpdate.add(description);
    7477                toUpdateStr.append(description.name+"\n");
     
    102105                String name = entry.getKey();
    103106                PluginInformation ap = availablePlugins.get(name);
    104                 PluginInformation pi = PluginInformation.findPlugin(name);
     107                PluginInformation pi = localPlugins.get(name);
    105108                boolean add = false;
    106109                if(pi == null)
     
    177180                remoteversion = tr("unknown");
    178181
    179             String localversion;
    180             PluginInformation p = PluginInformation.findPlugin(plugin.name);
    181             if (p != null) {
     182            String localversion = "";
     183            PluginInformation p = localPlugins.get(plugin.name);
     184            if(p != null)
     185            {
    182186                if (p.version != null && !p.version.equals(""))
    183187                    localversion = p.version;
     
    185189                    localversion = tr("unknown");
    186190                localversion = " (" + localversion + ")";
    187             } else
    188                 localversion = "";
     191            }
    189192
    190193            final JCheckBox pluginCheck = new JCheckBox(
     
    252255            }
    253256        });
     257        localPlugins = new TreeMap<String, PluginInformation>(new Comparator<String>(){
     258            public int compare(String o1, String o2) {
     259                return o1.compareToIgnoreCase(o2);
     260            }
     261        });
    254262        for (String location : PluginInformation.getPluginLocations()) {
    255263            File[] pluginFiles = new File(location).listFiles();
     
    265273                            if (!availablePlugins.containsKey(info.name))
    266274                                availablePlugins.put(info.name, info);
     275                            if (!localPlugins.containsKey(info.name))
     276                                localPlugins.put(info.name, info);
     277                        } catch (PluginException x) {
     278                        }
     279                    } else if (fname.endsWith(".jar.new")) {
     280                        try {
     281                            PluginInformation info = new PluginInformation(f,fname.substring(0,fname.length()-8));
     282                            availablePlugins.put(info.name, info);
     283                            localPlugins.put(info.name, info);
    267284                        } catch (PluginException x) {
    268285                        }
     
    334351        }
    335352        for (PluginProxy proxy : PluginHandler.pluginList)
     353        {
    336354            if (!availablePlugins.containsKey(proxy.info.name))
    337355                availablePlugins.put(proxy.info.name, proxy.info);
     356            if (!localPlugins.containsKey(proxy.info.name))
     357                localPlugins.put(proxy.info.name, proxy.info);
     358        }
    338359        return availablePlugins;
    339360    }
Note: See TracChangeset for help on using the changeset viewer.