⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tabmanagerwnd.h

📁 TabBars的开源源码
💻 H
字号:
/***************************************************************************/
/* NOTE:                                                                   */
/* This document is copyright (c) by Oz Solomonovich.  All non-commercial  */
/* use is allowed, as long as this document not altered in any way, and    */
/* due credit is given.                                                    */
/***************************************************************************/

// TabManagerWindow.h : header file
//

#if !defined(AFX_TABMANAGERWINDOW_H__616A6550_C284_11D2_BC92_0000010016A6__INCLUDED_)
#define AFX_TABMANAGERWINDOW_H__616A6550_C284_11D2_BC92_0000010016A6__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "SubclassWnd.h"

/////////////////////////////////////////////////////////////////////////////
// CTabManagerWindow window

class CTabManagerWindow : public CSubclassWnd
{
    friend class CTabBarsWnd;

// Construction
public:
	CTabManagerWindow(IGenericWindow *pGWindow, HWND hSubclassWindow = 0);

// Attributes
public:
	CComQIPtr<IGenericWindow, &IID_IGenericWindow> m_pGWindow;

	virtual bool  SetManaging (bool bManaging);
	virtual bool  SetMakeSpace(bool bMakeSpace);
	virtual CRect SetBorder(CRect Border);

	bool  GetManaging()  { return m_bManaging; }
	bool  GetMakeSpace() { return m_bMakeSpace; }
	CRect GetBorder()    { return m_Border; }

// Operations
public:
    void PostUpdateMessage();

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CTabManagerWindow)
	//}}AFX_VIRTUAL

// Implementation
public:
//	void OnWizard();
	virtual ~CTabManagerWindow();

	// Generated message map functions
protected:
	bool  m_bMakeSpace;
	bool  m_bManaging;
	bool  m_bUpdatePosted;
	CRect m_Border;
	CRect m_LastPos;
	int   m_iTabHeight;
	int   m_iTabWidth;

	void CheckTabCount();
	void ForceRedraw();
	void ReclameTabSpace();
	void UpdateTabSizeAndPosition(CRect& WndRect);
	void UpdateTabSize();

	virtual CSize CalcTabsSize(SnapOrientations o) const;
	virtual bool CalcTabsPosition(CRect& WndRect, CRect& TabsRect,SnapOrientations o) const;

    //{{AFX_MSG(CTabManagerWindow)
	afx_msg void OnWindowPosChanging(WINDOWPOS FAR* lpwndpos);
	//}}AFX_MSG
	afx_msg LRESULT OnUpdateTabs(WPARAM wParam, LPARAM lParam);
DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_TABMANAGERWINDOW_H__616A6550_C284_11D2_BC92_0000010016A6__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -