栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

blog220123.Eclipse ui之command, handler, menu, 和binding的extPoints

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

blog220123.Eclipse ui之command, handler, menu, 和binding的extPoints

blog220123.Eclipse ui之command, handler, menu, 和binding的extPoints

Commands, extP="org.eclipse.ui.commands"Handlers, extP="org.eclipse.ui.handlers",Bindings, extP="org.eclipse.ui.bindings"Menus, extP="org.eclipse.ui.menus"

本文以eclipse 4.20为参考.

使用extension points是实现软件menu, toolbar, 和key binding相关功能的主要办法. 相对于代码编程而言, 有易配置, 逻辑清晰易维护的优点.

Commands, extP=“org.eclipse.ui.commands”

用于添加category, command.
复杂的command还可以使用commandParameter, 需要定义commandParameterType.
commandParameterType/converter需要继承org.eclipse.core.commands.AbstractParameterValueConverter.
command在没有绑定handler时是disabled.

一个例子,


  
  
  
  
  
  
  
	 
	 
  
  
  

Handlers, extP=“org.eclipse.ui.handlers”,

handler定义的是command被激发时要执行的动作. 用于绑定command和handler, 前者指定command id, 后者指定handler class.
handlerClass要实现org.eclipse.core.commands.IHandler, 通常继承org.eclipse.core.commands.AbstractHandler.
除此, 考虑动态情形, 可以指定activeWhen和enableWhen.

一个例子


  
  
  
	 
		
		   
		   
		
	 
  

Bindings, extP=“org.eclipse.ui.bindings”

设定key bindings, 包括keyScheme和keyBinding.
对于keyScheme, 可以在Window > Preference > General > Keys > scheme中选择使用.
需要注意, keyScheme可以有parent scheme.

一个例子,


  
  

  
  
  
		
		
  

Menus, extP=“org.eclipse.ui.menus”

用于设定main menu/toolbar, view menu/view, view dropdown menu, conext menu和trim.

menuContribution/locationURI用于指定出现的位置.
允许实现动态的menu list, 其class需继承ContributionItem.

一个例子


  
	 
		
		
		
		
		
		
	 
	 
	 
	 
		
		
		
		
		
		
	 
	 
		
		
	 
  
  
	 
		
		
		
		
	 
	 
	 
  

驽马一架 一花一世界 2022/1/23

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/716219.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号