ht.Edge()

new Edge()

拓扑连线,用于连接起始和目标两个Node节点,两个节点间可以有多条Edge存在,
也允许起始和目标为同一节点。

连线的agent指的是目前拓扑上真正代理连接该连线的节点,
当节点位于关闭的Group之内时,Group将代理内部的节点进行连接。

Extends

Methods

a(name, value) → {Object}

获取或设置attr属性,仅有一个参数时相当于getAttr,有两个参数时相当于setAttr

Parameters:
Name Type Attributes Description
name String

属性名

value Object <optional>

属性值

Returns:
Object
Inherited From:

addChild(child, index)

添加孩子节点,index为孩子插入索引,为空则插入作为最后的孩子,内部会自动调用child的setParent

Parameters:
Name Type Attributes Description
child ht.Data

孩子元素

index Number <optional>

插入索引

Inherited From:

addStyleIcon(name, icon)

增加icon,icon参数请参考beginner guide

Parameters:
Name Type Description
name String

icon名

icon Object

icon参数

Inherited From:
Example
data.addStyleIcon("arrow1", {
   position: 2,
   width: 50,
   height: 25,
   keepOrien: true,
   names: ['arrow']
});

clearChildren()

删除所有孩子节点,内部会自动调用setParent

Inherited From:

dm() → {ht.DataModel}

获取DataModelgetDataModel的缩写

Returns:
ht.DataModel -

dataModel

Inherited From:

eachChild(func, scope)

遍历孩子元素

Parameters:
Name Type Attributes Description
func function

遍历函数

scope Object <optional>

函数域

Inherited From:
Example
data.eachChild(function(child) {
   console.log(child.getId());
});

firePropertyChange(property, oldValue, newValue)

派发属性变化事件

Parameters:
Name Type Description
property String

属性名

oldValue Object

旧值

newValue Object

新值

Inherited From:

fp(property, oldValue, newValue)

派发属性变化事件,同firePropertyChange

Parameters:
Name Type Description
property String

属性名

oldValue Object

旧值

newValue Object

新值

Inherited From:

getAttr(name) → {Object}

获取attr属性

Parameters:
Name Type Description
name String

属性名

Returns:
Object
Inherited From:

getAttrObject() → {Object}

获取attr属性对象,该属性默认为空,用于存储用户业务信息

Returns:
Object -

attr属性对象

Inherited From:

getChildAt(index) → {ht.Data}

返回指定索引位置的孩子

Parameters:
Name Type Description
index Number

索引

Returns:
ht.Data -

索引对应的孩子

Inherited From:

getChildren() → {ht.List}

获取所有孩子节点

Returns:
ht.List -

孩子元素集合

Inherited From:

getClass() → {function}

获取类声明(构造函数)

Returns:
function -

类声明(构造函数)

Inherited From:

getClassName() → {String}

获取类全名,继承Data并希望序列化时应该重写此方法返回子类的类名字符串

Returns:
String -

类全名

Inherited From:
See:

getDataModel() → {ht.DataModel}

获取所属的DataModel

Returns:
ht.DataModel -

DataModel数据容器

Inherited From:

getDisplayName() → {String}

获取显示名称,常作为Column和Property的列头和属性名称显示

Returns:
String -

显示名称

Inherited From:

getEdgeGroup() → {ht.EdgeGroup}

获取连线组,起始和目标节点间有多条连线时才有值

Returns:
ht.EdgeGroup -

连线分组

getEdgeGroupIndex() → {Number}

获取当前连线在连线组内的索引

Returns:
Number -

索引

getEdgeGroupIndex() → {Number}

获取当前连线在连线组内的索引

Returns:
Number -

索引

getEdgeGroupSize() → {Number}

获取当前连线所在的连线组中的连线数

Returns:
Number -

连线数

getIcon() → {String|Object}

获取小图标名称,常作为TreeView和ListView等组件上的节点小图标

Returns:
String | Object -

图标名或矢量

Inherited From:

getId() → {Number}

获取唯一编号

Returns:
Number -

唯一编号

Inherited From:

getLayer() → {String|Number}

获取数据元素在GraphView组件中的图层位置

Returns:
String | Number -

图层名

Inherited From:
Default Value:
  • 0

getName() → {String}

获取数据元素名

Returns:
String -

名称

Inherited From:

getParent() → {ht.Data}

获取父元素

Returns:
ht.Data -

父元素

Inherited From:

getSerializableAttrs() → {Object}

