4#include "GUIWndCtrlBase.h" 
    5#include "GUIEditCtrl.h" 
    6#include "GUILayoutBase.h" 
    7#include "GUIBoxLayout.h" 
    8#include "GUIGridLayout.h" 
   11#include "GUIComboBox.h" 
   12#include "GUIComboBox.h" 
   13#include "GUICheckBox.h" 
   14#include "GUIStaticText.h" 
   15#include "GUIListCtrl.h" 
   16#include "GUIListCtrlMassive.h" 
   18#include "GUIDialogBase.h" 
   36        class CInternalDialog;
 
   75            friend class CGUILayoutBase;
 
   76            friend class CGUIBoxLayout;
 
   77            friend class CGUIGridLayout;
 
   78            friend class CGUIPaneDialog;
 
   79            friend class CGUIManagerViewImageObjectImageFigure;
 
   89            CGUIDialog(UINT nIDTemplate, CWnd* pParent = NULL);
 
   90            CGUIDialog(LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL);
 
   94            virtual BOOL Create(LPCTSTR lpszTemplateName, CWnd* pParentWnd = NULL)
override;
 
   95            virtual BOOL Create(UINT nIDTemplate, CWnd* pParentWnd = NULL)
override;
 
   96            virtual BOOL CreateIndirect(LPCDLGTEMPLATE lpDialogTemplate, CWnd* pParentWnd = NULL, 
void* lpDialogInit = NULL)
override;
 
   97            virtual BOOL CreateIndirect(HGLOBAL hDialogTemplate, CWnd* pParentWnd = NULL)
override;
 
  101            virtual void ShowCaption(
bool bShow);
 
  102            virtual bool IsCaptionVisible()
const;
 
  104            virtual void EnableScroll(
bool bEnable, 
bool bIncludeButtons = 
true);
 
  105            virtual bool IsScrollEnabled()
const;
 
  107            virtual void ShowOkButton(
bool bShow);
 
  108            virtual void ShowCancelButton(
bool bShow);
 
  109            virtual void ShowYesButton(
bool bShow);
 
  110            virtual void ShowNoButton(
bool bShow);
 
  112            virtual void EnableOkButton(
bool bEnable);
 
  113            virtual bool IsOkButtonEnabled()
const;
 
  114            virtual void EnableCancelButton(
bool bEnable);
 
  115            virtual bool IsCancelButtonEnabled()
const;
 
  116            virtual void EnableYesButton(
bool bEnable);
 
  117            virtual bool IsYesButtonEnabled()
const;
 
  118            virtual void EnableNoButton(
bool bEnable);
 
  119            virtual bool IsNoButtonEnabled()
const;
 
  121            virtual void SetMarginLeft(int32_t i32Margin);
 
  122            virtual int32_t GetMarginLeft()
const;
 
  123            virtual void SetMarginTop(int32_t i32Margin);
 
  124            virtual int32_t GetMarginTop()
const;
 
  125            virtual void SetMarginRight(int32_t i32Margin);
 
  126            virtual int32_t GetMarginRight()
const;
 
  127            virtual void SetMarginBottom(int32_t i32Margin);
 
  128            virtual int32_t GetMarginBottom()
const;
 
  130            virtual void SetIntervalSpacing(int32_t i32IntervalSpacing);
 
  131            virtual int32_t GetIntervalSpacing() 
const;
 
  133            virtual void SetTitleHeight(int32_t i32Height);
 
  134            virtual int32_t GetTitleHeight()
const;
 
  141            virtual bool AdjustLayout();
 
  145            virtual void UpdateTheme();
 
  146            virtual void SetWindowSize(int32_t i32Width, int32_t i32Height);
 
  149            #ifdef AFX_DESIGN_TIME 
  152                IDD = IDD_DIALOG_CUSTOM
 
  155            DECLARE_MESSAGE_MAP()
 
  157            virtual 
void PostNcDestroy();
 
  158            virtual int32_t Add(CGUILayoutBase* pLayout);
 
  159            virtual CGUILayoutBase* GetAt(int32_t i32Index);
 
  160            virtual BOOL OnInitDialog() override;
 
  161            virtual 
bool SetFocusWnd(CGUIGridLayout* pLayout, int32_t i32Row, int32_t i32Col);
 
  162            virtual 
bool SetFocusWnd(CGUIBoxLayout* pLayout, int32_t i32Idx);
 
  165            virtual INT_PTR DoModal()override;
 
  168            virtual 
void InitDefaults(); 
 
  171            virtual BOOL PreTranslateMessage(MSG* pMsg);
 
  173            virtual 
void OnCancel();
 
  174            virtual 
void OnYes();
 
  176            virtual 
void DrawBorder(CDC* pDC);
 
  177            virtual 
void DrawCloseButton(CDC* pDC);
 
  178            virtual 
void DrawTitleRect(CDC* pDC);
 
  180            virtual BOOL OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult);
 
  181            virtual 
bool CreateButton();
 
  182            virtual 
