Eclipse API学习之ISelection接口

本文介绍了Eclipse中ISelection接口及其子接口IStructuredSelection的基本概念与使用方法,包括isEmpty()方法的实现及NullSelection类的定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

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;

   }

}

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值