Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.exportto / org.gvsig.exportto.swing / org.gvsig.exportto.swing.impl / src / main / java / org / gvsig / export / swing / impl / panels / ExportProgressPanel.java @ 44386

History | View | Annotate | Download (3.69 KB)

1
package org.gvsig.export.swing.impl.panels;
2

    
3
import java.awt.BorderLayout;
4
import java.awt.event.ActionEvent;
5
import java.awt.event.ActionListener;
6
import java.util.logging.Level;
7
import java.util.logging.Logger;
8
import javax.swing.JComponent;
9
import org.gvsig.export.ExportLocator;
10
import org.gvsig.export.ExportParameters;
11
import org.gvsig.export.swing.JExportProcessPanel;
12
import org.gvsig.export.swing.spi.ExportPanel;
13
import org.gvsig.export.swing.spi.ExportPanelValidationException;
14
import org.gvsig.tools.ToolsLocator;
15
import org.gvsig.tools.bookmarksandhistory.Bookmarks;
16
import org.gvsig.tools.i18n.I18nManager;
17
import org.gvsig.tools.swing.api.ToolsSwingLocator;
18
import org.gvsig.tools.swing.api.bookmarkshistory.BookmarksController;
19
import org.gvsig.tools.swing.api.task.JTaskStatus;
20
import org.gvsig.tools.swing.api.task.TaskStatusSwingManager;
21

    
22
/**
23
 *
24
 * @author jjdelcerro
25
 */
26
public class ExportProgressPanel
27
        extends ExportProgressPanelView
28
        implements ExportPanel {
29

    
30
    private final JExportProcessPanel processPanel;
31
    private final ExportParameters parameters;
32
    private JTaskStatus jTaskStatus;
33
    private BookmarksController bookmarksController;
34

    
35
    public ExportProgressPanel(
36
            JExportProcessPanel processPanel,
37
            ExportParameters parameters
38
    ) {
39
        this.processPanel = processPanel;
40
        this.parameters = parameters;
41
        this.initComponents();
42
    }
43

    
44
    private void initComponents() {
45
        TaskStatusSwingManager TaskStatusSwingManager = ToolsSwingLocator.getTaskStatusSwingManager();
46

    
47
        this.jTaskStatus = TaskStatusSwingManager.createJTaskStatus();
48
        this.jpnMain.setLayout(new BorderLayout());
49
        this.jpnMain.add(jTaskStatus, BorderLayout.NORTH);
50
        this.jTaskStatus.bind(this.processPanel.getProcess().getTaskStatus());
51

    
52
        I18nManager i18nManager = ToolsLocator.getI18nManager();
53
        Bookmarks<ExportParameters> bookmarks = ExportLocator.getServiceManager().getBookmarks();
54
        this.bookmarksController = ToolsSwingLocator.getToolsSwingManager().createBookmarksController(bookmarks, this.btnBookmark);
55
        this.bookmarksController.setAllowAddBookmarks(true);
56
        this.bookmarksController.setFilter(null);
57
        this.bookmarksController.addActionListener(new ActionListener() {
58
            @Override
59
            public void actionPerformed(ActionEvent e) {
60
                try {
61
                    if (e.getID() == bookmarksController.ID_GETVALUE) {
62
                     BookmarksController.BookmarkEvent b = (BookmarksController.BookmarkEvent) e;
63
                     b.setCurrentValue(ExportProgressPanel.this.parameters.clone());
64
                    }
65
                } catch (CloneNotSupportedException ex) {
66
                    Logger.getLogger(ExportProgressPanel.class.getName()).log(Level.SEVERE, null, ex);
67
                }
68
            }
69
        });
70
    }
71

    
72
    @Override
73
    public String getIdPanel() {
74
        return "ExportProgressPanel";
75
    }
76

    
77
    @Override
78
    public String getTitlePanel() {
79
        I18nManager i18nManager = ToolsLocator.getI18nManager();
80
        return i18nManager.getTranslation("export_progress");
81
    }
82

    
83
    @Override
84
    public boolean validatePanel() throws ExportPanelValidationException {
85
        return true;
86
    }
87

    
88
    @Override
89
    public void enterPanel() {
90

    
91
    }
92

    
93
    @Override
94
    public void nextPanel() {
95
        processPanel.setButtonEnabled(JExportProcessPanel.BUTTON_FINISH, false);
96
    }
97

    
98
    @Override
99
    public void previousPanel() {
100
        processPanel.setButtonEnabled(JExportProcessPanel.BUTTON_FINISH, true);
101
        processPanel.setButtonEnabled(JExportProcessPanel.BUTTON_CANCEL, true);
102
    }
103

    
104
    @Override
105
    public JComponent asJComponent() {
106
        return this;
107
    }
108

    
109
}