www.pudn.com > gui_Outlook.rar > CJTabCtrlBar.h
// CJTabCtrlBar.h : header file // // DevStudio Style Resizable Docking Tab Control Bar. // // Copyright © 1998 Written by Kirk Stowell // mailto:kstowel@sprynet.com // http://www.geocities.com/SiliconValley/Haven/8230 // // The code contained in this file is based on the original // CSizingTabCtrlBar class written by Dirk Clemens, // mailto:dirk_clemens@hotmail.com // http://www.codeguru.com/docking/sizing_tabctrl_bar.shtml // // This code may be used in compiled form in any way you desire. This // file may be redistributed unmodified by any means PROVIDING it is // not sold for profit without the authors written consent, and // providing that this notice and the authors name and all copyright // notices remains intact. If the source code in this file is used in // any commercial application then a statement along the lines of // "Portions Copyright © 1998 Kirk Stowell" must be included in // the startup banner, "About" box or printed documentation. An email // letting me know that you are using it would be nice as well. That's // not much to ask considering the amount of work that went into this. // // This file is provided "as is" with no expressed or implied warranty. // The author accepts no liability for any damage/loss of business that // this product may cause. // // ========================================================================== // HISTORY: // ========================================================================== // 1.00 17 Oct 1998 - Initial re-write and release. // ========================================================================== // ///////////////////////////////////////////////////////////////////////////// #if !defined(CJTABCTRLBAR_H_INCLUDED) #define CJTABCTRLBAR_H_INCLUDED #if _MSC_VER >= 1000 #pragma once #endif // _MSC_VER >= 1000 #include#include "CJControlBar.h" typedef struct { CWnd *pWnd; char szLabel[32]; }TCB_ITEM; ///////////////////////////////////////////////////////////////////////////// // CCJTabCtrlBar tab control bar class CLASS_EXPORT CCJTabCtrlBar : public CCJControlBar { // Construction public: CCJTabCtrlBar(); // Attributes public: CTabCtrl m_tabctrl; CToolTipCtrl* m_ToolTip; protected: int m_nActiveTab; CView* m_pActiveView; CList m_views; // Operations public: void SetActiveView(int nNewTab); void SetActiveView(CRuntimeClass *pViewClass); CImageList* SetTabImageList(CImageList *pImageList); BOOL ModifyTabStyle(DWORD dwRemove, DWORD dwAdd, UINT nFlags); // Overrides public: // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CCJTabCtrlBar) //}}AFX_VIRTUAL // Implementation public: CView* GetActiveView(); CView* GetView(int nView); CView* GetView(CRuntimeClass *pViewClass); BOOL AddView(LPCTSTR lpszLabel, CRuntimeClass *pViewClass, CCreateContext *pContext = NULL); void RemoveView(int nView); virtual ~CCJTabCtrlBar(); // Generated message map functions protected: //{{AFX_MSG(CCJTabCtrlBar) afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnTabSelChange(NMHDR* pNMHDR, LRESULT* pResult) ; afx_msg void OnWindowPosChanged(WINDOWPOS FAR* lpwndpos); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Developer Studio will insert additional declarations immediately before the previous line. #endif // CJTABCTRLBAR_H_INCLUDED