//+------------------------------------------------------------------------- // // Microsoft Windows // // Copyright (C) Microsoft Corporation, 1999 - 1999 // // File: statbar.h // //-------------------------------------------------------------------------- #ifndef _STATBAR_H #define _STATBAR_H #ifndef __DOCKSITE_H__ #include "docksite.h" #endif class CAMCProgressCtrl : public CProgressCtrl { public: CAMCProgressCtrl(); void SetRange( int nLower, int nUpper ); void GetRange( int * nLower, int * nUpper ); int SetPos ( int nPos); private: int nLower, nUpper; }; class CAMCStatusBar : public CStatBar { DECLARE_DYNAMIC (CAMCStatusBar) static const TCHAR DELINEATOR[]; static const TCHAR PROGRESSBAR[]; enum eFieldSize { eStatusFields = 3 }; // Constructor/Destructors public: CAMCStatusBar(); ~CAMCStatusBar(); // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAMCStatusBar) //}}AFX_VIRTUAL // usable only by CAMCStatusBarText protected: //{{AFX_MSG(CAMCStatusBar) afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnSize(UINT nType, int cx, int cy); //}}AFX_MSG afx_msg void OnSettingChange(UINT uFlags, LPCTSTR lpszSection); afx_msg LPARAM OnSetText(WPARAM wParam, LPARAM lParam); afx_msg LPARAM OnSBSetText(WPARAM wParam, LPARAM lParam); public: DECLARE_MESSAGE_MAP() // Progress bar child control public: CAMCProgressCtrl m_progressControl; CStatic m_staticControl; // internal private: CTypedPtrList m_TextList; CCriticalSection m_Critsec; DWORD m_iNumStatusText; CFont m_StaticFont; void Update(); void Parse(LPCTSTR strText); void SetStatusBarFont(); public: CAMCProgressCtrl* GetStatusProgressCtrlHwnd() { return (&m_progressControl); } CStatic* GetStatusStaticCtrlHwnd() { return (&m_staticControl); } }; #endif // _STATBAR_H