1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  package org.xnap.gui.action;
21  
22  import java.awt.event.ActionEvent;
23  import java.io.File;
24  
25  import javax.swing.AbstractAction;
26  import javax.swing.Action;
27  
28  import org.xnap.XNap;
29  import org.xnap.gui.FileProvider;
30  import org.xnap.gui.util.IconHelper;
31  
32  /***
33   * Provides a clipboard like copy action for objects that implement the
34   * <code>FileProvider</code> interface.
35   *
36   * @see FileActionManager
37   */
38  public class CopyFileAction extends AbstractAction
39  {
40      
41      
42  
43      
44  
45      private FileProvider fp;
46  
47      
48  
49      public CopyFileAction(FileProvider fp) 
50      {
51  	this.fp = fp;
52  
53  	putValue(Action.NAME, XNap.tr("Copy"));
54  	putValue(Action.SHORT_DESCRIPTION, XNap.tr("Copy selected files."));
55  	putValue(IconHelper.XNAP_ICON, "editcopy.png");
56      }
57  
58      
59          
60      public void actionPerformed(ActionEvent event) 
61      {
62  	File[] files = fp.getFiles();
63  	if (files != null) {
64  	    FileActionManager.setFiles(files, FileActionManager.ACTION_COPY);
65  	}
66      }
67      
68  }