30 #ifndef REPORTINTERFACE_H 31 #define REPORTINTERFACE_H 46 class BaseItemInterface;
47 class DatasetInterface;
49 class RendererInterface;
50 class PrinterInterface;
52 class StorageInterface;
53 class RenderedReportInterface;
54 class RendererPublicInterface;
55 class ScriptEngineInterface;
56 class InheritanceDataContainer;
65 QHash<QString, QHash<QString, QVariant> >
itemData;
76 Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
77 Q_PROPERTY(QString author READ author WRITE setAuthor NOTIFY authorChanged)
78 Q_PROPERTY(QString description READ description WRITE setDescription NOTIFY descriptionChanged)
79 Q_PROPERTY(QString script READ script WRITE setScript DESIGNABLE false NOTIFY scriptChanged)
80 Q_PROPERTY(
int version READ version WRITE setVersion DESIGNABLE false)
81 Q_PROPERTY(QString fileUrl READ fileUrl WRITE setFileUrl NOTIFY fileUrlChanged STORED false)
82 Q_PROPERTY(QString defaultStorage READ defaultStorageName WRITE setDefaultStorageName NOTIFY defaultStorageChanged)
83 Q_PROPERTY(QString defaultRenderer READ defaultRendererName WRITE setDefaultRendererName NOTIFY defaultRendererChanged)
84 Q_PROPERTY(QString defaultPrinter READ defaultPrinterName WRITE setDefaultPrinterName NOTIFY defaultPrinterChanged)
85 Q_PROPERTY(QVariantHash variables READ variables WRITE setVariables NOTIFY variablesChanged DESIGNABLE false)
86 Q_PROPERTY(QVariantHash customData READ customDataAll WRITE setCustomDataAll NOTIFY customDataChanged DESIGNABLE false)
87 Q_PROPERTY(QVariantHash inheritanceData READ inheritanceDataHash WRITE setInheritanceDataHash NOTIFY inheritanceDataChanged DESIGNABLE false)
92 VariablesAutoUpdate = 0x01,
93 DirtynessAutoUpdate = 0x02
121 void setName(
const QString & name);
124 void setAuthor(
const QString & author);
126 virtual QString script();
127 virtual void setScript(
const QString & script);
130 void setVersion(
double tVersion);
132 QString description();
133 void setDescription(
const QString & description);
136 void setFileUrl(
const QString & fileUrl);
138 QList<CuteReport::BaseItemInterface *> items(
const QString & pageObjectName = QString());
140 QStringList itemNames(
const QString &pageObjectName = QString());
142 QList<CuteReport::PageInterface *> pages();
143 QStringList pageNames();
147 void deletePage(
const QString & pageName);
149 QList<CuteReport::DatasetInterface *> datasets();
150 QStringList datasetNames();
152 void addDatasets(QList<CuteReport::DatasetInterface *> datasets);
155 void deleteDataset(
const QString & datasetName);
157 QList<CuteReport::RendererInterface *> renderers();
158 QStringList rendererNames();
162 void deleteRenderer(
const QString & rendererName);
163 QString defaultRendererName()
const;
164 void setDefaultRendererName(
const QString &name);
166 QList<CuteReport::PrinterInterface *> printers();
167 QStringList printerNames();
171 void deletePrinter(
const QString & printerName);
172 QString defaultPrinterName()
const;
173 void setDefaultPrinterName(
const QString &name);
176 QStringList storageNames()
const;
178 QList<CuteReport::StorageInterface*> storageListByScheme(
const QString & scheme)
const;
179 QList<CuteReport::StorageInterface*> storageListByModuleName(
const QString & moduleName)
const;
180 QList<StorageInterface *> storages()
const;
182 void deleteStorage(
const QString & storageName);
184 bool hasStorageModule(
const QString & moduleName);
185 QString defaultStorageName()
const;
186 void setDefaultStorageName(
const QString &name);
188 QList<CuteReport::FormInterface*> forms();
193 virtual int suitId();
195 const QVariantHash & variables();
196 void setVariables(
const QVariantHash &vars);
197 void setVariableValue(
const QString & name,
const QVariant & value);
198 QVariant variableValue(
const QString & name);
199 bool variableExists(
const QString & name);
200 void renameVariable(
const QString & oldName,
const QString & newName);
201 void removeVariable(
const QString & name);
204 QStringList variableObjectsNames();
205 void setVariableObject(
const QString & name, QObject *
object);
206 QObject *variableObject(
const QString & name);
208 QVariant customData(
const QString & dataName)
const;
209 void setCustomData(
const QString & dataName,
const QVariant &customData);
210 void setCustomData(
const QVariantHash &customData);
211 void clearCustomData(
const QString & dataName);
212 QVariantHash customDataAll()
const;
213 void setCustomDataAll(
const QVariantHash &customData);
215 void setFlags(ReportFlags flags);
220 bool isDirty()
const;
221 bool isValid()
const;
223 void rendererInit(CuteReport::ScriptEngineInterface *scriptEngine);
224 void rendererReset();
225 bool isBeingRendered();
226 RenderedReportInterface *renderedReport()
const;
227 void setRenderedReport(RenderedReportInterface *renderedReport);
228 void clearRenderedReport();
231 void setModuleVariable(
const QString & var,
const QString & fullModuleName);
232 void removeModuleVariable(
const QString & var,
const QString & fullModuleName);
233 void setModuleVariables(
const QSet<QString> & vars);
234 void removeModuleVariables(
const QSet<QString> & vars);
236 void setLocaleName(
const QString & localeName);
237 QString localeName()
const;
239 QVariantHash inheritanceDataHash()
const;
240 void setInheritanceDataHash(
const QVariantHash & data);
242 const InheritanceDataContainer & inheritanceData()
const;
243 void setInheritanceData(
const InheritanceDataContainer &data);
246 void updateVariables();
247 void setDirty(
bool b =
true);
248 void setValid(
bool b =
true);
252 void nameChanged(QString);
253 void authorChanged(QString);
254 void descriptionChanged(QString);
255 void scriptChanged(QString);
256 void fileUrlChanged(QString);
259 void rendererDeleted(QString rendererName);
262 void printerDeleted(QString printerName);
265 void storageDeleted(QString storageName);
268 void datasetDeleted(QString datasetName);
275 void defaultStorageChanged(QString);
276 void defaultRendererChanged(QString);
277 void defaultPrinterChanged(QString);
278 void variablesChanged();
279 void dirtynessChanged(
bool);
280 void validityChanged(
bool);
282 void propertyChanged();
283 void customDataChanged();
284 void customDataByNameChanged(QString dataName);
285 void baseReportPathChanged(QString path);
286 void baseReportNameChanged(QString path);
287 void inheritanceDataChanged();
290 void childDestroyed(QObject *
object);
293 void slotScriptStringsChanged();
300 void precessFlags(ReportInterface::ReportFlags previousFlags);
301 void setUniqueName(QObject *
object,
const QString &proposedName = QString());
336 Q_DECLARE_OPERATORS_FOR_FLAGS(CuteReport::ReportInterface::ReportFlags)
QString m_defaultRendererName
Definition: reportinterface.h:310
QString m_name
Definition: reportinterface.h:303
Definition: abstractpainterdelegate.h:42
InheritanceData()
Definition: reportinterface.h:62
QString m_author
Definition: reportinterface.h:304
QVariantHash m_customData
Definition: reportinterface.h:317
Definition: reportinterface.h:60
Definition: datasetinterface.h:56
double m_version
Definition: reportinterface.h:306
bool m_isDirty
Definition: reportinterface.h:315
QVariantHash _m_variables
Definition: reportinterface.h:325
Definition: pageinterface.h:74
bool m_isValid
Definition: reportinterface.h:316
Definition: printerinterface.h:44
TODO v2: rename to ReportObject.
Definition: reportinterface.h:71
ReportFlag
Definition: reportinterface.h:91
QString m_fileUrl
Definition: reportinterface.h:308
ReportFlags m_flags
Definition: reportinterface.h:314
QString baseReportPath
Definition: reportinterface.h:63
QSet< QString > m_moduleVariables
Definition: reportinterface.h:318
QString baseReportName
Definition: reportinterface.h:64
InheritanceDataContainer * m_inheritanceData
Definition: reportinterface.h:320
QString m_description
Definition: reportinterface.h:307
QString m_localeName
Definition: reportinterface.h:319
QVariantHash m_variables
Definition: reportinterface.h:312
RenderedReportInterface * m_renderedReport
Definition: reportinterface.h:322
QString m_defaultPrinterName
Definition: reportinterface.h:311
QHash< QString, ObjectPointer > m_variableObjects
Definition: reportinterface.h:313
ReportFlags _m_flags
Definition: reportinterface.h:327
#define CUTEREPORT_EXPORTS
Definition: cutereport_globals.h:47
QHash< QString, ObjectPointer > _m_variableObjects
Definition: reportinterface.h:326
Definition: rendererinterface.h:49
QPointer< QObject > ObjectPointer
Definition: reportinterface.h:56
bool m_isBeingRendered
Definition: reportinterface.h:328
QString m_defaultStorageName
Definition: reportinterface.h:309
Definition: baseiteminterface.h:107
QString m_script
Definition: reportinterface.h:305
Definition: reportcore.h:83
QHash< QString, QHash< QString, QVariant > > itemData
Definition: reportinterface.h:65
Definition: storageinterface.h:56