using System.Drawing; namespace Dongke.IBOSS.Basics.FlowSetting { /// /// 线段 /// public class FlowLine : FlowItem { #region 成员变量 /// /// 起点坐标 /// private Point _pointBegin = Point.Empty; /// /// 终点坐标 /// private Point _pointEnd = Point.Empty; /// /// 线的颜色 /// private Color _lineColor = Consts.LINE_COLOR_DEFAULT; /// /// 线宽 /// private int _lineWidth = Consts.LINE_WIDTH_DEFAULT; /// /// 起始节点连接点 /// private AnchorKind _anchorBegin = AnchorKind.None; /// /// 终止节点连接点 /// private AnchorKind _anchorEnd = AnchorKind.None; /// /// 起始节点(不保存xml) /// private FlowNode _nodeBegin = null; /// /// 终止节点(不保存xml) /// private FlowNode _nodeEnd = null; /// /// 加载流程时使用,临时保存NodeCode,把line链接到node时利用。 /// internal string NodeCodeBegin = null; /// /// 加载流程时使用,临时保存NodeCode,把line链接到node时利用。 /// internal string NodeCodeEnd = null; #endregion 成员变量 #region 构造函数 /// /// 新线段 /// /// 流程项目管理 internal FlowLine(ItemManager manager) : base(manager) { this.ShowName = false; this.Name = "连线" + this.ItemID; } /// /// 导入的线段 /// /// 流程项目管理 /// 项目ID /// 唯一编码 internal FlowLine(ItemManager manager, int itemID, string onlyCode) : base(manager, itemID, onlyCode) { this.ShowName = false; this.Name = "连线" + this.ItemID; } #endregion 构造函数 #region 属性 /// /// 起点坐标 /// public Point PointBegin { get { return this._pointBegin; } internal set { this._pointBegin = value; } } /// /// 终点坐标 /// public Point PointEnd { get { return this._pointEnd; } internal set { this._pointEnd = value; } } /// /// 线的颜色 /// public Color LineColor { get { return this._lineColor; } set { this._lineColor = value; } } /// /// 线宽 /// public int LineWidth { get { return this._lineWidth; } set { this._lineWidth = value < 1 ? 1 : value; } } /// /// 起始节点 /// public FlowNode NodeBegin { get { return this._nodeBegin; } internal set { this._nodeBegin = value; } } /// /// 终止节点 /// public FlowNode NodeEnd { get { return this._nodeEnd; } internal set { this._nodeEnd = value; } } /// /// 起始节点连接点 /// public AnchorKind AnchorBegin { get { return this._anchorBegin; } internal set { this._anchorBegin = value; } } /// /// 终止节点连接点 /// public AnchorKind AnchorEnd { get { return this._anchorEnd; } internal set { this._anchorEnd = value; } } #endregion 属性 #region 公有方法 /// /// 获取选择状态样式范围 /// /// 选择状态样式范围 public override Rectangle[] GetSelectedStyle() { int styleSize = Consts.SELECTEDSTYLE_WIDTH; int styleSizeHalf = Consts.SELECTEDSTYLE_WIDTH_HALF; Rectangle[] rects = new Rectangle[2]; rects[0] = new Rectangle(this.PointBegin.X - styleSizeHalf, this.PointBegin.Y - styleSizeHalf, styleSize, styleSize); rects[1] = new Rectangle(this.PointEnd.X - styleSizeHalf, this.PointEnd.Y - styleSizeHalf, styleSize, styleSize); return rects; } #endregion 公有方法 } }