r23829 by jghali - Add PDF based Output Preview

scribus-commit scribus-commit at lists.scribus.net
Mon May 25 23:47:42 UTC 2020


Author: jghali
Date: Mon May 25 23:47:42 2020
New Revision: 23829

URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=23829
Log:
Add PDF based Output Preview

Added:
    trunk/Scribus/scribus/ui/outputpreview_pdf.cpp
    trunk/Scribus/scribus/ui/outputpreview_pdf.h
    trunk/Scribus/scribus/ui/outputpreview_pdf.ui
    trunk/Scribus/scribus/ui/outputpreviewbase.cpp
    trunk/Scribus/scribus/ui/outputpreviewbase.h
    trunk/Scribus/scribus/ui/outputpreviewbase.ui
Modified:
    trunk/Scribus/Scribus.pro
    trunk/Scribus/scribus/CMakeLists.txt
    trunk/Scribus/scribus/actionmanager.cpp
    trunk/Scribus/scribus/appmodehelper.cpp
    trunk/Scribus/scribus/pdflib_core.cpp
    trunk/Scribus/scribus/prefsmanager.cpp
    trunk/Scribus/scribus/prefsstructs.h
    trunk/Scribus/scribus/scribus.cpp
    trunk/Scribus/scribus/scribus.h
    trunk/Scribus/scribus/ui/checkDocument.h
    trunk/Scribus/scribus/ui/scmwmenumanager.cpp
    trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj
    trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj.filters
    trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj
    trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj.filters

Modified: trunk/Scribus/Scribus.pro
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/Scribus.pro
==============================================================================
--- trunk/Scribus/Scribus.pro	(original)
+++ trunk/Scribus/Scribus.pro	Mon May 25 23:47:42 2020
@@ -502,6 +502,8 @@
            scribus/ui/openpaletteview.h \
            scribus/ui/osgeditor.h \
            scribus/ui/outlinepalette.h \
+           scribus/ui/outputpreview_pdf.h \
+           scribus/ui/outputpreviewbase.h \
            scribus/ui/pageitemattributes.h \
            scribus/ui/pageitempositionsetter.h \
            scribus/ui/pageitemrotationsetter.h \
@@ -1065,6 +1067,8 @@
          scribus/ui/nftwidget.ui \
          scribus/ui/notesstyleseditor.ui \
          scribus/ui/osgeditor.ui \
+         scribus/ui/outputpreview_pdf.ui \
+         scribus/ui/outputpreviewbase.ui \
          scribus/ui/pageitemattributes.ui \
          scribus/ui/pagepalette_masterpagesbase.ui \
          scribus/ui/pagepalette_pagesbase.ui \
@@ -1630,6 +1634,8 @@
            scribus/ui/openpaletteview.cpp \
            scribus/ui/osgeditor.cpp \
            scribus/ui/outlinepalette.cpp \
+           scribus/ui/outputpreview_pdf.cpp \
+           scribus/ui/outputpreviewbase.cpp \
            scribus/ui/pageitemattributes.cpp \
            scribus/ui/pageitempositionsetter.cpp \
            scribus/ui/pageitemrotationsetter.cpp \

Modified: trunk/Scribus/scribus/CMakeLists.txt
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/CMakeLists.txt
==============================================================================
--- trunk/Scribus/scribus/CMakeLists.txt	(original)
+++ trunk/Scribus/scribus/CMakeLists.txt	Mon May 25 23:47:42 2020
@@ -134,6 +134,8 @@
 	ui/nftdialog.ui
 	ui/nftwidget.ui
 	ui/notesstyleseditor.ui
+	ui/outputpreview_pdf.ui
+	ui/outputpreviewbase.ui
 	ui/pageitemattributes.ui
 	ui/pagepalette_pagesbase.ui
 	ui/pagepalette_masterpagesbase.ui
@@ -419,6 +421,8 @@
 	ui/notesstyleseditor.h
 	ui/numformatcombo.h
 	ui/outlinepalette.h
+	ui/outputpreview_pdf.h
+	ui/outputpreviewbase.h
 	ui/pageitemattributes.h
 	ui/pagelayout.h
 	ui/pagepalette.h
@@ -922,6 +926,8 @@
 	ui/notesstyleseditor.cpp
 	ui/numformatcombo.cpp
 	ui/outlinepalette.cpp
+	ui/outputpreview_pdf.cpp
+	ui/outputpreviewbase.cpp
 	ui/pageitemattributes.cpp
 	ui/pagelayout.cpp
 	ui/pagepalette.cpp

Modified: trunk/Scribus/scribus/actionmanager.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/actionmanager.cpp
==============================================================================
--- trunk/Scribus/scribus/actionmanager.cpp	(original)
+++ trunk/Scribus/scribus/actionmanager.cpp	Mon May 25 23:47:42 2020
@@ -164,6 +164,8 @@
 	scrActions->insert(name, new ScrAction("16/document-print.png", "22/document-print.png", "", defaultKey(name), mainWindow));
 	name = "PrintPreview";
 	scrActions->insert(name, new ScrAction("16/document-print-preview.png", "22/document-print-preview.png", "", defaultKey(name), mainWindow));
+	name = "OutputPreviewPDF";
+	scrActions->insert(name, new ScrAction(QString(), defaultKey(name), mainWindow));
 	name = "fileQuit";
 	scrActions->insert(name, new ScrAction("exit.png", QString(), "", defaultKey(name), mainWindow));
 	(*scrActions)[name]->setMenuRole(QAction::QuitRole);
@@ -176,6 +178,7 @@
 	connect( (*scrActions)["fileClose"], SIGNAL(triggered()), mainWindow, SLOT(slotFileClose()) );
 	connect( (*scrActions)["filePrint"], SIGNAL(triggered()), mainWindow, SLOT(slotFilePrint()) );
 	connect( (*scrActions)["PrintPreview"], SIGNAL(triggered()), mainWindow, SLOT(printPreview()) );
+	connect( (*scrActions)["OutputPreviewPDF"], SIGNAL(triggered()), mainWindow, SLOT(outputPreviewPDF()) );
 	connect( (*scrActions)["fileSave"], SIGNAL(triggered()), mainWindow, SLOT(slotFileSave()) );
 	connect( (*scrActions)["fileSaveAs"], SIGNAL(triggered()), mainWindow, SLOT(slotFileSaveAs()) );
 	connect( (*scrActions)["fileDocSetup150"], SIGNAL(triggered()), mainWindow, SLOT(slotDocSetup()) );
