超越自我

一切皆有可能

 

关于MultiPageEditorActionBarContributor

MultiPageEditorActionBarContributor是MultiPageEditor的actions,当切换Editor 和Page的时候要自己更新toolbar,menu,statusbar等action或状态的.
由于我在单独的Editor测试这些地方(toolbar,menu,statusbar等)都没有问题.当时将这些单独的Editor放到MultiPageEditor中这些地方就很不正常.
一方面我不想改变单独editor的各自的Contributor;另一方面切换这些Editor 和Page的时候要到当前Editor的toolbar,menu.
初始化和dispose.
public MultiEditorContributor() {
  super();
  designContributor=new DesignEditorContributor();
  sourceContributor=new SourceEditorContributor();
otherContributor=new OtherEditorContributor ();
 }
 protected DesignEditorContributor designContributor=null;
 protected SourceEditorContributor sourceContributor=null;
protected OtherEditorContributor otherContributor=null;
 protected MultiEditorPart multiPageEditor=null;
 public void init(IActionBars bars) {
  if(bars != null)
        {
   if(designContributor!=null)
    designContributor.init(bars,getPage());
   if(sourceContributor!=null)
    sourceContributor.init(bars,getPage());
        }
   if(otherContributor!=null)
    otherContributor.init(bars,getPage());
        }
 }
 public void dispose(){
  super.dispose();
  if(designContributor!=null)
   designContributor.dispose();
  if(sourceContributor!=null)
   sourceContributor.dispose();
 }
if(otherContributor!=null)
   otherContributor.dispose();
 }

记录当前editor,如果相同返回/否则刷新
private IEditorPart currentEditorPart=null;
 public void setActivePage(IEditorPart activeEditor) {
  ......
}

posted on 2005-10-20 11:08 jame 阅读(1012) 评论(0)  编辑  收藏 所属分类: Eclipse plugin Extension points扩展点


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

常用链接

留言簿(3)

随笔档案

文章分类

文章档案

相册

收藏夹

UML

搜索

最新评论

阅读排行榜

评论排行榜