|
From: Tapio V. <aa...@us...> - 2011-01-13 11:09:27
|
Module: editor
Branch: master
Commit: d1bbc4397d33d0947a9787da06178f54c3cbf125
Author: Tapio Vierros <tap...@gm...>
Date: Thu Jan 13 13:02:01 2011 +0200
Display better note info in UI.
---
editorapp.cc | 10 ++++++----
notegraphwidget.cc | 2 ++
notelabel.cc | 19 +++++++++++++------
notelabel.hh | 1 +
4 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/editorapp.cc b/editorapp.cc
index 1c8025a..7eb9a07 100644
--- a/editorapp.cc
+++ b/editorapp.cc
@@ -60,10 +60,12 @@ void EditorApp::operationDone(const Operation &op)
void EditorApp::updateNoteInfo(NoteLabel *note)
{
if (note) {
- ui.valNoteBegin->setText(QString::number(note->x()));
- ui.valNoteEnd->setText(QString::number(note->x() + note->width()));
- ui.valNoteDuration->setText(QString::number(note->width()));
- ui.valNote->setText(QString::number(note->y() / NoteGraphWidget::noteYStep));
+ MusicalScale ms;
+ ui.valNoteBegin->setText(QString::number(note->note().begin) + tr(" s"));
+ ui.valNoteEnd->setText(QString::number(note->note().end) + tr(" s"));
+ ui.valNoteDuration->setText(QString::number(note->note().length()) + tr(" s"));
+ ui.valNote->setText(QString::fromStdString(ms.getNoteStr(ms.getNoteFreq(note->note().note)))
+ + " (" + QString::number(note->note().note) + ")");
ui.cmbNoteType->setEnabled(true);
ui.cmbNoteType->setCurrentIndex(note->note().getTypeInt());
ui.chkFloating->setEnabled(true);
diff --git a/notegraphwidget.cc b/notegraphwidget.cc
index adbd0c8..7a6e99b 100644
--- a/notegraphwidget.cc
+++ b/notegraphwidget.cc
@@ -312,6 +312,8 @@ void NoteGraphWidget::mouseMoveEvent(QMouseEvent *event)
m_panHotSpot = event->pos() - diff;
}
}
+
+ emit updateNoteInfo(m_selectedNote);
}
diff --git a/notelabel.cc b/notelabel.cc
index a7a44c7..a3b192e 100644
--- a/notelabel.cc
+++ b/notelabel.cc
@@ -85,9 +85,7 @@ void NoteLabel::createPixmap(QSize size)
void NoteLabel::resizeEvent(QResizeEvent *event)
{
createPixmap(event->size());
- // Update note length
- NoteGraphWidget* ngw = qobject_cast<NoteGraphWidget*>(parent());
- if (ngw) m_note.end = m_note.begin + ngw->px2s(width());
+ updateNote();
}
void NoteLabel::mouseMoveEvent(QMouseEvent *event)
@@ -121,9 +119,7 @@ void NoteLabel::mouseMoveEvent(QMouseEvent *event)
setCursor(QCursor(Qt::OpenHandCursor));
}
}
-
- // Update note pos
- if (ngw) m_note.begin = ngw->px2s(m_note.begin);
+ updateNote();
event->ignore(); // Propagate event to parent
}
@@ -145,3 +141,14 @@ void NoteLabel::startDragging(const QPoint& point)
else setCursor(QCursor());
}
+void NoteLabel::updateNote()
+{
+ NoteGraphWidget* ngw = qobject_cast<NoteGraphWidget*>(parent());
+ if (ngw) {
+ // Update note pos
+ m_note.note = ngw->px2n(y());
+ m_note.begin = ngw->px2s(x());
+ // Update note length
+ m_note.end = m_note.begin + ngw->px2s(width());
+ }
+}
diff --git a/notelabel.hh b/notelabel.hh
index f965395..49efe59 100644
--- a/notelabel.hh
+++ b/notelabel.hh
@@ -26,6 +26,7 @@ public:
Note& note() { return m_note; }
Note note() const { return m_note; }
+ void updateNote();
bool isFloating() const { return m_floating; }
void setFloating(bool state) { m_floating = state; createPixmap(size()); }
|