Changeset 29232 in osm for applications/editors/josm/plugins/roadsigns
- Timestamp:
- 2013-02-06T17:32:26+01:00 (12 years ago)
- Location:
- applications/editors/josm/plugins/roadsigns
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/roadsigns/build.xml
r27852 r29232 30 30 <property name="commit.message" value="preset maintenance (Fahrradstraße)"/> 31 31 <!-- enter the *lowest* JOSM version this plugin is currently compatible with --> 32 <property name="plugin.main.version" value=" 4980"/>32 <property name="plugin.main.version" value="5698"/> 33 33 34 34 <!-- -
applications/editors/josm/plugins/roadsigns/src/org/openstreetmap/josm/plugins/roadsigns/RoadSignInputDialog.java
r29230 r29232 14 14 import java.awt.event.MouseAdapter; 15 15 import java.awt.event.MouseEvent; 16 import java.beans.XMLDecoder; 17 import java.beans.XMLEncoder; 18 import java.io.BufferedInputStream; 19 import java.io.BufferedOutputStream; 20 import java.io.File; 21 import java.io.FileInputStream; 22 import java.io.FileNotFoundException; 23 import java.io.FileOutputStream; 16 24 import java.io.IOException; 17 25 import java.util.ArrayList; … … 60 68 import org.openstreetmap.josm.gui.ExtendedDialog; 61 69 import org.openstreetmap.josm.gui.MultiSplitLayout; 70 import org.openstreetmap.josm.gui.MultiSplitLayout.Node; 62 71 import org.openstreetmap.josm.gui.MultiSplitPane; 63 72 import org.openstreetmap.josm.plugins.roadsigns.RoadSignsPlugin.PresetMetaData; … … 67 76 import org.openstreetmap.josm.tools.OpenBrowser; 68 77 import org.openstreetmap.josm.tools.Pair; 78 import org.openstreetmap.josm.tools.WindowGeometry; 69 79 70 80 /** … … 93 103 protected JEditorPane info; 94 104 protected JScrollPane scrollInfo; 105 106 private MultiSplitPane multiSplitPane; 95 107 96 108 public RoadSignInputDialog() { 97 109 super(Main.parent, tr("Road Sign Plugin"), new String[] {tr("OK"), tr("Cancel")}, false /* modal */); 110 setRememberWindowGeometry(getClass().getName() + ".geometry", 111 WindowGeometry.centerInWindow(Main.parent, new Dimension(750, 550))); 112 98 113 this.signs = RoadSignsPlugin.signs; 99 114 sel = new SignSelection(); … … 129 144 } 130 145 146 @Override 147 public void setVisible(boolean visible) { 148 if (!visible) { 149 if (multiSplitPane != null) { 150 Node model = multiSplitPane.getMultiSplitLayout().getModel(); 151 File f = new File(RoadSignsPlugin.pluginDir(), "roadsigns-layout.xml"); 152 try { 153 XMLEncoder xmlenc = new XMLEncoder( 154 new BufferedOutputStream(new FileOutputStream(f)) 155 ); 156 xmlenc.writeObject(model); 157 xmlenc.close(); 158 } catch (FileNotFoundException ex) { 159 Main.warn("unable to write dialog layout: "+ex); 160 } 161 } 162 } 163 super.setVisible(visible); 164 } 165 166 131 167 private Command createCommand(Collection<OsmPrimitive> selPrim) { 132 168 List<Command> cmds = new LinkedList<Command>(); … … 150 186 "(ROW weight=0.5 (LEAF name=middleleft weight=0.5) (LEAF name=middleright weight=0.5)) "+ 151 187 "(LEAF name=bottom weight=0.2))"; 152 MultiSplitLayout.Node modelRoot = MultiSplitLayout.parseModel(layoutDef);153 188 154 189 FlowLayout fLayout = new FlowLayout(FlowLayout.LEFT); … … 162 197 fillSigns(); 163 198 164 MultiSplitPane multiSplitPane = new MultiSplitPane(); 165 multiSplitPane.setPreferredSize(new Dimension(700, 500)); 166 multiSplitPane.getMultiSplitLayout().setModel(modelRoot); 199 multiSplitPane = new MultiSplitPane(); 200 try { 201 File f = new File(RoadSignsPlugin.pluginDir(), "roadsigns-layout.xml"); 202 XMLDecoder decoder = new XMLDecoder(new BufferedInputStream(new FileInputStream(f))); 203 Node model = (Node) decoder.readObject(); 204 decoder.close(); 205 multiSplitPane.getMultiSplitLayout().setModel(model); 206 multiSplitPane.getMultiSplitLayout().setFloatingDividers(false); 207 } 208 catch (Exception ex) { 209 Node modelRoot = MultiSplitLayout.parseModel(layoutDef); 210 multiSplitPane.getMultiSplitLayout().setModel(modelRoot); 211 } 167 212 multiSplitPane.add(new JScrollPane(pnlSignSelection), "upperleft"); 168 213 multiSplitPane.add(buildPreviewPanel(), "upperright"); -
applications/editors/josm/plugins/roadsigns/src/org/openstreetmap/josm/plugins/roadsigns/RoadSignsPlugin.java
r29230 r29232 42 42 public static List<String> iconDirs; 43 43 44 public static RoadSignsPlugin plugin; 45 44 46 public final static PresetMetaData PRESET_DE = new PresetMetaData("DE", tr("Germany"), "resource://data/roadsignpresetDE.xml", "resource://images/DE/"); 45 47 public final static PresetMetaData PRESET_PL = new PresetMetaData("PL", tr("Poland"), "resource://data/roadsignpresetPL.xml", "resource://images/PL/"); … … 49 51 public RoadSignsPlugin(PluginInformation info) { 50 52 super(info); 53 plugin = this; 51 54 registerAction(); 55 } 56 57 public static File pluginDir() { 58 File dir = new File(plugin.getPluginDir()); 59 if (!dir.exists()) { 60 dir.mkdirs(); 61 } 62 return dir; 52 63 } 53 64
Note:
See TracChangeset
for help on using the changeset viewer.