• Eclipse RCP开发2Eclipse常用扩展介绍


        从Eclipse3.3开始,org.eclipse.ui.menus扩展改变了menu、toolbar以及popup的安放和显示方式。这些改进主要与以前的:
        org.eclipse.ui.actionSets
        org.eclipse.ui.editorActions
        org.eclipse.ui.popupMenus
        org.eclipse.ui.viewActions
        等扩展相区别。

        Eclipse提供了一种更加柔性和高效的创建menu、toolbar以及popup的方式。

    • org.eclipse.ui.commands 
      一个任务的逻辑表达;
    • org.eclipse.ui.handlers
      即对command的实现;
    • org.eclipse.ui.bindings
      将command绑定到一个Key上(如将Ctrl+1绑定到一个command上);
    • org.eclipse.ui.contexts
      绑定组织到一个上下文中;
    • org.eclipse.ui.commandImages
      给command设置图标;
    • org.eclipse.ui.editor
      Eclipse编辑器;
    • org.eclipse.ui.view
      Eclipse视图
    • org.eclipse.ui.menus
      添加菜单/菜单项到主菜单、主工具栏,视图/编辑器的上下文菜单、工具栏等等。

        Action与Command区别:

        实际上ActionSet和Command框架的目标是相同的,都可以实现菜单、工具栏等扩展。但是二者也存在很大的区别:

    • Action将UI的表达和实现代码都存储在Action中,虽然二者可以通过Action Delegate进行一定的分离,但是它们还是依赖于Action。选择事件传递到Action中,并且Action的enabled状态依赖于当前的选择。这种表现方式不是很优美。为了将Action放置到workbench 中,我们不得不使用这些扩展点: org.eclipse.ui.viewActions、 org.eclipse.ui.popupMenus或 org.eclipse.ui.editorActions。
    • Command与此相比就要优美得多。Command实际上一些须执行代码的抽象表达, 这些代码的实际处理放在Handler中。当Workbench处于某种状态,Handler被执行。将Command放置到Workbench中实际上只需要用到org.eclipse.ui.menus一个扩展点。

      具体可参考:http://wiki.eclipse.org/FAQ_What_is_the_difference_between_a_command_and_an_action%3F


    作者:Alex Yu
    出处:http://www.cnblogs.com/biaoyu/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    实现带有头结点的链表
    数据结构之链式线性表
    HDU 1010 dfs+奇偶剪枝
    数据结构之顺序线性表
    POJ 1753 dfs+枚举
    HDU 4277 dfs+set去重
    平衡二叉树
    线性素数筛+欧拉线性筛(证明)
    dp--2019南昌网络赛B-Match Stick Game
    线段树+单调栈+前缀和--2019icpc南昌网络赛I
  • 原文地址:https://www.cnblogs.com/biaoyu/p/1691695.html
Copyright © 2020-2023  润新知