XTTabView.h
上传用户:szled88
上传日期:2015-04-09
资源大小:43957k
文件大小:6k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. // XTTabView.h interface for the CXTTabView class.
  2. //
  3. // This file is a part of the XTREME CONTROLS MFC class library.
  4. // (c)1998-2008 Codejock Software, All Rights Reserved.
  5. //
  6. // THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
  7. // RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
  8. // CONSENT OF CODEJOCK SOFTWARE.
  9. //
  10. // THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
  11. // IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
  12. // YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
  13. // SINGLE COMPUTER.
  14. //
  15. // CONTACT INFORMATION:
  16. // support@codejock.com
  17. // http://www.codejock.com
  18. //
  19. /////////////////////////////////////////////////////////////////////////////
  20. //{{AFX_CODEJOCK_PRIVATE
  21. #if !defined(__XTTABVIEW_H__)
  22. #define __XTTABVIEW_H__
  23. //}}AFX_CODEJOCK_PRIVATE
  24. #if _MSC_VER > 1000
  25. #pragma once
  26. #endif // _MSC_VER > 1000
  27. //{{AFX_CODEJOCK_PRIVATE
  28. class CXTCtrlView : public CCtrlView
  29. {
  30. public:
  31. CXTCtrlView() : CCtrlView(WC_TABCONTROL, AFX_WS_DEFAULT_VIEW | TCS_TOOLTIPS)
  32. {
  33. }
  34. };
  35. //}}AFX_CODEJOCK_PRIVATE
  36. DECLATE_TABCTRLEX_BASE(CXTTabViewBase, CXTCtrlView, CXTTabExBase)
  37. //===========================================================================
  38. // Summary:
  39. //     CXTTabView is a multiple inheritance class derived from CCtrlView and
  40. //     CXTTabCtrlBaseEx. CXTTabView can be used to create a view that contains
  41. //     nested views displayed in a tab control. See CXTTabCtrlBaseEx for additional
  42. //     functionality.
  43. //===========================================================================
  44. class _XTP_EXT_CLASS CXTTabView : public CXTTabViewBase
  45. {
  46. DECLARE_DYNCREATE(CXTTabView)
  47. DECLARE_THEME_REFRESH(CXTTabView)
  48. friend class CXTTabViewBase;
  49. public:
  50. //-----------------------------------------------------------------------
  51. // Summary:
  52. //     Constructs a CXTTabView object
  53. //-----------------------------------------------------------------------
  54. CXTTabView();
  55. //-----------------------------------------------------------------------
  56. // Summary:
  57. //     Destroys a CXTTabView object, handles cleanup and deallocation
  58. //-----------------------------------------------------------------------
  59. virtual ~CXTTabView();
  60. public:
  61. //-----------------------------------------------------------------------
  62. // Summary:
  63. //     Call this member function to retrieve a reference pointer to the CTabCtrl
  64. //     object associated with this view.
  65. // Returns:
  66. //     A CTabCtrl reference to the object associated with this view.
  67. //-----------------------------------------------------------------------
  68. virtual CTabCtrl& GetTabCtrl () const;
  69. //-----------------------------------------------------------------------
  70. // Summary:
  71. //     Call this function to assign an image list to the tab control associated
  72. //     with this view.
  73. // Parameters:
  74. //     pImageList - Pointer to the image list to be assigned to the tab control.
  75. // Returns:
  76. //     A pointer to the previous image list or NULL, if there is no previous image list.
  77. //-----------------------------------------------------------------------
  78. virtual CImageList* SetTabImageList(CImageList* pImageList);
  79. //-----------------------------------------------------------------------
  80. // Summary:
  81. //     This member function retrieves the handle of the tooltip control associated
  82. //     with the tab control. The tab control creates a tooltip control if
  83. //     it has the TCS_TOOLTIPS style. You can also assign a tooltip control
  84. //     to a tab control by using the SetToolTips member function.
  85. // Returns:
  86. //     The handle of the tooltip control if successful, otherwise returns NULL.
  87. //-----------------------------------------------------------------------
  88. virtual CToolTipCtrl* GetToolTips();
  89. //-----------------------------------------------------------------------
  90. // Summary:
  91. //     Call this function to assign a tooltip control to the tab control.
  92. //     You can associate the tooltip control with a tab control by making
  93. //     a call to GetToolTips.
  94. // Parameters:
  95. //     pWndTip - Pointer to a tooltip control.
  96. //-----------------------------------------------------------------------
  97. virtual void SetToolTips(CToolTipCtrl* pWndTip);
  98. //-----------------------------------------------------------------------
  99. // Summary:
  100. //     Call this member function to update the document name with the tab
  101. //     label.
  102. //-----------------------------------------------------------------------
  103. void UpdateDocTitle();
  104. protected:
  105. //-----------------------------------------------------------------------
  106. // Summary:
  107. //     This member function is called by the CXTTabView class to
  108. //     perform initialization when the window is created or sub-classed.
  109. // Returns:
  110. //     TRUE if the window was successfully initialized, otherwise FALSE.
  111. //-----------------------------------------------------------------------
  112. virtual bool Init();
  113. //{{AFX_CODEJOCK_PRIVATE
  114. DECLARE_MESSAGE_MAP()
  115. //{{AFX_VIRTUAL(CXTTabView)
  116. virtual void OnInitialUpdate();
  117. //}}AFX_VIRTUAL
  118. //{{AFX_MSG(CXTTabView)
  119. afx_msg int OnMouseActivate(CWnd* pDesktopWnd, UINT nHitTest, UINT message);
  120. //}}AFX_MSG
  121. //}}AFX_CODEJOCK_PRIVATE
  122. };
  123. //////////////////////////////////////////////////////////////////////
  124. AFX_INLINE CTabCtrl& CXTTabView::GetTabCtrl() const {
  125. ASSERT_VALID(this); return (CTabCtrl&)*this;
  126. }
  127. AFX_INLINE CImageList* CXTTabView::SetTabImageList(CImageList* pImageList) {
  128. ASSERT_VALID(this); return GetTabCtrl().SetImageList(pImageList);
  129. }
  130. AFX_INLINE CToolTipCtrl* CXTTabView::GetToolTips() {
  131. return GetTips();
  132. }
  133. AFX_INLINE void CXTTabView::SetToolTips(CToolTipCtrl* pWndTip) {
  134. SetTips(pWndTip);
  135. }
  136. #endif // !defined(__XTTABVIEW_H__)