twaver.network
Class UI<T>

java.lang.Object
  extended by twaver.core.network.BaseUI<T>
      extended by twaver.network.UI<T>
Type Parameters:
T - 图形所需的数据,比如String, IImage, Path ...
All Implemented Interfaces:
twaver.core.network.IUI<T,Canvas,Paint>
Direct Known Subclasses:
ImageUI, LabelUI, ShapeUI

public abstract class UI<T>
extends twaver.core.network.BaseUI<T>

可放置在网元上的UI虚类,是LabelUI, ImageUI, ShapeUI的基类


Field Summary
protected  ElementUI<?> elementUI
          网元UI对象
 
Fields inherited from class twaver.core.network.BaseUI
anchorPoint, bodyOffsetX, bodyOffsetY, bounds, data, invalidateAnchorPointFlag, invalidateLocationFlag, invalidateRenderFlag, invalidateSizeFlag, location, stateOutline, stateOutlineColor, visible
 
Constructor Summary
UI(ElementUI<?> elementUI)
          UI对象代表网元上的图形挂件,比如文字,图片或者图形,可以在网元上添加多个UI对象,组合成复杂的网元外观
 
Method Summary
protected  void drawBodySelection(Canvas canvas, Paint paint)
          绘制主体选中效果
protected  void drawBodyStateOutline(Canvas canvas, Paint paint)
          绘制主体状态边框
protected  void drawBodyStateOutline(Canvas canvas, Paint paint, int stateOutlineColor, float stateOutline)
          绘制主体状态边框,指定边框宽度和颜色
 ElementUI<?> getElementUI()
           
 Position getPosition()
           
 boolean intersect(Point point)
          点相交
 boolean intersect(Rect rect)
          矩形相交
 void invalidateSize()
          无效尺寸
 boolean isSendToBottom()
          是否绘制在网元的底部
protected  void onDrawBody(Canvas canvas, Paint paint, boolean drawSelectionOnBody, boolean drawStateOutlineOnBody)
          绘制主体
 void resetPaint(Paint paint)
          重置画笔
 void setPosition(Position position)
          设置UI在网元上的位置
 boolean setSendToBottom(boolean sendToBottom)
          是否显示在网元主体之下
 
Methods inherited from class twaver.core.network.BaseUI
checkBackground, checkOutline, draw, drawBackgroundAndBorder, drawBody, drawStateOutline, drawStateOutline, getAnchorPoint, getAnchorPosition, getAngle, getBackgroundColor, getBounds, getCornerRadius, getData, getLocation, getMeasuredHeight, getMeasuredWidth, getOffset, getOutlineColor, getOutlineWidth, getRenderColor, getSelectionBorder, getSelectionBorderColor, getStateOutline, getStateOutlineColor, intersectPointer, invalidateAnchorPoint, invalidateLocation, invalidatePointer, invalidateRender, isDrawBackground, isDrawOutline, isDrawStateOutline, isInvalidate, isInvalidateAnchorPoint, isInvalidateLocation, isInvalidateSize, isLayoutByAnchorPoint, isRelativeLocation, isRotatable, isSelected, isShowOnTop, isVisible, measure, measureAnchorPosition, onDraw, onDrawBackgroundAndBorder, perLocation, resetShape, setAnchorPosition, setBackgroundColor, setBackgroundShader, setBounds, setBounds, setCornerRadius, setData, setLayoutByAnchorPoint, setLocation, setLocation, setMeasuredSize, setOffset, setOutline, setOutlineColor, setPadding, setPointerVisible, setPointerWidth, setRenderColor, setRotatable, setSelected, setSelectionBorder, setSelectionBorderColor, setShowOnTop, setStateOutline, setStateOutlineColor, setVisible, styleSelectionPaint, toAbsoluteRect, toLocalPoint, toLocalRect, validate, validateLocation, validatePointer, validateRender
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

elementUI

protected ElementUI<?> elementUI
网元UI对象

Constructor Detail

UI

public UI(ElementUI<?> elementUI)
UI对象代表网元上的图形挂件,比如文字,图片或者图形,可以在网元上添加多个UI对象,组合成复杂的网元外观

Parameters:
elementUI - 网元UI对象
See Also:
Attachment, ElementUI
Method Detail

setSendToBottom

public boolean setSendToBottom(boolean sendToBottom)
是否显示在网元主体之下

Parameters:
sendToBottom -
Returns:
是否设置成功
See Also:
isSendToBottom()

isSendToBottom

public boolean isSendToBottom()
是否绘制在网元的底部

Returns:
是否绘制在网元的底部

getElementUI

public ElementUI<?> getElementUI()
Returns:
网元UI对象
See Also:
UI(ElementUI)

setPosition

public void setPosition(Position position)
设置UI在网元上的位置

Parameters:
position - UI在网元上的位置
See Also:
getPosition()

getPosition

public Position getPosition()
Returns:
UI处于网元的位置

invalidateSize

public void invalidateSize()
无效尺寸

Specified by:
invalidateSize in interface twaver.core.network.IUI<T,Canvas,Paint>
Overrides:
invalidateSize in class twaver.core.network.BaseUI<T>
See Also:
BaseUI.measure()

drawBodySelection

protected void drawBodySelection(Canvas canvas,
                                 Paint paint)
绘制主体选中效果

Parameters:
canvas -
paint -

drawBodyStateOutline

protected void drawBodyStateOutline(Canvas canvas,
                                    Paint paint)
绘制主体状态边框

Parameters:
canvas -
paint -
See Also:
drawBodyStateOutline(Canvas, Paint, int, float)

drawBodyStateOutline

protected void drawBodyStateOutline(Canvas canvas,
                                    Paint paint,
                                    int stateOutlineColor,
                                    float stateOutline)
绘制主体状态边框,指定边框宽度和颜色

Parameters:
canvas -
paint -
stateOutlineColor - 状态边框宽度
stateOutline - 状态边框颜色
See Also:
drawBodyStateOutline(Canvas, Paint)

onDrawBody

protected void onDrawBody(Canvas canvas,
                          Paint paint,
                          boolean drawSelectionOnBody,
                          boolean drawStateOutlineOnBody)
绘制主体

Specified by:
onDrawBody in class twaver.core.network.BaseUI<T>
Parameters:
canvas -
paint -
drawSelectionOnBody - 是否绘制选中效果
drawStateOutlineOnBody - 是否绘制边框
See Also:
drawBodySelection(Canvas, Paint), drawBodyStateOutline(Canvas, Paint)

intersect

public boolean intersect(Point point)
点相交

Specified by:
intersect in interface twaver.core.network.IUI<T,Canvas,Paint>
Overrides:
intersect in class twaver.core.network.BaseUI<T>
Parameters:
point - 相交点

intersect

public boolean intersect(Rect rect)
矩形相交

Specified by:
intersect in interface twaver.core.network.IUI<T,Canvas,Paint>
Overrides:
intersect in class twaver.core.network.BaseUI<T>
Parameters:
rect - 相交矩形

resetPaint

public void resetPaint(Paint paint)
重置画笔

Overrides:
resetPaint in class twaver.core.network.BaseUI<T>