Vectorscope::Vectorscope(Monitor *projMonitor, Monitor *clipMonitor, QWidget *parent) :
- AbstractScopeWidget(projMonitor, clipMonitor, parent),
+ AbstractScopeWidget(projMonitor, clipMonitor, true, parent),
m_gain(1)
{
ui = new Ui::Vectorscope_UI();
ui->backgroundMode->addItem(i18n("None"), QVariant(BG_NONE));
ui->backgroundMode->addItem(i18n("YUV"), QVariant(BG_YUV));
ui->backgroundMode->addItem(i18n("Modified YUV (Chroma)"), QVariant(BG_CHROMA));
- ui->backgroundMode->addItem("YPbPr", QVariant(BG_YPbPr)); // TODO translate after 0.7.8 release
+ ui->backgroundMode->addItem(i18n("YPbPr"), QVariant(BG_YPbPr));
ui->sliderGain->setMinimum(0);
ui->sliderGain->setMaximum(40);
m_menu->addAction(m_aAxisEnabled);
b &= connect(m_aAxisEnabled, SIGNAL(changed()), this, SLOT(forceUpdateBackground()));
- // TODO use i18n after the 0.7.8 release
- m_menu->addSeparator()->setText("Color Space");
- m_aColorSpace_YPbPr = new QAction("YPbPr", this);
+ m_menu->addSeparator()->setText(i18n("Color Space"));
+ m_aColorSpace_YPbPr = new QAction(i18n("YPbPr"), this);
m_aColorSpace_YPbPr->setCheckable(true);
- m_aColorSpace_YUV = new QAction("YUV", this);
+ m_aColorSpace_YUV = new QAction(i18n("YUV"), this);
m_aColorSpace_YUV->setCheckable(true);
m_agColorSpace = new QActionGroup(this);
m_agColorSpace->addAction(m_aColorSpace_YPbPr);
pCy75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YUV_Cy);
pMg75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YUV_Mg);
pYl75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YUV_Yl);
+ qR75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YPbPr_R);
+ qG75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YPbPr_G);
+ qB75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YPbPr_B);
+ qCy75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YPbPr_Cy);
+ qMg75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YPbPr_Mg);
+ qYl75 = m_vectorscopeGenerator->mapToCircle(scopeRect.size(), P75*VectorscopeGenerator::scaling*YPbPr_Yl);
return scopeRect;
}
// Draw 75% box
if (m_a75PBox->isChecked()) {
- davinci.drawLine(pR75, pYl75);
- davinci.drawLine(pYl75, pG75);
- davinci.drawLine(pG75, pCy75);
- davinci.drawLine(pCy75, pB75);
- davinci.drawLine(pB75, pMg75);
- davinci.drawLine(pMg75, pR75);
+ if (m_aColorSpace_YUV->isChecked()) {
+ davinci.drawLine(pR75, pYl75);
+ davinci.drawLine(pYl75, pG75);
+ davinci.drawLine(pG75, pCy75);
+ davinci.drawLine(pCy75, pB75);
+ davinci.drawLine(pB75, pMg75);
+ davinci.drawLine(pMg75, pR75);
+ } else {
+ davinci.drawLine(qR75, qYl75);
+ davinci.drawLine(qYl75, qG75);
+ davinci.drawLine(qG75, qCy75);
+ davinci.drawLine(qCy75, qB75);
+ davinci.drawLine(qB75, qMg75);
+ davinci.drawLine(qMg75, qR75);
+ }
}
// Draw RGB/CMY points with 75% chroma (for NTSC)
davinci.setPen(penThin);
- davinci.drawEllipse(pR75, 3,3);
- davinci.drawEllipse(pG75, 3,3);
- davinci.drawEllipse(pB75, 3,3);
- davinci.drawEllipse(pCy75, 3,3);
- davinci.drawEllipse(pMg75, 3,3);
- davinci.drawEllipse(pYl75, 3,3);
+ if (m_aColorSpace_YUV->isChecked()) {
+ davinci.drawEllipse(pR75, 3,3);
+ davinci.drawEllipse(pG75, 3,3);
+ davinci.drawEllipse(pB75, 3,3);
+ davinci.drawEllipse(pCy75, 3,3);
+ davinci.drawEllipse(pMg75, 3,3);
+ davinci.drawEllipse(pYl75, 3,3);
+ } else {
+ davinci.drawEllipse(qR75, 3,3);
+ davinci.drawEllipse(qG75, 3,3);
+ davinci.drawEllipse(qB75, 3,3);
+ davinci.drawEllipse(qCy75, 3,3);
+ davinci.drawEllipse(qMg75, 3,3);
+ davinci.drawEllipse(qYl75, 3,3);
+ }
// Draw realtime factor (number of skipped pixels)
if (m_aRealtime->isChecked()) {