ht.ui.drawable.GradientColorDrawable(startColor, endColor, gradientType, radius)

new GradientColorDrawable(startColor, endColor, gradientType, radius)

GradientColorDrawable 类从 ht.ui.drawable.Drawable 继承,重写了 draw 方法在绘制区域内绘制渐进色

Parameters:
Name Type Attributes Description
startColor string
endColor string
gradientType string
radius number | Array.<number> <optional>

Extends

Methods

addPropertyChangeListener(listener, scope, ahead) → {void}

增加属性事件变化监听函数

Parameters:
Name Type Attributes Description
listener Object

监听器函数

scope object <optional>

函数域

ahead boolean <optional>

是否将当前监听器插入到监听器列表开头

Returns:
void
Inherited From:

draw(x, y, width, height, data, view, dom) → {void}

绘制内容

Parameters:
Name Type Attributes Description
x number

绘制范围的 x 坐标

y number

绘制范围的 y 坐标

width number

绘制范围的宽度

height number

绘制范围的高度

data ht.Data <optional>

绘制相关的 Data 对象,如绘制树组件中节点的 icon 时,可以用此参数判断出当前在绘制哪个节点

view ht.ui.View

当前在绘制的组件

dom HTMLElement <optional>

当前在绘制的 dom 对象,绝大多数组件无需考虑这个参数(因为只有一个绘制 canvas),特殊的是右键菜单,每个子菜单都是一个单独的 canvas,这种情况下才有这个参数

Returns:
void
Inherited From:
Example
// 下面这段代码绘制了一个矩形
function MyDrawable() {
	MyDrawable.superClass.constructor.call(this);
}
ht.Default.def(MyDrawable, ht.ui.drawable.Drawable, {
	draw: function(x, y, width, height, data, view, dom) {
		var g = view.getRootContext(dom);
		g.beginPath();
		g.rect(x, y, width, height);
		g.fillStyle = 'red';
		g.fill();
	}
});

firePropertyChange(property, oldValue, newValue, compareFunc) → {boolean}

派发属性变化事件

Parameters:
Name Type Attributes Description
property string

属性名

oldValue any

属性变化之前的值

newValue any

属性变化之后的值

compareFunc Object <optional>

比较函数,用于比较新值和旧值是否一致,如果一致则不会派发事件

Returns:
boolean -

事件是否派发成功

Inherited From:

fp(property, oldValue, newValue, compareFunc) → {boolean}

派发属性变化事件,firePropertyChange 的缩写

Parameters:
Name Type Attributes Description
property string

属性名

oldValue any

属性变化之前的值

newValue any

属性变化之后的值

compareFunc Object <optional>

比较函数,用于比较新值和旧值是否一致,如果一致则不会派发事件

Returns:
boolean -

事件是否派发成功

Inherited From:

getEndColor() → {string}

获取结束渐变色

Returns:
string

getGradientType() → {string}

获取渐变类型

Returns:
string

getRadius() → {number|Array.<number>}

获取圆角

Returns:
number | Array.<number>

getSerializableProperties() → {object}

获取可序列化的属性

Returns:
object -

属性 map

Inherited From:

getStartColor() → {string}

获取开始渐变色

Returns:
string

mp(listener, scope, ahead) → {void}

增加属性事件变化监听函数,addPropertyChangeListener 的缩写

Parameters:
Name Type Attributes Description
listener Object

监听器函数

scope object <optional>

函数域

ahead boolean <optional>

是否将当前监听器插入到监听器列表开头

Returns:
void
Inherited From:

removePropertyChangeListener(listener, scope) → {void}

删除属性事件变化监听器

Parameters:
Name Type Attributes Description
listener Object

监听器函数

scope object <optional>

函数域

Returns:
void
Inherited From:

setEndColor(endColor) → {void}

设置结束渐变色

Parameters:
Name Type Description
endColor string

结束渐变色

Returns:
void

setGradientType(gradientType) → {void}

设置渐变类型

Parameters:
Name Type Description
gradientType string

渐变类型,例:linear.southwest

Returns:
void

setRadius(radius) → {void}

设置绘制范围的圆角半径,配合此参数可绘制圆角矩形

Parameters:
Name Type Description
radius number | Array.<number>

圆角半径;如果是数组,则表示[左上圆角半径, 右上圆角半径, 左下圆角半径, 右下圆角半径]

Returns:
void

setStartColor(startColor) → {void}

设置开始渐变色

Parameters:
Name Type Description
startColor string

开始渐变色

Returns:
void

ump(listener, scope) → {void}

删除属性事件变化监听器,removePropertyChangeListener 的缩写

Parameters:
Name Type Attributes Description
listener Object

监听器函数

scope object <optional>

函数域

Returns:
void
Inherited From: