Kaynağa Gözat

Add node item.

chengxr 1 yıl önce
ebeveyn
işleme
add87efd4c

+ 2 - 0
QFD/CCanvas/CCanvas.pri

@@ -5,6 +5,7 @@ HEADERS += \
     $$PWD/CMind.h \
     $$PWD/CMindView.h \
     $$PWD/CNode.h \
+    $$PWD/CNodeItem.h \
     $$PWD/CPathItem.h \
     $$PWD/CRectItem.h \
     $$PWD/CTextItem.h
@@ -14,6 +15,7 @@ SOURCES += \
     $$PWD/CMind.cpp \
     $$PWD/CMindView.cpp \
     $$PWD/CNode.cpp \
+    $$PWD/CNodeItem.cpp \
     $$PWD/CPathItem.cpp \
     $$PWD/CRectItem.cpp \
     $$PWD/CTextItem.cpp

+ 4 - 0
QFD/CCanvas/CMindView.cpp

@@ -2,6 +2,7 @@
 
 #include "CRectItem.h"
 #include "CLineItem.h"
+#include "CTextItem.h"
 
 CMindView::CMindView(QWidget *parent) : QGraphicsView(new QGraphicsScene(), parent)
 {
@@ -36,4 +37,7 @@ void CMindView::testItems()
     scene()->addItem(l);
     l->setFlags(QGraphicsItem::ItemIsMovable);
     l->setLineType(CLineItem::CurveToLine);
+
+    CTextItem *t = new CTextItem("test", QPoint(0, 0));
+    scene()->addItem(t);
 }

+ 6 - 0
QFD/CCanvas/CNodeItem.cpp

@@ -0,0 +1,6 @@
+#include "CNodeItem.h"
+
+CNodeItem::CNodeItem(QObject *parent) : QObject(parent)
+{
+
+}

+ 16 - 0
QFD/CCanvas/CNodeItem.h

@@ -0,0 +1,16 @@
+#ifndef CNODEITEM_H
+#define CNODEITEM_H
+
+#include <QObject>
+
+class CNodeItem : public QObject
+{
+    Q_OBJECT
+public:
+    explicit CNodeItem(QObject *parent = nullptr);
+
+signals:
+
+};
+
+#endif // CNODEITEM_H

+ 3 - 3
QFD/CCanvas/CTextItem.cpp

@@ -1,6 +1,6 @@
-#include "CTextItem.h"
+#include "CTextItem.h"
 
-CTextItem::CTextItem()
+CTextItem::CTextItem(const QString &text, const QPoint &pos, QGraphicsItem *parent) : QGraphicsTextItem(text, parent)
 {
-
+    setPos(pos);
 }

+ 3 - 3
QFD/CCanvas/CTextItem.h

@@ -1,4 +1,4 @@
-#ifndef CTEXTITEM_H
+#ifndef CTEXTITEM_H
 #define CTEXTITEM_H
 
 #include <QGraphicsTextItem>
@@ -7,7 +7,7 @@ class CTextItem : public QGraphicsTextItem
 {
     Q_OBJECT
 public:
-    CTextItem();
+    CTextItem(const QString &text = QString(), const QPoint &pos = QPoint(), QGraphicsItem *parent = nullptr);
 };
 
-#endif // CTEXTITEM_H
+#endif  // CTEXTITEM_H

+ 0 - 1
QFD/widgets/EvalWidget.cpp

@@ -49,5 +49,4 @@ void EvalWidget::initLayout()
     m_layout->addWidget(m_title);
     m_layout->addWidget(m_seperator);
     m_layout->addLayout(m_contentLayout);
-    m_layout->addStretch();
 }

+ 16 - 0
QFD/widgets/IndexSystemWidget.cpp

@@ -1,6 +1,22 @@
 #include "IndexSystemWidget.h"
 
+#include <CCanvas/CMindView.h>
+
+#include <QLayout>
+
 IndexSystemWidget::IndexSystemWidget(QWidget *parent, int type) : EvalWidget(type, parent)
 {
     setTitle("指标体系设计");
+    initWidgets();
+    initLayout();
+}
+
+void IndexSystemWidget::initWidgets()
+{
+    m_mind = new CMindView(this);
+}
+
+void IndexSystemWidget::initLayout()
+{
+    m_contentLayout->addWidget(m_mind);
 }

+ 8 - 0
QFD/widgets/IndexSystemWidget.h

@@ -3,6 +3,8 @@
 
 #include "EvalWidget.h"
 
+class CMindView;
+
 /**
  * @brief The IndexSystemWidget class
  * 指标体系
@@ -13,7 +15,13 @@ class IndexSystemWidget : public EvalWidget
 public:
     explicit IndexSystemWidget(QWidget *parent = nullptr, int type = 0);
 
+    void initWidgets();
+    void initLayout();
+
 signals:
+
+private:
+    CMindView *m_mind = nullptr;
 };
 
 #endif  // INDEXSYSTEMWIDGET_H