Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/******************************************************************************/ /* Bar.H: Defines the Interface to the CStatBar (Status Bar) CLASS */ /* */ /******************************************************************************/
#ifndef __BAR_H__
#define __BAR_H__
//below size does not include bitmap width
#define SIZE_POS_PANE_WIDTH 12 // Bitmap Width + 1 char separator + 5 digits + 1 char separator + 5 digits
// The 2 below defines were needed, since we had to duplicate the DrawStatusText
// method from the barcore.cpp file in the msvc\mfc\src directory
#define CX_BORDER 1 // from auxdata.h in the msvc\mfc\src directory
#define CY_BORDER 1 // from auxdata.h in the msvc\mfc\src directory
/******************************************************************************/
class CStatBar : public CStatusBar { DECLARE_DYNAMIC( CStatBar )
private:
CBitmap m_posBitmap; CBitmap m_sizeBitmap; CString m_cstringSizeSeparator; CString m_cstringPosSeparator; int m_iBitmapWidth; int m_iBitmapHeight; int m_iSizeY;
protected:
virtual void DoPaint(CDC* pDC); virtual CSize CalcFixedLayout(BOOL bStretch, BOOL bHorz);
static void PASCAL DrawStatusText( HDC hDC, CRect const& rect, LPCTSTR lpszText, UINT nStyle, int iIndentText = 0);
afx_msg LRESULT OnSetFont(WPARAM wParam, LPARAM lParam); afx_msg LRESULT OnSizeParent(WPARAM wParam, LPARAM lParam); afx_msg void OnNcDestroy( void ); afx_msg void OnSysColorChange( void );
public:
CStatBar(); ~CStatBar();
BOOL Create(CWnd* pParentWnd);
BOOL SetText(LPCTSTR sz);
BOOL SetPosition(const CPoint& pos); BOOL SetSize(const CSize& size);
BOOL ClearPosition(); BOOL ClearSize();
BOOL Reset();
DECLARE_MESSAGE_MAP() };
extern CStatBar *g_pStatBarWnd;
/******************************************************************************/ // NON-OBJECT Status bar API, Uses global object pointer to the StatBar object
void ShowStatusBar ( BOOL bShow = TRUE ); BOOL IsStatusBarVisible (); void InvalidateStatusBar ( BOOL bErase = FALSE ); void ClearStatusBarSize (); void ClearStatusBarPosition (); void ClearStatusBarPositionAndSize(); void ResetStatusBar (); void SetStatusBarPosition ( const CPoint& pos ); void SetStatusBarSize ( const CSize& size ); void SetStatusBarPositionAndSize ( const CRect& rect ); void SetPrompt ( LPCTSTR, BOOL bRedrawNow = FALSE ); void SetPrompt ( UINT, BOOL bRedrawNow = FALSE );
/******************************************************************************/
#endif // __BAR_H__
|