nodeview: improved code structures

This commit is contained in:
itsmattkc
2020-03-02 16:07:24 +11:00
parent c44c73e376
commit f6d602d8e0
7 changed files with 361 additions and 332 deletions
+8 -3
View File
@@ -27,6 +27,7 @@
#include "common/clamp.h"
#include "common/lerp.h"
#include "nodeview.h"
#include "nodeviewscene.h"
NodeViewEdge::NodeViewEdge(QGraphicsItem *parent) :
QGraphicsPathItem(parent),
@@ -77,13 +78,17 @@ qreal CalculateEdgeYPoint(NodeViewItem *item, NodeParam* param, NodeViewItem *op
void NodeViewEdge::Adjust()
{
if (edge_ == nullptr || scene() == nullptr) {
if (!edge_ || !scene()) {
return;
}
// Get the UI objects of both nodes that this edge connects
NodeViewItem* output = NodeView::NodeToUIObject(scene(), edge_->output()->parentNode());
NodeViewItem* input = NodeView::NodeToUIObject(scene(), edge_->input()->parentNode());
NodeViewItem* output = static_cast<NodeViewScene*>(scene())->NodeToUIObject(edge_->output()->parentNode());
NodeViewItem* input = static_cast<NodeViewScene*>(scene())->NodeToUIObject(edge_->input()->parentNode());
if (!output || !input) {
return;
}
// Create initial values
QPointF output_point = QPointF(output->pos().x() + output->rect().left() + output->rect().width(), 0);