+// painter.fill(eRect(0, 10, s.width(), s.height()-20));
+
+ pts_t in = 0, out = 0;
+
+ std::multiset<cueEntry>::iterator i(m_cue_entries.begin());
+
+ while (1)
+ {
+ if (i == m_cue_entries.end())
+ out = m_length;
+ else {
+ if (i->what == 0) /* in */
+ {
+ in = i++->where;
+ continue;
+ } else if (i->what == 1) /* out */
+ out = i++->where;
+ else if (i->what == 2) /* mark */
+ {
+ int xm = scale(i->where);
+ painter.setForegroundColor(gRGB(0xFF8080));
+ painter.fill(eRect(xm - 2, 0, 4, s.height()));
+ i++;
+ continue;
+ } else /* other marker, like last position */
+ {
+ ++i;
+ continue;
+ }
+ }
+
+ if (m_have_foreground_color)
+ {
+ painter.setForegroundColor(gRGB(m_foreground_color));
+ int xi = scale(in), xo = scale(out);
+ painter.fill(eRect(xi, (s.height()-4) / 2, xo-xi, 4));
+ }
+
+ in = m_length;
+
+ if (i == m_cue_entries.end())
+ break;
+ }
+// painter.setForegroundColor(gRGB(0x00000000));