0
0
mirror of https://github.com/fralx/LimeReport.git synced 2025-10-01 11:31:10 +03:00

External drawing feature added to ImageItem

This commit is contained in:
Arin Alexander
2018-12-12 22:55:03 +03:00
parent c00b8aa50c
commit ce1656d2ef
13 changed files with 113 additions and 16 deletions

View File

@@ -33,7 +33,7 @@
namespace LimeReport{
class ImageItem : public LimeReport::ItemDesignIntf
class ImageItem : public LimeReport::ItemDesignIntf, public IPainterProxy
{
Q_OBJECT
Q_ENUMS(Format)
@@ -49,6 +49,8 @@ class ImageItem : public LimeReport::ItemDesignIntf
Q_PROPERTY(QString resourcePath READ resourcePath WRITE setResourcePath)
Q_PROPERTY(QString variable READ variable WRITE setVariable)
Q_PROPERTY(bool watermark READ isWatermark WRITE setWatermark)
Q_PROPERTY(bool useExternalPainter READ useExternalPainter WRITE setUseExternalPainter)
public:
enum Format {
Binary = 0,
@@ -81,6 +83,12 @@ public:
QString variable(){ return m_variable;}
void setVariable(const QString& variable);
void setExternalPainter(IExternalPainter* externalPainter){ m_externalPainter = externalPainter;}
bool useExternalPainter() const;
void setUseExternalPainter(bool value);
protected:
BaseDesignIntf* createSameTypeItem(QObject *owner, QGraphicsItem *parent);
void updateItemSize(DataSourceManager *dataManager, RenderPass pass, int maxHeight);
@@ -91,6 +99,8 @@ protected:
void processPopUpAction(QAction *action);
private:
QImage m_picture;
bool m_useExternalPainter;
IExternalPainter* m_externalPainter;
QString m_resourcePath;
QString m_datasource;
QString m_field;