#if !defined(AFX_DQHTABWND_H__C96B2C3D_A671_4F0E_B9E1_994432E06BBE__INCLUDED_)
#define AFX_DQHTABWND_H__C96B2C3D_A671_4F0E_B9E1_994432E06BBE__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DQHTabWnd.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CDQHTabWnd window

class CDQHTabWnd : public CTabCtrl
{
// Construction
public:
	CDQHTabWnd();

// Attributes
public:

// Operations
public:

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

// Implementation
public:
	RECT GetTabRect();
	int GetSelIdx();
	RECT GetAvailableRect();
	BOOL GetItem(int idx,CString &name,CWnd *&pWnd);
	void AddPage(CString txt,CWnd*);
	BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );
	virtual ~CDQHTabWnd();

	// Generated message map functions
protected:
	//{{AFX_MSG(CDQHTabWnd)
	afx_msg void OnSize(UINT nType, int cx, int cy);
	afx_msg void OnSelchange(NMHDR* pNMHDR, LRESULT* pResult);
	//}}AFX_MSG

	DECLARE_MESSAGE_MAP()
private:
	typedef struct{
		CString m_Title;
		CWnd *m_pWnd;
	}_DQHTabItem;
	DWORD m_TabStyle;
	CList<_DQHTabItem,_DQHTabItem>m_WndList;
	int m_SelPage;
};

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

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

#endif // !defined(AFX_DQHTABWND_H__C96B2C3D_A671_4F0E_B9E1_994432E06BBE__INCLUDED_)
