#pragma once #include #include "jkqtplotter/jkqtplotter.h" #include "jkqtpappsettingcontroller.h" #include #include class JKQTPExampleApplication: public QApplication { Q_OBJECT public: JKQTPExampleApplication(int &argc, char **argv, bool waitForScreenshotReady=false); virtual ~JKQTPExampleApplication(); void addExportStepFunctor(const std::function& f); int exec(); public slots: void notifyReadyForScreenshot(); protected: bool waitForScreenshotReady; bool readyForScreenshot; QDir screenshotDir; bool saveScreenshot; bool saveSmallScreenshot; bool saveScreenshotPlot; bool saveSmallScreenshotPlot; bool scaleDownFromHighDPI; bool iterateFunctorSteps; bool iterateFunctorStepsSupressInitial; QStringList screenshotBasename; QVector> functors; void readCmdLine(); QRect getBoundsWithoutColor(QImage qImage, const QColor &exclusionColor = Qt::white); };