Statistics
| Revision:

gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.util / org.gvsig.tools.util.impl / src / main / java / org / gvsig / filedialogchooser / impl / DefaultFileDialogChooserManager.java @ 1557

History | View | Annotate | Download (1.71 KB)

1

    
2
package org.gvsig.filedialogchooser.impl;
3

    
4
import java.io.File;
5
import java.util.HashMap;
6
import java.util.Map;
7
import javax.swing.filechooser.FileSystemView;
8
import org.gvsig.filedialogchooser.FileDialogChooser;
9
import org.gvsig.filedialogchooser.FileDialogChooserManager;
10

    
11

    
12

    
13
public class DefaultFileDialogChooserManager implements FileDialogChooserManager {
14

    
15
    private Map<String,File> lastPaths;
16
    private boolean useNativeFileChooser = true;
17
    
18
    public DefaultFileDialogChooserManager() {
19
        this.lastPaths = new HashMap<>();
20
    }
21
    
22
    @Override
23
    public void setUseNativeFileChooser(boolean b) {
24
        useNativeFileChooser = b;
25
    }
26
    
27
    @Override
28
    public boolean useNativeFileChooser() {
29
        return useNativeFileChooser;
30
    }
31
    
32
    @Override
33
    public FileDialogChooser create(String fileChooserID) {
34
        if( useNativeFileChooser ) {
35
          return new JFileChooserBased(fileChooserID);
36
        }
37
        return new VFSJFileChooserBased(fileChooserID);
38
    }
39

    
40
    @Override
41
    public FileDialogChooser create() {
42
        String fileChooserID = "DEFAULT_ID";
43
        if( useNativeFileChooser ) {
44
            return new JFileChooserBased(fileChooserID);
45
        }
46
        return new VFSJFileChooserBased(fileChooserID);
47
    }
48
    
49
    @Override
50
    public File getLastPath(String fileChooserID, File defaultDirectory) {
51
                File path = this.lastPaths.get(fileChooserID);
52

    
53
                if (path != null) {
54
                        return path;
55
        }
56
                if (defaultDirectory != null) {
57
                        return defaultDirectory;
58
        }
59
                return FileSystemView.getFileSystemView().getHomeDirectory();
60
    }
61
    
62
    @Override
63
    public void setLastPath(String fileChooserID, File path) {
64
        lastPaths.put(fileChooserID, path);
65
    }
66

    
67
    
68
}