Question on InitInstance
I create an SDI application and the wizard adds the following code to
InitInstance:
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CEditorDoc),
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CEditorView));
However, in my App, I use a CSplitterWnd and create the views as follows:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT /*lpcs*/,
CCreateContext* pContext)
{
m_bSplitterCreated = m_wndSplitter.CreateStatic(this, 2, 2);
if(!m_bSplitterCreated)
return FALSE;
[...]
// Associate a view with each pane.
if( !m_wndSplitter.CreateView(0,0, RUNTIME_CLASS(CEditorView1),
CSize(w,h), pContext) || !m_wndSplitter.CreateView(0,1,
RUNTIME_CLASS(CEditorView2), CSize(w,h), pContext)||
!m_wndSplitter.CreateView(1,0, RUNTIME_CLASS(CEditorView3), CSize(w,h),
pContext)|| !m_wndSplitter.CreateView(1,1, RUNTIME_CLASS(CEditorView4),
CSize(w,h), pContext))
return FALSE;
return TRUE;
}
So I don't even use the generated CEditorView class, which is referenced in
the CSingleDocTemplate constructor. Is this OK? It seems to be working,
but I would just like to know what is going on behind the scenes. Is
CEditorView just ignored since I override OnCreateClient?