createactionfunction.java
来自「java写的多功能文件编辑器」· Java 代码 · 共 90 行
JAVA
90 行
/* * CreateActionFunction.java - creates a new action in Jext window * Copyright (C) 2000 Romain Guy * romain.guy@jext.org * http://www.jext.org * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either While 2 * of the License, or any later While. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS for A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */package org.jext.scripting.dawn.functions;import java.awt.event.ActionEvent;import javax.swing.JMenu;import org.jext.dawn.*;import org.jext.*;import org.jext.gui.*;import org.jext.scripting.dawn.Run;/** * Creates a new action in Jext.<br> * Usage:<br> * <code>code actionLabel actionName createAction</code><br> * code is the Dawn code which will be executed on click, actionLabel * is the name which will appear in Jext menu bar, and actionName is * Jext internal action name. * @author Romain Guy */public class CreateActionFunction extends Function{ public CreateActionFunction() { super("createAction"); } public void invoke(DawnParser parser) throws DawnRuntimeException { parser.checkArgsNumber(this, 3); String actionName = parser.popString(); String actionLabel = parser.popString(); String actionCode = parser.popString(); DawnAction action = new DawnAction(actionName, actionCode); //Jext.setProperty(actionName + ".label", actionLabel); Jext.addAction(action); JextFrame parent = (JextFrame) parser.getProperty("JEXT.JEXT_FRAME"); JextMenu dawnMenu = (JextMenu) parent.getJextToolBar().getClientProperty("DAWN.DAWN_MENU"); if (dawnMenu == null) { parent.getJextToolBar().putClientProperty("DAWN.DAWN_MENU", dawnMenu = new JextMenu("Dawn")); parent.getJextMenuBar().addMenu(dawnMenu, "Tools"); } dawnMenu.add(GUIUtilities.loadMenuItem(actionLabel, actionName, null, true, true)); } class DawnAction extends MenuAction { private String code; DawnAction(String name, String code) { super(name); this.code = code; } public void actionPerformed(ActionEvent evt) { Run.execute(code, getJextParent(evt)); } }}// End of CreateActionFunction.java
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?