|
| int | type () const override |
| |
|
| DAStandardNodeSvgGraphicsItem (DAAbstractNode *n, QGraphicsItem *p=nullptr) |
| |
|
| DAStandardNodeSvgGraphicsItem (DAAbstractNode *n, const QString &svgfile, QGraphicsItem *p=nullptr) |
| |
|
| DAStandardNodeSvgGraphicsItem (DAAbstractNode *n, QSvgRenderer *sharedrender, QGraphicsItem *p=nullptr) |
| |
| void | setBodySize (const QSizeF &s) override |
| | 设置尺寸,这里要随之更新连接点
|
| |
| void | paintBody (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget, const QRectF &bodyRect) override |
| | DAStandardNodeSvgGraphicsItem::paintBody
|
| |
|
void | setEnableMoveText (bool on=true) |
| |
|
bool | isEnableMoveText () const |
| |
| QSvgRenderer * | renderer () const |
| | 获取svg渲染器
|
| |
|
void | setSharedRenderer (QSvgRenderer *renderer) |
| |
| void | setElementId (const QString &id) |
| | 等价 QGraphicsSvgItem::setElementId
|
| |
|
QString | elementId () const |
| |
|
void | setCachingEnabled (bool caching) |
| |
|
bool | isCachingEnabled () const |
| |
|
QSizeF | getTextSize () const |
| |
| void | setText (const QString &t) |
| | 设置文本
|
| |
| bool | setSvg (const QString &svgfile) |
| | 设置svg
|
| |
|
void | resetBodySize () |
| | 把bodysize设置为svg的default size
|
| |
| void | setAspectRatioMode (Qt::AspectRatioMode m) |
| | 设置图片变换时的比例
|
| |
| Qt::AspectRatioMode | getAspectRatioMode () const |
| | 获取图片变换时的比例
|
| |
| QGraphicsSimpleTextItem * | getTextItem () const |
| | 获取文本图元
|
| |
|
void | updateTextItemPos () |
| | 更新text item的位置,使得文本的位置一直处于中间
|
| |
|
| DAAbstractNodeGraphicsItem (DAAbstractNode *n, QGraphicsItem *p=nullptr) |
| |
| DAAbstractNode * | rawNode () |
| | 获取item对应的node
|
| |
|
const DAAbstractNode * | rawNode () const |
| |
|
DAAbstractNode::SharedPointer | node () const |
| |
| void | setLinkPointShowType (LinkPointShowType t) |
| | 设置连接点的显示属性
|
| |
|
LinkPointShowType | getLinkPointShowType () const |
| |
| void | setLinkPointLocation (DANodeLinkPoint::Way way, LinkPointLocation l) |
| | 设置连接点的位置
|
| |
| LinkPointLocation | getLinkPointLocation (DANodeLinkPoint::Way way) const |
| | 获取连接点的位置
|
| |
|
QString | getNodeName () const |
| |
|
QIcon | getIcon () const |
| |
| void | setIcon (const QIcon &icon) |
| | 设置图标
|
| |
| const DANodeMetaData & | metaData () const |
| | 获取节点元数据
|
| |
| DANodeMetaData & | metaData () |
| | 获取节点元数据
|
| |
| QList< DANodeLinkPoint > | getLinkPoints () const |
| | 获取连接点群
|
| |
| QList< DANodeLinkPoint > | getOutputLinkPoints () const |
| | 获取所有输出的连接点群
|
| |
| QList< DANodeLinkPoint > | getInputLinkPoints () const |
| | 获取所有输入的连接点群
|
| |
| DANodeLinkPoint | getLinkPoint (const QString &name) const |
| | 获取连接点
|
| |
|
DANodeLinkPoint | getInputLinkPoint (const QString &name) const |
| |
|
DANodeLinkPoint | getOutputLinkPoint (const QString &name) const |
| |
| bool | setLinkPointDirection (const QString &name, AspectDirection d) |
| | 设置linkpoint的方向,linkpoint 方向设置只会影响显示,不会影响工作流的链接
|
| |
| bool | isHaveLinkPoint (const DANodeLinkPoint &pl) const |
| | 判断是否存在连接点,仅判断way和name,不对绘图方面进行判断
|
| |
| bool | isLinkPointLinked (const DANodeLinkPoint &pl) |
| | 判断连接点是否已经链接
|
| |
| void | paintLinkPoints (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) |
| | 绘制默认连接点
|
| |
| virtual DAAbstractNodeWidget * | getNodeWidget () |
| | 获取节点对应的设置窗口
|
| |
| void | setNodePalette (const DANodePalette &pl) |
| | 设置调色板
|
| |
| const DANodePalette & | getNodePalette () const |
| | 获取调色板,如果没有设置内部调色板,会返回全局调色板
|
| |
| void | setLinkPointDrawDelegate (DANodeLinkPointDrawDelegate *delegate) |
| | 设置连接点绘制的代理,如果不设置会有一个默认代理
|
| |
| DANodeLinkPointDrawDelegate * | getLinkPointDrawDelegate () const |
| | 获取连接点绘图代理
|
| |
| virtual DANodeLinkPoint | getLinkPointByPos (const QPointF &p, DANodeLinkPoint::Way way=DANodeLinkPoint::Output) const |
| | 通过位置获取linkpoint,如果没有返回一个invalid的DANodeLinkPoint
|
| |
| void | updateLinkPointPos () |
| | 更新连接点位置,在bodyBoundingRect改变之后调用
|
| |
|
void | updateLinkItems () |
| | 更新链接到这个item的linkitem
|
| |
| void | showLinkPointText (bool on) |
| | 显示连接点的文字
|
| |
|
bool | isShowLinkPointText () const |
| |
| QList< DAAbstractNodeLinkGraphicsItem * > | getLinkItems () const |
| | 获取当前链接上的LinkGraphicsItem
|
| |
| QList< DAAbstractNodeLinkGraphicsItem * > | getInputLinkItems () const |
| | 获取所有链接进来这个节点的连接线
|
| |
| QList< DAAbstractNodeLinkGraphicsItem * > | getOutputLinkItems () const |
| | 获取这个节点链接出去的所有连接线
|
| |
| QList< DAAbstractNodeGraphicsItem * > | getInputItems () const |
| | 获取所有链接到这个节点的节点
|
| |
| QList< DAAbstractNodeGraphicsItem * > | getOutputItems () const |
| | 获取这个节点链接出去的所有节点
|
| |
| QList< std::pair< DAAbstractNodeGraphicsItem *, DANodeLinkPoint > > | getInputInfos () const |
| | 获取输入的信息
|
| |
| QList< std::pair< DAAbstractNodeGraphicsItem *, DANodeLinkPoint > > | getOutputInfos () const |
| | 获取输出的信息
|
| |
| QList< DAAbstractNodeGraphicsItem * > | getLinkChain () const |
| | 获取链接链路,上所有的item
|
| |
| QList< DAAbstractNodeGraphicsItem * > | getOutPutLinkChain () const |
| | 获取输出链接链路的所有节点
|
| |
| QList< DAAbstractNodeGraphicsItem * > | getInPutLinkChain () const |
| | 获取输入链接链路的所有节点
|
| |
|
QList< DAAbstractNodeLinkGraphicsItem * > | getLinkItem (const QString &name) const |
| |
| virtual bool | saveToXml (QDomDocument *doc, QDomElement *parentElement, const QVersionNumber &ver) const override |
| | 保存到xml中
|
| |
| virtual bool | loadFromXml (const QDomElement *itemElement, const QVersionNumber &ver) override |
| | 从xml中加载
|
| |
| virtual DAAbstractNodeLinkGraphicsItem * | createLinkItem (const DA::DANodeLinkPoint &lp) |
| | 创建连接,继承此函数可以生成连接,如果返回nullptr,scene将不会进行连接
|
| |
| virtual DAAbstractNodeLinkGraphicsItem * | linkTo (const DA::DANodeLinkPoint &fromPoint, DAAbstractNodeGraphicsItem *toItem, const DA::DANodeLinkPoint &toPoint) |
| | 从fromPoint链接到toItem的toPoint点
|
| |
| DAAbstractNodeLinkGraphicsItem * | linkToByName (const QString &fromPointName, DAAbstractNodeGraphicsItem *toItem, const QString &toPointName) |
| | 从fromPointName链接到toItem的toPointName点
|
| |
| void | resetLinkPoint () |
| | 重置链接点,会把原来的信息清空,包括已经链接的item
|
| |
| virtual bool | acceptDragOn (DANodeMetaData mime, const QPointF &scenePos) |
| | 是否接受DANodeMetaData拖曳在此节点上
|
| |
| virtual bool | drop (DANodeMetaData mime, const QPointF &scenePos) |
| | 拖放
|
| |
| virtual void | tryLinkOnItemPos (const QPointF &p, DAAbstractNodeLinkGraphicsItem *linkItem, DANodeLinkPoint::Way way) |
| | 此函数是在连接线点击item时调用的回调,无论点击的位置是否存在连接点,都会调用此回调
|
| |
| virtual void | finishLink (const DANodeLinkPoint &p, DAAbstractNodeLinkGraphicsItem *linkItem, DANodeLinkPoint::Way way, bool isSuccess) |
| | 链接结束的回调,无论有没有成功都会调用此回调函数
|
| |
|
virtual void | detachLink (const DANodeLinkPoint &p, DAAbstractNodeLinkGraphicsItem *linkItem, DANodeLinkPoint::Way way) |
| |
| virtual void | groupPositionChanged (const QPointF &pos) override |
| | 分组位置发生了变化
|
| |
|
| DAGraphicsResizeableItem (QGraphicsItem *parent=nullptr) |
| |
| QRectF | boundingRect () const override |
| | DAGraphicsResizeableItem的boundingRect会根据getSize尺寸进行计算
|
| |
| QPainterPath | shape () const override |
| | 用户不要继承此shape函数,而是继承bodyShape函数
|
| |
| void | paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override |
| | 用户不要继承此paint函数,而是继承paintBody函数
|
| |
| QSizeF | testBodySize (const QSizeF &s) |
| | 测试一下setBodySize之后getBodySize能得到的尺寸
|
| |
| QRectF | getBodyRect () const |
| | 绘图的区域
|
| |
| QSizeF | getBodySize () const |
| | 获取尺寸
|
| |
| QRectF | getBodyControlRect () const |
| | 获取body包含控制窗口大小,就是在改变尺寸时包含那8个控制点的最大尺寸
|
| |
| void | setBodyMinimumSize (const QSizeF &s) |
| | 设置最小尺寸
|
| |
| void | setBodyMaximumSize (const QSizeF &s) |
| | 设置最大尺寸
|
| |
|
QSizeF | getBodyMinimumSize () const |
| | 获取最小尺寸
|
| |
|
QSizeF | getBodyMaximumSize () const |
| | 获取最大尺寸
|
| |
| void | setControlerSize (const QSizeF &s) |
| | 获取控制器的大小
|
| |
|
QSizeF | getControlerSize () const |
| |
| void | setEnableResize (bool on) |
| | 设置是否Delegate可用
|
| |
| bool | isResizable () const |
| | 判断是否允许
|
| |
| void | setBodyPos (const QPointF &p) |
| | 对setPos的封装
|
| |
|
void | setBodyScenePos (const QPointF &p) |
| |
| QPointF | getBodyCenterPoint () const |
| | 返回body的中心点,此坐标系为item坐标系
|
| |
| QPointF | getBodyCenterPos () const |
| | 获取body中心的位置
|
| |
| void | setBodyCenterPos (const QPointF &p) |
| | setBodyCenterPos
|
| |
| void | setAutoCenterTransformOriginPoint (bool on=true) |
| | 设置TransformOriginPoint自动设置为bodysize的中心,否则为用户自己指定
|
| |
|
void | updateTransformOriginPoint () |
| | 更新TransformOriginPoint
|
| |
| QPair< QPointF, QSizeF > | doItemResize (const QPointF &mousescenePos) |
| | 执行尺寸的改变
|
| |
| virtual QPainterPath | getBodyShape () const |
| | 获取绘图的shape
|
| |
| virtual void | paintSelectedBorder (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) |
| | 绘制resize边框
|
| |
| virtual void | paintResizeControlPoints (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) |
| | 绘制resize控制点
|
| |
| virtual void | paintBackground (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget, const QRectF &bodyRect) |
| | 绘制背景
|
| |
| virtual void | paintBorder (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget, const QRectF &bodyRect) |
| | 绘制边框
|
| |
| virtual QRectF | controlPointRect (ControlType tp, const QRectF &bodyRect) const |
| | 生成control points
|
| |
| virtual QSizeF | controlPointSize () const |
| | 控制点的大小
|
| |
|
void | prepareControlInfoChange () |
| | 在尺寸发生变化后调用,刷新控制点的位置
|
| |
| ControlType | getControlPointByPos (const QPointF &pos) const |
| | 测试位置是否在控制点上,如果是返回控制点的类型,如果不在返回NotAtControlPoint
|
| |
| bool | isResizing () const |
| | 判断当前是否处于调整大小的状态中
|
| |
| bool | isSnapToGrid () const |
| | 是否允许对齐网格
|
| |
| QSize | getGridSize () const |
| | 获取网格尺寸
|
| |
|
| DAGraphicsItem (QGraphicsItem *parent=nullptr) |
| |
| void | setBorderPen (const QPen &p) |
| | 设置边框画笔
|
| |
| QPen | getBorderPen () const |
| | 获取当前边框画笔
|
| |
| void | setShowBorder (bool on) |
| | 设置显示边框
|
| |
| bool | isShowBorder () const |
| | 是否显示边框
|
| |
| void | setSelectable (bool on=true) |
| | 设置是否可选中
|
| |
| bool | isSelectable () const |
| | 判断可否被选中
|
| |
| void | setMovable (bool on=true) |
| | 设置为是否可移动
|
| |
| bool | isMovable () const |
| | 判断是否可以移动
|
| |
| void | setBackgroundBrush (const QBrush &b) |
| | 设置背景
|
| |
| QBrush | getBackgroundBrush () const |
| | 获取背景
|
| |
| void | enableShowBackground (bool on) |
| | 设置显示背景
|
| |
| bool | isShowBackground () const |
| | 是否显示背景
|
| |
|
void | setScenePos (const QPointF &p) |
| |
|
void | setScenePos (qreal x, qreal y) |
| |
|
uint64_t | getItemID () const |
| |
|
void | setItemID (uint64_t id) |
| |
| bool | isSceneReadOnly () const |
| | 判断当前场景是否为只读模式,只读模式不允许操作
|
| |
标准的可resize的svg GraphicsItem,可以作为节点的图片显示
- 注解
- 由于考虑性能问题DAAbstractNodeGraphicsItem没有继承QGraphicsObject, 因此DAStandardNodeSvgGraphicsItem需要仿照