?? 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 + -