DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAStandardNodeLinkPointDrawDelegate.h
1#ifndef DASTANDARDNODELINKPOINTDRAWDELEGATE_H
2#define DASTANDARDNODELINKPOINTDRAWDELEGATE_H
3#include "DANodeLinkPointDrawDelegate.h"
4#include "DANodePalette.h"
5namespace DA
6{
13{
14public:
17
18public:
19 // 重新计算linkpoint的信息
20 void layoutLinkPoints(QList< DA::DANodeLinkPoint >& lps, const QRectF& bodyRect) override;
21 // 此函数会影响到场景链接过程选中的状态,比较关键,决定了DANodeGraphicsScene::nodeItemLinkPointSelected能否发射
22 virtual QPainterPath getlinkPointPainterRegion(const DA::DANodeLinkPoint& pl) const override;
23 // 生成一个三角形
24 static QPainterPath makeTriangle(const QPoint& a, const QPoint& b, const QPoint& c);
25 // 形成一个封闭图形
26 static QPainterPath closePainterPath(const QPoint& a, const QPoint& b, const QPoint& c);
27 static QPainterPath closePainterPath(const QPoint& a, const QPoint& b, const QPoint& c, const QPoint& d);
28 static QPainterPath closePainterPath(const QPointF& a, const QPointF& b, const QPointF& c, const QPointF& d);
29 // 获取连接点的尺寸
30 QSize getLinkPointSize() const;
31 // 允许一个节点多次链接
32 void setEnableMultLink(bool on);
33 bool isEnableMultLink() const;
34
35protected:
36 // 获取连接点的序号
37 int getLinkPointIndex(const DA::DANodeLinkPoint& pl) const;
38 DA::DANodePalette& palette() const;
39
40private:
41 QRectF mRect;
42 bool mEnableMultLink { false };
43};
44}
45#endif // DASTANDARDNODELINKPOINTDRAWDELEGATE_H
这是节点的基类,workflow所有节点都继承此类 作为一个节点的QGraphicsItem,此item应该由DAAbstractNode创建
Definition DAAbstractNodeGraphicsItem.h:47
linkpoint的绘制代理
Definition DANodeLinkPointDrawDelegate.h:18
用于表征连节点信息的数据
Definition DANodeLinkPoint.h:13
节点相关的调色板,这里封装了节点相关的大部分颜色,
Definition DANodePalette.h:40
绘制连接点的代理
Definition DAStandardNodeLinkPointDrawDelegate.h:13
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44