source: release-kits/lirk3/bin/ant-installer/src/org/tp23/gui/widget/SelectFileAction.java@ 14982

Last change on this file since 14982 was 14982, checked in by oranfry, 16 years ago

initial import of LiRK3

File size: 2.2 KB
Line 
1/*
2 * Copyright 2005 Paul Hinds
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.tp23.gui.widget;
17
18import java.awt.event.ActionEvent;
19import java.io.File;
20
21import javax.swing.AbstractAction;
22import javax.swing.ImageIcon;
23import javax.swing.JComponent;
24import javax.swing.JFileChooser;
25
26public class SelectFileAction extends AbstractAction {
27 protected JComponent component = null;
28 protected File selectedFile = null;
29 protected String buttonText = null;
30
31 public SelectFileAction(String text, ImageIcon icon, JComponent component) {
32 super(text, icon);
33 this.component = component;
34 }
35 public SelectFileAction(String text, ImageIcon icon, JComponent component,String buttonText) {
36 super(text, icon);
37 this.component = component;
38 }
39 public void actionPerformed(ActionEvent e) {
40 JFileChooser chooser = new JFileChooser();
41 if(buttonText!=null)chooser.setApproveButtonText(buttonText);
42 if(selectedFile!=null && selectedFile.isFile()){
43 if(selectedFile.exists())chooser.setSelectedFile(selectedFile);
44 else chooser.setCurrentDirectory(selectedFile.getParentFile());
45 }
46 else if(selectedFile!=null && selectedFile.isDirectory()){
47 chooser.setCurrentDirectory(selectedFile);
48 }
49 else if(selectedFile!=null && !selectedFile.exists()){
50 chooser.setCurrentDirectory(selectedFile.getParentFile());
51 }
52
53 int returnVal = chooser.showDialog(component,e.getActionCommand());
54 if(returnVal == JFileChooser.APPROVE_OPTION) {
55 selectedFile = chooser.getSelectedFile();
56 } else {
57 selectedFile = null;
58 }
59 }
60}
Note: See TracBrowser for help on using the repository browser.