GMF中编辑器(DiagramDocumentEditor)的应用

在GMF桌面面应用中,编辑器在整个应用中起着一个至关重要的作用,因为大部分的编辑工作都在上面完成,因此在里面实现的功能也相对比较多,下面列出在编辑器中比较常用的一些功能:

实现编辑器的父类为DiagramDocumentEditor,要实现编辑器就继承该类就可以了。

1、增加工具箱,通常在初始化编辑器后紧接着就会通过编辑器来加入相应的工具箱
@Override
protected PaletteRoot createPaletteRoot(PaletteRoot existingPaletteRoot) {
PaletteRoot root = super.createPaletteRoot(existingPaletteRoot);
if (root.getDefaultEntry() instanceof PanningSelectionToolEntry) {
PanningSelectionToolEntry deftool = (PanningSelectionToolEntry) root
.getDefaultEntry();
deftool.setToolClass(SelectionToolUtils.class);
// System.out.println(deftool);
}// end if

//这里通过工具箱工厂来创建工具箱
JonasPaletteFactory PaletteFactory = new Jonas.diagram.part.JonasPaletteFactory();
//填满工具箱
PaletteFactory.fillPalette(root);
return root;
}

2、创建视图提供器
@Override
protected ScrollingGraphicalViewer createScrollingGraphicalViewer() {
// 提供的界面上各种元素控件的操作
return new JonasDiagramGraphicalViewerProvider();
}


3、设置等宽等高
@Override
protected void createActions() {
super.createActions();
ActionRegistry registry = getActionRegistry();
IAction action;
action = new MatchWidthAction(this);
registry.registerAction(action);
getSelectionActions().add(action.getId());
action = new MatchHeightAction(this);
registry.registerAction(action);
getSelectionActions().add(action.getId());
}

5、保存编辑器的内容
public void doSave(IProgressMonitor progressMonitor)

6、关闭编辑器后释放资源
@Override
public void dispose()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值