17 #ifndef KDREPORTSREPORT_H
18 #define KDREPORTSREPORT_H
24 #include <QTextOption>
25 #include <QtCore/QSizeF>
27 #include <QtPrintSupport/QPrinter>
48 class HeaderReportBuilder;
83 Q_PROPERTY(
QString documentName READ documentName WRITE setDocumentName)
118 void setReportMode(ReportMode reportMode);
124 ReportMode reportMode()
const;
130 void setDefaultFont(
const QFont &font);
136 QFont defaultFont()
const;
150 void addInlineElement(
const Element &element);
173 void addVerticalSpacing(qreal space);
239 void setParagraphMargins(qreal left, qreal top, qreal right, qreal bottom);
241 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
265 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
283 #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
318 void setWidthForEndlessPrinter(qreal widthMM);
323 void setMargins(qreal top, qreal left, qreal bottom, qreal right);
328 void getMargins(qreal *top, qreal *left, qreal *bottom, qreal *right)
const;
334 void setTopPageMargin(qreal top);
340 qreal topPageMargins()
const;
346 void setLeftPageMargin(qreal left);
352 qreal leftPageMargins()
const;
358 void setRightPageMargin(qreal right);
364 qreal rightPageMargins()
const;
370 void setBottomPageMargin(qreal bottom);
376 qreal bottomPageMargins()
const;
383 void setHeaderBodySpacing(qreal spacing);
389 qreal headerBodySpacing()
const;
396 void setFooterBodySpacing(qreal spacing);
402 qreal footerBodySpacing()
const;
460 void associateImageValue(
const QString &
id,
const QPixmap &value);
475 void associateImageValue(
const QString &
id,
const QImage &value);
526 void setDocumentName(
const QString &name);
539 bool printWithDialog(
QWidget *parent);
561 bool exportToFile(
const QString &fileName,
QWidget *parent =
nullptr);
569 bool exportToImage(
QSize size,
const QString &fileName,
const char *format);
578 bool exportToHtml(
const QString &fileName);
587 void paintPage(
int pageNumber,
QPainter &painter);
594 void setFirstPageNumber(
int num);
599 int firstPageNumber()
const;
604 int numberOfPages()
const;
609 bool isTableBreakingEnabled()
const;
621 void setTableBreakingPageOrder(TableBreakingPageOrder pageOrder);
627 TableBreakingPageOrder tableBreakingPageOrder()
const;
638 void setFontScalingFactor(qreal factor);
644 qreal fontScalingFactor()
const;
666 void scaleTo(
int numPagesHorizontally,
int numPagesVertically);
672 int maximumNumberOfPagesForHorizontalScaling()
const;
677 int maximumNumberOfPagesForVerticalScaling()
const;
684 void setFixedRowHeight(qreal mm);
701 void regenerateAutoTables();
719 void setWatermarkText(
const QString &text,
int rotation = 0,
const QColor &color =
QColor(204, 204, 204),
const QFont &font =
QFont(QStringLiteral(
"Helvetica"), 48));
729 int watermarkRotation()
const;
734 QColor watermarkColor()
const;
739 QFont watermarkFont()
const;
751 void setWatermarkPixmap(
const QPixmap &pixmap,
bool autoGrayOut =
true);
758 QPixmap watermarkPixmap()
const;
764 void setWatermarkImage(
const QImage &image);
770 QImage watermarkImage()
const;
776 KDReports::HeaderLocations headerLocation(
Header *header)
const;
788 void setHeaderLocation(HeaderLocations hl,
Header *header);
794 void setFooterLocation(HeaderLocations hl,
Footer *footer);
809 int currentPosition()
const;
857 friend class ::ReportData;
858 friend class ::EditorData;
863 void setupPrinter(
QPrinter *printer);
872 friend class PreviewDialogPrivate;
873 friend class PreviewWidgetPrivate;