64 lines
2.8 KiB
C++
64 lines
2.8 KiB
C++
// OXSkinnedTabCtrl.cpp : implementation file
|
||
//
|
||
// Version: 9.3
|
||
|
||
#include "stdafx.h"
|
||
|
||
// v93 update 03 - 64-bit
|
||
#include "UTB64Bit.h"
|
||
|
||
#include "OXSkinnedTabCtrl.h"
|
||
#include "OXSkins.h"
|
||
|
||
#ifdef _DEBUG
|
||
#define new DEBUG_NEW
|
||
#undef THIS_FILE
|
||
static char THIS_FILE[] = __FILE__;
|
||
#endif
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// COXSkinnedTabCtrl
|
||
|
||
IMPLEMENT_DYNAMIC(COXSkinnedTabCtrl, CTabCtrl)
|
||
|
||
COXSkinnedTabCtrl::COXSkinnedTabCtrl() :
|
||
m_pTabSkin(NULL)
|
||
{
|
||
}
|
||
|
||
COXSkinnedTabCtrl::~COXSkinnedTabCtrl()
|
||
{
|
||
if (m_pTabSkin != NULL)
|
||
delete m_pTabSkin;
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(COXSkinnedTabCtrl, CTabCtrl)
|
||
//{{AFX_MSG_MAP(COXSkinnedTabCtrl)
|
||
ON_WM_PAINT()
|
||
//}}AFX_MSG_MAP
|
||
END_MESSAGE_MAP()
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// COXSkinnedTabCtrl message handlers
|
||
|
||
COXTabSkin* COXSkinnedTabCtrl::GetTabSkin()
|
||
{
|
||
// Check if the app is derived from COXSkinnedApp
|
||
COXSkinnedApp* pSkinnedApp = DYNAMIC_DOWNCAST(COXSkinnedApp, AfxGetApp());
|
||
if (pSkinnedApp != NULL && pSkinnedApp->GetCurrentSkin() != NULL)
|
||
return pSkinnedApp->GetCurrentSkin()->GetTabSkin();
|
||
else
|
||
{
|
||
// Create a classic skin for this class if not created already
|
||
if (m_pTabSkin == NULL)
|
||
m_pTabSkin = new COXTabSkinClassic();
|
||
|
||
return m_pTabSkin;
|
||
}
|
||
}
|
||
|
||
void COXSkinnedTabCtrl::OnPaint()
|
||
{
|
||
GetTabSkin()->OnPaintTabCtrl(this);
|
||
}
|