nodeparamview: pick up move event

Fixes #1547
This commit is contained in:
itsmattkc
2021-04-11 19:58:37 +10:00
parent 515d459d36
commit 8c18b58bbb
3 changed files with 20 additions and 6 deletions
+4 -3
View File
@@ -257,7 +257,7 @@ void NodeParamView::UpdateItemTime(const int64_t &timestamp)
void NodeParamView::QueueKeyframePositionUpdate()
{
QMetaObject::invokeMethod(this, "UpdateElementY", Qt::QueuedConnection);
QMetaObject::invokeMethod(this, &NodeParamView::UpdateElementY, Qt::QueuedConnection);
}
void NodeParamView::SignalNodeOrder()
@@ -305,8 +305,9 @@ void NodeParamView::AddNode(Node *n)
connect(item, &NodeParamViewItem::dockLocationChanged, this, &NodeParamView::QueueKeyframePositionUpdate);
connect(item, &NodeParamViewItem::dockLocationChanged, this, &NodeParamView::SignalNodeOrder);
connect(item, &NodeParamViewItem::PinToggled, this, &NodeParamView::PinNode);
connect(item, &NodeParamViewItem::ExpandedChanged, this, &NodeParamView::UpdateElementY);
connect(item, &NodeParamViewItem::ArrayExpandedChanged, this, &NodeParamView::UpdateElementY);
connect(item, &NodeParamViewItem::ArrayExpandedChanged, this, &NodeParamView::QueueKeyframePositionUpdate);
connect(item, &NodeParamViewItem::ExpandedChanged, this, &NodeParamView::QueueKeyframePositionUpdate);
connect(item, &NodeParamViewItem::Moved, this, &NodeParamView::QueueKeyframePositionUpdate);
// Set time target
item->SetTimeTarget(GetTimeTarget());
+12 -3
View File
@@ -36,8 +36,10 @@ const int NodeParamViewItemBody::kKeyControlColumn = 10;
const int NodeParamViewItemBody::kArrayInsertColumn = kKeyControlColumn-1;
const int NodeParamViewItemBody::kArrayRemoveColumn = kArrayInsertColumn-1;
#define super QDockWidget
NodeParamViewItem::NodeParamViewItem(Node *node, QWidget *parent) :
QDockWidget(parent),
super(parent),
node_(node),
highlighted_(false)
{
@@ -92,12 +94,12 @@ void NodeParamViewItem::changeEvent(QEvent *e)
Retranslate();
}
QWidget::changeEvent(e);
super::changeEvent(e);
}
void NodeParamViewItem::paintEvent(QPaintEvent *event)
{
QDockWidget::paintEvent(event);
super::paintEvent(event);
// Draw border if focused
if (highlighted_) {
@@ -108,6 +110,13 @@ void NodeParamViewItem::paintEvent(QPaintEvent *event)
}
}
void NodeParamViewItem::moveEvent(QMoveEvent *event)
{
super::moveEvent(event);
emit Moved();
}
void NodeParamViewItem::Retranslate()
{
node_->Retranslate();
@@ -188,11 +188,15 @@ signals:
void ArrayExpandedChanged(bool e);
void Moved();
protected:
virtual void changeEvent(QEvent *e) override;
virtual void paintEvent(QPaintEvent *event) override;
virtual void moveEvent(QMoveEvent *event) override;
private:
NodeParamViewItemTitleBar* title_bar_;