]> git.sven.stormbind.net Git - sven/vym.git/blobdiff - src/xlinkitem.h
New upstream version 2.9.22
[sven/vym.git] / src / xlinkitem.h
diff --git a/src/xlinkitem.h b/src/xlinkitem.h
new file mode 100644 (file)
index 0000000..016b869
--- /dev/null
@@ -0,0 +1,35 @@
+#ifndef XLINKITEM_H
+#define XLINKITEM_H
+
+class BranchItem;
+class QGraphicsScene;
+class XLinkObj;
+
+#include "mapitem.h"
+#include "xlink.h"
+
+/*! \brief xlinks are used to draw arbitrary connections between branches
+ * (BranchObj) in the map. */
+
+/////////////////////////////////////////////////////////////////////////////
+
+class XLinkItem : public MapItem {
+  public:
+    enum XLinkState { undefinedXLink, initXLink, activeXLink, deleteXLink };
+
+    XLinkItem(TreeItem *parent = NULL);
+    ~XLinkItem();
+    void init();
+    void clear();
+    void setLink(Link *);
+    Link *getLink();
+    void updateXLink();
+    MapObj *getMO();
+    void setSelection();
+    BranchItem *getPartnerBranch();
+
+  private:
+    Link *link;
+};
+
+#endif