Changeset 23209 in osm for applications/editors/josm/plugins/smed
- Timestamp:
- 2010-09-16T11:38:18+02:00 (15 years ago)
- Location:
- applications/editors/josm/plugins/smed/src/smed
- Files:
-
- 3 edited
-
plug/ifc/SmedPluggable.java (modified) (1 diff)
-
plug/util/SmedPluginLoader.java (modified) (1 diff)
-
tabs/SmedTabbedPane.java (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/smed/src/smed/plug/ifc/SmedPluggable.java
r23199 r23209 6 6 public interface SmedPluggable { 7 7 8 boolean start();9 boolean stop();10 String getName();11 String getInfo();12 JComponent getComponent();13 14 void setPluginManager(SmedPluginManager manager);8 boolean start(); 9 boolean stop(); 10 String getName(); 11 String getInfo(); 12 JComponent getComponent(); 13 14 void setPluginManager(SmedPluginManager manager); 15 15 16 16 } -
applications/editors/josm/plugins/smed/src/smed/plug/util/SmedPluginLoader.java
r23199 r23209 21 21 22 22 23 public static List<SmedPluggable> loadPlugins(File plugDir) throws IOException {24 File[] plugJars = plugDir.listFiles(new JARFileFilter());25 Arrays.sort(plugJars);26 27 URL[] urls = fileArrayToURLArray(plugJars);28 if(urls == null) return null;29 30 ClassLoader cl = new URLClassLoader(urls);31 List<Class<SmedPluggable>> plugClasses = extractClassesFromJARs(plugJars, cl);32 33 if(plugClasses == null) return null;34 else return createPluggableObjects(plugClasses);35 }23 public static List<SmedPluggable> loadPlugins(File plugDir) throws IOException { 24 File[] plugJars = plugDir.listFiles(new JARFileFilter()); 25 Arrays.sort(plugJars); 26 27 URL[] urls = fileArrayToURLArray(plugJars); 28 if(urls == null) return null; 29 30 ClassLoader cl = new URLClassLoader(urls); 31 List<Class<SmedPluggable>> plugClasses = extractClassesFromJARs(plugJars, cl); 32 33 if(plugClasses == null) return null; 34 else return createPluggableObjects(plugClasses); 35 } 36 36 37 37 private static List<SmedPluggable> createPluggableObjects(List<Class<SmedPluggable>> pluggables) { -
applications/editors/josm/plugins/smed/src/smed/tabs/SmedTabbedPane.java
r23199 r23209 24 24 private static final long serialVersionUID = 1L; 25 25 26 public SmedTabbedPane() {27 super(new GridLayout(1, 1));28 29 List<SmedPluggable> plugins = null;30 String pluginDirName = Main.pref.getPluginsDirectory().getAbsolutePath();31 try {32 plugins = SmedPluginLoader.loadPlugins(new File(pluginDirName + "/splug"));33 } catch (IOException e) {34 e.printStackTrace();35 }36 26 public SmedTabbedPane() { 27 super(new GridLayout(1, 1)); 28 29 List<SmedPluggable> plugins = null; 30 String pluginDirName = Main.pref.getPluginsDirectory().getAbsolutePath(); 31 try { 32 plugins = SmedPluginLoader.loadPlugins(new File(pluginDirName + "/splug")); 33 } catch (IOException e) { 34 e.printStackTrace(); 35 } 36 37 37 38 38 Icon icon = null; 39 39 JTabbedPane tabbedPane = new JTabbedPane(); 40 40 41 JComponent panel;42 int i = 0;43 for(SmedPluggable p : plugins) {44 panel = p.getComponent();45 tabbedPane.addTab(p.getName(),icon, panel, p.getInfo());46 tabbedPane.setMnemonicAt(i, KeyEvent.VK_1 + i);47 48 i++;49 }41 JComponent panel; 42 int i = 0; 43 for(SmedPluggable p : plugins) { 44 panel = p.getComponent(); 45 tabbedPane.addTab(p.getName(),icon, panel, p.getInfo()); 46 tabbedPane.setMnemonicAt(i, KeyEvent.VK_1 + i); 47 48 i++; 49 } 50 50 51 51 //Add the tabbed pane to this panel.
Note:
See TracChangeset
for help on using the changeset viewer.
