6#include <ibase/ICommandsProvider.h>
7#include <imtreportgui/CReportDocumentPdfPersistenceComp.h>
8#include <imtreportgui/CReportDocumentTiffPersistenceComp.h>
9#include <iqtgui/TDesignerGuiObserverCompBase.h>
10#include <iqtgui/CHierarchicalCommand.h>
13#include <imtreport/IReportDocument.h>
14#include <GeneratedFiles/imtreportgui/ui_CReportDocumentViewComp.h>
17class QGraphicsRectItem;
18class QGraphicsItemGroup;
25class CReportDocumentViewComp:
26 public iqtgui::TDesignerGuiObserverCompBase<Ui::CReportDocumentViewComp, imtreport::IReportDocument>,
27 virtual public ibase::ICommandsProvider,
28 virtual public ilog::IMessageConsumer
33 typedef iqtgui::TDesignerGuiObserverCompBase<Ui::CReportDocumentViewComp, imtreport::IReportDocument> BaseClass;
35 I_BEGIN_COMPONENT(CReportDocumentViewComp);
36 I_REGISTER_INTERFACE(ibase::ICommandsProvider);
37 I_REGISTER_INTERFACE(ilog::IMessageConsumer);
38 I_ASSIGN(m_pdfExportCompPtr,
"ReportDocumentPdfPersistence",
"Export report document to PDF",
false,
"ReportDocumentPdfPersistence");
39 I_ASSIGN(m_tiffExportCompPtr,
"ReportDocumentTiffPersistence",
"Export report document to TIFF",
false,
"ReportDocumentTiffPersistence");
42 CReportDocumentViewComp();
45 virtual const ibase::IHierarchicalCommand* GetCommands()
const override;
48 virtual bool IsMessageSupported(
49 int messageCategory = -1,
51 const istd::IInformationProvider* messagePtr = NULL)
const override;
52 virtual void AddMessage(
const MessagePtr& messagePtr)
override;
56 virtual void UpdateGui(
const istd::IChangeable::ChangeSet& changeSet)
override;
59 virtual void OnGuiCreated()
override;
60 virtual void OnGuiDestroyed()
override;
61 virtual void OnGuiRetranslate()
override;
66 void OnExportToTiff();
69 void CreateSceneDecoration(QGraphicsScene& scene);
70 void ShowSceneDecoration(
const bool showBorder,
const bool showGrid);
74 iqtgui::CHierarchicalCommand m_rootCommands;
75 iqtgui::CHierarchicalCommand m_fileCommands;
76 iqtgui::CHierarchicalCommand m_viewCommands;
77 iqtgui::CHierarchicalCommand m_exportToPdfCommand;
78 iqtgui::CHierarchicalCommand m_exportToTiffCommand;
79 iqtgui::CHierarchicalCommand m_showGridCommand;
81 typedef QPair<QGraphicsRectItem*, QGraphicsItemGroup*> SceneDecoration;
82 typedef QVector<SceneDecoration> SceneDecorations;
83 SceneDecorations m_sceneDecorations;
87 I_REF(ifile::IFilePersistence, m_pdfExportCompPtr);
88 I_REF(ifile::IFilePersistence, m_tiffExportCompPtr);