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