📄 deletefileaction.java
字号:
/* * @(#) DeleteFileAction.java * Copyright 2004 HWStudio. All rights reserved. */package hws.item.smart.action.share.upload;//导入核心Java类库import java.awt.event.ActionEvent;import java.util.List;import java.util.zip.ZipEntry;import javax.swing.JOptionPane;import javax.swing.tree.DefaultMutableTreeNode;//导入自定义Java类库import hws.item.smart.Smart;import hws.item.smart.misc.StringShop;import hws.item.smart.panel.function.chat.ViewPanel;import hws.item.smart.panel.function.share.UploadPanel;import hws.item.smart.action.BaseAction;import hws.item.smart.utility.chat.UserInfo;/** * 删除选中的文件或者目录 * * @version 0.1 2005-08-29 * @author Hwerz */public class DeleteFileAction extends BaseAction { /*------------------------------------------------------------------------* * 属性定义 * *------------------------------------------------------------------------*/ /** * 该类自身的一个静态引用 */ private static DeleteFileAction action; /*------------------------------------------------------------------------* * 构造函数 * *------------------------------------------------------------------------*/ /** * 构造函数为私有,这样在整个运行过程中该类就只能有一个实例 */ private DeleteFileAction() { super("删除文件"); setHintInfo("删除选中的文件或者目录"); setEnabled(false); } /*------------------------------------------------------------------------* * 公共方法 * *------------------------------------------------------------------------*/ /** * 对该类提供的一个全局访问点,用来实例化该对象 * * @return 该类唯一的一个实例 */ public static DeleteFileAction getInstance() { if (action == null) { action = new DeleteFileAction(); } return action; } /*------------------------------------------------------------------------* * 私有方法 * *------------------------------------------------------------------------*/ /** * 删除 */ private void delete() { DefaultMutableTreeNode n = UploadPanel.getInstance().getSelectedNode(); ZipEntry entry = (ZipEntry) n.getUserObject(); String answer = "您真的确定要删除选中的文件吗?"; if (entry.isDirectory()) { answer = "您真的确定要删除选中的目录吗?"; } int option = JOptionPane.showConfirmDialog(Smart.getInstance(), answer, StringShop.HINT_TITLE, JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); if (option == JOptionPane.OK_OPTION) { UploadPanel.getInstance().deleteFile(); } } /*------------------------------------------------------------------------* * 覆盖方法 * *------------------------------------------------------------------------*/ /** * 覆盖超类Action的方法 * * @param event ActionEvent对象 */ public void actionPerformed(ActionEvent event) { String id = ViewPanel.getInstance().getUserID(); if (id.length() > 0) { UserInfo user = UserInfo.getRemoteUserInfo(id); List files = user.getSharesInfo().getAllShareFiles(); String file = UploadPanel.getInstance().getSelectedFile(); boolean shared = false; for (int i = 0; i < files.size(); i++) { String file2 = files.get(i).toString(); if (file2.indexOf(file) != -1) { shared = true; break; } } if (shared) { JOptionPane.showMessageDialog(Smart.getInstance(), "不能删除共享文件及其所在的目录,除非先取消文件的共享属性!", StringShop.HINT_TITLE, JOptionPane.INFORMATION_MESSAGE); } else { delete(); } } else { JOptionPane.showMessageDialog(Smart.getInstance(), "您还没有登录,请先登录!", StringShop.HINT_TITLE, JOptionPane.INFORMATION_MESSAGE); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -