Eclipse API学习之ISelection接口
2010-11-23 00:22
218 查看
ISelection接口仅有一个方法:
isEmpty()
由于ISelection接口比较简单,所以通常使用的是ISelection的子接口IStructuredSelection。
IStructuredSelection接口提供了一些方便的方法,比如获取第一个选择对象的的getFirstElement()
方法,获取所有选择对象的迭代器iterator()方法,获取所选择个数的size()方法,并且有把所有选择对象转化为List的toList()方法,和转化为数组的toArray()方法
扩展ISelection只需要实现isEmpty()方法即可,如下即是一个实现ISelection接口的例子:
public class TabSelection implements ISelection
{
private ChartTab chartTab;
public TabSelection(ChartTab chartTab)
{
this.chartTab = chartTab;
}
/* (non-Javadoc)
* @see org.eclipse.jface.viewers.ISelection#isEmpty()
*/
public boolean isEmpty()
{
return chartTab == null;
}
public ChartTab getChartTab()
{
return chartTab;
}
}
有时候在表格或者树中,想取消选择,即不选择任何对象。
即通过setSelection(obj)进行设置。
这里可能扩展一个NullSelection。NullSelection实现ISelection接口。
ISelection只有一个方法isEmpty(),只需要将isEmpty()方法返回false即可。
public class NullSelection implements ISelection{
public NullSelection(){
}
public boolean isEmpty(){
return true;
}
}
isEmpty()
由于ISelection接口比较简单,所以通常使用的是ISelection的子接口IStructuredSelection。
IStructuredSelection接口提供了一些方便的方法,比如获取第一个选择对象的的getFirstElement()
方法,获取所有选择对象的迭代器iterator()方法,获取所选择个数的size()方法,并且有把所有选择对象转化为List的toList()方法,和转化为数组的toArray()方法
扩展ISelection只需要实现isEmpty()方法即可,如下即是一个实现ISelection接口的例子:
public class TabSelection implements ISelection
{
private ChartTab chartTab;
public TabSelection(ChartTab chartTab)
{
this.chartTab = chartTab;
}
/* (non-Javadoc)
* @see org.eclipse.jface.viewers.ISelection#isEmpty()
*/
public boolean isEmpty()
{
return chartTab == null;
}
public ChartTab getChartTab()
{
return chartTab;
}
}
有时候在表格或者树中,想取消选择,即不选择任何对象。
即通过setSelection(obj)进行设置。
这里可能扩展一个NullSelection。NullSelection实现ISelection接口。
ISelection只有一个方法isEmpty(),只需要将isEmpty()方法返回false即可。
public class NullSelection implements ISelection{
public NullSelection(){
}
public boolean isEmpty(){
return true;
}
}
相关文章推荐
- 新瓶旧酒ASP.NET AJAX(2) - 客户端脚本编程(命名空间、类、成员、接口、继承、枚举)
- MySQL与C/C++接口应用学习
- EDMA3模块及其在AIF接口中的应用
- 谁将成为未来SSD主流接口?
- spring mvc @Qualifier注解接口来注入 @Service
- zTree实现地市县三级级联Service接口
- 黑马程序员-抽象类abstract class 与 接口interface 的区别
- Android接口解析方法
- 腾讯对外分享组件接口文档
- 从零开发一款APP 二、Java Web后端注册接口的实现
- python——模拟一个简单的登录接口程序
- java的HttpClient4.5对接luosimao.com短信平台的短信接口
- Java8 新特性 函数式接口
- socket编程接口函数简单介绍
- vue2(五) 将接口用 webpack 代理到本地
- 详细解析Java中抽象类和接口的区别
- 接口和抽象类(简易理解版)
- ASP.NET 重要接口
- java接口中能申明私有成员么?接口能不能实例化?
- WebView中接口隐患与手机挂马利用 转载乌云