// This is a part of the Microsoft Foundation Classes C++ library. // Copyright (C) Microsoft Corporation // All rights reserved. // // This source code is only intended as a supplement to the // Microsoft Foundation Classes Reference and related // electronic documentation provided with the library. // See these sources for detailed information regarding the // Microsoft Foundation Classes product. #include "stdafx.h" #include "afxcontrolbarutil.h" #include "afxvisualmanager.h" #include "afxsplitterwndex.h" #ifdef _DEBUG #define new DEBUG_NEW #endif ///////////////////////////////////////////////////////////////////////////// // CSplitterWndEx IMPLEMENT_DYNAMIC(CSplitterWndEx, CSplitterWnd) CSplitterWndEx::CSplitterWndEx() { } CSplitterWndEx::~CSplitterWndEx() { } BEGIN_MESSAGE_MAP(CSplitterWndEx, CSplitterWnd) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CSplitterWndEx message handlers void CSplitterWndEx::OnDrawSplitter(CDC* pDC, ESplitType nType, const CRect& rectArg) { // if pDC == NULL, then just invalidate if (pDC == NULL) { RedrawWindow(rectArg, NULL, RDW_INVALIDATE|RDW_NOCHILDREN); return; } CRect rect = rectArg; switch (nType) { case splitBorder: CMFCVisualManager::GetInstance()->OnDrawSplitterBorder(pDC, this, rect); return; case splitBox: CMFCVisualManager::GetInstance()->OnDrawSplitterBox(pDC, this, rect); break; case splitIntersection: case splitBar: break; default: ASSERT(FALSE); // unknown splitter type } // fill the middle CMFCVisualManager::GetInstance()->OnFillSplitterBackground(pDC, this, rect); }