Color Warnings (ink coverage + rich black)

This commit is contained in:
Jakub Melka
2021-04-02 18:05:23 +02:00
parent fb6de717f6
commit 7ca5942fb6
6 changed files with 232 additions and 5 deletions

View File

@ -69,11 +69,17 @@ OutputPreviewDialog::OutputPreviewDialog(const pdf::PDFDocument* document, pdf::
connect(ui->displayVectorGraphicsCheckBox, &QCheckBox::clicked, this, &OutputPreviewDialog::updatePageImage);
connect(ui->inksTreeWidget->model(), &QAbstractItemModel::dataChanged, this, &OutputPreviewDialog::onInksChanged);
connect(ui->alarmColorButton, &QPushButton::clicked, this, &OutputPreviewDialog::onAlarmColorButtonClicked);
connect(ui->displayModeComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), this, &OutputPreviewDialog::onDisplayModeChanged);
connect(ui->inkCoverageLimitEdit, QOverload<double>::of(&QDoubleSpinBox::valueChanged), this, &OutputPreviewDialog::onInkCoverageLimitChanged);
connect(ui->richBlackLimitEdit, QOverload<double>::of(&QDoubleSpinBox::valueChanged), this, &OutputPreviewDialog::onRichBlackLimtiChanged);
updatePageImage();
updateInks();
updatePaperColorWidgets();
updateAlarmColorButtonIcon();
onDisplayModeChanged();
onInkCoverageLimitChanged(ui->inkCoverageLimitEdit->value());
onRichBlackLimtiChanged(ui->richBlackLimitEdit->value());
}
OutputPreviewDialog::~OutputPreviewDialog()
@ -220,6 +226,11 @@ void OutputPreviewDialog::onSimulatePaperColorChecked(bool checked)
updatePageImage();
}
void OutputPreviewDialog::onDisplayModeChanged()
{
ui->imageWidget->setDisplayMode(OutputPreviewWidget::DisplayMode(ui->displayModeComboBox->currentData().toInt()));
}
void OutputPreviewDialog::onInksChanged(const QModelIndex& topLeft, const QModelIndex& bottomRight, const QVector<int>& roles)
{
Q_UNUSED(topLeft);
@ -231,6 +242,16 @@ void OutputPreviewDialog::onInksChanged(const QModelIndex& topLeft, const QModel
}
}
void OutputPreviewDialog::onInkCoverageLimitChanged(double value)
{
ui->imageWidget->setInkCoverageLimit(value / 100.0);
}
void OutputPreviewDialog::onRichBlackLimtiChanged(double value)
{
ui->imageWidget->setRichBlackLimit(value / 100.0);
}
void OutputPreviewDialog::updatePageImage()
{
if (!isRenderingDone())