FLImaging 6.5.8.1
GUIPropertyMenuNodeViewImage.h
1#pragma once
2
3#include "GUIPropertyMenuNodeBase.h"
4#include "DefinitionGUISNAP.h"
5#include "SNAPFigureOutputInfo.h"
6
7namespace FLImaging
8{
9 namespace GUI
10 {
11 class CGUIViewImage;
12 class CSNAPFeatureViewImage;
13
14 class FL_EXPORT CGUIPropertyMenuNodeViewImage : public CGUIPropertyMenuNodeBase
15 {
16 SupportToDuplicateObject(CGUIPropertyMenuNodeViewImage);
17
18 enum EMode
19 {
20 EMode_Creation = 0,
21 EMode_Selection,
22 };
23
24 public:
25 CGUIPropertyMenuNodeViewImage();
26 virtual ~CGUIPropertyMenuNodeViewImage();
27
28 virtual void OnReceiveBroadcast(const Base::CBroadcastMessage* pMessage) override;
29
30 virtual const CResult ConfigureMenu() override;
31
32 virtual const CResult OnInputParameter(CSNAPParameter* pParameter) override;
33 virtual const CResult OnOutputParameter(CSNAPParameter* pParameter) override;
34
35 virtual Base::EPixelFormat OnResponseImagePixelFormat(Base::EPixelFormat eInputPixelFormat, Base::CFLString<wchar_t> flsOutputProcedureName) override;
36
37 CGUIViewImage* GetSelectedImageView(bool bCreateImageView);
38
39 DeclareGetClassType();
40
41 protected:
42 virtual const CResult InitializationProcedure() override;
43 virtual const CResult ProcessProcedure() override;
44 virtual const CResult ClearProcedure();
45 virtual const CResult ClearImageProcedure();
46 virtual const CResult ClearLayersProcedure();
47 virtual const CResult ClearFigureObjectsProcedure();
48 virtual const CResult ZoomFitProcedure();
49
50 virtual const CResult ChangedViewMode();
51
52 virtual const CResult UpdatePerspectivePropertyItem();
53 virtual const CResult UpdatePerspectivePropertyItem(bool bUpdateX, bool bUpdateY, bool bUpdateScale);
54
55 EMode GetSelectedMode();
56 const CResult SetMode(EMode eMode);
57
58 CGUIViewImage* CreateImageView();
59 virtual const CResult SelectImageView(CGUIViewImage* pImageView);
60
61 virtual CSNAPFeatureViewImage* GetFeatureViewImage() const;
62 };
63 }
64}