此函数返回一个map,决定序列化时哪些attr属性可被序列化,默认所有attr对象里的属性都会被序列化

Returns:
Object -

需要被序列化的attr属性map

Inherited From:
Example
function(){
    var name, map = {};
    for (name in this._attrObject) {
        map[name] = 1;
    }
    return map;
}

getSerializableProperties() → {Object}

此函数返回一个map,决定序列化时哪些属性可被序列化,如果有自定义的get/set属性并且需要序列化,应该重写此方法

Returns:
Object -

需要被序列化的属性map

Inherited From:
Example
function(){
    return {
        name: 1,
        displayName: 1,
        icon: 1,
        toolTip: 1,
        parent: 1,
        layer: 1,
        tag: 1,
        adjustChildrenToTop: 1
    };
}

getSerializableStyles() → {Object}

此函数返回一个map,决定序列化时哪些样式可被序列化,默认所有样式都会被序列化

Returns:
Object -

需要被序列化的样式map

Inherited From:
Example
function(){
    var name, map = {};
    for (name in this._styleMap) {
        map[name] = 1;
    }
    return map;
}

getSource() → {ht.Node}

获取起始图元

Returns:
ht.Node -

起始图元

getSourceAgent() → {ht.Node}

获取拓扑上连接的起始图元(代理)

Returns:
ht.Node -

起始图元(代理)

getStyle(name) → {Object}

获取样式属性

Parameters:
Name Type Description
name String

样式名

Returns:
Object
Inherited From:

getStyleMap() → {Object}

获取图元内部样式映射信息

Returns:
Object -

样式映射表

Inherited From:

getSuperClass() → {function}

获取父类声明(构造函数),继承类时可以用来调用父类构造或函数

Returns:
function -

父类声明(构造函数)

Inherited From:
Example
function MyNode() {
     this.getSuperClass().call(this);//调用父类构造函数
}
ht.Default.def(MyNode, ht.Data, {
   setName: function(name) {
   	this.getSuperClass().prototype.setName.call(this, name);//调用父类的setName函数
   	this._username = name;
   }
});

getTag() → {String}

获取标识号,可通过getDataByTag快速查找

Returns:
String -

标识号

Inherited From:

getTarget() → {ht.Node}

获取目标图元

Returns:
ht.Node -

目标图元

getTargetAgent() → {ht.Node}

获取拓扑上连接的目标图元(代理)

Returns:
ht.Node -

目标图元(代理)

getToolTip() → {String}

获取文字提示信息

Returns:
String -

文字提示

Inherited From:

getUIClass() → {function}

获取拓扑组件上的UI类

Returns:
function -

UI类声明(构造函数)

Inherited From:

hasChildren() → {Boolean}

判断是否有孩子

Returns:
Boolean -

是否有孩子

Inherited From:

invalidate()

强制触发属性变化事件通知界面更新

Inherited From:

isAdjustChildrenToTop() → {Boolean}

GraphView点击图元会自动sendToTop,该属性决定是否对子图元也进行sendToTop操作

Returns:
Boolean -

是否将children自动sendToTop

Inherited From:

isDescendantOf(data) → {Boolean}

判断自身是否为指定data的子孙

Parameters:
Name Type Description
data ht.Data

要对比的数据元素

Returns:
Boolean -

自身是否为指定data的子孙

Inherited From:

isEdgeGroupAgent() → {Boolean}

获取当前连线是否为所在连线组的代理

Returns:
Boolean

isEdgeGroupHidden() → {Boolean}

判断当前连线在连线组中是否被隐藏

Returns:
Boolean

isEmpty() → {Boolean}

判断是否有孩子,同hasChildren

Returns:
Boolean -

是否有孩子

Inherited From:

isLooped() → {Boolean}

是否是自环(起始和目标是同一个图元)

Returns:
Boolean

isParentOf(data) → {Boolean}

判断自身是否为指定data的父亲

Parameters:
Name Type Description
data ht.Data

要对比的数据元素

Returns:
Boolean -

自身是否为指定data的父亲

Inherited From:

isRelatedTo(data) → {Boolean}

判断自身与指定data是否有父子或子孙关系

Parameters:
Name Type Description
data ht.Data

要对比的数据元素

Returns:
Boolean -

自身与指定data是否有父子或子孙关系

Inherited From:

iv()

强制触发属性变化事件通知界面更新,invalidate的缩写

Inherited From:

onChildAdded(child, index)

添加孩子时的回调函数,可重载做后续处理

Parameters:
Name Type Description
child ht.Data

