Author: truesweetman
Date: Wed Aug 27 07:37:59 2008
New Revision: 2618
Modified:
trunk/src/ca/sqlpower/architect/swingui/olap/action/ExportSchemaAction.java
trunk/src/ca/sqlpower/architect/swingui/olap/action/ImportSchemaAction.java
Log:
Changed ImportSchemaAction and ExportSchemaAction to set the recent file
path in the session.
Modified:
trunk/src/ca/sqlpower/architect/swingui/olap/action/ExportSchemaAction.java
==============================================================================
---
trunk/src/ca/sqlpower/architect/swingui/olap/action/ExportSchemaAction.java
(original)
+++
trunk/src/ca/sqlpower/architect/swingui/olap/action/ExportSchemaAction.java
Wed Aug 27 07:37:59 2008
@@ -32,6 +32,7 @@
import ca.sqlpower.architect.olap.MondrianModel.Schema;
import ca.sqlpower.architect.swingui.ASUtils;
import ca.sqlpower.architect.swingui.ArchitectSwingSession;
+import ca.sqlpower.architect.swingui.RecentMenu;
import ca.sqlpower.architect.swingui.action.ProgressAction;
import ca.sqlpower.swingui.SPSUtils;
import ca.sqlpower.util.MonitorableImpl;
@@ -44,11 +45,13 @@
private ArchitectSwingSession session;
private Schema schema;
+ private RecentMenu recent;
public ExportSchemaAction(ArchitectSwingSession session, Schema
schema) {
super(session, "Export Schema...", "Exports Schema to xml" );
//$NON-NLS-1$ //$NON-NLS-2$
this.session = session;
this.schema = schema;
+ this.recent = session.getRecentMenu();
}
@Override
@@ -81,7 +84,7 @@
@Override
public boolean setup(MonitorableImpl monitor, Map<String, Object>
properties) {
monitor.setStarted(true);
- JFileChooser chooser = new
JFileChooser(session.getRecentMenu().getMostRecentFile());
+ JFileChooser chooser = new
JFileChooser(recent.getMostRecentFile());
chooser.addChoosableFileFilter(SPSUtils.XML_FILE_FILTER);
File file = null;
@@ -113,6 +116,7 @@
logger.debug("Saving to file: " + file.getName() + "(" +
file.getPath() + ")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ recent.putRecentFileName(file.getAbsolutePath());
properties.put(FILE_KEY,file);
return true;
}
Modified:
trunk/src/ca/sqlpower/architect/swingui/olap/action/ImportSchemaAction.java
==============================================================================
---
trunk/src/ca/sqlpower/architect/swingui/olap/action/ImportSchemaAction.java
(original)
+++
trunk/src/ca/sqlpower/architect/swingui/olap/action/ImportSchemaAction.java
Wed Aug 27 07:37:59 2008
@@ -45,6 +45,7 @@
import ca.sqlpower.architect.swingui.ASUtils;
import ca.sqlpower.architect.swingui.ArchitectSwingSession;
import ca.sqlpower.architect.swingui.PlayPen;
+import ca.sqlpower.architect.swingui.RecentMenu;
import ca.sqlpower.architect.swingui.action.AbstractArchitectAction;
import ca.sqlpower.architect.swingui.olap.CubePane;
import ca.sqlpower.architect.swingui.olap.DimensionPane;
@@ -75,12 +76,15 @@
*/
private static final Point INITIAL_POINT = new Point(50, 50);
+ private RecentMenu recent;
+
public ImportSchemaAction(ArchitectSwingSession session) {
super(session, "Import Schema...", "Imports an OLAP schema");
//$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ this.recent = session.getRecentMenu();
}
public void actionPerformed(ActionEvent e) {
- JFileChooser chooser = new
JFileChooser(session.getRecentMenu().getMostRecentFile());
+ JFileChooser chooser = new
JFileChooser(recent.getMostRecentFile());
chooser.addChoosableFileFilter(SPSUtils.XML_FILE_FILTER);
int returnVal = chooser.showOpenDialog(frame);
if (returnVal == JFileChooser.APPROVE_OPTION) {
@@ -140,7 +144,9 @@
} catch (Exception ex) {
logger.error("Failed to parse " + f.getName() + ".");
ASUtils.showExceptionDialog(session, "Could not read xml
schema file.", ex);
- }
+ } finally {
+ recent.putRecentFileName(f.getAbsolutePath());
+ }
}
}