Hoyt's FORK of DemoIccMAX 2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
Loading...
Searching...
No Matches
MyRoundTripDialog Class Reference

#include <wxProfileDump.h>

+ Inheritance diagram for MyRoundTripDialog:
+ Collaboration diagram for MyRoundTripDialog:

Public Member Functions

 MyRoundTripDialog (wxWindow *pParent, const wxString &title, wxString &profilePath, CIccProfile *pIcc)
 

Public Attributes

wxString m_profilePath
 

Detailed Description

Definition at line 196 of file wxProfileDump.h.

Constructor & Destructor Documentation

◆ MyRoundTripDialog()

MyRoundTripDialog::MyRoundTripDialog ( wxWindow * pParent,
const wxString & title,
wxString & profilePath,
CIccProfile * pIcc )

Definition at line 1033 of file wxProfileDump.cpp.

1033 :
1034 wxDialog(pParent, wxID_ANY, title,wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER)
1035{
1036 wxSizer *sizer = new wxBoxSizer(wxVERTICAL);
1037 wxSize winSize = winSize = wxSize(500, 400);
1038 wxTextCtrl *textReport = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, winSize,
1039 wxTE_MULTILINE |wxTE_READONLY | wxTE_RICH);
1040
1041 sizer->Add(textReport, wxSizerFlags(1).Expand());
1042
1043 wxString theReport;
1044
1045 if (profilePath.IsEmpty()) {
1046 theReport = "Invalid Profile Path\n";
1047 }
1048 else {
1049 bool bRelative = false;
1050
1051 wxBeginBusyCursor();
1052
1053 //Check colorimetric rendering intents
1054 if (pIcc->FindTag(icSigAToB1Tag) && pIcc->FindTag(icSigBToA1Tag)) {
1055 theReport += AnalyzeRoundTrip(profilePath, icRelativeColorimetric, false);
1056 bRelative = true;
1057 }
1058 if (pIcc->FindTag(icSigDToB1Tag) && pIcc->FindTag(icSigBToD1Tag)) {
1059 theReport += AnalyzeRoundTrip(profilePath, icRelativeColorimetric, true);
1060 bRelative = true;
1061 }
1062 if (!bRelative &&
1063 (pIcc->FindTag(icSigRedMatrixColumnTag) && pIcc->FindTag(icSigGreenMatrixColumnTag) && pIcc->FindTag(icSigBlueMatrixColumnTag) &&
1064 pIcc->FindTag(icSigRedTRCTag) && pIcc->FindTag(icSigGreenTRCTag) && pIcc->FindTag(icSigBlueTRCTag))) {
1065 theReport += AnalyzeRoundTrip(profilePath, icRelativeColorimetric, false);
1066 bRelative = true;
1067 }
1068
1069 //Check MPE absolute intent
1070 if (pIcc->FindTag(icSigDToB3Tag) && pIcc->FindTag(icSigBToD3Tag)) {
1071 theReport += AnalyzeRoundTrip(profilePath, icAbsoluteColorimetric, true);
1072 bRelative = true;
1073 }
1074
1075 //Perceptual intent
1076 if (pIcc->FindTag(icSigAToB0Tag) && pIcc->FindTag(icSigBToA0Tag)) {
1077 theReport += AnalyzeRoundTrip(profilePath, icPerceptual, false);
1078 bRelative = true;
1079 }
1080 if (pIcc->FindTag(icSigDToB0Tag) && pIcc->FindTag(icSigBToD0Tag)) {
1081 theReport += AnalyzeRoundTrip(profilePath, icPerceptual, true);
1082 bRelative = true;
1083 }
1084
1085 //Saturation intent
1086 if (pIcc->FindTag(icSigAToB2Tag) && pIcc->FindTag(icSigBToA2Tag)) {
1087 theReport += AnalyzeRoundTrip(profilePath, icSaturation, false);
1088 bRelative = true;
1089 }
1090 if (pIcc->FindTag(icSigDToB2Tag) && pIcc->FindTag(icSigBToD2Tag)) {
1091 theReport += AnalyzeRoundTrip(profilePath, icSaturation, true);
1092 bRelative = true;
1093 }
1094
1095 wxEndBusyCursor();
1096
1097 if (theReport.IsEmpty())
1098 theReport = "There is nothing to report\n";
1099 }
1100
1101 textReport->SetLabel(theReport);
1102
1103 SetSizer(sizer);
1104 sizer->Fit(this);
1105}
@ icSigBToD0Tag
@ icSigBToA2Tag
@ icSigBlueMatrixColumnTag
@ icSigGreenTRCTag
@ icSigBToD2Tag
@ icSigAToB0Tag
@ icSigBToA1Tag
@ icSigDToB3Tag
@ icSigAToB2Tag
@ icSigDToB0Tag
@ icSigBToD3Tag
@ icSigBToA0Tag
@ icSigRedTRCTag
@ icSigBToD1Tag
@ icSigBlueTRCTag
@ icSigGreenMatrixColumnTag
@ icSigAToB1Tag
@ icSigDToB2Tag
@ icSigRedMatrixColumnTag
@ icSigDToB1Tag
@ icPerceptual
@ icRelativeColorimetric
@ icAbsoluteColorimetric
@ icSaturation
wxString AnalyzeRoundTrip(wxString &profilePath, icRenderingIntent nIntent, bool bUseMPE)

References AnalyzeRoundTrip(), icAbsoluteColorimetric, icPerceptual, icRelativeColorimetric, icSaturation, icSigAToB0Tag, icSigAToB1Tag, icSigAToB2Tag, icSigBlueMatrixColumnTag, icSigBlueTRCTag, icSigBToA0Tag, icSigBToA1Tag, icSigBToA2Tag, icSigBToD0Tag, icSigBToD1Tag, icSigBToD2Tag, icSigBToD3Tag, icSigDToB0Tag, icSigDToB1Tag, icSigDToB2Tag, icSigDToB3Tag, icSigGreenMatrixColumnTag, icSigGreenTRCTag, icSigRedMatrixColumnTag, and icSigRedTRCTag.

+ Here is the call graph for this function:

Member Data Documentation

◆ m_profilePath

wxString MyRoundTripDialog::m_profilePath

Definition at line 201 of file wxProfileDump.h.


The documentation for this class was generated from the following files: