62 , d(new
Private(colorConverter))
73 resize(
m_page->sizeHint());
75 m_page->lblWidthValue->setText(QString::number(image->
width()));
76 m_page->lblHeightValue->setText(QString::number(image->
height()));
79 m_page->lblResolutionValue->setText(QLocale().toString(image->
xRes()*72, 2));
82 KoColor background =
d->image->defaultProjectionColor();
84 m_page->bnBackgroundColor->setColor(background);
85 m_page->sldBackgroundColor->setRange(0.0,1.0,2);
86 m_page->sldBackgroundColor->setSingleStep(0.05);
87 m_page->sldBackgroundColor->setValue(
d->image->defaultProjectionColor().opacityF());
89 connect(
m_page->bnBackgroundColor, SIGNAL(changed(
KoColor)), &
d->compressor, SLOT(start()));
90 connect(
m_page->sldBackgroundColor, SIGNAL(valueChanged(qreal)), &
d->compressor, SLOT(start()));
95 m_page->chkConvertLayers->setChecked(
KisConfig(
true).convertLayerColorSpaceInProperties());
99 const bool hasImageLocalConfig = bool(config);
110 m_page->chkSaveProofing->setChecked(hasImageLocalConfig);
111 connect(
m_page->chkSaveProofing, &QCheckBox::toggled,
112 m_page->wdgProofingOptions, &KisProofingOptionsWidget::setEnabled);
113 m_page->wdgProofingOptions->setEnabled(
m_page->chkSaveProofing->isChecked());
117 connect(
m_page->chkSaveProofing, &QCheckBox::toggled,
121 m_page->wdgProofingOptions->setProofingConfig(config);
125 connect(
m_page->wdgProofingOptions,
130 d->hdrMetadataModel.setImageProfileHdrReferenceWhite(
d->image->colorSpace()->profile()->hdrReferenceWhite());
131 d->hdrMetadataModel.setImageHdrReferenceWhiteMetadata(
d->image->hdrReferenceWhiteLightLevel());
132 d->hdrMetadataModel.setClli(
d->image->relativeContentLightLevelInformation());
133 d->hdrMetadataModel.setCvi(
d->image->colorVolumeInformation());
160 const bool hdr =
d->image->colorSpace()->hasHighDynamicRange() ||
162 m_page->grpHdrMeta->setEnabled(hdr);
169 while (it != endIt) {
171 if (!(*it) || (*it)->type().isEmpty()) {
172 dbgFile <<
"Warning: empty annotation";
177 m_page->cmbAnnotations->addItem((*it)->type());
180 connect(
m_page->cmbAnnotations, SIGNAL(textActivated(QString)), SLOT(
setAnnotation(QString)));
183 connect(
m_page->colorSpaceSelector,
201 int resultCode = KoDialog::exec();
203 m_page->wdgProofingOptions->stopPendingUpdates();
205 if (resultCode == QDialog::Accepted) {
206 if (
m_page->chkSaveProofing->isChecked()) {
207 d->image->setProofingConfiguration(
m_page->wdgProofingOptions->currentProofingConfig());
209 d->image->setProofingConfiguration(
nullptr);
212 std::optional<double> effectiveHdrReferenceWhite =
d->hdrMetadataModel.effectiveReferenceWhite();
213 std::optional<KisRelativeContentLightLevelInformation> effectiveClli;
214 std::optional<KisColorVolumeInformation> effectiveCvi;
216 if (
d->hdrMetadataModel.effectiveClliPresent()) {
217 effectiveClli =
d->hdrMetadataModel.clliData.get();
220 if (
d->hdrMetadataModel.cviPresent()) {
221 effectiveCvi =
d->hdrMetadataModel.cviData.get();
224 if (effectiveHdrReferenceWhite !=
d->image->hdrReferenceWhiteLightLevel() ||
225 effectiveClli !=
d->image->relativeContentLightLevelInformation() ||
226 effectiveCvi !=
d->image->colorVolumeInformation()) {
232 d->image->setProofingConfiguration(
d->originalProofingConfig);
The KisContentLightLevelProcessingVistor class This processing visitor checks the projection of the r...
static void runSingleCommandStroke(KisImageSP image, KUndo2Command *cmd, KisStrokeJobData::Sequentiality sequentiality=KisStrokeJobData::SEQUENTIAL, KisStrokeJobData::Exclusivity exclusivity=KisStrokeJobData::NORMAL)
runSingleCommandStroke creates a stroke and runs cmd in it. The text() field of cmd is used as a titl...