@@ -1504,6 +1507,7 @@
 	(*scrActions)["filePreferences150"]->setTexts( tr("P&references..."));
 	(*scrActions)["filePrint"]->setTexts( tr("&Print..."));
 	(*scrActions)["PrintPreview"]->setTexts( tr("Print Previe&w..."));
+	(*scrActions)["OutputPreviewPDF"]->setTexts( tr("PDF..."));
 	(*scrActions)["fileQuit"]->setTexts( tr("&Quit"));
 	//Edit Menu
 	(*scrActions)["editUndoAction"]->setTexts( tr("&Undo"));
@@ -2077,6 +2081,7 @@
 		<< "filePreferences150"
 		<< "filePrint"
 		<< "PrintPreview"
+		<< "OutputPreviewPDF"
 		<< "fileQuit";
 	++itmenu;
 	//Edit

Modified: trunk/Scribus/scribus/appmodehelper.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/appmodehelper.cpp
==============================================================================
--- trunk/Scribus/scribus/appmodehelper.cpp	(original)
+++ trunk/Scribus/scribus/appmodehelper.cpp	Mon May 25 23:47:42 2020
@@ -1167,8 +1167,10 @@
 	(*a_scrActions)["fileSaveAs"]->setEnabled(b2);
 	(*a_scrActions)["fileExportAsEPS"]->setEnabled(b2);
 	(*a_scrActions)["fileExportAsPDF"]->setEnabled(b2);
-	if ( ScCore->haveGS() || ScCore->isWinGUI() )
+	if (ScCore->haveGS() || ScCore->isWinGUI())
 		(*a_scrActions)["PrintPreview"]->setEnabled(b2);
