FLImaging 6.11.25.2
GUIDialogFreeDrawPenAttribute.h
1#pragma once
2#include "GUIDialog.h"
3
4namespace FLImaging
5{
6 namespace GUI
7 {
8 class CGUIManagerViewImageObject;
9 class CGUIManagerViewImageObjectImageFigure;
10 class CGUISheetInterface;
11 class CGUIColorPickerCtrl;
12 class CGUIViewImage;
13
14 class CGUIDialogFreeDrawPenAttribute : public CGUIDialog
15 {
16 DECLARE_DYNAMIC(CGUIDialogFreeDrawPenAttribute)
17 public:
18 CGUIDialogFreeDrawPenAttribute(CWnd* pParent = nullptr); // 표준 생성자입니다.
19 virtual ~CGUIDialogFreeDrawPenAttribute();
20
21 void SetParentView(CGUIViewImage* pView);
22 CGUIViewImage* GetParentView() const;
23
24 void SetManagerObjectFigure(CGUIManagerViewImageObject* pMgr);
25 CGUIManagerViewImageObject* GetManagerObjectFigure() const;
26
27 const CResult FillData();
28 const CResult AdjustLayoutSheet();
29 const CResult UpdateContents(ETeachingMode eTM);
30 const CResult UpdateRadioButtonByLineThickness(int32_t i32LineThickness);
31
32 virtual void OnReceiveBroadcast(const Base::CBroadcastMessage* pMessage) override;
33 static CGUIDialogFreeDrawPenAttribute* CreateModelessDialog(CWnd* pParent = nullptr);
34
35 void SetFreeDrawSelectedClassNum(int32_t i32ClassNumber);
36 void SetFreeDrawLineThickness(int32_t i32LineThickness);
37 void SetFreeDrawEraserLineThickness(int32_t i32LineThickness);
38
39 protected:
40 // 대화 상자 데이터입니다.
41 #ifdef AFX_DESIGN_TIME
42 enum {
43 IDD = IDD_DIALOG_FREEDRAW_ATTR
44 };
45 #endif
46
47 enum ECol
48 {
49 ECol_No = 0,
50 ECol_Color,
51 ECol_ClassName,
52
53 ECol_Count,
54 };
55
56 protected:
57 CGUIViewImage* m_pParentView;
58 CGUIManagerViewImageObject* m_pMgrObjFigure;
59 CGUISheetInterface* m_pSheetInterface;
60 CGUIColorPickerCtrl* m_pColorPreview;
61 std::vector<CWnd*>& m_vctChildWnd;
62
63 int32_t m_i32MinWRadioAutoMerge;
64 int32_t m_i32MinWRadioIndependent;
65
66 float m_f32MinWRadioAutoMergeRatio;
67 float m_f32MinWRadioIndependentRatio;
68
69 int32_t m_i32MinWStaticClassNo;
70 int32_t m_i32MinWEditClassNo;
71 int32_t m_i32MinWColorPreview;
72 int32_t m_i32MinWStaticAlpha;
73 int32_t m_i32MinWSliderAlpha;
74 int32_t m_i32MinWEditAlpha;
75
76 float m_f32MinWStaticClassNoRatio;
77 float m_f32MinWEditClassNoRatio;
78 float m_f32MinWColorPreviewRatio;
79 float m_f32MinWStaticAlphaRatio;
80 float m_f32MinWSliderAlphaRatio;
81 float m_f32MinWEditAlphaRatio;
82
83 int32_t m_i32MinWRadioPenWidth3;
84 int32_t m_i32MinWRadioPenWidth5;
85 int32_t m_i32MinWRadioPenWidth10;
86 int32_t m_i32MinWRadioPenWidth50;
87 int32_t m_i32MinWRadioPenWidth100;
88 int32_t m_i32MinWSliderPenWidth;
89 int32_t m_i32MinWEditPenWidth;
90
91 float m_f32MinWRadioPenWidth3;
92 float m_f32MinWRadioPenWidth5;
93 float m_f32MinWRadioPenWidth10;
94 float m_f32MinWRadioPenWidth50;
95 float m_f32MinWRadioPenWidth100;
96 float m_f32MinWSliderPenWidth;
97 float m_f32MinWEditPenWidth;
98
99 int32_t m_i32MinWGroupBoxDrawMode;
100 int32_t m_i32MinWGroupBoxCurrClr;
101 int32_t m_i32MinWGroupBoxPenWidth;
102
103 CWndCtrlProcedure* m_pRadioBtnLineWidthProc;
104
105 public:
106 virtual BOOL OnInitDialog() override;
107 virtual void OnCancel() override;
108 DECLARE_MESSAGE_MAP()
109 afx_msg void OnSize(UINT nType, int cx, int cy);
110 afx_msg void OnNMSheetSelChanged(NMHDR* pNMHDR, LRESULT* pResult);
111 afx_msg void OnNMClick(NMHDR* pNMHDR, LRESULT* pResult);
112 afx_msg void OnEndSheetInPlaceEdit(NMHDR* pNMHDR, LRESULT* pResult);
113 virtual BOOL PreTranslateMessage(MSG* pMsg);
114 afx_msg void OnSetFocus(CWnd* pOldWnd);
115 };
116 }
117}
A file of dialog class.
Definition GUIDialog.h:72
A class of image view.
Definition GUIViewImage.h:319
Definition D2DObject.h:12
ETeachingMode
Teaching mode.
Definition DefinitionsGUI.h:5118