新增加的孩子元素

index Number

索引

Inherited From:

onChildRemoved(child, index)

删除孩子时的回调函数,可重载做后续处理

Parameters:
Name Type Description
child ht.Data

被删除的孩子元素

index Number

索引

Inherited From:

onParentChanged(oldParent, parent)

改变父亲元素时的回调函数,可重载做后续处理

Parameters:
Name Type Description
oldParent ht.Data

旧的父元素

parent ht.Data

新的父元素

Inherited From:

onPropertyChanged(event)

属性变化回调函数,可重载做后续处理

Parameters:
Name Type Description
event Object

属性变化事件

Inherited From:
Example
//event格式:
{
	property: 'name',//发生变化的属性
	oldValue: 'oldValue',//旧值
	newValue: 'newValue',''新值
	data: data//发生变化的data
}

onStyleChanged(name, oldValue, newValue)

样式属性变化时会回调该函数,可重载做后续处理

Parameters:
Name Type Description
name String

样式名

oldValue Object

旧的样式值

newValue Object

新的样式值

Inherited From:

removeChild(child)

删除指定孩子元素,内部会自动调用孩子元素的setParent

Parameters:
Name Type Description
child ht.Data

要删除的孩子元素

Inherited From:

removeStyleIcon(name)

删除icon

Parameters:
Name Type Description
name String

要删除的icon名

Inherited From:

s(name, value) → {Object}

获取或设置样式,仅有一个参数时相当于getStyle,有两个参数时相当于setStyle

Parameters:
Name Type Attributes Description
name String

样式名

value Object <optional>

样式值

Returns:
Object
Inherited From:

setAdjustChildrenToTop(adjustToTop)

GraphView点击图元会自动sendToTop,该属性决定是否对子图元也进行sendToTop操作

Parameters:
Name Type Description
adjustToTop Boolean

是否将children自动sendToTop

Inherited From:

setAttr(name, value)

设置attr属性

Parameters:
Name Type Description
name String

属性名

value Object

属性值

Inherited From:

setAttrObject(attrObject)

设置attr属性对象,该属性默认为空,用于存储用户业务信息

Parameters:
Name Type Description
attrObject Object

attr属性对象

Inherited From:

setDisplayName(displayName)

设置显示名称,常作为Column和Property的列头和属性名称显示

Parameters:
Name Type Description
displayName String

显示名称

Inherited From:

setIcon(icon)

设置小图标名称,常作为TreeView和ListView等组件上的节点小图标

Parameters:
Name Type Description
icon String | Object

图标名或矢量

Inherited From:

setId(id)

设置唯一编号,如果手工设置,一定要确保在data加入到DataModel之前设置并且唯一不重复

Parameters:
Name Type Description
id String | Number

唯一编号

Inherited From:

setLayer(layer)

设置数据元素在GraphView组件中的图层位置

Parameters:
Name Type Description
layer String | Number

图层名

Inherited From:

setName(name)

设置数据元素名称

Parameters:
Name Type Description
name String

数据元素名称

Inherited From:

setParent(parent)

设置父元素

Parameters:
Name Type Description
parent ht.Data

父元素

Inherited From:

setSource(source)

设置起始图元

Parameters:
Name Type Description
source ht.Node

起始图元

setStyle(name, value)

设置样式

Parameters:
Name Type Description
name String

样式名

value Object

样式值

Inherited From:

setTag(tag)

设置标识号,可通过getDataByTag快速查找

Parameters:
Name Type Description
tag String

标识号

Inherited From:

setTarget(target)

设置目标图元

Parameters:
Name Type Description
target ht.Node

目标图元

setToolTip(toolTip)

设置文字提示信息

Parameters:
Name Type Description
toolTip String

文字提示

Inherited From:

size() → {Number}

获取孩子元素总数

Returns:
Number -

孩子元素总数

Inherited From:

toChildren(matchFunc, scope) → {ht.List}

以matchFunc为过滤函数构建新的孩子元素集合

Parameters:
Name Type Attributes Description
matchFunc function <optional>

过滤函数

scope Object <optional>

函数域

Returns:
ht.List -

孩子元素集合

Inherited From:
Example
var list = data.toChildren(function(child) {
   if (child.a('visible')) {
   	return true;
   }
});

toLabel() → {String}

返回值作为TreeView和GraphView等组件上的图元文字标签,默认返回displayName||name信息

Returns:
String -

文字标签

Inherited From:

toString() → {String}

重写js默认的toString

Returns:
String
Inherited From: