<action
class="com.abc.CallAction"
icon="icons/statistic_icon.png"
id="com.abc.calltime"
label="&Call"
style="pulldown" toolbarPath="com.abcxxx.caltime/callGroup"
tooltip="ssssssssss">
</action>
对应的Action
public class CallAction extends Action
implements IMenuCreator, IWorkbenchWindowPulldownDelegate2 {
IWorkbenchWindow window = null;
private MenuManager dropDownMenuMgr;
private Action firstAction;
private Action secondAction;
public CallAction(){
setMenuCreator(this);
}
@Override
public void init(IWorkbenchWindow window) {
this.window = window;
}
@Override
public void run(IAction action) {}
public void setEnabled( boolean enabled ){}
@Override
public void selectionChanged(IAction action, ISelection selection) {}
class InnerAction extends Action{
private String text;
InnerAction(String text){
super(text);
this.text = text;
}
@Override
public void run() {
super.run();
if("One".equals(text)){
//do one something
secondAction.setEnabled(true);
}else{
//do two something
firstAction.setEnabled(true);
}
this.setEnabled(false);
}
}
@Override
public void dispose() {
if(null != dropDownMenuMgr){
dropDownMenuMgr.dispose();
dropDownMenuMgr = null;
}
}
@Override
public Menu getMenu(Control parent) {
createDropDownMenuMgr();
return dropDownMenuMgr.createContextMenu(parent);
}
private void createDropDownMenuMgr() {
if (dropDownMenuMgr == null) {
dropDownMenuMgr = new MenuManager();
firstAction = new InnerAction("One");
dropDownMenuMgr.add(firstAction);
secondAction = new InnerAction("Two");
dropDownMenuMgr.add(secondAction);
}
}
@Override
public Menu getMenu(Menu parent) {
return null;
}
}
分享到:
相关推荐
7. **与其他工具集成**:由于DebugView的输出可以被其他程序读取,因此它可以与许多自动化测试工具或脚本语言结合使用,扩展调试能力。 8. **安全特性**:DebugView不会影响系统的稳定性,因为它只是接收和显示调试...
在学习汇编语言时,debug不失为练习得好工具。读者操作系统若为32位,可直接运行debug。 在64位操作系统下,想运行debug,需要两个东西:DOSBox,debug.exe。 1,下载、安装DOSBox。 2,下载debug.exe,将debug.exe...
本文将详细介绍其中的四个关键工具:debug、edit、MASM和LINK。 **debug** 是一个非常基础的调试工具,主要用于检查和修改内存中的数据,以及跟踪程序执行。在早期的DOS系统中,debug是系统自带的调试器,但在Mac...
DEBUG调试程序是一个基本的调试工具,用于检查和调试汇编语言程序。它可以使程序设计人员看到程序执行的每一步细节,观察和修改寄存器及存储单元的内容,监视目标程序的执行情况。 二、 DEBUG命令 DEBUG命令是...
**DebugView监控工具详解** DebugView是一款强大的调试日志查看工具,由微软的Sysinternals Suite组件之一。它能够捕获并显示来自应用程序、驱动程序或系统服务中的TRACE(调试版本)和OutputDebugString函数输出的...
* `Debug:S`:在部分内存中搜索一个或多个字节值的模式 * `Debug:T`:执行一条指令,然后显示所有寄存器的内容、所有标志的状态和 Debug 下一步要执行的指令的解码形式 * `Debug:U`:反汇编字节并显示相应的原语句 *...
文件列表中的"DBGVIEW.CHM"是一个帮助文件,通常包含关于DebugView的详细使用指南、功能介绍、API参考等信息。用户可以通过这个文件来学习如何操作DebugView,解决在使用过程中遇到的问题。"DBGVIEW.EXE"则是Debug...
DebugView是一款强大的系统调试工具,由微软的Sysinternals团队开发。它允许用户捕获、查看和分析控制台输出,包括应用程序的日志消息、调试输出以及内核模式调试信息。这款工具对于软件开发者、系统管理员以及任何...
"debug.exe"是一款早期的命令行调试工具,最初随Microsoft的DOS操作系统一同发布,至今仍被一些资深开发者用于低级别程序调试。本文将详细介绍debug.exe工具及其在现代软件开发中的应用。 ### 一、debug.exe概述 ...
#### Debug:C(比较)命令 `C`(比较)命令用于比较内存中的两个部分是否相等,适用于检测数据一致性或查找内存篡改。 - **语法**:`c range address` - `range`指定要比较的第一个内存区域的范围。 - `address`...
总之,实现Android 9.0和10.0 SystemUI的默认展开下拉列表涉及到深入理解SystemUI源码、快速设置服务以及状态栏的交互逻辑。这是一个对Android系统有深入理解的开发者才能完成的任务,需要谨慎处理以保证系统的稳定...
MASM DEBUG 是一个功能强大的调试工具,提供了多种命令来帮助开发者调试和排除程序中的错误。本文将对 MASM DEBUG 命令进行详细的解释和介绍。 DEBUG 命令格式 DEBUG 命令的格式为:DEBUG [<驱动器名>:][<路径>]...
3. **操作(Actions)**:包括菜单项、工具栏按钮、快捷键等,插件可以通过扩展点来添加新的操作行为。 4. **构建(Build)**:控制项目的编译和构建过程,插件可以插入自己的构建步骤。 5. **运行配置(Run ...
扩展Unity Debug类,在Android和IOS ,Hololens等平台上进行Unity调试的时候看不到控制台输出,所以需要进行日志扩展将Log输出到屏幕上或者是保存文件,就需要对Debug进行扩展。方便直接调试。导直接导入Unity即可。...
DebugView是一款强大的调试日志查看工具,尤其在Windows操作系统环境下,它被广泛应用于软件开发和系统调试过程。这个工具能够捕获并显示由`OutputDebugString`和`TRACE`宏生成的调试信息,使得开发者无需编译调试...
在这个工具包中,DOSBox版本为0.74,是该软件的一个稳定版本,能提供良好的DOS环境模拟。 **汇编语言** 是一种低级编程语言,其中每条指令直接对应于计算机的机器码。在DOS时代,汇编语言被广泛用于系统编程、游戏...
在IT领域,尤其是在Web开发中,下拉列表的三级联动是一种常见的交互设计,它能够帮助用户在多个选项间快速导航并作出选择。本项目“ajax+json+ashx实现下拉列表三级联动”旨在利用jQuery、Ajax以及ASHX处理程序来...
`DebugLog`是一个自定义的日志工具类,它扩展了Android原生的`Log`类,提供了更加丰富的日志输出功能,方便我们在调试应用时获取更详细的信息。本篇文章将深入探讨`DebugLog`的实现原理及其在调试过程中的作用。 `...
在Windows应用程序开发中,MFC(Microsoft Foundation Classes)是一个基于C++的类库,它为开发者提供了构建Windows GUI(图形用户界面)应用的框架。在这个特定的案例中,"mfc组合框下拉列表项添加删除按钮"是一个...