www.pudn.com > News Search3.01.rar > BrowseView.cpp
// BrowseView.cpp : implementation file
//
#include "stdafx.h"
#include "NewSearch.h"
#include "BrowseView.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CBrowseView
IMPLEMENT_DYNCREATE(CBrowseView, CEditView)
CBrowseView::CBrowseView()
{
}
CBrowseView::~CBrowseView()
{
}
BEGIN_MESSAGE_MAP(CBrowseView, CEditView)
//{{AFX_MSG_MAP(CBrowseView)
ON_WM_CREATE()
ON_WM_PAINT()
ON_WM_SETCURSOR()
ON_WM_KEYDOWN()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CBrowseView drawing
void CBrowseView::OnDraw(CDC* pDC)
{
CDocument* pDoc = GetDocument();
// TODO: add draw code here
}
/////////////////////////////////////////////////////////////////////////////
// CBrowseView diagnostics
#ifdef _DEBUG
void CBrowseView::AssertValid() const
{
CEditView::AssertValid();
}
void CBrowseView::Dump(CDumpContext& dc) const
{
CEditView::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CBrowseView message handlers
BOOL CBrowseView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Add your specialized code here and/or call the base class
BOOL bPreCreated = CEditView::PreCreateWindow(cs);
cs.style &= ~(ES_AUTOHSCROLL | WS_HSCROLL);
return bPreCreated;
}
int CBrowseView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CEditView::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: Add your specialized creation code here
InitFontSet();
return 0;
}
void CBrowseView::InitFontSet()
{
CFont m_font;
CFont* pFont = GetFont();
LOGFONT lf;
if (pFont != NULL)
pFont->GetObject(sizeof(LOGFONT), &lf);
else
::GetObject(GetStockObject(SYSTEM_FONT), sizeof(LOGFONT), &lf);
lf.lfEscapement = 100;
m_font.CreateFontIndirect(&lf);
SetFont(&m_font);
}
void CBrowseView::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: Add your message handler code here
// Do not call CEditView::OnPaint() for painting messages
}
BOOL CBrowseView::KeyScroll(UINT nChar)
{
switch (nChar)
{
case VK_UP:
OnVScroll(SB_LINEUP,0,NULL);
break;
case VK_DOWN:
OnVScroll(SB_LINEDOWN,0,NULL);
break;
case VK_PRIOR:
OnVScroll(SB_PAGEUP,0,NULL);
break;
case VK_NEXT:
OnVScroll(SB_PAGEDOWN,0,NULL);
break;
default:
return FALSE; // not for us
// and let the default class
// process it.
}
return TRUE;
}
BOOL CBrowseView::UpdateString(CString lpString)
{
GetEditCtrl().SetWindowText(lpString);
return TRUE;
}
BOOL CBrowseView::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
// TODO: Add your message handler code here and/or call default
SetCursor(AfxGetApp()->LoadStandardCursor(IDC_ARROW));
return TRUE;
}
void CBrowseView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
BOOL processed = FALSE;
// for (unsigned int i=0;i< nRepCnt&&processed;i++)
processed=KeyScroll(nChar);
// if (!processed)
// CEditView::OnKeyDown(nChar, nRepCnt, nFlags);
}