bool AdjustLayoutButton(int32_t i32BtnW, int32_t i32BtnH, int32_t i32BtnMargin, int32_t i32BtnSpace, int32_t i32BtnTop);
 
  183            virtual BOOL HitTestGrip(MSG* pMsg);
 
  185            DeclareGetClassType();
 
  190            int32_t m_i32MinWidth;
 
  191            int32_t m_i32MinHeight;
 
  195            int32_t m_i32WndowWidthUserDefined;
 
  196            int32_t m_i32WndowHeightUserDefined;
 
  197            int32_t m_i32ContentsW;
 
  198            int32_t m_i32ContentsH;
 
  199            int32_t m_i32MarginL;
 
  200            int32_t m_i32MarginT;
 
  201            int32_t m_i32MarginR;
 
  202            int32_t m_i32MarginB;
 
  206            int32_t m_i32WndCtrlCnt;
 
  209            int32_t m_i32TitleHeight;
 
  210            bool m_bShowWindowOnAdjustLayout;
 
  213            CInternalDialog* m_pInternal;
 
  225            bool m_bLockWindowUpdate;
 
  231            int32_t m_i32IntervalSpacing;
 
  232            int32_t m_i32HoveringBtn;
 
  233            int32_t m_i32HoveringBtnBf;
 
  234            COLORREF m_clrBorder;
 
  235            COLORREF m_clrBorderActive;
 
  236            COLORREF m_clrClientFill;
 
  237            std::vector<CGUILayoutBase*>& m_vctLayout;
 
  238            std::vector<CGUIDialogLayoutElement*>& m_vctInputWnd;
 
  242            Base::CFLString<
wchar_t> m_strTitle;
 
  244            Base::CFLString<
wchar_t> m_strOkBtnName;
 
  245            Base::CFLString<
wchar_t> m_strCancelBtnName;
 
  246            Base::CFLString<
wchar_t> m_strYesBtnName;
 
  247            Base::CFLString<
wchar_t> m_strNoBtnName;
 
  249            CGUIScrollWnd* m_pScrollWnd;
 
  255            CGUIDialogLayoutElement* m_pWndCtrlOK;
 
  256            CGUIDialogLayoutElement* m_pWndCtrlCancel;
 
  257            CGUIDialogLayoutElement* m_pWndCtrlYes;
 
  258            CGUIDialogLayoutElement* m_pWndCtrlNo;
 
  259            CGUIPaneDialog* m_pParentPaneDialog;
 
  262            bool m_bEnableScroll;
 
  263            bool m_bScrollWndIncludeButtons;
 
  265            bool m_bCenterWindowDone;
 
  268            bool m_bShowCancelBtn;
 
  272            bool m_bEnableCancelBtn;
 
  273            bool m_bEnableYesBtn;
 
  277            bool m_bAlreadyInsideProcedure;
 
  282            CGUILayoutBase* m_pFocusLayout;
 
  284            int32_t m_i32FocusIdx;
 
  285            int32_t m_i32FocusIdxRow;
 
  286            int32_t m_i32FocusIdxCol;
 
  289            afx_msg BOOL OnEraseBkgnd(CDC* pDC);
 
  290            afx_msg 
void OnPaint();
 
  291            afx_msg 
void OnNcPaint();
 
  292            afx_msg 
void OnMouseMove(UINT nFlags, CPoint point);
 
  293            afx_msg 
void OnLButtonDown(UINT nFlags, CPoint point);
 
  294            afx_msg 
void OnLButtonUp(UINT nFlags, CPoint point);
 
  295            afx_msg 
void OnSetFocus(CWnd* pOldWnd);
 
  296            afx_msg 
void OnKillFocus(CWnd* pNewWnd);
 
  297            afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
 
  298            afx_msg 
void OnDestroy();
 
  299            afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
 
  300            afx_msg 
void OnSize(UINT nType, 
int cx, 
int cy);
 
  301            afx_msg BOOL OnNcActivate(BOOL bActive);
 
  302            afx_msg 
void OnMouseLeave();
 
  303            afx_msg 
void OnNcMouseMove(UINT nHitTest, CPoint point);
 
  304            afx_msg 
void OnNcMouseLeave();
 
Template type string class.
Definition FLString.h:34
ComboBox class.
Definition GUIComboBox.h:28
virtual void OnReceiveBroadcast(const Base::CBroadcastMessage *pMessage) override
Callback function. A function that receives a BroadcastMessage.
CGUIDialog(CWnd *pParent=nullptr)
Default constructor.
Text box class.
Definition GUIEditCtrl.h:30
ListControl classes in very many data to store.
Definition GUIListCtrlMassive.h:38
Definition AESCryptography.h:18
Definition D2DObject.h:12
EOrientation
Direction.
Definition DefinitionsGUI.h:5807
ELayout
A layout of dialog.
Definition GUIDialog.h:46
@ BoxLayout
Box layout.
Definition GUIDialog.h:62
@ GridLayout
Grid layout.
Definition GUIDialog.h:53