⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mergefileaction.java

📁 基于Eclipse RCP开发的管理工具
💻 JAVA
字号:
 /*    * Copyright 2006 Marcel Schoffelmeer   *   * 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 com.s10r.manager.actions;import java.io.File;import org.eclipse.jface.action.Action;import org.eclipse.swt.SWT;import org.eclipse.swt.widgets.FileDialog;import org.eclipse.ui.IPartListener;import org.eclipse.ui.IWorkbenchPart;import org.eclipse.ui.IWorkbenchWindow;import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;import com.s10r.manager.EntryEditor;public class MergeFileAction extends Action implements IWorkbenchAction, IPartListener{	public final static String ID = "manager_rcp.mergefileaction";	private IWorkbenchWindow window;	private EntryEditor activeEditor;	/**	 */	public MergeFileAction(IWorkbenchWindow window)	{		this.window = window;		setText("Merge File...");		setToolTipText("Merge File...");		setId("you want and ID?");				window.getPartService().addPartListener(this);	}	/**	 * Opens an existing file	 */	@Override	public void run()	{		FileDialog dialog = new FileDialog(window.getShell(), SWT.OPEN);		dialog.setFilterNames(new String[] { "Manager Files", "All Files" });		dialog.setFilterExtensions(new String[] { "*.mgr", "*.*" }); //$NON-NLS-1$ //$NON-NLS-2$		String fileName = dialog.open();		if (fileName == null)		{			return;		}				File inFile = new File(fileName);				activeEditor.merge(inFile);	}	public void dispose()	{		window.getPartService().removePartListener(this);	}		public void partActivated(IWorkbenchPart part)	{		if (part instanceof EntryEditor)		{								activeEditor = (EntryEditor)part;			this.setEnabled(true);		}		else		{			this.setEnabled(false);		}	}	public void partBroughtToTop(IWorkbenchPart part)	{			}	public void partClosed(IWorkbenchPart part)	{		// TODO: apply same logic to file properties		if (part == activeEditor)		{			System.out.println("MergeFileAction: editor closed: disabling...");			this.setEnabled(false);		}	}	public void partDeactivated(IWorkbenchPart part)	{	}	public void partOpened(IWorkbenchPart part)	{	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -