element.java
来自「对eclipse gef进行封装,可以生成图形化编辑器」· Java 代码 · 共 156 行
JAVA
156 行
/*******************************************************************************
* $Header: /cvsroot/EOS6/work_dir/niegy/com.primeton.studio.gef.ui/src/com/primeton/studio/gef/ui/properties/Element.java,v 1.4 2006/12/30 02:45:04 niegy Exp $
* $Revision: 1.4 $
* $Date: 2006/12/30 02:45:04 $
*
*==============================================================================
*
* Copyright (c) 2001-2006 Primeton Technologies, Ltd.
* All rights reserved.
*
* Created on 2006-10-30
*******************************************************************************/
package com.primeton.studio.gef.ui.properties;
import java.lang.reflect.Method;
import java.util.Iterator;
import java.util.List;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.views.properties.IPropertyDescriptor;
import com.primeton.studio.gef.core.Connection;
import com.primeton.studio.gef.core.Diagram;
import com.primeton.studio.gef.core.NodeElement;
import com.primeton.studio.gef.ui.parts.ExtenderReader;
import com.primeton.studio.gef.ui.util.PathUtil;
/**
* TODO此处填写 class 信息
*
* @author niegy (mailto:niegy@primeton.com)
*/
/*
* 修改历史
* $Log: Element.java,v $
* Revision 1.4 2006/12/30 02:45:04 niegy
* 重构代码
*
* Revision 1.3 2006/12/16 09:04:42 niegy
* 重构代码
*
* Revision 1.2 2006/12/05 05:18:59 niegy
* 修改模型,增加连线的扩展点
*
* Revision 1.1 2006/11/22 07:07:38 niegy
* 增加table
*
* Revision 1.1 2006/11/17 03:33:20 niegy
* create
*
*/
public class Element implements IPropertyObject {
private com.primeton.studio.gef.core.Element element;
private String pluginId;
protected Element(com.primeton.studio.gef.core.Element node,String pluginId) {
element = node;
this.pluginId = pluginId;
}
public com.primeton.studio.gef.core.Element getElement(){
return element;
}
protected String path = ExtenderReader.getInstance().getFilePath(pluginId);//PathUtil.pluginInstallPath(BizUiPlugin.getDefault(),
// "config/biz.xml");
protected String getPropertyName() {
if(element instanceof Diagram){
Diagram diagram = ExtenderReader.getInstance().getEditPartFactory(pluginId).getDiagram();
String value = diagram.getName();
return value;
}
List list = ExtenderReader.getInstance().getPaletteEntryList(pluginId);
if(element instanceof Connection)
list = ExtenderReader.getInstance().getPaletteLineList(pluginId);
for (Iterator iter = list.iterator(); iter.hasNext();) {
try{
List entry = (List) iter.next();
String name = (String)entry.get(1);
Object targetObj = entry.get(2);
if(element.getClass().equals(targetObj.getClass())){
return name;
}
}
catch(Exception e){
e.printStackTrace();
}
}
return "";
}
/* (non-Javadoc)
* @see com.huawei.enip.ide.dsb.dataflow.ui.properties.IPropertyObject#getEditableValue()
*/
public Object getEditableValue() {
// TODO Auto-generated method stub
return new PropertyElement(element,pluginId);
}
/* (non-Javadoc)
* @see com.huawei.enip.ide.dsb.dataflow.ui.properties.IPropertyObject#getPropertyDescriptors()
*/
public IPropertyDescriptor[] getPropertyDescriptors() {
// TODO Auto-generated method stub
return NodePropertyReader.getInstance().getPropertyDescriptors(getPropertyFilePath(), getPropertyName(), this);
}
/* (non-Javadoc)
* @see com.huawei.enip.ide.dsb.dataflow.ui.properties.IPropertyObject#getPropertyValue(java.lang.Object)
*/
public Object getPropertyValue(Object id) {
// TODO Auto-generated method stub
return NodePropertyReader.getInstance().getPropertyValue(getPropertyFilePath(), getPropertyName(), this, id);
}
/* (non-Javadoc)
* @see com.huawei.enip.ide.dsb.dataflow.ui.properties.IPropertyObject#setPropertyValue(java.lang.Object, java.lang.Object)
*/
public void setPropertyValue(Object id, Object value) {
// TODO Auto-generated method stub
NodePropertyReader.getInstance().setPropertyValue(getPropertyFilePath(), getPropertyName(), this, id, value);
}
/* (non-Javadoc)
* @see com.huawei.enip.ide.dsb.dataflow.ui.properties.IPropertyObject#setEditorPart(org.eclipse.ui.IEditorPart)
*/
public void setEditorPart(IEditorPart part) {
// TODO Auto-generated method stub
}
/* (non-Javadoc)
* @see com.huawei.enip.ide.dsb.dataflow.ui.properties.IPropertyObject#getEditorPart()
*/
public IEditorPart getEditorPart() {
// TODO Auto-generated method stub
return null;
}
protected String getPropertyFilePath() {
// if(path==null)
// path = PathUtil.pluginInstallPath(BizUiPlugin.getDefault(),
// "config/biz.xml");
path = ExtenderReader.getInstance().getFilePath(pluginId);
return path;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?