源代码
class CDockingManager;
class CBasePane;
class CDockablePane;
class CPaneContainerManager;
class CGlobalUtils
{
public:
CGlobalUtils();
virtual ~CGlobalUtils();
BOOL CheckAlignment(CPoint point, CBasePane* pBar, int nSensitivity, const CDockingManager* pDockManager,
BOOL bOuterEdge, DWORD& dwAlignment, DWORD dwEnabledDockBars = CBRS_ALIGN_ANY, LPCRECT lpRectBounds = NULL) const;
CDockingManager* GetDockingManager(CWnd* pWnd);
void FlipRect(CRect& rect, int nDegrees);
DWORD GetOppositeAlignment(DWORD dwAlign);
void SetNewParent(CObList& lstControlBars, CWnd* pNewParent, BOOL bCheckVisibility = TRUE);
void CalcExpectedDockedRect(CPaneContainerManager& barContainerManager, CWnd* pWndToDock,
CPoint ptMouse, CRect& rectResult, BOOL& bDrawTab, CDockablePane** ppTargetBar);
BOOL GetPaneAndAlignFromPoint(CPaneContainerManager& barContainerManager, CPoint pt,
CDockablePane** ppTargetControlBar, DWORD& dwAlignment, BOOL& bTabArea, BOOL& bCaption);
void ForceAdjustLayout(CDockingManager* pDockManager, BOOL bForce = FALSE, BOOL bForceInvisible = FALSE);
BOOL CanPaneBeInFloatingMultiPaneFrameWnd(CWnd* pWnd) const;
void AdjustRectToWorkArea(CRect& rect, CRect* pRectDelta = NULL);
BOOL CanBeAttached(CWnd* pWnd) const;
BOOL StringFromCy(CString& str, CY& cy);
BOOL CyFromString(CY& cy, LPCTSTR psz);
BOOL StringFromDecimal(CString& str, DECIMAL& decimal);
BOOL DecimalFromString(DECIMAL& decimal, LPCTSTR psz);
HICON GetWndIcon(CWnd* pWnd);
BOOL m_bDialogApp;
BOOL m_bIsDragging;
};
extern CGlobalUtils afxGlobalUtils;