+	if (ScCore->haveGS())
+		(*a_scrActions)["OutputPreviewPDF"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFPushButton"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFRadioButton"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFTextField"]->setEnabled(b2);
@@ -1183,7 +1185,7 @@
 
 void AppModeHelper::setInlineEditMode(bool b, ScribusDoc *doc)
 {
-	bool b2=!b;
+	bool b2 = !b;
 	(*a_scrActions)["pageInsert"]->setEnabled(b2);
 	(*a_scrActions)["pageImport"]->setEnabled(b2);
 	(*a_scrActions)["pageDelete"]->setEnabled(b2);
@@ -1199,8 +1201,10 @@
 	if (b2)
 	{
 		(*a_scrActions)["fileSave"]->setEnabled(!doc->isConverted);
-		if ( ScCore->haveGS() || ScCore->isWinGUI() )
+		if (ScCore->haveGS() || ScCore->isWinGUI())
 			(*a_scrActions)["PrintPreview"]->setEnabled(true);
+		if (ScCore->haveGS())
+			(*a_scrActions)["OutputPreviewPDF"]->setEnabled(true);
 		bool setter = doc->DocPages.count() > 1;
 		(*a_scrActions)["pageDelete"]->setEnabled(setter);
 		(*a_scrActions)["pageMove"]->setEnabled(setter);
@@ -1212,8 +1216,10 @@
 	(*a_scrActions)["fileSaveAs"]->setEnabled(b2);
 	(*a_scrActions)["fileExportAsEPS"]->setEnabled(b2);
 	(*a_scrActions)["fileExportAsPDF"]->setEnabled(b2);
-	if ( ScCore->haveGS() || ScCore->isWinGUI() )
+	if (ScCore->haveGS() || ScCore->isWinGUI())
 		(*a_scrActions)["PrintPreview"]->setEnabled(b2);
+	if (ScCore->haveGS())
+		(*a_scrActions)["OutputPreviewPDF"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFPushButton"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFRadioButton"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFTextField"]->setEnabled(b2);
@@ -1247,8 +1253,10 @@
 	if (b2)
 	{
 		(*a_scrActions)["fileSave"]->setEnabled(!doc->isConverted);
-		if ( ScCore->haveGS() || ScCore->isWinGUI() )
+		if (ScCore->haveGS() || ScCore->isWinGUI())
 			(*a_scrActions)["PrintPreview"]->setEnabled(true);
+		if (ScCore->haveGS())
+			(*a_scrActions)["OutputPreviewPDF"]->setEnabled(true);
 		bool setter = doc->DocPages.count() > 1;
 		(*a_scrActions)["pageDelete"]->setEnabled(setter);
 		(*a_scrActions)["pageMove"]->setEnabled(setter);
@@ -1257,8 +1265,10 @@
 	(*a_scrActions)["fileRevert"]->setEnabled(b2);
 	(*a_scrActions)["fileDocSetup150"]->setEnabled(b2);
 	(*a_scrActions)["filePrint"]->setEnabled(b2);
-	if ( ScCore->haveGS() || ScCore->isWinGUI() )
+	if (ScCore->haveGS() || ScCore->isWinGUI())
 		(*a_scrActions)["PrintPreview"]->setEnabled(b2);
+	if (ScCore->haveGS())
+		(*a_scrActions)["OutputPreviewPDF"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFPushButton"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFRadioButton"]->setEnabled(b2);
 	(*a_scrActions)["toolsPDFTextField"]->setEnabled(b2);
@@ -1378,8 +1388,10 @@
 	(*a_scrActions)["fileImportVector"]->setEnabled(true);
 	(*a_scrActions)["pageImport"]->setEnabled(true);
 
-	if ( ScCore->haveGS() || ScCore->isWinGUI() )
+	if (ScCore->haveGS() || ScCore->isWinGUI())
 		(*a_scrActions)["PrintPreview"]->setEnabled(true);
+	if (ScCore->haveGS())
+		(*a_scrActions)["OutputPreviewPDF"]->setEnabled(true);
 
 	if ((*a_scrActions)["SaveAsDocumentTemplate"])
 		(*a_scrActions)["SaveAsDocumentTemplate"]->setEnabled(true);
@@ -1539,6 +1551,8 @@
 {
 	if ( ScCore->haveGS() || ScCore->isWinGUI() )
 		(*a_scrActions)["PrintPreview"]->setEnabled(false);
+	if (ScCore->haveGS())
+		(*a_scrActions)["OutputPreviewPDF"]->setEnabled(false);
 	if ((*a_scrActions)["SaveAsDocumentTemplate"])
 		(*a_scrActions)["SaveAsDocumentTemplate"]->setEnabled(false);
 	(*a_scrActions)["editClearContents"]->setEnabled(false);
@@ -1721,6 +1735,7 @@
 	(*a_scrActions)["fileCollect"]->setEnabled(false);
 	(*a_scrActions)["fileClose"]->setEnabled(false);
 	(*a_scrActions)["PrintPreview"]->setEnabled(false);
+	(*a_scrActions)["OutputPreviewPDF"]->setEnabled(false);
 	if ((*a_scrActions)["SaveAsDocumentTemplate"])
 		(*a_scrActions)["SaveAsDocumentTemplate"]->setEnabled(false);
 	(*a_scrActions)["fileExportAsPDF"]->setEnabled(false);

Modified: trunk/Scribus/scribus/pdflib_core.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/pdflib_core.cpp
==============================================================================
--- trunk/Scribus/scribus/pdflib_core.cpp	(original)
+++ trunk/Scribus/scribus/pdflib_core.cpp	Mon May 25 23:47:42 2020
@@ -657,7 +657,7 @@
 		}
 		for (uint a = 0; a < pageNs.size() && !abortExport; ++a)
 		{
-			if (doc.pdfOptions().Thumbnails)
+			if (Options.Thumbnails)
 				thumb = thumbs[pageNs[a]];
 			qApp->processEvents();
 			if (abortExport) break;
@@ -666,7 +666,7 @@
 			qApp->processEvents();
 			if (abortExport) break;
 
-			if (!PDF_ProcessPage(doc.DocPages.at(pageNs[a]-1), pageNs[a]-1, doc.pdfOptions().doClip))
+			if (!PDF_ProcessPage(doc.DocPages.at(pageNs[a]-1), pageNs[a]-1, Options.doClip))
 				error = abortExport = true;
 			qApp->processEvents();
 			if (abortExport) break;
@@ -682,8 +682,8 @@
 		ret = true;//Even when aborting we return true. Don't want that "couldnt write msg"
 		if (!abortExport)
 		{
-			if (PDF_IsPDFX(doc.pdfOptions().Version))
-				ret = PDF_End_Doc(ScCore->PrinterProfiles[doc.pdfOptions().PrintProf]);
+			if (PDF_IsPDFX(Options.Version))
+				ret = PDF_End_Doc(ScCore->PrinterProfiles[Options.PrintProf]);
 			else
 				ret = PDF_End_Doc();
 		}

Modified: trunk/Scribus/scribus/prefsmanager.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/prefsmanager.cpp
==============================================================================
--- trunk/Scribus/scribus/prefsmanager.cpp	(original)
+++ trunk/Scribus/scribus/prefsmanager.cpp	Mon May 25 23:47:42 2020
@@ -345,9 +345,9 @@
 	appPrefs.pathPrefs.colorProfiles = "";
 	appPrefs.pathPrefs.scripts = "";
 	appPrefs.pathPrefs.documentTemplates = "";
+
 	appPrefs.printPreviewPrefs.PrPr_Mode = false;
-	//appPrefs.Gcr_Mode = true;
-	appPrefs.printPreviewPrefs.PrPr_AntiAliasing = false;
+	appPrefs.printPreviewPrefs.PrPr_AntiAliasing = true;
 	appPrefs.printPreviewPrefs.PrPr_Transparency = false;
 	appPrefs.printPreviewPrefs.PrPr_C = true;
 	appPrefs.printPreviewPrefs.PrPr_M = true;
@@ -355,6 +355,17 @@
 	appPrefs.printPreviewPrefs.PrPr_K = true;
 	appPrefs.printPreviewPrefs.PrPr_InkCoverage = false;
 	appPrefs.printPreviewPrefs.PrPr_InkThreshold = 250;
+
+	appPrefs.pdfOutputPreviewPrefs.enableAntiAliasing = true;
+	appPrefs.pdfOutputPreviewPrefs.showTransparency = false;
+	appPrefs.pdfOutputPreviewPrefs.cmykPreviewMode = false ;
+	appPrefs.pdfOutputPreviewPrefs.isCyanVisible = true;
+	appPrefs.pdfOutputPreviewPrefs.isMagentaVisible = true;
+	appPrefs.pdfOutputPreviewPrefs.isYellowVisible = true;
+	appPrefs.pdfOutputPreviewPrefs.isBlackVisible = true;
+	appPrefs.pdfOutputPreviewPrefs.displayInkCoverage = false;
+	appPrefs.pdfOutputPreviewPrefs.inkCoverageThreshold = 250;
+
 	appPrefs.extToolPrefs.imageEditorExecutable = ScPaths::defaultImageEditorApp();
 	appPrefs.extToolPrefs.extBrowserExecutable = "";
 	appPrefs.extToolPrefs.uniconvExecutable = "uniconv";
@@ -368,8 +379,10 @@
 	appPrefs.extToolPrefs.gs_AntiAliasText = true;
 	appPrefs.extToolPrefs.gs_exe = getGSDefaultExeName();
 	appPrefs.extToolPrefs.gs_Resolution = 72;
+
 	appPrefs.storyEditorPrefs.guiFontColorBackground = QColor(Qt::white);
 	appPrefs.storyEditorPrefs.smartTextSelection=false;
+
 	appPrefs.colorPrefs.DCMSset.DefaultMonitorProfile = "";
 	appPrefs.colorPrefs.DCMSset.DefaultPrinterProfile = "";
 	appPrefs.colorPrefs.DCMSset.DefaultImageRGBProfile = "";
@@ -382,6 +395,7 @@
 	appPrefs.colorPrefs.DCMSset.BlackPoint = true;
 	appPrefs.colorPrefs.DCMSset.DefaultIntentColors = Intent_Relative_Colorimetric;
 	appPrefs.colorPrefs.DCMSset.DefaultIntentImages = Intent_Perceptual;
+
 	appPrefs.fontPrefs.GFontSub.clear();
 	appPrefs.displayPrefs.scratch.setLeft(100);
 	appPrefs.displayPrefs.scratch.setRight(100);
@@ -1699,7 +1713,7 @@
 	dcColorManagement.setAttribute("DefaultIntentImages",appPrefs.colorPrefs.DCMSset.DefaultIntentImages);
 	elem.appendChild(dcColorManagement);
 
-	QDomElement dcPrinter=docu.createElement("Printer");
+	QDomElement dcPrinter = docu.createElement("Printer");
 	dcPrinter.setAttribute("Name",appPrefs.printerPrefs.PrinterName);
 	dcPrinter.setAttribute("File",appPrefs.printerPrefs.PrinterFile);
 	dcPrinter.setAttribute("Command",appPrefs.printerPrefs.PrinterCommand);
@@ -1707,9 +1721,8 @@
 	dcPrinter.setAttribute("GCRMode", static_cast<int>(appPrefs.printerPrefs.GCRMode));
 	elem.appendChild(dcPrinter);
 
-	QDomElement dc8Pr=docu.createElement("PrintPreview");
+	QDomElement dc8Pr = docu.createElement("PrintPreview");
 	dc8Pr.setAttribute("Mode", static_cast<int>(appPrefs.printPreviewPrefs.PrPr_Mode));
-	//dc8Pr.setAttribute("GcrMode", static_cast<int>(appPrefs.Gcr_Mode));
 	dc8Pr.setAttribute("AntiAliasing", static_cast<int>(appPrefs.printPreviewPrefs.PrPr_AntiAliasing));
 	dc8Pr.setAttribute("Transparency", static_cast<int>(appPrefs.printPreviewPrefs.PrPr_Transparency));
 	dc8Pr.setAttribute("Cyan", static_cast<int>(appPrefs.printPreviewPrefs.PrPr_C));
@@ -1719,6 +1732,19 @@
 	dc8Pr.setAttribute("InkCoverage", static_cast<int>(appPrefs.printPreviewPrefs.PrPr_InkCoverage));
 	dc8Pr.setAttribute("InkThreshold", appPrefs.printPreviewPrefs.PrPr_InkThreshold);
 	elem.appendChild(dc8Pr);
+
+	QDomElement dcPdfOutputPrev = docu.createElement("PDFOutputPreview");
+	dcPdfOutputPrev.setAttribute("AntiAliasing", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.enableAntiAliasing));
+	dcPdfOutputPrev.setAttribute("Transparency", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.showTransparency));
+	dcPdfOutputPrev.setAttribute("CMYKMode", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.cmykPreviewMode));
+	dcPdfOutputPrev.setAttribute("Cyan", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.isCyanVisible));
+	dcPdfOutputPrev.setAttribute("Magenta", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.isMagentaVisible));
+	dcPdfOutputPrev.setAttribute("Yellow", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.isYellowVisible));
+	dcPdfOutputPrev.setAttribute("Black", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.isBlackVisible));
+	dcPdfOutputPrev.setAttribute("InkCoverage", static_cast<int>(appPrefs.pdfOutputPreviewPrefs.displayInkCoverage));
+	dcPdfOutputPrev.setAttribute("InkThreshold", appPrefs.pdfOutputPreviewPrefs.inkCoverageThreshold);
+	elem.appendChild(dcPdfOutputPrev);
+
 	QDomElement dcExternalTools = docu.createElement("ExternalTools");
 	dcExternalTools.setAttribute("ImageEditor", imageEditorExecutable());
 	dcExternalTools.setAttribute("Ghostscript", ghostscriptExecutable());
