/* * Copyright 2014-2017 ieclipse.cn. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package cn.ieclipse.smartim.actions; import cn.ieclipse.smartim.IMWindowFactory; import cn.ieclipse.smartim.console.IMChatConsole; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.fileChooser.FileChooser; import com.intellij.openapi.fileChooser.FileChooserDescriptor; import com.intellij.openapi.vfs.VirtualFile; import icons.SmartIcons; /** * 类/接口描述 * * @author Jamling * @date 2017年8月22日 */ public class SendProjectFileAction extends SendFileAction { public SendProjectFileAction(IMChatConsole console) { super(console, "Send Project File", "Send your project(workspace) file to " + console.getName(), SmartIcons.projectFile); } @Override public void actionPerformed(AnActionEvent e) { if (!console.enableUpload()) { console.error("文件发送中,请勿频繁操作"); return; } FileChooserDescriptor descriptor = new FileChooserDescriptor(true, false, true, true, false, false); final VirtualFile virtualFile = FileChooser.chooseFile(descriptor, IMWindowFactory.getDefault().getProject(), null); if (virtualFile == null) { return; } String path = virtualFile.getCanonicalPath(); if (path != null) { console.send(path); } return; } }