2#include "DefinitionsGUI.h"
8 class CGUIMenuItemBase;
10 class CGUIControlResizeHelper;
12 class FL_EXPORT CGUIPaneBase :
public CDockablePane,
public Base::CFLBase
15 typedef struct sStateData
18 CRect rtRectRecentFloat;
19 CRect rtRectRecentDocked;
20 DWORD dwCurrentAlignment;
21 DWORD dwRecentFrameAlignment;
25 int32_t i32RecentRowIndex;
27 int32_t i32ParentMiniFrameSerialNum;
28 int32_t i32ParentTabbedPaneSerialNum;
29 int64_t i64PaneDividerNum;
38 virtual ~CGUIPaneBase();
40 virtual
bool SetName(Base::CFLString<
wchar_t> strName);
41 virtual
bool GetName(Base::CFLString<
wchar_t>& strName) const;
43 virtual
bool SetResourceID(uint32_t u32ID);
44 virtual uint32_t GetResourceID() const;
46 virtual
bool SwitchTabs(
bool bForwardDirection);
48 virtual
void SetPaneType(EPaneType eParentPaneType);
49 virtual EPaneType GetPaneType() const;
51 virtual
bool HasEverBeenDeployed() const;
52 virtual
void SetEverBeenDeployed(
bool bSet);
54 virtual BOOL IsAutoHideMode() const;
56 virtual
bool ClosePane();
57 virtual
void UndockPane(BOOL bDelay = FALSE) override;
59 void SetPrepareToFloat(
bool bSet);
60 bool IsPreparedToFloat() const;
62 void SetReadyToFloat(
bool bSet);
63 bool IsReadyToFloat() const;
65 virtual BOOL DockToFrameWindow(DWORD dwAlignment, LPCRECT lpRect = NULL, DWORD dwDockFlags = DT_DOCK_LAST, CBasePane* pRelativeBar = NULL,
int nRelativeIndex = -1, BOOL bOuterEdge = FALSE) override;
66 virtual BOOL DockToWindow(CDockablePane* pTargetWindow, DWORD dwAlignment, LPCRECT lpRect = NULL) override;
67 virtual BOOL FloatPane(CRect rectFloat, AFX_DOCK_METHOD dockMethod = DM_UNKNOWN,
bool bShow = true) override;
69 virtual CDockablePane* AttachToTabWnd(CDockablePane* pTabControlBarAttachTo, AFX_DOCK_METHOD dockMethod, BOOL bSetActive = TRUE, CDockablePane** ppTabbedControlBar = NULL) override;
70 virtual CTabbedPane* CreateTabbedPane() override;
71 virtual CPaneFrameWnd* CreateDefaultMiniframe(CRect rectInitial) override;
74 virtual
void DrawCaption(CDC* pDC, CRect rectCaption)override;
76 static const CResult Read(CGUIPaneBase* pWnd, const Base::CFLString<
wchar_t>& strFilePath, const Base::CFLString<
wchar_t>& strSectionName);
77 static const CResult Write(CGUIPaneBase* pWnd, const Base::CFLString<
wchar_t>& strFilePath);
79 virtual
bool IsLoadComplete() const;
80 virtual
void MarkLoadComplete(
bool bComplete);
82 virtual
bool IsSaveComplete() const;
83 virtual
void MarkSaveComplete(
bool bComplete);
85 virtual
bool CanSave() const;
86 virtual const SStateData& GetStateData() const;
88 virtual CMFCAutoHideBar* SetAutoHideMode(BOOL bMode, DWORD dwAlignment, CMFCAutoHideBar* pCurrAutoHideBar = NULL, BOOL bUseTimer = TRUE)override;
90 virtual
bool IsStandalone() const;
91 virtual
void SetStandalone(
bool bStandalone);
93 virtual
void SetMenuItem(CGUIMenuItemBase* pMenuItem);
94 virtual CGUIMenuItemBase* GetMenuItem() const;
98 virtual const CResult ProcessPaneTermination();
100 virtual CGUIDockablePaneHostFrame* GetHostFrame() const;
102 virtual const CResult EnableRelativeResizingControls(
bool bEnable);
103 virtual
bool IsRelativeResizingControlsEnabled() const;
105 virtual const CGUIControlResizeHelper* GetControlResizeHelper() const;
108 virtual
void OnPressCloseButton() override;
111 volatile
bool m_bTerminateApp;
112 volatile
bool m_bPreClose;
113 bool m_bEverBeenDeployed;
117 Base::CFLString<
wchar_t> m_strName;
118 EPaneType m_ePaneType;
122 SStateData m_sStateData;
123 uint32_t m_u32ResourceID;
124 CGUIMenuItemBase* m_pMenuItem;
126 CPoint m_ptDragStart;
128 CGUIDockablePaneHostFrame* m_pParentHostFrame;
130 CGUIControlResizeHelper* m_pControlResizeHelper;
132 friend class CGUITabbedPane;
133 friend class CGUIPaneFrameWnd;
134 friend class CGUIManager;
135 friend class CGUIManagerPane;
136 friend class CGUIMenuItemAttributePane;
140 DeclareGetClassType();
141 afx_msg
int OnCreate(LPCREATESTRUCT lpCreateStruct);
142 afx_msg
void OnDestroy();
143 afx_msg
void OnClose();
144 afx_msg
void OnSetFocus(CWnd* pOldWnd);
145 afx_msg
void OnLButtonUp(UINT nFlags, CPoint point);
146 afx_msg
void OnMouseMove(UINT nFlags, CPoint point);
147 afx_msg
void OnLButtonDown(UINT nFlags, CPoint point);
148 afx_msg
void OnShowWindow(BOOL bShow, UINT nStatus);
GUIDockablePaneHostFrame class.
Definition GUIDockablePaneHostFrame.h:27
Definition D2DObject.h:12