@@ -2414,8 +2440,7 @@
 		if (dc.tagName()=="PrintPreview")
 		{
 			appPrefs.printPreviewPrefs.PrPr_Mode = static_cast<bool>(dc.attribute("Mode", "0").toInt());
-			//appPrefs.Gcr_Mode = static_cast<bool>(dc.attribute("GcrMode", "1").toInt());
-			appPrefs.printPreviewPrefs.PrPr_AntiAliasing = static_cast<bool>(dc.attribute("AntiAliasing", "0").toInt());
+			appPrefs.printPreviewPrefs.PrPr_AntiAliasing = static_cast<bool>(dc.attribute("AntiAliasing", "1").toInt());
 			appPrefs.printPreviewPrefs.PrPr_Transparency = static_cast<bool>(dc.attribute("Transparency", "0").toInt());
 			appPrefs.printPreviewPrefs.PrPr_C = static_cast<bool>(dc.attribute("Cyan", "1").toInt());
 			appPrefs.printPreviewPrefs.PrPr_M = static_cast<bool>(dc.attribute("Magenta", "1").toInt());
@@ -2423,6 +2448,18 @@
 			appPrefs.printPreviewPrefs.PrPr_K = static_cast<bool>(dc.attribute("Black", "1").toInt());
 			appPrefs.printPreviewPrefs.PrPr_InkCoverage = static_cast<bool>(dc.attribute("InkCoverage", "0").toInt());
 			appPrefs.printPreviewPrefs.PrPr_InkThreshold = dc.attribute("InkThreshold", "250").toInt();
+		}
+		if (dc.tagName() == "PDFOutputPreview")
+		{
+			appPrefs.pdfOutputPreviewPrefs.enableAntiAliasing = static_cast<bool>(dc.attribute("AntiAliasing", "1").toInt());
+			appPrefs.pdfOutputPreviewPrefs.showTransparency = static_cast<bool>(dc.attribute("Transparency", "0").toInt());
+			appPrefs.pdfOutputPreviewPrefs.cmykPreviewMode = static_cast<bool>(dc.attribute("CMYKMode", "0").toInt());
+			appPrefs.pdfOutputPreviewPrefs.isCyanVisible = static_cast<bool>(dc.attribute("Cyan", "1").toInt());
+			appPrefs.pdfOutputPreviewPrefs.isMagentaVisible = static_cast<bool>(dc.attribute("Magenta", "1").toInt());
+			appPrefs.pdfOutputPreviewPrefs.isYellowVisible = static_cast<bool>(dc.attribute("Yellow", "1").toInt());
+			appPrefs.pdfOutputPreviewPrefs.isBlackVisible = static_cast<bool>(dc.attribute("Black", "1").toInt());
+			appPrefs.pdfOutputPreviewPrefs.displayInkCoverage = static_cast<bool>(dc.attribute("InkCoverage", "0").toInt());
+			appPrefs.pdfOutputPreviewPrefs.inkCoverageThreshold = dc.attribute("InkThreshold", "250").toInt();
 		}
 		if (dc.tagName()=="ExternalTools")
 		{

Modified: trunk/Scribus/scribus/prefsstructs.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/prefsstructs.h
==============================================================================
--- trunk/Scribus/scribus/prefsstructs.h	(original)
+++ trunk/Scribus/scribus/prefsstructs.h	Mon May 25 23:47:42 2020
@@ -406,15 +406,28 @@
 
 struct PrintPreviewPrefs
 {
-	bool PrPr_Mode;
-	bool PrPr_AntiAliasing;
-	bool PrPr_Transparency;
-	bool PrPr_C;
-	bool PrPr_M;
-	bool PrPr_Y;
-	bool PrPr_K;
-	bool PrPr_InkCoverage;
-	int PrPr_InkThreshold;
+	bool PrPr_Mode { false };
+	bool PrPr_AntiAliasing { true };
+	bool PrPr_Transparency { false };
+	bool PrPr_C { true };
+	bool PrPr_M { true };
+	bool PrPr_Y { true };
+	bool PrPr_K { true };
+	bool PrPr_InkCoverage { false };
+	int PrPr_InkThreshold { 250 };
+};
+
+struct PDFOutputPreviewPrefs
+{
+	bool enableAntiAliasing { true };
+	bool showTransparency { false };
+	bool cmykPreviewMode { false };
+	bool isCyanVisible { true };
+	bool isMagentaVisible { true };
+	bool isYellowVisible { true };
+	bool isBlackVisible { true };
+	bool displayInkCoverage { false };
+	int  inkCoverageThreshold { 250 };
 };
 
 struct PluginPrefs
@@ -456,8 +469,9 @@
 	PDFOptions pdfPrefs;
 	PathPrefs pathPrefs;
 	PluginPrefs pluginPrefs;
+	PrinterPrefs printerPrefs;
 	PrintPreviewPrefs printPreviewPrefs;
-	PrinterPrefs printerPrefs;
+	PDFOutputPreviewPrefs pdfOutputPreviewPrefs;
 	ScrapbookPrefs scrapbookPrefs;
 	ScripterPrefs scripterPrefs;
 	ShortWordPrefs shortwordPrefs;
@@ -473,12 +487,9 @@
 	QList<PageSet> pageSets;
 	QStringList activePageSizes;
 
-
-
 	//TODO : Remove these no longer used items
 	//! System default QStyle name for current instance, seemingly unused
 	QString ui_SystemTheme;
-	//	bool Gcr_Mode;
 
 	//Added for Doc Only
 	DocumentInformation docInfo;

Modified: trunk/Scribus/scribus/scribus.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/scribus.cpp
==============================================================================
--- trunk/Scribus/scribus/scribus.cpp	(original)
+++ trunk/Scribus/scribus/scribus.cpp	Mon May 25 23:47:42 2020
@@ -212,6 +212,7 @@
 #include "ui/nodeeditpalette.h"
 #include "ui/notesstyleseditor.h"
 #include "ui/outlinepalette.h"
+#include "ui/outputpreview_pdf.h"
 #include "ui/pageitemattributes.h"
 #include "ui/pagelayout.h"
 #include "ui/pagepalette.h"
@@ -901,13 +902,21 @@
 	scrMenuMgr->addMenuItemString("filePreferences150", "File");
 	scrMenuMgr->addMenuItemString("SEPARATOR", "File");
 	scrMenuMgr->addMenuItemString("filePrint", "File");
-	if ( ScCore->haveGS() || ScCore->isWinGUI() )
+	if (ScCore->haveGS() || ScCore->isWinGUI())
 		scrMenuMgr->addMenuItemString("PrintPreview", "File");
 	scrMenuMgr->addMenuItemString("SEPARATOR", "File");
+	if (ScCore->haveGS())
+	{
+		scrMenuMgr->addMenuItemString("FileOutputPreview", "File");
+		scrMenuMgr->createMenu("FileOutputPreview", tr("&Output Preview"), "File");
+		scrMenuMgr->addMenuItemString("OutputPreviewPDF", "FileOutputPreview");
+		scrMenuMgr->addMenuItemString("SEPARATOR", "File");
+	}
 	scrMenuMgr->addMenuItemString("fileQuit", "File");
 
 	scrMenuMgr->setMenuEnabled("FileImport", false);
 	scrMenuMgr->setMenuEnabled("FileExport", false);
+	scrMenuMgr->setMenuEnabled("FileOutputPreview", false);
 
 	scrMenuMgr->createMenu("Edit", ActionManager::defaultMenuNameEntryTranslated("Edit"));
 	scrMenuMgr->addMenuItemString("editUndoAction", "Edit");
@@ -6953,58 +6962,14 @@
 	return 0;
 }
 
