4#include "DefinitionsGUIStyle.h"
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
15 class FL_EXPORT CGUIWndCtrlBase :
public Base::CFLBase
17 SupportToDuplicateObject(CGUIWndCtrlBase, *
this);
20 virtual ~CGUIWndCtrlBase();
23 virtual void SetText(
const Base::CFLString<wchar_t>& str);
24 virtual const Base::CFLString<wchar_t>& GetText()
const;
26 virtual const CResult ResolveBasicColor(EStyleControlStyleGroupBasicElem e, EGUIControlState state, COLORREF& outClr)
const;
27 virtual const CResult ResolveSubButtonColor(EStyleControlStyleGroupSubButtonElem e, EGUIControlState state, COLORREF& outClr)
const;
30 virtual SControlStyleColorGroup* EnsureBasicColorGroup(EStyleControlStyleGroupBasicElem e);
31 virtual void SetBasicColorState(EStyleControlStyleGroupBasicElem e, EGUIControlState st, COLORREF clr);
32 virtual SControlStyleColorGroup* EnsureSubButtonColorGroup(EStyleControlStyleGroupSubButtonElem e);
33 virtual void SetSubButtonColorState(EStyleControlStyleGroupSubButtonElem e, EGUIControlState st, COLORREF clr);
36 virtual void SetFillColors(COLORREF clrFillColorDefault, COLORREF clrFillColorDisabled, COLORREF clrFillColorHover, COLORREF clrFillColorOnLButtonDown);
37 virtual void GetFillColors(COLORREF& clrFillColorDefault, COLORREF& clrFillColorDisabled, COLORREF& clrFillColorHover, COLORREF& clrFillColorOnLButtonDown);
39 virtual void SetFillColor(COLORREF clrFillColor);
40 virtual COLORREF GetFillColor();
42 virtual void SetFillColorDefault(COLORREF clrFillColorDefault);
43 virtual COLORREF GetFillColorDefault();
45 virtual void SetFillColorDisabled(COLORREF clrFillColorDisabled);
46 virtual COLORREF GetFillColorDisabled();
48 virtual void SetFillColorHover(COLORREF clrFillColorHover);
49 virtual COLORREF GetFillColorHover();
51 virtual void SetFillColorOnLButtonDown(COLORREF clrFillColorOnLButtonDown);
52 virtual COLORREF GetFillColorOnLButtonDown();
55 virtual void SetBorderColors(COLORREF clrBorderColorDefault, COLORREF clrBorderColorDisabled, COLORREF clrBorderColorHover, COLORREF clrBorderColorOnLButtonDown);
56 virtual void GetBorderColors(COLORREF& clrBorderColorDefault, COLORREF& clrBorderColorDisabled, COLORREF& clrBorderColorHover, COLORREF& clrBorderColorOnLButtonDown);
58 virtual void SetBorderColor(COLORREF clrBorderColor);
59 virtual COLORREF GetBorderColor();
61 virtual void SetBorderColorDefault(COLORREF clrBorderColorDefault);
62 virtual COLORREF GetBorderColorDefault();
64 virtual void SetBorderColorDisabled(COLORREF clrBorderColorDisabled);
65 virtual COLORREF GetBorderColorDisabled();
67 virtual void SetBorderColorHover(COLORREF clrBorderColorHover);
68 virtual COLORREF GetBorderColorHover();
70 virtual void SetBorderColorOnLButtonDown(COLORREF clrBorderColorOnLButtonDown);
71 virtual COLORREF GetBorderColorOnLButtonDown();
74 virtual void SetTextColors(COLORREF clrTextColorDefault, COLORREF clrTextColorDisabled, COLORREF clrTextColorHover, COLORREF clrTextColorOnLButtonDown);
75 virtual void GetTextColors(COLORREF& clrTextColorDefault, COLORREF& clrTextColorDisabled, COLORREF& clrTextColorHover, COLORREF& clrTextColorOnLButtonDown);
77 virtual void SetTextColor(COLORREF clrTextColor);
78 virtual COLORREF GetTextColor();
80 virtual void SetTextColorDefault(COLORREF clrTextColorDefault);
81 virtual COLORREF GetTextColorDefault();
83 virtual void SetTextColorDisabled(COLORREF clrTextColorDisabled);
84 virtual COLORREF GetTextColorDisabled();
86 virtual void SetTextColorHover(COLORREF clrTextColorHover);
87 virtual COLORREF GetTextColorHover();
89 virtual void SetTextColorOnLButtonDown(COLORREF clrTextColorOnLButtonDown);
90 virtual COLORREF GetTextColorOnLButtonDown();
92 virtual void SetParentCWnd(CWnd* pParent);
93 virtual CWnd* GetParentCWnd();
95 virtual void SetParentCObject(CObject* pParent);
96 virtual CObject* GetParentCObject();
98 virtual void UpdateTheme();
99 virtual void DrawRectangleBorder(CDC* pDC,
const CRect& rect, COLORREF clr);
101 virtual bool SetWndCtrlProcedure(CWndCtrlProcedure* pFunc,
bool bAutoDestroy =
true);
102 virtual CWndCtrlProcedure* GetWndCtrlProcedure()
const;
104 virtual void ActivateWndCtrlProcedure(
bool bActivate);
105 virtual bool IsWndCtrlProcedureActivated()
const;
108 virtual const CResult
Assign(
const CGUIWndCtrlBase& rhs);
109 virtual const CResult
Assign(
const CGUIWndCtrlBase* pRhs);
110 CGUIWndCtrlBase& operator=(
const CGUIWndCtrlBase& rhs);
112 DeclareGetClassType();
115 virtual const CResult InternalAssign(
const CGUIWndCtrlBase& rhs);
117 virtual const CResult CreateBackBuffer(CWnd* pParentWnd, CWnd* pThisWnd, CRect rect);
118 virtual const CResult DeleteBackBuffer();
119 virtual const CResult RefreshBackBufferBackground(CWnd* pParentWnd, CWnd* pThisWnd,
const CRect& rect);
123 CObject* m_pParentCObject;
125 SControlStyleGroupBasic* m_pStyleBasic;
126 SControlStyleGroupSubButton* m_pStyleSubButton;
129 COLORREF m_clrBorder;
132 COLORREF m_clrFillDefault;
133 COLORREF m_clrFillDisabled;
134 COLORREF m_clrFillHover;
135 COLORREF m_clrFillOnLButtonDown;
137 COLORREF m_clrBorderDefault;
138 COLORREF m_clrBorderDisabled;
139 COLORREF m_clrBorderHover;
140 COLORREF m_clrBorderOnLButtonDown;
142 COLORREF m_clrTextDefault;
143 COLORREF m_clrTextDisabled;
144 COLORREF m_clrTextHover;
145 COLORREF m_clrTextOnLButtonDown;
147 COLORREF m_clrSubButtonFill;
148 COLORREF m_clrSubButtonBorder;
149 COLORREF m_clrSubButtonIndicator;
153 bool m_bWndCtrlProcedureActive;
154 bool m_bOnPropertyGrid;
157 Base::CFLString<wchar_t> m_strText;
162 CBitmap* m_pBmpOldBk;
164 CWndCtrlProcedure* m_pProcedure;
165 bool m_bProcedureAutoDestroy;
Definition D2DObject.h:12
EGUIControlType
컨트롤
Definition DefinitionsGUIStyle.h:391
@ Assign
CGUIPropertyItemView3DFigure 의 값을 해당 도형으로 설정하는 함수
Definition DefinitionsGUIView3D.h:2930