Skip to content
Extraits de code Groupes Projets
Valider 3efde45b rédigé par Elliu's avatar Elliu
Parcourir les fichiers

Add ZValue for items

parent ba983347
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!29Improve timingView with display of the ASS lines
......@@ -10,6 +10,7 @@ using namespace Vivy;
TimingCursor::TimingCursor()
: QGraphicsItem()
{
setZValue(Z_CURSOR_BAR);
textRect = QRectF(0, 10, maxWidth,
TimingUtils::audioHeight() - 20); // TODO : remove 10/20 magic numbers
}
......
......@@ -22,6 +22,8 @@ TimingLine::TimingLine(Ass::Line *lineptr, int index, QGraphicsItem *parent)
int endSyl = 0;
int i;
setZValue(Z_LINE_BACKGROUND);
TimingSeparator *timingSeparatorStart =
new TimingSeparator(currentTime, 0, TimingSeparator::SeparatorStyle::Start, this);
seps.append(timingSeparatorStart);
......
......@@ -69,6 +69,7 @@ TimingScene::rebuildScene()
QPixmap pixmap(QPixmap::fromImage(img));
backgroundImg = addPixmap(pixmap);
backgroundImg->setZValue(Z_SPECTER);
backgroundImg->setPos(0, TimingUtils::axisHeight());
TimingUtils::setAudioHeight(pixmap.height());
......@@ -77,6 +78,7 @@ TimingScene::rebuildScene()
ax = new TimingAxis();
addItem(ax);
ax->setZValue(Z_AXIS);
ax->setPos(0, TimingUtils::axisHeight());
// Freeze the scene boundaries
......
......@@ -22,9 +22,18 @@ TimingSeparator::TimingSeparator(int time, int index, SeparatorStyle style_, Tim
setCursor(Qt::PointingHandCursor);
switch (style) {
case SeparatorStyle::Start: pen = QPen(QColor(0, 0, 255)); break;
case SeparatorStyle::Middle: pen = QPen(QColor(180, 0, 180)); break;
case SeparatorStyle::End: pen = QPen(QColor(255, 0, 0)); break;
case SeparatorStyle::Start:
pen = QPen(QColor(0, 0, 255));
setZValue(Z_SEPARATOR_START_END);
break;
case SeparatorStyle::Middle:
pen = QPen(QColor(180, 0, 180));
setZValue(Z_SEPARATOR_MIDDLE);
break;
case SeparatorStyle::End:
pen = QPen(QColor(255, 0, 0));
setZValue(Z_SEPARATOR_START_END);
break;
}
// Putting even-size width seems to be undefined behaviour for pixel drawing : stick to odd
pen.setWidth(1);
......
......@@ -12,6 +12,7 @@ TimingSyl::TimingSyl(Ass::Syl syl_, int startTime, QGraphicsItem *parent)
: QGraphicsObject(parent)
, syl(syl_)
{
setZValue(Z_LINE_SYL_TEXT);
setPos(TimingUtils::posFromMs(startTime), 0);
}
......
......@@ -9,6 +9,14 @@
#define getTimingScene() static_cast<TimingScene *>(scene())
#define Z_SPECTER -1000
#define Z_AXIS 10
#define Z_LINE_BACKGROUND -100
#define Z_SEPARATOR_START_END 1000
#define Z_SEPARATOR_MIDDLE 100
#define Z_LINE_SYL_TEXT 50
#define Z_CURSOR_BAR 500
/*
* FIXME
* Relying on static may pose issues when multiple audioVisualiser
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter