diff options
author | Tim E. Real <termtech@rogers.com> | 2011-08-16 07:40:48 +0000 |
---|---|---|
committer | Tim E. Real <termtech@rogers.com> | 2011-08-16 07:40:48 +0000 |
commit | 96cd2ef23505deaadb030ea0f1ef284e8a753452 (patch) | |
tree | 8c77de1c9dabb19f57cd2f41341b23c03981038c /muse2/muse/midiedit/dlist.cpp | |
parent | 6ea3ca331aeef0b0702ff2d3c3e529cd226c5d8b (diff) |
More drawing fixes, improved accuracy (grids, timescales, edges, markers guaranteed to align now).
Much drawing changed to device (pixel) space instead of virtual space, for accuracy.
Fixed display of audio automation graphs. (But not editing).
Diffstat (limited to 'muse2/muse/midiedit/dlist.cpp')
-rw-r--r-- | muse2/muse/midiedit/dlist.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/muse2/muse/midiedit/dlist.cpp b/muse2/muse/midiedit/dlist.cpp index 66922e83..d2d5659c 100644 --- a/muse2/muse/midiedit/dlist.cpp +++ b/muse2/muse/midiedit/dlist.cpp @@ -52,15 +52,18 @@ void DList::draw(QPainter& p, const QRect& rect) // else // p.eraseRect(x, yy, w, TH); QHeaderView *h = header; + p.save(); + p.setWorldMatrixEnabled(false); for (int k = 0; k < h->count(); ++k) { int x = h->sectionPosition(k); int w = h->sectionSize(k); - QRect r = p.combinedTransform().mapRect(QRect(x+2, yy, w-4, TH)); + //QRect r = p.combinedTransform().mapRect(QRect(x+2, yy, w-4, TH)); // Gives inconsistent positions. Source shows wrong operation for our needs. + QRect r = map(QRect(x+2, yy, w-4, TH)); // Use our own map instead. QString s; int align = Qt::AlignVCenter | Qt::AlignHCenter; - p.save(); - p.setWorldMatrixEnabled(false); + //p.save(); + //p.setWorldMatrixEnabled(false); switch (k) { case COL_VOL: s.setNum(dm->vol); @@ -114,8 +117,9 @@ void DList::draw(QPainter& p, const QRect& rect) } if (!s.isEmpty()) p.drawText(r, align, s); - p.restore(); + //p.restore(); } + p.restore(); } //--------------------------------------------------- |