📄 clientdoc.cpp
字号:
// clientDoc.cpp : implementation of the CClientDoc class
//
#include "stdafx.h"
#include "client.h"
#include "Msg.h"
#include "clientDoc.h"
#include "clientView.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern CClientApp theApp;
/////////////////////////////////////////////////////////////////////////////
// CClientDoc
IMPLEMENT_DYNCREATE(CClientDoc, CDocument)
BEGIN_MESSAGE_MAP(CClientDoc, CDocument)
//{{AFX_MSG_MAP(CClientDoc)
ON_COMMAND(ID_OP_EXEC, OnOpExec)
ON_UPDATE_COMMAND_UI(ID_OP_EXEC, OnUpdateOpExec)
ON_COMMAND(ID_OP_STEP_EXEC, OnOpStepExec)
ON_UPDATE_COMMAND_UI(ID_OP_STEP_EXEC, OnUpdateOpStepExec)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CClientDoc construction/destruction
CClientDoc::CClientDoc()
{
memset(&m_lf, 0, sizeof(m_lf));
m_lf.lfWeight = FW_NORMAL;
m_lf.lfCharSet = DEFAULT_CHARSET;
m_lf.lfOutPrecision = OUT_DEFAULT_PRECIS;
m_lf.lfClipPrecision = CLIP_DEFAULT_PRECIS;
m_lf.lfQuality = DEFAULT_QUALITY;
m_lf.lfPitchAndFamily = DEFAULT_PITCH | FF_DONTCARE;
strcpy(m_lf.lfFaceName, "宋体");
}
CClientDoc::~CClientDoc()
{
}
BOOL CClientDoc::OnNewDocument()
{
if (!CDocument::OnNewDocument())
return FALSE;
((CCrystalEditView* )m_viewList.GetHead())->SetWindowText("");
m_TextBuffer.InitNew();
return TRUE;
}
/////////////////////////////////////////////////////////////////////////////
// CClientDoc serialization
void CClientDoc::Serialize(CArchive& ar)
{
CCrystalEditView* pView = (CCrystalEditView*)m_viewList.GetHead();
ASSERT_VALID(pView);
ASSERT_KINDOF(CCrystalEditView, pView);
if (ar.IsStoring())
{
}
else
{
}
ASSERT_VALID(this);
}
/////////////////////////////////////////////////////////////////////////////
// CClientDoc diagnostics
#ifdef _DEBUG
void CClientDoc::AssertValid() const
{
CDocument::AssertValid();
}
void CClientDoc::Dump(CDumpContext& dc) const
{
CDocument::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CClientDoc commands
BOOL CClientDoc::OnOpenDocument(LPCTSTR lpszPathName)
{
if (!CDocument::OnOpenDocument(lpszPathName))
return FALSE;
return m_TextBuffer.LoadFromFile(lpszPathName);
}
BOOL CClientDoc::OnSaveDocument(LPCTSTR lpszPathName)
{
return m_TextBuffer.SaveToFile(lpszPathName);
}
void CClientDoc::DeleteContents()
{
CDocument::DeleteContents();
m_TextBuffer.FreeAll();
}
void CClientDoc::OnOpExec()
{
theApp.m_ClientDocList.AddTail( this );
CString str;
if( m_TextBuffer.GetLineCount () > 0 )
m_TextBuffer.GetText(0,0,m_TextBuffer.GetLineCount ()-1,
m_TextBuffer.GetLineLength(m_TextBuffer.GetLineCount ()-1),str);
else
str = _T("");
CMsg msg( COMMAND );
msg.m_msgList.AddTail( str );
theApp.SendMsg( msg );
}
void CClientDoc::OnUpdateOpExec(CCmdUI* pCmdUI)
{
pCmdUI->Enable( theApp.m_bConnection );
}
void CClientDoc::OnOpStepExec()
{
theApp.m_ClientDocList.AddTail( this );
CString str;
if( m_TextBuffer.GetLineCount () > 0 )
m_TextBuffer.GetText(0,0,m_TextBuffer.GetLineCount ()-1,
m_TextBuffer.GetLineLength(m_TextBuffer.GetLineCount ()-1),str);
else
str = _T("");
CMsg msg( STEP_COMMAND );
msg.m_msgList.AddTail( str );
theApp.SendMsg( msg );
}
void CClientDoc::OnUpdateOpStepExec(CCmdUI* pCmdUI)
{
pCmdUI->Enable( theApp.m_bConnection );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -