CMindView.h 733 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef CMINDVIEW_H
  2. #define CMINDVIEW_H
  3. #include <QGraphicsView>
  4. #include "CNode.h"
  5. class CMind;
  6. class CNodeItem;
  7. class CMindView : public QGraphicsView
  8. {
  9. enum Alignment
  10. {
  11. NoAlignment,
  12. AlignLeft,
  13. AlignRight,
  14. };
  15. public:
  16. explicit CMindView(QWidget *parent = nullptr);
  17. void connectSignalsAndSlots();
  18. CMind *mind() const;
  19. void setMind(CMind *mind);
  20. void refresh();
  21. void setALignment(Alignment align);
  22. void addNode(CNodeData n);
  23. void removeNode(int number);
  24. void addSubNode(int pNumber);
  25. private:
  26. CMind *m_mind = nullptr;
  27. QList<CNodeItem *> m_itemList;
  28. Alignment m_align = NoAlignment;
  29. void testItems();
  30. };
  31. #endif // CMINDVIEW_H