My Tree结构如下所示,包含三个类Index,Key,Value
的Index1
|
-- Key1
|
-- Value1
索引2
|
-- Key2
|
-- Value2
我正在为索引条目创建一个上下文菜单,它应该有三个动作(newKeyAction,newValueAction,removeAction)
并右键单击空白区域,应弹出addAction。
这是负责的代码:
protected void fillContextMenu( IMenuManager manager )
{
ITreeSelection mySelection = (ITreeSelection) viewer.getSelection();
if(mySelection.size() == 1)
{
if(mySelection.getFirstElement() instanceof Index)
{
manager.add( newKeyAction );
manager.add( newValueAction );
manager.add( removeAction );
}
}
else
{
manager.add( addAction);
}
}
一切正常,但是当treeViewer为空时,只调用一次addAction,然后通过右键单击空白区域,选择树中最后选择的节点并显示其各自的操作。
请让我知道我哪里出错了。
答案 0 :(得分:0)
通过右键单击空白区域后,正在选择树中最后选择的节点并显示其各自的操作。
这是你的问题,你无法做任何事情。这是不可能清除这样的选择。您应该找到另一种方法使 addAction 可用。