Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: com/arranger/jarl/ui/ExportButtonListener.java


1   package com.arranger.jarl.ui;
2   
3   import com.arranger.jarl.util.StringTools;
4   import com.arranger.jarl.util.IOUtil;
5   
6   import javax.swing.*;
7   import java.awt.event.ActionListener;
8   import java.awt.event.ActionEvent;
9   import java.io.File;
10  
11  /**
12   * ExportButtonListener created on Apr 15, 2003
13   */
14  class ExportButtonListener implements ActionListener {
15  
16      protected File m_currentDir;
17      private MainPanel m_mainPanel;
18  
19      public ExportButtonListener(MainPanel mainPanel) {
20          m_mainPanel = mainPanel;
21      }
22  
23      public void actionPerformed(ActionEvent e) {
24  
25          JFileChooser jFileChooser = new JFileChooser();
26          ExampleFileFilter filter = new ExampleFileFilter();
27          filter.addExtension("bmp");
28          filter.setDescription("jarl bitmap images");
29          jFileChooser.setFileFilter(filter);
30  
31          if (m_currentDir != null) {
32              jFileChooser.setCurrentDirectory(m_currentDir);
33          } else {
34              String exportDir = m_mainPanel.m_preferences.getProperty("export.dir");
35              if (!StringTools.isEmpty(exportDir)) {
36                  m_currentDir = new File(exportDir);
37                  jFileChooser.setCurrentDirectory(m_currentDir);
38              }
39          }
40  
41          if (jFileChooser.showSaveDialog(m_mainPanel) == JFileChooser.APPROVE_OPTION) {
42              m_currentDir = jFileChooser.getCurrentDirectory();
43              m_mainPanel.m_preferences.setProperty("export.dir", m_currentDir.getAbsolutePath());
44              m_mainPanel.m_prefManager.storePreferences(m_mainPanel.m_preferences);
45              String destFile = jFileChooser.getSelectedFile().getAbsolutePath();
46              if (!destFile.endsWith(".bmp")) {
47                  destFile += ".bmp";
48              }
49  
50              File dest = new File(destFile);
51              IOUtil.save(m_mainPanel.m_renderedImage, dest);
52          }
53      }
54  }