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();
21 virtual const CResult
Assign(
const CGUIWndCtrlBase& rhs);
22 virtual const CResult
Assign(
const CGUIWndCtrlBase* pRhs);
23 CGUIWndCtrlBase& operator=(
const CGUIWndCtrlBase& rhs);
26 virtual const CResult InternalAssign(
const CGUIWndCtrlBase& rhs);
29 virtual void SetParentCWnd(CWnd* pParent);
30 virtual CWnd* GetParentCWnd();
32 virtual void SetParentCObject(CObject* pParent);
33 virtual CObject* GetParentCObject();
36 virtual void SetText(
const Base::CFLString<wchar_t>& str);
37 virtual const Base::CFLString<wchar_t>& GetText()
const;
39 virtual void UpdateTheme();
40 virtual void DrawRectangleBorder(CDC* pDC,
const CRect& rect, COLORREF clr);
42 virtual bool SetWndCtrlProcedure(CWndCtrlProcedure* pFunc,
bool bAutoDestroy =
true);
43 virtual CWndCtrlProcedure* GetWndCtrlProcedure()
const;
45 virtual void ActivateWndCtrlProcedure(
bool bActivate);
46 virtual bool IsWndCtrlProcedureActivated()
const;
48 virtual bool IsEnabled()
const;
50 DeclareGetClassType();
53 virtual const CResult CreateBackBuffer(CWnd* pParentWnd, CWnd* pThisWnd, CRect rect);
54 virtual const CResult DeleteBackBuffer();
55 virtual const CResult RefreshBackBufferBackground(CWnd* pParentWnd, CWnd* pThisWnd,
const CRect& rect);
58 virtual void SetFillColors(COLORREF clrFillColorDefault, COLORREF clrFillColorDisabled, COLORREF clrFillColorHover, COLORREF clrFillColorOnLButtonDown);
59 virtual void GetFillColors(COLORREF& clrFillColorDefault, COLORREF& clrFillColorDisabled, COLORREF& clrFillColorHover, COLORREF& clrFillColorOnLButtonDown)
const;
61 virtual void SetFillColor(COLORREF clrFillColor);
62 virtual COLORREF GetFillColor()
const;
64 virtual void SetFillColorDefault(COLORREF clrFillColorDefault);
65 virtual COLORREF GetFillColorDefault()
const;
67 virtual void SetFillColorDisabled(COLORREF clrFillColorDisabled);
68 virtual COLORREF GetFillColorDisabled()
const;
70 virtual void SetFillColorHover(COLORREF clrFillColorHover);
71 virtual COLORREF GetFillColorHover()
const;
73 virtual void SetFillColorOnLButtonDown(COLORREF clrFillColorOnLButtonDown);
74 virtual COLORREF GetFillColorOnLButtonDown()
const;
77 virtual void SetBorderColors(COLORREF clrBorderColorDefault, COLORREF clrBorderColorDisabled, COLORREF clrBorderColorHover, COLORREF clrBorderColorOnLButtonDown);
78 virtual void GetBorderColors(COLORREF& clrBorderColorDefault, COLORREF& clrBorderColorDisabled, COLORREF& clrBorderColorHover, COLORREF& clrBorderColorOnLButtonDown);
80 virtual void SetBorderColor(COLORREF clrBorderColor);
81 virtual COLORREF GetBorderColor()
const;
83 virtual void SetBorderColorDefault(COLORREF clrBorderColorDefault);
84 virtual COLORREF GetBorderColorDefault()
const;
86 virtual void SetBorderColorDisabled(COLORREF clrBorderColorDisabled);
87 virtual COLORREF GetBorderColorDisabled()
const;
89 virtual void SetBorderColorHover(COLORREF clrBorderColorHover);
90 virtual COLORREF GetBorderColorHover()
const;
92 virtual void SetBorderColorOnLButtonDown(COLORREF clrBorderColorOnLButtonDown);
93 virtual COLORREF GetBorderColorOnLButtonDown()
const;
96 virtual void SetTextColors(COLORREF clrTextColorDefault, COLORREF clrTextColorDisabled, COLORREF clrTextColorHover, COLORREF clrTextColorOnLButtonDown);
97 virtual void GetTextColors(COLORREF& clrTextColorDefault, COLORREF& clrTextColorDisabled, COLORREF& clrTextColorHover, COLORREF& clrTextColorOnLButtonDown)
const;
99 virtual void SetTextColor(COLORREF clrTextColor);
100 virtual COLORREF GetTextColor()
const;
102 virtual void SetTextColorDefault(COLORREF clrTextColorDefault);
103 virtual COLORREF GetTextColorDefault()
const;
105 virtual void SetTextColorDisabled(COLORREF clrTextColorDisabled);
106 virtual COLORREF GetTextColorDisabled()
const;
108 virtual void SetTextColorHover(COLORREF clrTextColorHover);
109 virtual COLORREF GetTextColorHover()
const;
111 virtual void SetTextColorOnLButtonDown(COLORREF clrTextColorOnLButtonDown);
112 virtual COLORREF GetTextColorOnLButtonDown()
const;
115 virtual const CResult ResolveBasicColor(EStyleControlStyleGroupBasicElem e, EGUIControlState state, COLORREF& outClr)
const;
116 virtual const CResult ResolveSubButtonColor(EStyleControlStyleGroupSubButtonElem e, EGUIControlState state, COLORREF& outClr)
const;
119 virtual SControlStyleColorGroup* EnsureBasicColorGroup(EStyleControlStyleGroupBasicElem e);
120 virtual void SetBasicColor(EStyleControlStyleGroupBasicElem e, EGUIControlState st, COLORREF clr);
121 virtual SControlStyleColorGroup* EnsureSubButtonColorGroup(EStyleControlStyleGroupSubButtonElem e);
122 virtual void SetSubButtonColor(EStyleControlStyleGroupSubButtonElem e, EGUIControlState st, COLORREF clr);
124 virtual void SetSubButtonFillColors(COLORREF clrFillColorDefault, COLORREF clrFillColorDisabled, COLORREF clrFillColorHover, COLORREF clrFillColorOnLButtonDown);
125 virtual void GetSubButtonFillColors(COLORREF& clrFillColorDefault, COLORREF& clrFillColorDisabled, COLORREF& clrFillColorHover, COLORREF& clrFillColorOnLButtonDown)
const;
127 virtual void SetSubButtonFillColor(COLORREF clrFillColor);
128 virtual COLORREF GetSubButtonFillColor()
const;
130 virtual void SetSubButtonFillColorDefault(COLORREF clrFillColorDefault);
131 virtual COLORREF GetSubButtonFillColorDefault()
const;
133 virtual void SetSubButtonFillColorDisabled(COLORREF clrFillColorDisabled);
134 virtual COLORREF GetSubButtonFillColorDisabled()
const;
136 virtual void SetSubButtonFillColorHover(COLORREF clrFillColorHover);
137 virtual COLORREF GetSubButtonFillColorHover()
const;
139 virtual void SetSubButtonFillColorOnLButtonDown(COLORREF clrFillColorOnLButtonDown);
140 virtual COLORREF GetSubButtonFillColorOnLButtonDown()
const;
143 virtual void SetSubButtonBorderColors(COLORREF clrBorderColorDefault, COLORREF clrBorderColorDisabled, COLORREF clrBorderColorHover, COLORREF clrBorderColorOnLButtonDown);
144 virtual void GetSubButtonBorderColors(COLORREF& clrBorderColorDefault, COLORREF& clrBorderColorDisabled, COLORREF& clrBorderColorHover, COLORREF& clrBorderColorOnLButtonDown)
const;
146 virtual void SetSubButtonBorderColor(COLORREF clrBorderColor);
147 virtual COLORREF GetSubButtonBorderColor()
const;
149 virtual void SetSubButtonBorderColorDefault(COLORREF clrBorderColorDefault);
150 virtual COLORREF GetSubButtonBorderColorDefault()
const;
152 virtual void SetSubButtonBorderColorDisabled(COLORREF clrBorderColorDisabled);
153 virtual COLORREF GetSubButtonBorderColorDisabled()
const;
155 virtual void SetSubButtonBorderColorHover(COLORREF clrBorderColorHover);
156 virtual COLORREF GetSubButtonBorderColorHover()
const;
158 virtual void SetSubButtonBorderColorOnLButtonDown(COLORREF clrBorderColorOnLButtonDown);
159 virtual COLORREF GetSubButtonBorderColorOnLButtonDown()
const;
162 virtual void SetSubButtonIndicatorColors(COLORREF clrSubButtonIndicatorColorDefault, COLORREF clrSubButtonIndicatorColorDisabled, COLORREF clrSubButtonIndicatorColorHover, COLORREF clrSubButtonIndicatorColorOnLButtonDown);
163 virtual void GetSubButtonIndicatorColors(COLORREF& clrSubButtonIndicatorColorDefault, COLORREF& clrSubButtonIndicatorColorDisabled, COLORREF& clrSubButtonIndicatorColorHover, COLORREF& clrSubButtonIndicatorColorOnLButtonDown)
const;
165 virtual void SetSubButtonIndicatorColor(COLORREF clrSubButtonIndicatorColor);
166 virtual COLORREF GetSubButtonIndicatorColor()
const;
168 virtual void SetSubButtonIndicatorColorDefault(COLORREF clrSubButtonIndicatorColorDefault);
169 virtual COLORREF GetSubButtonIndicatorColorDefault()
const;
171 virtual void SetSubButtonIndicatorColorDisabled(COLORREF clrSubButtonIndicatorColorDisabled);
172 virtual COLORREF GetSubButtonIndicatorColorDisabled()
const;
174 virtual void SetSubButtonIndicatorColorHover(COLORREF clrSubButtonIndicatorColorHover);
175 virtual COLORREF GetSubButtonIndicatorColorHover()
const;
177 virtual void SetSubButtonIndicatorColorOnLButtonDown(COLORREF clrSubButtonIndicatorColorOnLButtonDown);
178 virtual COLORREF GetSubButtonIndicatorColorOnLButtonDown()
const;
180 virtual void UpdateControlColorState(EGUIControlState eState,
bool bInvalidate);
184 CObject* m_pParentCObject;
186 SControlStyleGroupBasic* m_pStyleBasic;
187 SControlStyleGroupSubButton* m_pStyleSubButton;
191 COLORREF m_clrBorder;
194 COLORREF m_clrFillDefault;
195 COLORREF m_clrFillDisabled;
196 COLORREF m_clrFillHover;
197 COLORREF m_clrFillOnLButtonDown;
199 COLORREF m_clrBorderDefault;
200 COLORREF m_clrBorderDisabled;
201 COLORREF m_clrBorderHover;
202 COLORREF m_clrBorderOnLButtonDown;
204 COLORREF m_clrTextDefault;
205 COLORREF m_clrTextDisabled;
206 COLORREF m_clrTextHover;
207 COLORREF m_clrTextOnLButtonDown;
209 COLORREF m_clrSubButtonFill;
210 COLORREF m_clrSubButtonBorder;
211 COLORREF m_clrSubButtonIndicator;
215 bool m_bWndCtrlProcedureActive;
216 bool m_bOnPropertyGrid;
220 Base::CFLString<wchar_t> m_strText;
225 CBitmap* m_pBmpOldBk;
227 CWndCtrlProcedure* m_pProcedure;
228 bool m_bProcedureAutoDestroy;
230 bool m_bGUIManagerStyleDevelopDone;
Definition D2DObject.h:12
EGUIControlType
Control.
Definition DefinitionsGUIStyle.h:508
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.
Definition DefinitionsGUIView3D.h:2930