FLImaging 6.5.8.1
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_i32MinWStaticClassNo;
64 int32_t m_i32MinWEditClassNo;
65 int32_t m_i32MinWColorPreview;
66 int32_t m_i32MinWStaticAlpha;
67 int32_t m_i32MinWSliderAlpha;
68 int32_t m_i32MinWEditAlpha;
69
70 float m_f32MinWStaticClassNoRatio;
71 float m_f32MinWEditClassNoRatio;
72 float m_f32MinWColorPreviewRatio;
73 float m_f32MinWStaticAlphaRatio;
74 float m_f32MinWSliderAlphaRatio;
75 float m_f32MinWEditAlphaRatio;
76
77 int32_t m_i32MinWRadioPenWidth3;
78 int32_t m_i32MinWRadioPenWidth5;
79 int32_t m_i32MinWRadioPenWidth10;
80 int32_t m_i32MinWRadioPenWidth50;
81 int32_t m_i32MinWRadioPenWidth100;
82 int32_t m_i32MinWSliderPenWidth;
83 int32_t m_i32MinWEditPenWidth;
84
85 float m_f32MinWRadioPenWidth3;
86 float m_f32MinWRadioPenWidth5;
87 float m_f32MinWRadioPenWidth10;
88 float m_f32MinWRadioPenWidth50;
89 float m_f32MinWRadioPenWidth100;
90 float m_f32MinWSliderPenWidth;
91 float m_f32MinWEditPenWidth;
92
93 int32_t m_i32MinWGroupBoxCurrClr;
94 int32_t m_i32MinWGroupBoxPenWidth;
95
96 CWndCtrlProcedure* m_pRadioBtnLineWidthProc;
97
98 public:
99 virtual BOOL OnInitDialog() override;
100 virtual void OnCancel() override;
101 DECLARE_MESSAGE_MAP()
102 afx_msg void OnSize(UINT nType, int cx, int cy);
103 afx_msg void OnNMSheetSelChanged(NMHDR* pNMHDR, LRESULT* pResult);
104 afx_msg void OnNMClick(NMHDR* pNMHDR, LRESULT* pResult);
105 afx_msg void OnEndSheetInPlaceEdit(NMHDR* pNMHDR, LRESULT* pResult);
106 virtual BOOL PreTranslateMessage(MSG* pMsg);
107 };
108 }
109}
ETeachingMode
뷰의 티칭 모드
Definition GUIDefinitions.h:4746