Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ private JTextComponent getTextField(Container container) {
myUiFacade.createDialog(fc, dialogActions, "").show();
}

private File getWorkingDir() {
protected File getWorkingDir() {
return new File(System.getProperty("user.dir"));
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ class FileChooserPage extends AbstractFileChooserPage {
private final Importer myImporter;
private File myFile;

public FileChooserPage(UIFacade uiFacade, Importer importer, Preferences prefs) {
super(uiFacade, prefs, GanttLanguage.getInstance().getText("importerFileChooserPageTitle"), createFileFilter(importer), createOptions(importer), false);
public FileChooserPage(UIFacade uiFacade, Importer importer, Preferences prefs, File defaultFolder) {
super(uiFacade, prefs, GanttLanguage.getInstance().getText("importerFileChooserPageTitle"), createFileFilter(importer), createOptions(importer), false, defaultFolder);
myImporter = importer;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ public class ImportFileWizardImpl extends AbstractWizard {

public ImportFileWizardImpl(UIFacade uiFacade, IGanttProject project, GanttOptions options) {
super(uiFacade, i18n.getText("importWizard.dialog.title"),
new ImporterChooserPage(ourImporters, uiFacade, options.getPluginPreferences().node("/instance/net.sourceforge.ganttproject/import")));
new ImporterChooserPage(ourImporters, uiFacade, project, options.getPluginPreferences().node("/instance/net.sourceforge.ganttproject/import")));
for (Importer importer : ourImporters) {
importer.setContext(project, uiFacade, options.getPluginPreferences());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,15 @@
*/
package net.sourceforge.ganttproject.importer;

import java.awt.Component;
import java.awt.event.ActionEvent;
import java.io.File;
import java.util.List;

import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.JComponent;

import net.sourceforge.ganttproject.IGanttProject;
import org.osgi.service.prefs.Preferences;

import biz.ganttproject.core.option.GPOptionGroup;
Expand All @@ -40,15 +41,17 @@
*/
class ImporterChooserPage implements WizardPage {
private final List<Importer> myImporters;
private final IGanttProject myProject;
private AbstractWizard myWizard;
private final UIFacade myUiFacade;
private final Preferences myPrefs;
private int mySelectedIndex;

ImporterChooserPage(List<Importer> importers, UIFacade uiFacade, Preferences preferences) {
ImporterChooserPage(List<Importer> importers, UIFacade uiFacade, IGanttProject project, Preferences preferences) {
myImporters = importers;
myUiFacade = uiFacade;
myPrefs = preferences;
myProject = project;
}

@Override
Expand Down Expand Up @@ -79,10 +82,14 @@ public void actionPerformed(ActionEvent e) {

protected void onSelectImporter(Importer importer) {
assert myWizard != null : "It is a bug: importer chooser has not been initialized properly";
WizardPage filePage = new FileChooserPage(myUiFacade, importer, myPrefs.node(importer.getID()));
WizardPage filePage = new FileChooserPage(myUiFacade, importer, myPrefs.node(importer.getID()), getDefaultFolder());
myWizard.setNextPage(filePage);
}

private File getDefaultFolder() {
return new File(myProject.getDocumentManager().getWorkingDirectory());
}

@Override
public void setActive(AbstractWizard wizard) {
myWizard = wizard;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ public boolean accept(File f) {
return true;
}
};
private final File myDefaulFolder ;

private JPanel myComponent;
private TextFieldAndFileChooserComponent myChooser;
Expand All @@ -96,13 +97,14 @@ public boolean accept(File f) {
private final String myTitle;
private AbstractWizard myWizard;

protected AbstractFileChooserPage(UIFacade uiFacade, Preferences prefs, String title, FileFilter fileFilter, GPOptionGroup[] options, boolean enableUrlChooser) {
protected AbstractFileChooserPage(UIFacade uiFacade, Preferences prefs, String title, FileFilter fileFilter, GPOptionGroup[] options, boolean enableUrlChooser, File defaultFolder) {
myUiFacade = uiFacade;
myPreferences = prefs;
myTitle = title;
myFileFilter = Objects.firstNonNull(fileFilter, ACCEPT_ALL);
myOptions = Objects.firstNonNull(options, new GPOptionGroup[0]);
isUrlChooserEnabled = enableUrlChooser;
myDefaulFolder = defaultFolder;
myOptionsBuilder = new OptionsPageBuilder();
mySecondaryOptionsComponent = new JPanel(new BorderLayout());
mySecondaryOptionsComponent.setBorder(BorderFactory.createEmptyBorder(10, 0, 0, 0));
Expand All @@ -120,6 +122,11 @@ public JComponent getComponent() {
protected void onFileChosen(File file) {
AbstractFileChooserPage.this.onSelectedFileChange(file);
}

@Override
protected File getWorkingDir() {
return myDefaulFolder;
}
};
myChooser.setFileSelectionMode(getFileChooserSelectionMode());
JComponent contentPanel = new JPanel(new BorderLayout());
Expand Down