6.12 xml part5 DiagramEidtor


1 public class DiagramEditor extends GraphicalEditorWithFlyoutPalette implements
2 IPersistableEditor {

?





1

<span>首先是定义的一些变量:<br></span>


 1     public static final String ID = "ttcn3.gft.editor.editor.DiagramEditor";
2
3 public static String WARN_FILEEXIST = "diagram file is not exists.";
4 //这是Palette的名字。一共定义了四个Palette。
5 public final static String TTYPE_TST = "testcase";
6 public final static String TTYPE_ALT = "altstep";
7 public final static String TTYPE_CNT = "module";
8 public final static String TTYPE_FUN = "function";
9
10 private PaletteRoot root;
11
12 private GraphicalViewer viewer;
13
14 private DiagramModel diagram;
15 private ResourceChangeListener resourceChangeListener;//???
16 private EditorPartListener editorListener;// ??
17
18 private String type = "";

?





1

<span style="background-color: rgb(255, 255, 153);">看第一个嵌套类:EditorPartListener</span>

?





1

IPartListener2的用法参看:<br><a href="http://www.blogjava.net/raul/archive/2008/01/04/172761.html">http://www.blogjava.net/raul/archive/2008/01/04/172761.htmlh<br></a><a href="http://blog.csdn.net/cuser_online/article/details/7947527">http://blog.csdn.net/cuser_online/article/details/7947527</a><a href="http://www.blogjava.net/raul/archive/2008/01/04/172761.html"><br></a>IIPartListener的应用场景?<br>IPartListener监听WorkbenchPart(包括ViewPart和EditorPart)和生命周期(打开,隐藏,关闭等),<br>当我们想在某WorkbenchPart在这些生命周期发生的触发点上做些事情的时候,此接口正好为你所用。<br>IPartListener2是IPartListener的一个替代类,其支持的事件更多一些。


 1 class EditorPartListener implements IPartListener2 {
2 DiagramEditor editor;
3
4 public EditorPartListener(DiagramEditor editor) {
5 super();
6 this.editor = editor;
7 }
8
9 // part listener
10 这一段不知道在干吗。将todoitem的viewer的text设为空?
11 public void partActivated(IWorkbenchPartReference partRef) {
12 // TODO Auto-generated method stub
13 if (partRef.getPart(true).equals(editor)) {
14
15 if (ToDoItemTemplate.getWinstate()) {
16 ToDoItemTemplate.getTDIViewer().setText("");
17 }
18 }
19 }
20
21 public void partBroughtToTop(IWorkbenchPartReference partRef) {
22 // TODO Auto-generated method stub
23 }
24
25
26 public void partClosed(IWorkbenchPartReference partRef) {
27 // TODO Auto-generated method stub
28 if (partRef.getPart(true).equals(editor)) {
29 CoreLangTemplate.removeFileWiter(editor);
30
31 if (ToDoItemTemplate.getWinstate()) {
32
33 }
34
35 }
36
37 }
38
39 @Override
40 public void partDeactivated(IWorkbenchPartReference partRef) {
41 // TODO Auto-generated method stub
42 }
43
44 @Override
45 public void partHidden(IWorkbenchPartReference partRef) {
46 // TODO Auto-generated method stub
47 }
48
49 @Override
50 public void partInputChanged(IWorkbenchPartReference partRef) {
51 // TODO Auto-generated method stub
52 }
53
54 @Override
55 public void partOpened(IWorkbenchPartReference partRef) {
56 // TODO Auto-generated method stub
57 if (partRef.getPart(true).equals(editor)) {
58
59 if (ToDoItemTemplate.getWinstate()) {
60 // add here
61 ToDoItemTemplate.getTDIViewer().setText("");
62 }
63
64 refreshTitleImage();
65 }
66 }
67
68 @Override
69 public void partVisible(IWorkbenchPartReference partRef) {
70 // TODO Auto-generated method stub
71 }
72 }

?





1

<span style="background-color: rgb(204, 255, 204);"><strong>第二个嵌套类:EditorDropListener </strong> (实现Palette的拖曳操作。)</span>


lass EditorDropListener extends TemplateTransferDropTargetListener {
public EditorDropListener() {
this(getGraphicalViewer());
}

public EditorDropListener(EditPartViewer viewer) {
super(viewer);
// TODO Auto-generated constructor stub
}

@Override
protected CreationFactory getFactory(Object template) {
if (template instanceof CreationFactory) {
return ((CreationFactory) template);
}
return null;
}

};

?





1

<span>第三个嵌套类:ResourceChangeListener </span> IResourceChangeListener的用法:

?





1

<a href="http://blog.csdn.net/a570056568/article/details/6152961">http://blog.csdn.net/a570056568/article/details/6152961</a><br><br>

?





1

6.12 xml part5 DiagramEidtor

时间: 2024-10-26 22:47:10

6.12 xml part5 DiagramEidtor的相关文章

spring applicationContext.xml和hibernate.cfg.xml设置

applicationContext.xml配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://ww

struts.xml配置详解

1.<include> 利用include标签,可以将一个struts.xml配置文件分割成多个配置文件,然后在struts.xml中使用<include>标签引入其他配置文件. 比如一个网上购物程序,可以把用户配置.商品配置.订单配置分别放在3个配置文件user.xml.goods.xml和order.xml中,然后在struts.xml中将这3个配置文件引入: struts.xml: 1 2 3 4 5 6 7 8 9 10 <?xml version="1.0

javaweb学习总结十一(JAX对XML文档进行DOM解析)

一:将内存中写好的xml文件读取到硬盘上 二:DOM方式对xml文件进行增删改查 1:添加节点(默认是在最后的子节点后面添加) 1 @Test 2 // 向元素中添加节点<version>1.0</version> 3 public void test5() throws Exception { 4 Document doc = getDoc(); 5 Node node = doc.getElementsByTagName("book").item(0); 6

Cocos2d-x 3.0 Json用法 Cocos2d-x xml解析

Cocos2d-x 3.0 加入了rapidjson库用于json解析.位于external/json下. rapidjson 项目地址:http://code.google.com/p/rapidjson/wiki:http://code.google.com/p/rapidjson/wiki/UserGuide 下面就通过实例代码讲解rapidjson的用法. 使用rapidjson解析json串 引入头文件 1 2 #include "json/rapidjson.h" #inc

Android开发之XML的创建和解析

参考:http://blog.csdn.net/pi9nc/article/details/9320413 XML文件的解析,代码: 1 public void click(View v) { 2 InputStream is = getClassLoader().getResourceAsStream("weather.xml"); 3 //获取到XMLPullParse接口的对象 4 XmlPullParser xpp = Xml.newPullParser(); 5 try {

C#基础笔记---浅谈XML读取以及简单的ORM实现

背景: 在开发ASP.NETMVC4 项目中,虽然web.config配置满足了大部分需求,不过对于某些特定业务,我们有时候需要添加新的配置文件来记录配置信息,那么XML文件配置无疑是我们选择的一个方案之一.下面简单谈谈XML的读取.  一. xml.linq读取xml 1.新建一个data.XML文件 1 <Customers> 2 <Customer> 3 <Name>Frank</Name> 4 <City>成都</City>

XmlSerializer 生成xml文件

1 /** 2 * XmlSerializer xml序列化器 3 */ 4 //创建xmlSerializer 5 XmlSerializer serializer = Xml.newSerializer(); 6 File file = new File(MainActivity.this.getFilesDir(), "config.xml"); 7 FileOutputStream fos; 8 try { 9 fos = new FileOutputStream(file);

[转] struts.xml配置详解

转自:http://www.cnblogs.com/fmricky/archive/2010/05/20/1740479.html struts.xml是我们在开发中利用率最高的文件,也是Struts2中最重要的配置文件. 一下分别介绍一下几个struts.xml中常用到的标签 1.<include> 利用include标签,可以将一个struts.xml配置文件分割成多个配置文件,然后在struts.xml中使用<include>标签引入其他配置文件. 比如一个网上购物程序,可以

php xml 转array 函数 (原创)

/** *Author zhudongchang *Date 2015/6/12 *xml 转array 函数 *@param string $xmlStr xml字符串 *@return string */ function convertXmlToArray($xmlStr){ $patten=<<<EOT /(^\s*<(\s*[a-zA-Z0-9_='":]+\s*)+>.*<\s*\/(\s*[a-zA-Z0-9_='":]+\s*)+&g