baselinkable.h
Go to the documentation of this file.
1 #ifndef BASELINKABLE_H
2 #define BASELINKABLE_H
3 
4 #include <QQuickItem>
6 
7 namespace dnai {
9  {
10  public:
11  explicit BaseLinkable(QQuickItem *parent);
12  ~BaseLinkable();
13 
20  virtual Link *connect(interfaces::ALinkable *linkable, views::BezierCurve *curve) override;
21 
22  virtual Link *asyncConnect(interfaces::ALinkable *linkable) override;
23 
28  virtual void unlink(interfaces::ALinkable *linkable) override;
29 
33  virtual void unlinkAll() override;
34 
39  virtual void addLink(Link *l) override;
40 
45  virtual void removeLink(Link *l) override;
46 
51  bool isLink() override;
52 
58  Link *getLink(interfaces::ALinkable *linkable) const override;
59 
60  QQuickItem *parent() const { return m_parent; }
61 
62  protected:
63  QQuickItem *m_parent;
64  };
65 
66 }
67 
68 #endif // BASELINKABLE_H
bool isLink() override
is linkable is actually
Definition: baselinkable.cpp:66
QQuickItem * m_parent
Definition: baselinkable.h:63
virtual Link * asyncConnect(interfaces::ALinkable *linkable) override
Definition: baselinkable.cpp:30
Definition: baselinkable.h:8
QQuickItem * parent() const
Definition: baselinkable.h:60
virtual void addLink(Link *l) override
Add a link.
Definition: baselinkable.cpp:56
virtual Link * connect(interfaces::ALinkable *linkable, views::BezierCurve *curve) override
Connect linkable together, create a link, and keep a reference on the visual curve.
Definition: baselinkable.cpp:17
virtual void unlinkAll() override
Break all the links between linkable.
Definition: baselinkable.cpp:47
Link * getLink(interfaces::ALinkable *linkable) const override
return the link between this and linkable
Definition: baselinkable.cpp:71
virtual void unlink(interfaces::ALinkable *linkable) override
Break a link between linkable.
Definition: baselinkable.cpp:35
virtual void removeLink(Link *l) override
Remove a link.
Definition: baselinkable.cpp:61
BaseLinkable(QQuickItem *parent)
Definition: baselinkable.cpp:7
Definition: api.h:13
Definition: beziercurve.h:11
Definition: ilinkable.h:22
~BaseLinkable()
Definition: baselinkable.cpp:12