00001
00002
00004
00005 #if !defined(AFX_TABCONTROL_H__5F1B0D93_92BE_4B00_8F0D_FA36E8B89855__INCLUDED_)
00006 #define AFX_TABCONTROL_H__5F1B0D93_92BE_4B00_8F0D_FA36E8B89855__INCLUDED_
00007
00008 #if _MSC_VER >= 1000
00009 #pragma once
00010 #endif // _MSC_VER >= 1000
00011 #include <string>
00012
00013
00014 LRESULT CALLBACK __tabParentProc(HWND,UINT,WPARAM,LPARAM);
00015
00016 class TabControl
00017 {
00018 public:
00019 TabControl(HWND hParent,DWORD dwID);
00020 virtual ~TabControl();
00021 void addTab(const std::string& name,HWND hDlg);
00022 void replaceTab(HWND hDlg,size_t pos);
00023 void selectTab(int i)const;
00024 void resize(const RECT& rect);
00025 int getSelected()const;
00026 HWND getHwnd()const;
00027 protected:
00028 HWND hParent;
00029 HWND hWnd;
00030 DWORD id;
00031 int numTabs;
00032 friend LRESULT CALLBACK __tabParentProc(HWND,UINT,WPARAM,LPARAM);
00033 LRESULT tabParentProc(UINT,WPARAM,LPARAM);
00034 FARPROC oldWinProc;
00035 void changeDlg(int which,int to)const;
00036 };
00037
00038 #endif // !defined(AFX_TABCONTROL_H__5F1B0D93_92BE_4B00_8F0D_FA36E8B89855__INCLUDED_)