-
Notifications
You must be signed in to change notification settings - Fork 0
/
EditTab.cpp
executable file
·73 lines (61 loc) · 1.41 KB
/
EditTab.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// EditTab.cpp : implementation file
//
#include "stdafx.h"
#include "CdCoverCreator2.h"
#include "EditTab.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CEditTab
CEditTab::CEditTab()
{
}
CEditTab::~CEditTab()
{
}
BEGIN_MESSAGE_MAP(CEditTab, CEdit)
//{{AFX_MSG_MAP(CEditTab)
ON_WM_KEYDOWN()
ON_WM_CHAR()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CEditTab message handlers
void CEditTab::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if (nChar == VK_TAB)
{
CWnd* pWndNext = GetNextWindow ((::GetKeyState (VK_SHIFT) & 0x8000) ? GW_HWNDPREV : GW_HWNDNEXT);
pWndNext->SetFocus ();
pWndNext->SendMessage (EM_SETSEL, 0, -1);
}
else
CEdit::OnKeyDown(nChar, nRepCnt, nFlags);
}
void CEditTab::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
if (nChar != VK_TAB)
CEdit::OnChar(nChar, nRepCnt, nFlags);
}
BOOL CEditTab::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message == WM_KEYDOWN)
{
if (::GetKeyState (VK_CONTROL) & 0x8000)
{
switch (pMsg->wParam)
{
case 'C':
Copy (); return TRUE;
case 'V':
Paste (); return TRUE;
case 'X':
Cut (); return TRUE;
}
}
}
return CEdit::PreTranslateMessage(pMsg);
}