Issue #183: Option to ignore PDF security settings

This commit is contained in:
Jakub Melka
2024-06-27 16:00:11 +02:00
parent 3a57bc6de5
commit 8166d9f8f4
7 changed files with 78 additions and 15 deletions

View File

@ -17,6 +17,7 @@
#include "pdfviewermainwindow.h"
#include "pdfconstants.h"
#include "pdfsecurityhandler.h"
#include <QApplication>
#include <QCommandLineParser>
@ -30,23 +31,32 @@ int main(int argc, char *argv[])
QCoreApplication::setApplicationName("PDF4QT Viewer");
QCoreApplication::setApplicationVersion(pdf::PDF_LIBRARY_VERSION);
QApplication::setApplicationDisplayName(QApplication::translate("Application", "PDF4QT Viewer"));
QCommandLineOption noDrm("no-drm", "Disable DRM settings of documents.");
QCommandLineParser parser;
parser.setApplicationDescription(QCoreApplication::applicationName());
parser.addOption(noDrm);
parser.addHelpOption();
parser.addVersionOption();
parser.addPositionalArgument("file", "The PDF file to open.");
parser.process(application);
if (parser.isSet(noDrm))
{
pdf::PDFSecurityHandler::setNoDRMMode();
}
QIcon appIcon(":/app-icon.svg");
QApplication::setWindowIcon(appIcon);
pdfviewer::PDFViewerMainWindow mainWindow;
mainWindow.show();
QStringList arguments = application.arguments();
if (arguments.size() > 1)
QStringList arguments = parser.positionalArguments();
if (arguments.size() > 0)
{
mainWindow.getProgramController()->openDocument(arguments[1]);
mainWindow.getProgramController()->openDocument(arguments.front());
}
return application.exec();