|
From: Tapio V. <aa...@us...> - 2011-01-05 09:11:37
|
Module: editor
Branch: master
Commit: b93ce7d6869907fe2ca86f31fa8704bd829ce152
Author: Tapio Vierros <tap...@gm...>
Date: Wed Jan 5 11:10:48 2011 +0200
Label word can be edited through an input box by double clicking.
---
dragwidget.cc | 18 ++++++++++++++++++
dragwidget.hh | 1 +
2 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/dragwidget.cc b/dragwidget.cc
index aa9be1d..3ad3862 100644
--- a/dragwidget.cc
+++ b/dragwidget.cc
@@ -208,3 +208,21 @@ void DragWidget::wheelEvent(QWheelEvent *event)
event->accept();
}
+
+void DragWidget::mouseDoubleClickEvent(QMouseEvent *event)
+{
+ DragLabel *child = static_cast<DragLabel*>(childAt(event->pos()));
+ if (!child)
+ return;
+
+ bool ok;
+ QString text = QInputDialog::getText(this, tr("Edit lyric"),
+ tr("Lyric:"), QLineEdit::Normal,
+ child->getText(), &ok);
+ if (ok && !text.isEmpty()) {
+ child->setText(text);
+ child->createPixmap();
+ }
+
+ event->accept();
+}
diff --git a/dragwidget.hh b/dragwidget.hh
index 245cc39..6afc358 100644
--- a/dragwidget.hh
+++ b/dragwidget.hh
@@ -59,6 +59,7 @@ protected:
void dropEvent(QDropEvent *event);
void mousePressEvent(QMouseEvent *event);
void wheelEvent(QWheelEvent *event);
+ void mouseDoubleClickEvent(QMouseEvent * event);
};
#endif
|