diff options
Diffstat (limited to 'muse2/muse/arranger/tlist.cpp')
-rw-r--r-- | muse2/muse/arranger/tlist.cpp | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/muse2/muse/arranger/tlist.cpp b/muse2/muse/arranger/tlist.cpp index 28b12fdc..91c939db 100644 --- a/muse2/muse/arranger/tlist.cpp +++ b/muse2/muse/arranger/tlist.cpp @@ -67,6 +67,8 @@ #include "dssihost.h" #endif +namespace MusEArranger { + static const int MIN_TRACKHEIGHT = 20; static const int WHEEL_DELTA = 120; QColor collist[] = { Qt::red, Qt::yellow, Qt::blue , Qt::black, Qt::white, Qt::green }; @@ -184,6 +186,14 @@ void TList::paint(const QRect& r) // Tracks //--------------------------------------------------- + QColor mask_edge = QColor(90, 90, 90, 45); + QColor mask_center = QColor(240, 240, 240, 175); + QLinearGradient mask; + mask.setColorAt(0, mask_edge); + mask.setColorAt(0.15, mask_center); + mask.setColorAt(0.3, mask_center); + mask.setColorAt(1, mask_edge); + TrackList* l = song->tracks(); int idx = 0; int yy = -ypos; @@ -201,12 +211,7 @@ void TList::paint(const QRect& r) // clear one row // QColor bg; - if (track->selected()) { - bg = MusEConfig::config.selectTrackBg; - //p.setPen(palette().active().text()); - p.setPen(MusEConfig::config.selectTrackFg); - } - else { + switch(type) { case Track::MIDI: bg = MusEConfig::config.midiTrackBg; @@ -233,10 +238,16 @@ void TList::paint(const QRect& r) bg = MusEConfig::config.synthTrackBg; break; } - p.setPen(palette().color(QPalette::Active, QPalette::Text)); - } + + p.setPen(palette().color(QPalette::Active, QPalette::Text)); p.fillRect(x1, yy, w, trackHeight, bg); + if (track->selected()) { + mask.setStart(QPointF(0, yy)); + mask.setFinalStop(QPointF(0, yy + trackHeight)); + p.fillRect(x1, yy, w, trackHeight, mask); + } + int x = 0; for (int index = 0; index < header->count(); ++index) { int section = header->logicalIndex(index); @@ -1789,3 +1800,4 @@ void TList::classesPopupMenu(Track* t, int x, int y) } } +} // namespace MusEArranger |