FLImaging 7.3.19.2
GUIWndCtrlBase.h
1#pragma once
2
3#include <functional>
4#include "DefinitionsGUI.h"
5
6// CGUIWndCtrlBase
7
8namespace FLImaging
9{
10 namespace GUI
11 {
12 typedef std::function<bool(CWnd*, Base::CFLString<wchar_t>&, CWnd*)> CWndCtrlProcedure;
13 #define MakeWndCtrlProcedure [&](CWnd* pItem, Base::CFLString<wchar_t>& strValue, CWnd* pParent) -> bool
14
15 class FL_EXPORT CGUIWndCtrlBase
16 {
17 public:
18 CGUIWndCtrlBase();
19 virtual ~CGUIWndCtrlBase();
20 virtual const CResult Assign(const CGUIWndCtrlBase& rhs);
21 virtual const CResult Assign(const CGUIWndCtrlBase* pRhs);
22 CGUIWndCtrlBase& operator=(const CGUIWndCtrlBase& rhs);
23
24 protected:
25 virtual const CResult InternalAssign(const CGUIWndCtrlBase& rhs);
26
27 public:
28 virtual void SetParentCWnd(CWnd* pParent);
29 virtual CWnd* GetParentCWnd();
30
31 virtual void SetParentCObject(CObject* pParent);
32 virtual CObject* GetParentCObject();
33
34 public:
35 virtual void SetText(const Base::CFLString<wchar_t>& str);
36 virtual const Base::CFLString<wchar_t>& GetText()const;
37
38 virtual bool SetWndCtrlProcedure(CWndCtrlProcedure* pFunc, bool bAutoDestroy = true);
39 virtual CWndCtrlProcedure* GetWndCtrlProcedure() const;
40
41 virtual void ActivateWndCtrlProcedure(bool bActivate);
42 virtual bool IsWndCtrlProcedureActivated() const;
43
44 virtual bool IsEnabled() const;
45
46 protected:
47 CWnd* m_pParent;
48 CObject* m_pParentCObject;
49
50 bool m_bWndCtrlProcedureActive;
51
52 Base::CFLString<wchar_t> m_strText;
53 bool m_bTextDirty;
54
55 CWndCtrlProcedure* m_pProcedure;
56 bool m_bProcedureAutoDestroy;
57
58 bool m_bEnable;
59 BOOL m_bCursorOnWnd;
60 BOOL m_bLButtonDown;
61 CPoint m_ptPrev;
62 };
63}
64}
65
Definition D2DObject.h:12
@ Assign
CGUIPropertyItemView3DFigure 의 값을 해당 도형으로 설정하는 함수
Definition DefinitionsGUIView3D.h:2930