2#include <NDEVR/ReportIterator.h>
3#include <NDEVR/QTDesignObject.h>
4#include <NDEVR/ApplicationOptions.h>
15 class QCustomComboBox;
16 enum class ImageReportType
22 class ImageReportOptions :
public QMenu
25 ImageReportOptions(ImageReportType type, QWidget* parent =
nullptr);
26 ImageReportType reportType()
const;
28 QCustomComboBox* m_type_combo;
31 class NDEVR_API ImageReportHandler :
public ReportHandler
37 virtual Buffer<UUID> defaultReportIDs(
const Buffer<UUID>& objects_to_report, QTModelManager* manager)
const override;
40 virtual bool canHandle(UUID
id, QTModelManager* manager)
const override;
43 virtual QWidget* getReport(
const UUID&
id, QTModelManager* manager,
const QRect& requested_geometry)
const override;
45 ImageReportType reportType()
const;
47 virtual void createReportJSON(
const UUID&
id, JSONNode& parent, ReportJSONMaker& maker)
const override;
48 virtual QMenu* popupOptions()
const override;
50 mutable ImageReportOptions* m_report_options;
51 mutable ImageReport* m_report =
nullptr;
52 static ApplicationOption<ImageReportType> s_report_type;
55 class ImageReport :
public QWidget
58 ImageReport(QWidget* parent =
nullptr);
60 void setReportType(ImageReportType report_type);
61 void setImage(
const DynamicPointer<QTDesignObject>& deployment);
62 void setProject(
const Project& project);
63 void resizeEvent(QResizeEvent* event);
68 Ui::ImageReportUI* ui;
70 ImageReportType m_report_type = ImageReportType::e_best_fit;
@ e_horizontal
Definition RibbonLayoutMode.hpp:39
@ e_vertical
Definition RibbonLayoutMode.hpp:38
Definition FontEditor.h:6