Changeset 290 in josm for src/org/openstreetmap/josm/actions/SaveAsAction.java
- Timestamp:
- 2007-07-18T23:12:56+02:00 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/org/openstreetmap/josm/actions/SaveAsAction.java
r138 r290 3 3 import static org.openstreetmap.josm.tools.I18n.tr; 4 4 5 import java.awt.event.ActionEvent;6 5 import java.awt.event.InputEvent; 7 6 import java.awt.event.KeyEvent; 8 7 import java.io.File; 9 8 10 import javax.swing.JFileChooser; 11 import javax.swing.filechooser.FileFilter; 12 13 import org.openstreetmap.josm.Main; 9 import org.openstreetmap.josm.gui.layer.OsmDataLayer; 14 10 15 11 /** … … 18 14 * @author imi 19 15 */ 20 public class SaveAsAction extends DiskAccessAction{16 public class SaveAsAction extends SaveActionBase { 21 17 22 18 /** 23 19 * Construct the action with "Save" as label. 24 * @param layer Save only this layer. If <code>null</code>, save the whole Main 25 * data set. 20 * @param layer Save this layer. 26 21 */ 27 public SaveAsAction() { 28 super(tr("Save as"), "save_as", tr("Save the current data to a new file."), KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK); 22 public SaveAsAction(OsmDataLayer layer) { 23 super(tr("Save as"), "save_as", tr("Save the current data to a new file."), KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK, layer); 29 24 } 30 25 31 public void actionPerformed(ActionEvent event) { 32 if (!checkSaveConditions()) 33 return; 34 35 File file = openFileDialog(); 36 if (file == null) 37 return; 38 39 SaveAction.save(file); 40 Main.main.editLayer().name = file.getName(); 41 Main.main.editLayer().associatedFile = file; 42 Main.parent.repaint(); 26 protected File getFile(OsmDataLayer layer) { 27 return openFileDialog(); 43 28 } 44 45 public static File openFileDialog() {46 JFileChooser fc = createAndOpenFileChooser(false, false);47 if (fc == null)48 return null;49 50 File file = fc.getSelectedFile();51 52 String fn = file.getPath();53 if (fn.indexOf('.') == -1) {54 FileFilter ff = fc.getFileFilter();55 if (ff instanceof ExtensionFileFilter)56 fn = "." + ((ExtensionFileFilter)ff).defaultExtension;57 else58 fn += ".osm";59 file = new File(fn);60 }61 return file;62 }63 29 }
Note:
See TracChangeset
for help on using the changeset viewer.
