package org.rr.jeborker.gui.action;
import java.awt.event.ActionEvent;
import java.io.File;
import java.util.logging.Level;
import javax.swing.AbstractAction;
import javax.swing.Action;
import org.rr.commons.log.LoggerFactory;
import org.rr.commons.swing.DesktopUtils;
import org.rr.commons.swing.SwingUtils;
import org.rr.jeborker.gui.resources.ImageResourceBundle;
class OpenFolderAction extends AbstractAction {
private static final long serialVersionUID = -6464113132395695332L;
String folder;
OpenFolderAction(String text) {
this.folder = text;
String name = Bundle.getString("OpenFolderAction.name");
putValue(Action.NAME, SwingUtils.removeMnemonicMarker(name));
putValue(Action.SMALL_ICON, ImageResourceBundle.getResourceAsImageIcon("folder_open_16.png"));
putValue(Action.LARGE_ICON_KEY, ImageResourceBundle.getResourceAsImageIcon("folder_open_22.png"));
putValue(MNEMONIC_KEY, SwingUtils.getMnemonicKeyCode(name));
}
@Override
public void actionPerformed(ActionEvent e) {
File file = new File(folder);
boolean success = DesktopUtils.openFolder(file);
if(!success) {
LoggerFactory.log(Level.INFO, this, "could not open folder " + file);
}
}
}