Prepared pages processing has been refactored

This commit is contained in:
Arin Alexander
2019-05-29 16:32:58 +03:00
parent fc04af2c89
commit 536a409393
15 changed files with 186 additions and 128 deletions

View File

@@ -4,6 +4,7 @@
#include <QWidget>
#include <QTimer>
#include "lrglobal.h"
#include "lrpreparedpagesintf.h"
namespace LimeReport {
@@ -49,6 +50,7 @@ signals:
void pageChanged(int page);
void scalePercentChanged(int percent);
void pagesSet(int pageCount);
void onSave(bool& saved, LimeReport::IPreparedPages* pages);
private slots:
void slotSliderMoved(int value);
void reportEngineDestroyed(QObject* object);

View File

@@ -38,6 +38,7 @@
#include "lrdatasourcemanagerintf.h"
#include "lrscriptenginemanagerintf.h"
#include "lrpreviewreportwidget.h"
#include "lrpreparedpagesintf.h"
class QPrinter;
@@ -62,20 +63,10 @@ class DataSourceManager;
class ReportEnginePrivate;
class PageDesignIntf;
class PageItemDesignIntf;
class PreparedPages;
typedef QList< QSharedPointer<PageItemDesignIntf> > ReportPages;
class LIMEREPORT_EXPORT IPreparedPages{
public:
virtual ~IPreparedPages();
virtual bool loadFromFile(const QString& fileName) = 0;
virtual bool loadFromString(const QString data) = 0;
virtual bool loadFromByteArray(QByteArray* data) = 0;
virtual bool saveToFile(const QString& fileName) = 0;
virtual QString saveToString() = 0;
virtual QByteArray saveToByteArray() = 0;
};
class LIMEREPORT_EXPORT ReportEngine : public QObject{
Q_OBJECT
public:
@@ -133,6 +124,7 @@ signals:
void renderPageFinished(int renderedPageCount);
void onLoad(bool& loaded);
void onSave();
void onSavePreview(bool& saved, LimeReport::IPreparedPages* pages);
void saveFinished();
public slots:
void cancelRender();