-void ScribusMainWindow::doPrintPreview()
-{
-	if (!HaveDoc)
-		return;
-	if (!( ScCore->haveGS() || ScCore->isWinGUI() ))
-		return;
-	if (docCheckerPalette->isIgnoreEnabled())
-	{
-		docCheckerPalette->hide();
-		docCheckerPalette->checkMode = CheckDocument::checkNULL;
-		docCheckerPalette->setIgnoreEnabled(false);
-		scrActions["toolsPreflightVerifier"]->setChecked(false);
-		disconnect(docCheckerPalette, SIGNAL(ignoreAllErrors()), this, SLOT(doPrintPreview()));
-	}
-	PrefsContext* prefs = PrefsManager::instance().prefsFile->getContext("print_options");
-	QString currentPrinter(prefs->get("CurrentPrn"));
-	PrintEngine currentEngine = (PrintEngine) prefs->get("CurrentPrnEngine", "3").toInt();
-	if (PrintPreview::usePostscriptPreview(currentPrinter, currentEngine) && (!ScCore->haveGS()) )
-	{
-		QString mess(tr("Ghostscript is missing : PostScript Print Preview is not available")+"\n\n");
-		ScMessageBox::warning(this, CommonStrings::trWarning, mess);
-		return;
-	}
-	PrintPreview *dia = new PrintPreview(this, doc, currentPrinter, currentEngine);
-	previewDinUse = true;
-	connect(dia, SIGNAL(doPrint()), this, SLOT(slotReallyPrint()));
-	dia->exec();
-	PrefsManager& prefsManager = PrefsManager::instance();
-	prefsManager.appPrefs.printPreviewPrefs.PrPr_Mode = dia->isCMYKPreviewEnabled();
-	prefsManager.appPrefs.printPreviewPrefs.PrPr_AntiAliasing = dia->isAntialiasingEnabled();
-	prefsManager.appPrefs.printPreviewPrefs.PrPr_Transparency = dia->isTransparencyEnabled();
-	if (ScCore->haveTIFFSep() && dia->usePostScriptPreview())
-	{
-		prefsManager.appPrefs.printPreviewPrefs.PrPr_C = dia->isInkChannelVisible("Cyan");
-		prefsManager.appPrefs.printPreviewPrefs.PrPr_M = dia->isInkChannelVisible("Magenta");
-		prefsManager.appPrefs.printPreviewPrefs.PrPr_Y = dia->isInkChannelVisible("Yellow");
-		prefsManager.appPrefs.printPreviewPrefs.PrPr_K = dia->isInkChannelVisible("Black");
-		prefsManager.appPrefs.printPreviewPrefs.PrPr_InkCoverage = dia->isInkCoverageEnabled();
-		prefsManager.appPrefs.printPreviewPrefs.PrPr_InkThreshold = dia->inkCoverageThreshold();
-	}
-	disconnect(dia, SIGNAL(doPrint()), this, SLOT(slotReallyPrint()));
-	previewDinUse = false;
-	delete dia;
-}
-
 void ScribusMainWindow::printPreview()
 {
-	if (doc->checkerProfiles()[doc->curCheckProfile()].autoCheck)
+	const CheckerPrefs& checkerProfile = doc->checkerProfiles()[doc->curCheckProfile()];
+	if (checkerProfile.autoCheck)
 	{
 		if (scanDocument())
 		{
-			if (doc->checkerProfiles()[doc->curCheckProfile()].ignoreErrors)
+			if (checkerProfile.ignoreErrors)
 			{
 				int i = ScMessageBox::warning(this, CommonStrings::trWarning,
 											"<qt>"+ tr("Scribus has detected some errors. Consider using the Preflight Verifier to correct them")+"</qt>",
@@ -7027,6 +6992,123 @@
 		}
 	}
 	doPrintPreview();
+}
+
+void ScribusMainWindow::doPrintPreview()
+{
+	if (!HaveDoc)
+		return;
+	if (!( ScCore->haveGS() || ScCore->isWinGUI() ))
+		return;
+	if (docCheckerPalette->isIgnoreEnabled())
+	{
+		docCheckerPalette->hide();
+		docCheckerPalette->checkMode = CheckDocument::checkNULL;
+		docCheckerPalette->setIgnoreEnabled(false);
+		scrActions["toolsPreflightVerifier"]->setChecked(false);
+		disconnect(docCheckerPalette, SIGNAL(ignoreAllErrors()), this, SLOT(doPrintPreview()));
+	}
+	PrefsContext* prefs = PrefsManager::instance().prefsFile->getContext("print_options");
+	QString currentPrinter(prefs->get("CurrentPrn"));
+	PrintEngine currentEngine = (PrintEngine) prefs->get("CurrentPrnEngine", "3").toInt();
+	if (PrintPreview::usePostscriptPreview(currentPrinter, currentEngine) && (!ScCore->haveGS()) )
+	{
+		QString mess(tr("Ghostscript is missing : PostScript Print Preview is not available")+"\n\n");
+		ScMessageBox::warning(this, CommonStrings::trWarning, mess);
+		return;
+	}
+	PrintPreview *dia = new PrintPreview(this, doc, currentPrinter, currentEngine);
+	previewDinUse = true;
+	connect(dia, SIGNAL(doPrint()), this, SLOT(slotReallyPrint()));
+	dia->exec();
+	PrefsManager& prefsManager = PrefsManager::instance();
+	prefsManager.appPrefs.printPreviewPrefs.PrPr_Mode = dia->isCMYKPreviewEnabled();
+	prefsManager.appPrefs.printPreviewPrefs.PrPr_AntiAliasing = dia->isAntialiasingEnabled();
+	prefsManager.appPrefs.printPreviewPrefs.PrPr_Transparency = dia->isTransparencyEnabled();
+	if (ScCore->haveTIFFSep() && dia->usePostScriptPreview())
+	{
+		prefsManager.appPrefs.printPreviewPrefs.PrPr_C = dia->isInkChannelVisible("Cyan");
+		prefsManager.appPrefs.printPreviewPrefs.PrPr_M = dia->isInkChannelVisible("Magenta");
+		prefsManager.appPrefs.printPreviewPrefs.PrPr_Y = dia->isInkChannelVisible("Yellow");
+		prefsManager.appPrefs.printPreviewPrefs.PrPr_K = dia->isInkChannelVisible("Black");
+		prefsManager.appPrefs.printPreviewPrefs.PrPr_InkCoverage = dia->isInkCoverageEnabled();
+		prefsManager.appPrefs.printPreviewPrefs.PrPr_InkThreshold = dia->inkCoverageThreshold();
+	}
+	disconnect(dia, SIGNAL(doPrint()), this, SLOT(slotReallyPrint()));
+	previewDinUse = false;
+	delete dia;
+}
+
+void ScribusMainWindow::outputPreviewPDF()
+{
+	const CheckerPrefs& checkerProfile = doc->checkerProfiles()[doc->curCheckProfile()];
+	if (checkerProfile.autoCheck)
+	{
+		if (scanDocument())
+		{
+			if (checkerProfile.ignoreErrors)
+			{
+				int i = ScMessageBox::warning(this, CommonStrings::trWarning,
+											"<qt>"+ tr("Scribus has detected some errors. Consider using the Preflight Verifier to correct them")+"</qt>",
+											QMessageBox::Abort | QMessageBox::Ignore,
+											QMessageBox::NoButton,	// GUI default
+											QMessageBox::Ignore);	// batch default
+				if (i == QMessageBox::Abort)
+					return;
+			}
+			else
+			{
+				connect(docCheckerPalette, SIGNAL(ignoreAllErrors()), this, SLOT(doOutputPreviewPDF()));
+				docCheckerPalette->setIgnoreEnabled(true);
+				docCheckerPalette->checkMode = CheckDocument::checkOutputPreviewPDF;
+				docCheckerPalette->buildErrorList(doc);
+				docCheckerPalette->show();
+				scrActions["toolsPreflightVerifier"]->setChecked(true);
+				return;
+			}
+		}
+	}
+	doOutputPreviewPDF();
+}
+
+void ScribusMainWindow::doOutputPreviewPDF()
+{
+	if (!HaveDoc)
+		return;
+	if (!ScCore->haveGS())
+		return;
+
+	if (docCheckerPalette->isIgnoreEnabled())
+	{
+		docCheckerPalette->hide();
+		docCheckerPalette->checkMode = CheckDocument::checkNULL;
+		docCheckerPalette->setIgnoreEnabled(false);
+		scrActions["toolsPreflightVerifier"]->setChecked(false);
+		disconnect(docCheckerPalette, SIGNAL(ignoreAllErrors()), this, SLOT(doOutputPreviewPDF()));
+	}
+
+	OutputPreview_PDF *dia = new OutputPreview_PDF(this, doc);
+	previewDinUse = true;
+	connect(dia, SIGNAL(doExport()), this, SLOT(doSaveAsPDF()));
+	dia->exec();
+	disconnect(dia, SIGNAL(doExport()), this, SLOT(doSaveAsPDF()));
+	previewDinUse = false;
+
+	PrefsManager& prefsManager = PrefsManager::instance();
+	prefsManager.appPrefs.pdfOutputPreviewPrefs.cmykPreviewMode = dia->isCMYKPreviewEnabled();
+	prefsManager.appPrefs.pdfOutputPreviewPrefs.enableAntiAliasing = dia->isAntialiasingEnabled();
+	prefsManager.appPrefs.pdfOutputPreviewPrefs.showTransparency = dia->isTransparencyEnabled();
+	if (ScCore->haveTIFFSep())
+	{
+		prefsManager.appPrefs.pdfOutputPreviewPrefs.isCyanVisible = dia->isInkChannelVisible("Cyan");
+		prefsManager.appPrefs.pdfOutputPreviewPrefs.isMagentaVisible = dia->isInkChannelVisible("Magenta");
+		prefsManager.appPrefs.pdfOutputPreviewPrefs.isYellowVisible = dia->isInkChannelVisible("Yellow");
+		prefsManager.appPrefs.pdfOutputPreviewPrefs.isBlackVisible = dia->isInkChannelVisible("Black");
+		prefsManager.appPrefs.pdfOutputPreviewPrefs.displayInkCoverage = dia->isInkCoverageEnabled();
+		prefsManager.appPrefs.pdfOutputPreviewPrefs.inkCoverageThreshold = dia->inkCoverageThreshold();
+	}
+
+	delete dia;
 }
 
 bool ScribusMainWindow::DoSaveAsEps(const QString& fn, QString& error)
@@ -7625,6 +7707,8 @@
 
 	if ( ScCore->haveGS() || ScCore->isWinGUI() )
 		scrActions["PrintPreview"]->setEnabled(true);
+	if ( ScCore->haveGS() )
+		scrActions["OutputPrevewPDF"]->setEnabled(true);
 	pagePalette->enablePalette(true);
 	pagePalette->rebuildMasters();
 	view->setScale(m_storedViewScale);
@@ -8409,6 +8493,8 @@
 			disconnect(docCheckerPalette, SIGNAL(ignoreAllErrors()), this, SLOT(slotReallyPrint()));
 		if (docCheckerPalette->checkMode == CheckDocument::checkPrintPreview)
 			disconnect(docCheckerPalette, SIGNAL(ignoreAllErrors()), this, SLOT(doPrintPreview()));
+		if (docCheckerPalette->checkMode == CheckDocument::checkOutputPreviewPDF)
+			disconnect(docCheckerPalette, SIGNAL(ignoreAllErrors()), this, SLOT(doOutputPreviewPDF()));
 		docCheckerPalette->setIgnoreEnabled(false);
 		docCheckerPalette->checkMode = CheckDocument::checkNULL;
 	}

Modified: trunk/Scribus/scribus/scribus.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/scribus.h
==============================================================================
--- trunk/Scribus/scribus/scribus.h	(original)
+++ trunk/Scribus/scribus/scribus.h	Mon May 25 23:47:42 2020
@@ -496,6 +496,8 @@
 	void selectPagesFromOutlines(int ScPage);
 	void doPrintPreview();
 	void printPreview();
+	void doOutputPreviewPDF();
+	void outputPreviewPDF();
 	void SaveAsEps();
 	void reallySaveAsEps();
 	void SaveAsPDF();

Modified: trunk/Scribus/scribus/ui/checkDocument.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/ui/checkDocument.h
==============================================================================
--- trunk/Scribus/scribus/ui/checkDocument.h	(original)
+++ trunk/Scribus/scribus/ui/checkDocument.h	Mon May 25 23:47:42 2020
@@ -46,7 +46,7 @@
 	void setDoc(ScribusDoc *doc);
 
 	/*! \brief State of the P.V. */
-	enum CheckMode { checkNULL, checkPDF, checkEPS, checkPrint, checkPrintPreview };
+	enum CheckMode { checkNULL, checkPDF, checkEPS, checkPrint, checkPrintPreview, checkOutputPreviewPDF };
 
 	/*! \brief Clean the list view tree and reset the P.V. attributes. */
 	void clearErrorList();

Modified: trunk/Scribus/scribus/ui/scmwmenumanager.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/scribus/ui/scmwmenumanager.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/scmwmenumanager.cpp	(original)
+++ trunk/Scribus/scribus/ui/scmwmenumanager.cpp	Mon May 25 23:47:42 2020
@@ -42,6 +42,7 @@
 	setText("EditPasteRecent", tr("Paste Recent"));
 	setText("FileImport", tr("&Import"));
 	setText("FileExport", tr("&Export"));
+	setText("FileOutputPreview", tr("&Output Preview"));
 	setText("Edit", ActionManager::defaultMenuNameEntryTranslated("Edit"));
 	setText("EditContents", tr("Contents"));
 	setText("Item", ActionManager::defaultMenuNameEntryTranslated("Item"));

Modified: trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj
==============================================================================
--- trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj	(original)
+++ trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj	Mon May 25 23:47:42 2020
@@ -607,6 +607,8 @@
     <moc Include="..\..\..\scribus\ui\contentpalette.h" />
     <moc Include="..\..\..\scribus\ui\contentpalette_page.h" />
     <moc Include="..\..\..\scribus\ui\contentpalette_default.h" />
+    <moc Include="..\..\..\scribus\ui\outputpreviewbase.h" />
+    <moc Include="..\..\..\scribus\ui\outputpreview_pdf.h" />
     <ClInclude Include="..\..\..\scribus\ui\propertywidgetbase.h" />
     <moc Include="..\..\..\scribus\pslib.h" />
     <moc Include="..\..\..\scribus\ui\query.h" />
@@ -1195,6 +1197,8 @@
     <ClCompile Include="..\..\..\scribus\pageitem_symbol.cpp" />
     <ClCompile Include="..\..\..\scribus\pageitem_table.cpp" />
     <ClCompile Include="..\..\..\scribus\pageitem_textframe.cpp" />
+    <ClCompile Include="..\..\..\scribus\ui\outputpreviewbase.cpp" />
+    <ClCompile Include="..\..\..\scribus\ui\outputpreview_pdf.cpp" />
     <ClCompile Include="..\..\..\scribus\ui\pageitemattributes.cpp" />
     <ClCompile Include="..\..\..\scribus\pageitempointer.cpp" />
     <ClCompile Include="..\..\..\scribus\ui\pagelayout.cpp" />
@@ -1576,6 +1580,8 @@
     <uic Include="..\..\..\scribus\ui\nftwidget.ui" />
     <uic Include="..\..\..\scribus\ui\notesstyleseditor.ui" />
     <uic Include="..\..\..\scribus\ui\osgeditor.ui" />
+    <uic Include="..\..\..\scribus\ui\outputpreviewbase.ui" />
+    <uic Include="..\..\..\scribus\ui\outputpreview_pdf.ui" />
     <uic Include="..\..\..\scribus\ui\pageitemattributes.ui" />
     <uic Include="..\..\..\scribus\ui\pagepalette_masterpagesbase.ui" />
     <uic Include="..\..\..\scribus\ui\pagepalette_pagesbase.ui" />

Modified: trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj.filters
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj.filters
==============================================================================
--- trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj.filters	(original)
+++ trunk/Scribus/win32/msvc2015/scribus-main/Scribus.vcxproj.filters	Mon May 25 23:47:42 2020
@@ -806,6 +806,12 @@
     <ClInclude Include="..\..\..\scribus\pdfversion.h">
       <Filter>Header Files</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\..\scribus\ui\outputpreviewbase.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\..\scribus\ui\outputpreview_pdf.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\scribus\desaxe\digester.cpp">
@@ -2504,6 +2510,12 @@
       <Filter>Source Files</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\scribus\pdfversion.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\scribus\ui\outputpreviewbase.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\scribus\ui\outputpreview_pdf.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
@@ -2893,6 +2905,12 @@
     <uic Include="..\..\..\scribus\ui\contentpalette_defaultbase.ui">
       <Filter>Form Files</Filter>
     </uic>
+    <uic Include="..\..\..\scribus\ui\outputpreviewbase.ui">
+      <Filter>Form Files</Filter>
+    </uic>
+    <uic Include="..\..\..\scribus\ui\outputpreview_pdf.ui">
+      <Filter>Form Files</Filter>
+    </uic>
   </ItemGroup>
   <ItemGroup>
     <lrelease Include="..\..\..\resources\translations\scribus.af.ts">

Modified: trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj
==============================================================================
--- trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj	(original)
+++ trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj	Mon May 25 23:47:42 2020
@@ -607,6 +607,7 @@
     <moc Include="..\..\..\scribus\ui\contentpalette.h" />
     <moc Include="..\..\..\scribus\ui\contentpalette_page.h" />
     <moc Include="..\..\..\scribus\ui\contentpalette_default.h" />
+    <moc Include="..\..\..\scribus\ui\outputpreviewbase.h" />
     <ClInclude Include="..\..\..\scribus\ui\propertywidgetbase.h" />
     <moc Include="..\..\..\scribus\pslib.h" />
     <moc Include="..\..\..\scribus\ui\query.h" />
@@ -1195,6 +1196,7 @@
     <ClCompile Include="..\..\..\scribus\pageitem_symbol.cpp" />
     <ClCompile Include="..\..\..\scribus\pageitem_table.cpp" />
     <ClCompile Include="..\..\..\scribus\pageitem_textframe.cpp" />
+    <ClCompile Include="..\..\..\scribus\ui\outputpreviewbase.cpp" />
     <ClCompile Include="..\..\..\scribus\ui\pageitemattributes.cpp" />
     <ClCompile Include="..\..\..\scribus\pageitempointer.cpp" />
     <ClCompile Include="..\..\..\scribus\ui\pagelayout.cpp" />
@@ -1576,6 +1578,7 @@
     <uic Include="..\..\..\scribus\ui\nftwidget.ui" />
     <uic Include="..\..\..\scribus\ui\notesstyleseditor.ui" />
     <uic Include="..\..\..\scribus\ui\osgeditor.ui" />
+    <uic Include="..\..\..\scribus\ui\outputpreviewbase.ui" />
     <uic Include="..\..\..\scribus\ui\pageitemattributes.ui" />
     <uic Include="..\..\..\scribus\ui\pagepalette_masterpagesbase.ui" />
     <uic Include="..\..\..\scribus\ui\pagepalette_pagesbase.ui" />

Modified: trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj.filters
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=23829&path=/trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj.filters
==============================================================================
--- trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj.filters	(original)
+++ trunk/Scribus/win32/msvc2017/scribus-main/Scribus.vcxproj.filters	Mon May 25 23:47:42 2020
@@ -806,6 +806,9 @@
     <ClInclude Include="..\..\..\scribus\pdfversion.h">
       <Filter>Header Files</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\..\scribus\ui\outputpreviewbase.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..\..\..\scribus\desaxe\digester.cpp">
@@ -2504,6 +2507,9 @@
       <Filter>Source Files</Filter>
     </ClCompile>
     <ClCompile Include="..\..\..\scribus\pdfversion.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\..\scribus\ui\outputpreviewbase.cpp">
       <Filter>Source Files</Filter>
     </ClCompile>
   </ItemGroup>
@@ -2893,6 +2899,9 @@
     <uic Include="..\..\..\scribus\ui\contentpalette_defaultbase.ui">
       <Filter>Form Files</Filter>
     </uic>
+    <uic Include="..\..\..\scribus\ui\outputpreviewbase.ui">
+      <Filter>Form Files</Filter>
+    </uic>
   </ItemGroup>
   <ItemGroup>
     <lrelease Include="..\..\..\resources\translations\scribus.af.ts">




More information about the scribus-commit mailing list