[User Interface] Rename CEditNumber to CEditNumber32
This commit is contained in:
parent
6fa3be42cd
commit
188d6ae6d1
|
@ -19,7 +19,7 @@ LRESULT CAddSymbolDlg::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*l
|
||||||
CenterWindow();
|
CenterWindow();
|
||||||
|
|
||||||
m_AddressEdit.Attach(GetDlgItem(IDC_ADDR_EDIT));
|
m_AddressEdit.Attach(GetDlgItem(IDC_ADDR_EDIT));
|
||||||
m_AddressEdit.SetDisplayType(CEditNumber::DisplayHex);
|
m_AddressEdit.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_TypeComboBox.Attach(GetDlgItem(IDC_TYPE_COMBOBOX));
|
m_TypeComboBox.Attach(GetDlgItem(IDC_TYPE_COMBOBOX));
|
||||||
m_NameEdit.Attach(GetDlgItem(IDC_NAME_EDIT));
|
m_NameEdit.Attach(GetDlgItem(IDC_NAME_EDIT));
|
||||||
m_DescriptionEdit.Attach(GetDlgItem(IDC_DESC_EDIT));
|
m_DescriptionEdit.Attach(GetDlgItem(IDC_DESC_EDIT));
|
||||||
|
|
|
@ -30,7 +30,7 @@ private:
|
||||||
uint32_t m_InitAddress;
|
uint32_t m_InitAddress;
|
||||||
int m_InitType;
|
int m_InitType;
|
||||||
|
|
||||||
CEditNumber m_AddressEdit;
|
CEditNumber32 m_AddressEdit;
|
||||||
CComboBox m_TypeComboBox;
|
CComboBox m_TypeComboBox;
|
||||||
CEdit m_NameEdit;
|
CEdit m_NameEdit;
|
||||||
CEdit m_DescriptionEdit;
|
CEdit m_DescriptionEdit;
|
||||||
|
@ -46,5 +46,5 @@ private:
|
||||||
MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
|
MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
|
||||||
COMMAND_CODE_HANDLER(BN_CLICKED, OnClicked)
|
COMMAND_CODE_HANDLER(BN_CLICKED, OnClicked)
|
||||||
MSG_WM_DESTROY(OnDestroy)
|
MSG_WM_DESTROY(OnDestroy)
|
||||||
END_MSG_MAP()
|
END_MSG_MAP()
|
||||||
};
|
};
|
||||||
|
|
|
@ -86,11 +86,11 @@ LRESULT CDebugCommandsView::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARA
|
||||||
GetWindowRect(&m_DefaultWindowRect);
|
GetWindowRect(&m_DefaultWindowRect);
|
||||||
|
|
||||||
// Setup address input
|
// Setup address input
|
||||||
m_AddressEdit.SetDisplayType(CEditNumber::DisplayHex);
|
m_AddressEdit.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_AddressEdit.SetLimitText(8);
|
m_AddressEdit.SetLimitText(8);
|
||||||
|
|
||||||
// Setup PC register input
|
// Setup PC register input
|
||||||
m_PCEdit.SetDisplayType(CEditNumber::DisplayHex);
|
m_PCEdit.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_PCEdit.SetLimitText(8);
|
m_PCEdit.SetLimitText(8);
|
||||||
|
|
||||||
m_bIgnorePCChange = true;
|
m_bIgnorePCChange = true;
|
||||||
|
|
|
@ -95,10 +95,10 @@ private:
|
||||||
DWORD m_StartAddress;
|
DWORD m_StartAddress;
|
||||||
CRect m_DefaultWindowRect;
|
CRect m_DefaultWindowRect;
|
||||||
|
|
||||||
CEditNumber m_PCEdit;
|
CEditNumber32 m_PCEdit;
|
||||||
bool m_bIgnorePCChange;
|
bool m_bIgnorePCChange;
|
||||||
|
|
||||||
CEditNumber m_AddressEdit;
|
CEditNumber32 m_AddressEdit;
|
||||||
bool m_bIgnoreAddrChange;
|
bool m_bIgnoreAddrChange;
|
||||||
|
|
||||||
CCommandList m_CommandList;
|
CCommandList m_CommandList;
|
||||||
|
|
|
@ -31,9 +31,9 @@ LRESULT CDumpMemory::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lPa
|
||||||
m_FormatList.Attach(GetDlgItem(IDC_FORMAT));
|
m_FormatList.Attach(GetDlgItem(IDC_FORMAT));
|
||||||
m_FileName.Attach(GetDlgItem(IDC_FILENAME));
|
m_FileName.Attach(GetDlgItem(IDC_FILENAME));
|
||||||
|
|
||||||
m_StartAddress.SetDisplayType(CEditNumber::DisplayHex);
|
m_StartAddress.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_EndAddress.SetDisplayType(CEditNumber::DisplayHex);
|
m_EndAddress.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_PC.SetDisplayType(CEditNumber::DisplayHex);
|
m_PC.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
|
|
||||||
uint32_t startAddress = 0x80000000;
|
uint32_t startAddress = 0x80000000;
|
||||||
uint32_t endAddress = startAddress + (g_MMU ? g_MMU->RdramSize() : 0x400000);
|
uint32_t endAddress = startAddress + (g_MMU ? g_MMU->RdramSize() : 0x400000);
|
||||||
|
|
|
@ -42,5 +42,5 @@ private:
|
||||||
|
|
||||||
CComboBox m_FormatList;
|
CComboBox m_FormatList;
|
||||||
CEdit m_FileName;
|
CEdit m_FileName;
|
||||||
CEditNumber m_StartAddress, m_EndAddress, m_PC;
|
CEditNumber32 m_StartAddress, m_EndAddress, m_PC;
|
||||||
};
|
};
|
||||||
|
|
|
@ -41,14 +41,14 @@ void CDebugMemorySearch::AddAlignmentOptions(CComboBox & ctrl)
|
||||||
LRESULT CDebugMemorySearch::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
|
LRESULT CDebugMemorySearch::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/)
|
||||||
{
|
{
|
||||||
m_PAddrStart.Attach(GetDlgItem(IDC_PADDR_START));
|
m_PAddrStart.Attach(GetDlgItem(IDC_PADDR_START));
|
||||||
m_PAddrStart.SetDisplayType(CEditNumber::DisplayHex);
|
m_PAddrStart.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_SearchLen.Attach(GetDlgItem(IDC_ADDR_END));
|
m_SearchLen.Attach(GetDlgItem(IDC_ADDR_END));
|
||||||
m_SearchLen.SetDisplayType(CEditNumber::DisplayHex);
|
m_SearchLen.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_SearchValue.Attach(GetDlgItem(IDC_SEARCH_VALUE));
|
m_SearchValue.Attach(GetDlgItem(IDC_SEARCH_VALUE));
|
||||||
m_SearchValue.SetDisplayType(CEditNumber::DisplayDec);
|
m_SearchValue.SetDisplayType(CEditNumber32::DisplayDec);
|
||||||
m_SearchValue.SetValue(0);
|
m_SearchValue.SetValue(0);
|
||||||
m_MaxSearch.Attach(GetDlgItem(IDC_MAX_SEARCH));
|
m_MaxSearch.Attach(GetDlgItem(IDC_MAX_SEARCH));
|
||||||
m_MaxSearch.SetDisplayType(CEditNumber::DisplayDec);
|
m_MaxSearch.SetDisplayType(CEditNumber32::DisplayDec);
|
||||||
m_MaxSearch.SetValue(50000);
|
m_MaxSearch.SetValue(50000);
|
||||||
m_UnknownSize.Attach(GetDlgItem(IDC_UNKNOWN_ALIGN));
|
m_UnknownSize.Attach(GetDlgItem(IDC_UNKNOWN_ALIGN));
|
||||||
AddAlignmentOptions(m_UnknownSize);
|
AddAlignmentOptions(m_UnknownSize);
|
||||||
|
@ -97,7 +97,7 @@ LRESULT CDebugMemorySearch::OnClicked(WORD /*wNotifyCode*/, WORD wID, HWND hWndC
|
||||||
case IDC_SEARCH_HEX:
|
case IDC_SEARCH_HEX:
|
||||||
{
|
{
|
||||||
bool bChecked = (SendMessage(hWndCtl, BM_GETSTATE, 0, 0) & BST_CHECKED) != 0;
|
bool bChecked = (SendMessage(hWndCtl, BM_GETSTATE, 0, 0) & BST_CHECKED) != 0;
|
||||||
m_SearchValue.SetDisplayType(bChecked ? CEditNumber::DisplayHex : CEditNumber::DisplayDec);
|
m_SearchValue.SetDisplayType(bChecked ? CEditNumber32::DisplayHex : CEditNumber32::DisplayDec);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case ID_POPUP_SHOWINMEMORYVIEWER:
|
case ID_POPUP_SHOWINMEMORYVIEWER:
|
||||||
|
|
|
@ -54,7 +54,7 @@ private:
|
||||||
COMMAND_CODE_HANDLER(BN_CLICKED, OnClicked)
|
COMMAND_CODE_HANDLER(BN_CLICKED, OnClicked)
|
||||||
NOTIFY_HANDLER_EX(IDC_LST_RESULTS, NM_RCLICK, OnResultRClick)
|
NOTIFY_HANDLER_EX(IDC_LST_RESULTS, NM_RCLICK, OnResultRClick)
|
||||||
NOTIFY_HANDLER_EX(IDC_LST_RESULTS, NM_DBLCLK, OnResultDblClick)
|
NOTIFY_HANDLER_EX(IDC_LST_RESULTS, NM_DBLCLK, OnResultDblClick)
|
||||||
END_MSG_MAP()
|
END_MSG_MAP()
|
||||||
|
|
||||||
LRESULT OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
|
LRESULT OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
|
||||||
LRESULT OnClicked(WORD wNotifyCode, WORD wID, HWND /*hWndCtl*/, BOOL& bHandled);
|
LRESULT OnClicked(WORD wNotifyCode, WORD wID, HWND /*hWndCtl*/, BOOL& bHandled);
|
||||||
|
@ -67,7 +67,7 @@ private:
|
||||||
void EnableJalOptions(bool Enable);
|
void EnableJalOptions(bool Enable);
|
||||||
void AddAlignmentOptions(CComboBox & ctrl);
|
void AddAlignmentOptions(CComboBox & ctrl);
|
||||||
|
|
||||||
CEditNumber m_PAddrStart, m_SearchLen, m_SearchValue, m_MaxSearch;
|
CEditNumber32 m_PAddrStart, m_SearchLen, m_SearchValue, m_MaxSearch;
|
||||||
CComboBox m_UnknownOptions, m_ValueSize, m_UnknownSize;
|
CComboBox m_UnknownOptions, m_ValueSize, m_UnknownSize;
|
||||||
CListViewCtrl m_SearchResults;
|
CListViewCtrl m_SearchResults;
|
||||||
SearchResult m_SearchResult;
|
SearchResult m_SearchResult;
|
||||||
|
|
|
@ -631,13 +631,13 @@ void CRegisterTabs::SetColorsEnabled(bool bColorsEnabled)
|
||||||
m_bColorsEnabled = bColorsEnabled;
|
m_bColorsEnabled = bColorsEnabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CRegisterTabs::InitRegisterEdit(CWindow& tab, CEditNumber& edit, WORD ctrlId)
|
void CRegisterTabs::InitRegisterEdit(CWindow& tab, CEditNumber32& edit, WORD ctrlId)
|
||||||
{
|
{
|
||||||
edit.Attach(tab.GetDlgItem(ctrlId));
|
edit.Attach(tab.GetDlgItem(ctrlId));
|
||||||
edit.SetDisplayType(CEditNumber::DisplayHex);
|
edit.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CRegisterTabs::InitRegisterEdits(CWindow& tab, CEditNumber* edits, const WORD* ctrlIds, uint32_t ctrlIdsCount)
|
void CRegisterTabs::InitRegisterEdits(CWindow& tab, CEditNumber32* edits, const WORD* ctrlIds, uint32_t ctrlIdsCount)
|
||||||
{
|
{
|
||||||
for (int i = 0, n = ctrlIdsCount; i < n; i++)
|
for (int i = 0, n = ctrlIdsCount; i < n; i++)
|
||||||
{
|
{
|
||||||
|
@ -658,12 +658,12 @@ void CRegisterTabs::InitRegisterEdits64(CWindow& tab, CEditReg64* edits, const W
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CRegisterTabs::ZeroRegisterEdit(CEditNumber& edit)
|
void CRegisterTabs::ZeroRegisterEdit(CEditNumber32& edit)
|
||||||
{
|
{
|
||||||
edit.SetValue(0, false, true);
|
edit.SetValue(0, false, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CRegisterTabs::ZeroRegisterEdits(CEditNumber* edits, uint32_t ctrlIdsCount)
|
void CRegisterTabs::ZeroRegisterEdits(CEditNumber32* edits, uint32_t ctrlIdsCount)
|
||||||
{
|
{
|
||||||
for (int i = 0, n = ctrlIdsCount; i < n; i++)
|
for (int i = 0, n = ctrlIdsCount; i < n; i++)
|
||||||
{
|
{
|
||||||
|
|
|
@ -200,43 +200,43 @@ private:
|
||||||
CEditReg64 m_LOEdit;
|
CEditReg64 m_LOEdit;
|
||||||
|
|
||||||
CWindow m_FPRTab;
|
CWindow m_FPRTab;
|
||||||
CEditNumber m_FPREdits[sizeof(FPREditIds) / sizeof(FPREditIds[0])];
|
CEditNumber32 m_FPREdits[sizeof(FPREditIds) / sizeof(FPREditIds[0])];
|
||||||
CEditNumber m_FCSREdit;
|
CEditNumber32 m_FCSREdit;
|
||||||
|
|
||||||
CWindow m_COP0Tab;
|
CWindow m_COP0Tab;
|
||||||
CEditNumber m_COP0Edits[sizeof(COP0EditIds) / sizeof(COP0EditIds[0])];
|
CEditNumber32 m_COP0Edits[sizeof(COP0EditIds) / sizeof(COP0EditIds[0])];
|
||||||
CStatic m_CauseTip;
|
CStatic m_CauseTip;
|
||||||
|
|
||||||
CWindow m_RDRAMTab;
|
CWindow m_RDRAMTab;
|
||||||
CEditNumber m_RDRAMEdits[sizeof(RDRAMEditIds) / sizeof(RDRAMEditIds[0])];
|
CEditNumber32 m_RDRAMEdits[sizeof(RDRAMEditIds) / sizeof(RDRAMEditIds[0])];
|
||||||
|
|
||||||
CWindow m_SPTab;
|
CWindow m_SPTab;
|
||||||
CEditNumber m_SPEdits[sizeof(SPEditIds) / sizeof(SPEditIds[0])];
|
CEditNumber32 m_SPEdits[sizeof(SPEditIds) / sizeof(SPEditIds[0])];
|
||||||
CEditNumber m_SPPCEdit;
|
CEditNumber32 m_SPPCEdit;
|
||||||
|
|
||||||
CWindow m_DPCTab;
|
CWindow m_DPCTab;
|
||||||
CEditNumber m_DPCEdits[sizeof(DPCEditIds) / sizeof(DPCEditIds[0])];
|
CEditNumber32 m_DPCEdits[sizeof(DPCEditIds) / sizeof(DPCEditIds[0])];
|
||||||
|
|
||||||
CWindow m_MITab;
|
CWindow m_MITab;
|
||||||
CEditNumber m_MIEdits[sizeof(MIEditIds) / sizeof(MIEditIds[0])];
|
CEditNumber32 m_MIEdits[sizeof(MIEditIds) / sizeof(MIEditIds[0])];
|
||||||
|
|
||||||
CWindow m_VITab;
|
CWindow m_VITab;
|
||||||
CEditNumber m_VIEdits[sizeof(VIEditIds) / sizeof(VIEditIds[0])];
|
CEditNumber32 m_VIEdits[sizeof(VIEditIds) / sizeof(VIEditIds[0])];
|
||||||
|
|
||||||
CWindow m_AITab;
|
CWindow m_AITab;
|
||||||
CEditNumber m_AIEdits[sizeof(AIEditIds) / sizeof(AIEditIds[0])];
|
CEditNumber32 m_AIEdits[sizeof(AIEditIds) / sizeof(AIEditIds[0])];
|
||||||
|
|
||||||
CWindow m_PITab;
|
CWindow m_PITab;
|
||||||
CEditNumber m_PIEdits[sizeof(PIEditIds) / sizeof(PIEditIds[0])];
|
CEditNumber32 m_PIEdits[sizeof(PIEditIds) / sizeof(PIEditIds[0])];
|
||||||
|
|
||||||
CWindow m_RITab;
|
CWindow m_RITab;
|
||||||
CEditNumber m_RIEdits[sizeof(RIEditIds) / sizeof(RIEditIds[0])];
|
CEditNumber32 m_RIEdits[sizeof(RIEditIds) / sizeof(RIEditIds[0])];
|
||||||
|
|
||||||
CWindow m_SITab;
|
CWindow m_SITab;
|
||||||
CEditNumber m_SIEdits[sizeof(SIEditIds) / sizeof(SIEditIds[0])];
|
CEditNumber32 m_SIEdits[sizeof(SIEditIds) / sizeof(SIEditIds[0])];
|
||||||
|
|
||||||
CWindow m_DDTab;
|
CWindow m_DDTab;
|
||||||
CEditNumber m_DDEdits[sizeof(DDEditIds) / sizeof(DDEditIds[0])];
|
CEditNumber32 m_DDEdits[sizeof(DDEditIds) / sizeof(DDEditIds[0])];
|
||||||
|
|
||||||
static void RegisterChanged(HWND hDlg, TAB_ID srcTabId, WPARAM wParam);
|
static void RegisterChanged(HWND hDlg, TAB_ID srcTabId, WPARAM wParam);
|
||||||
|
|
||||||
|
@ -244,12 +244,12 @@ private:
|
||||||
static INT_PTR CALLBACK TabProcGPR(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam);
|
static INT_PTR CALLBACK TabProcGPR(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||||
static INT_PTR CALLBACK TabProcFPR(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam);
|
static INT_PTR CALLBACK TabProcFPR(HWND hDlg, UINT msg, WPARAM wParam, LPARAM lParam);
|
||||||
|
|
||||||
static void InitRegisterEdit(CWindow& tab, CEditNumber& edit, WORD ctrlId);
|
static void InitRegisterEdit(CWindow& tab, CEditNumber32& edit, WORD ctrlId);
|
||||||
static void InitRegisterEdits(CWindow& tab, CEditNumber* edits, const WORD* ctrlIds, uint32_t ctrlIdsCount);
|
static void InitRegisterEdits(CWindow& tab, CEditNumber32* edits, const WORD* ctrlIds, uint32_t ctrlIdsCount);
|
||||||
static void InitRegisterEdit64(CWindow& tab, CEditReg64& edit, WORD ctrlId);
|
static void InitRegisterEdit64(CWindow& tab, CEditReg64& edit, WORD ctrlId);
|
||||||
static void InitRegisterEdits64(CWindow& tab, CEditReg64* edits, const WORD* ctrlIds, uint32_t ctrlIdsCount);
|
static void InitRegisterEdits64(CWindow& tab, CEditReg64* edits, const WORD* ctrlIds, uint32_t ctrlIdsCount);
|
||||||
static void ZeroRegisterEdit(CEditNumber& edit);
|
static void ZeroRegisterEdit(CEditNumber32& edit);
|
||||||
static void ZeroRegisterEdits(CEditNumber* edits, uint32_t ctrlIdsCount);
|
static void ZeroRegisterEdits(CEditNumber32* edits, uint32_t ctrlIdsCount);
|
||||||
static void ZeroRegisterEdit64(CEditReg64& edit);
|
static void ZeroRegisterEdit64(CEditReg64& edit);
|
||||||
static void ZeroRegisterEdits64(CEditReg64* edits, uint32_t ctrlIdsCount);
|
static void ZeroRegisterEdits64(CEditReg64* edits, uint32_t ctrlIdsCount);
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ LRESULT CDebugMemoryView::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM
|
||||||
}
|
}
|
||||||
|
|
||||||
m_MemAddr.Attach(GetDlgItem(IDC_ADDR_EDIT));
|
m_MemAddr.Attach(GetDlgItem(IDC_ADDR_EDIT));
|
||||||
m_MemAddr.SetDisplayType(CEditNumber::DisplayHex);
|
m_MemAddr.SetDisplayType(CEditNumber32::DisplayHex);
|
||||||
m_MemAddr.SetValue(0x80000000, false, true);
|
m_MemAddr.SetValue(0x80000000, false, true);
|
||||||
|
|
||||||
SendDlgItemMessage(IDC_CHK_VADDR, BM_SETCHECK, BST_CHECKED, 0);
|
SendDlgItemMessage(IDC_CHK_VADDR, BM_SETCHECK, BST_CHECKED, 0);
|
||||||
|
|
|
@ -66,7 +66,7 @@ private:
|
||||||
|
|
||||||
void InterceptMouseWheel(WPARAM wParam, LPARAM lParam);
|
void InterceptMouseWheel(WPARAM wParam, LPARAM lParam);
|
||||||
|
|
||||||
CEditNumber m_MemAddr;
|
CEditNumber32 m_MemAddr;
|
||||||
CListCtrl * m_MemoryList;
|
CListCtrl * m_MemoryList;
|
||||||
CAddSymbolDlg m_AddSymbolDlg;
|
CAddSymbolDlg m_AddSymbolDlg;
|
||||||
CStatic m_SymInfo;
|
CStatic m_SymInfo;
|
||||||
|
|
|
@ -9,17 +9,18 @@
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
#include "stdafx.h"
|
#include "stdafx.h"
|
||||||
|
#include "EditNumber32.h"
|
||||||
|
|
||||||
CEditNumber::CEditNumber(void) :
|
CEditNumber32::CEditNumber32(void) :
|
||||||
m_DisplayType(DisplayDec)
|
m_DisplayType(DisplayDec)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
CEditNumber::~CEditNumber(void)
|
CEditNumber32::~CEditNumber32(void)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CEditNumber::IsHexConvertableText(LPTSTR _text)
|
bool CEditNumber32::IsHexConvertableText(LPTSTR _text)
|
||||||
{
|
{
|
||||||
int start, end;
|
int start, end;
|
||||||
GetSel(start, end);
|
GetSel(start, end);
|
||||||
|
@ -35,9 +36,11 @@ bool CEditNumber::IsHexConvertableText(LPTSTR _text)
|
||||||
if (second == 'X' || second == 'x')
|
if (second == 'X' || second == 'x')
|
||||||
{
|
{
|
||||||
if (end <= 1)
|
if (end <= 1)
|
||||||
|
{
|
||||||
bPaste = false;
|
bPaste = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (!bPaste) return bPaste;
|
if (!bPaste) { return bPaste; }
|
||||||
//Check
|
//Check
|
||||||
unsigned int i = 0;
|
unsigned int i = 0;
|
||||||
if (strlen(_text) >= 2)
|
if (strlen(_text) >= 2)
|
||||||
|
@ -45,11 +48,17 @@ bool CEditNumber::IsHexConvertableText(LPTSTR _text)
|
||||||
if (_text[0] == '0' && (_text[1] == 'x' || _text[1] == 'X'))
|
if (_text[0] == '0' && (_text[1] == 'x' || _text[1] == 'X'))
|
||||||
{
|
{
|
||||||
if ((second == 'x' || second == 'X') && (!(start == 0 && end >= 2)))
|
if ((second == 'x' || second == 'X') && (!(start == 0 && end >= 2)))
|
||||||
|
{
|
||||||
bPaste = false;
|
bPaste = false;
|
||||||
|
}
|
||||||
else if (start > 0)
|
else if (start > 0)
|
||||||
|
{
|
||||||
bPaste = false;
|
bPaste = false;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
i += 2;
|
i += 2;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!bPaste) return bPaste;
|
if (!bPaste) return bPaste;
|
||||||
|
@ -62,9 +71,13 @@ bool CEditNumber::IsHexConvertableText(LPTSTR _text)
|
||||||
if ((_text[0] == 'x' || _text[0] == 'X'))
|
if ((_text[0] == 'x' || _text[0] == 'X'))
|
||||||
{
|
{
|
||||||
if (head != '0'&&start == 0)
|
if (head != '0'&&start == 0)
|
||||||
|
{
|
||||||
bPaste = false;
|
bPaste = false;
|
||||||
|
}
|
||||||
else if (!(start == 1 && end >= 1 && head == '0'))
|
else if (!(start == 1 && end >= 1 && head == '0'))
|
||||||
|
{
|
||||||
bPaste = false;
|
bPaste = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!bPaste) return bPaste;
|
if (!bPaste) return bPaste;
|
||||||
|
@ -80,14 +93,14 @@ bool CEditNumber::IsHexConvertableText(LPTSTR _text)
|
||||||
return bPaste;
|
return bPaste;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CEditNumber::FormatClipboard()
|
void CEditNumber32::FormatClipboard()
|
||||||
{
|
{
|
||||||
LPTSTR lptstr, lptstrCopy;
|
LPTSTR lptstr, lptstrCopy;
|
||||||
HGLOBAL hglb;
|
HGLOBAL hglb;
|
||||||
if (!this->OpenClipboard())
|
if (!this->OpenClipboard() || !IsClipboardFormatAvailable(CF_TEXT))
|
||||||
return;
|
{
|
||||||
if (!IsClipboardFormatAvailable(CF_TEXT))
|
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
hglb = GetClipboardData(CF_TEXT);
|
hglb = GetClipboardData(CF_TEXT);
|
||||||
if (hglb != NULL)
|
if (hglb != NULL)
|
||||||
{
|
{
|
||||||
|
@ -95,12 +108,15 @@ void CEditNumber::FormatClipboard()
|
||||||
for (unsigned int i = 0; i < strlen(lptstr); i++)
|
for (unsigned int i = 0; i < strlen(lptstr); i++)
|
||||||
{
|
{
|
||||||
if (lptstr[i] != 'X'&&lptstr[i] != 'x')
|
if (lptstr[i] != 'X'&&lptstr[i] != 'x')
|
||||||
|
{
|
||||||
lptstr[i] = (char)toupper(lptstr[i]);
|
lptstr[i] = (char)toupper(lptstr[i]);
|
||||||
|
}
|
||||||
if (lptstr[i] == 'X')
|
if (lptstr[i] == 'X')
|
||||||
|
{
|
||||||
lptstr[i] = 'x';
|
lptstr[i] = 'x';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
hglb = GlobalAlloc(GMEM_MOVEABLE,
|
hglb = GlobalAlloc(GMEM_MOVEABLE, (strlen(lptstr) + 1) * sizeof(TCHAR));
|
||||||
(strlen(lptstr) + 1) * sizeof(TCHAR));
|
|
||||||
if (hglb == NULL)
|
if (hglb == NULL)
|
||||||
{
|
{
|
||||||
CloseClipboard();
|
CloseClipboard();
|
||||||
|
@ -115,13 +131,13 @@ void CEditNumber::FormatClipboard()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
LRESULT CEditNumber::OnValidateValue(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled)
|
LRESULT CEditNumber32::OnValidateValue(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled)
|
||||||
{
|
{
|
||||||
bHandled = true;
|
bHandled = true;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
LRESULT CEditNumber::OnPaste(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled)
|
LRESULT CEditNumber32::OnPaste(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled)
|
||||||
{
|
{
|
||||||
//Paste
|
//Paste
|
||||||
bHandled = false;
|
bHandled = false;
|
||||||
|
@ -156,7 +172,7 @@ LRESULT CEditNumber::OnPaste(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
LRESULT CEditNumber::OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
LRESULT CEditNumber32::OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
||||||
{
|
{
|
||||||
int start, end;
|
int start, end;
|
||||||
GetSel(start, end);
|
GetSel(start, end);
|
||||||
|
@ -244,24 +260,24 @@ LRESULT CEditNumber::OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bH
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL CEditNumber::Attach(HWND hWndNew)
|
BOOL CEditNumber32::Attach(HWND hWndNew)
|
||||||
{
|
{
|
||||||
return SubclassWindow(hWndNew);
|
return SubclassWindow(hWndNew);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL CEditNumber::AttachToDlgItem(HWND parent, UINT dlgID)
|
BOOL CEditNumber32::AttachToDlgItem(HWND parent, UINT dlgID)
|
||||||
{
|
{
|
||||||
return SubclassWindow(::GetDlgItem(parent, dlgID));
|
return SubclassWindow(::GetDlgItem(parent, dlgID));
|
||||||
}
|
}
|
||||||
|
|
||||||
void CEditNumber::SetDisplayType(DisplayType Type)
|
void CEditNumber32::SetDisplayType(DisplayType Type)
|
||||||
{
|
{
|
||||||
DWORD lCurrentValue = GetValue();
|
DWORD lCurrentValue = GetValue();
|
||||||
m_DisplayType = Type;
|
m_DisplayType = Type;
|
||||||
SetValue(lCurrentValue);
|
SetValue(lCurrentValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
DWORD CEditNumber::GetValue(void)
|
uint32_t CEditNumber32::GetValue(void)
|
||||||
{
|
{
|
||||||
char text[200];
|
char text[200];
|
||||||
GetWindowText(text, sizeof(text));
|
GetWindowText(text, sizeof(text));
|
||||||
|
@ -280,7 +296,8 @@ DWORD CEditNumber::GetValue(void)
|
||||||
for (size_t i = Start; i < Finish; i++)
|
for (size_t i = Start; i < Finish; i++)
|
||||||
{
|
{
|
||||||
Value = (Value << 4);
|
Value = (Value << 4);
|
||||||
switch (text[i]) {
|
switch (text[i])
|
||||||
|
{
|
||||||
case '0': break;
|
case '0': break;
|
||||||
case '1': Value += 1; break;
|
case '1': Value += 1; break;
|
||||||
case '2': Value += 2; break;
|
case '2': Value += 2; break;
|
||||||
|
@ -311,14 +328,15 @@ DWORD CEditNumber::GetValue(void)
|
||||||
return Value;
|
return Value;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CEditNumber::SetValue(DWORD Value, bool ShowHexIdent, bool ZeroExtend)
|
void CEditNumber32::SetValue(uint32_t Value, bool ShowHexIdent, bool ZeroExtend)
|
||||||
{
|
{
|
||||||
char text[200];
|
char text[200];
|
||||||
if (m_DisplayType == DisplayDec)
|
if (m_DisplayType == DisplayDec)
|
||||||
{
|
{
|
||||||
sprintf(text, "%d", Value);
|
sprintf(text, "%d", Value);
|
||||||
}
|
}
|
||||||
else {
|
else
|
||||||
|
{
|
||||||
sprintf(text, "%s%0*X", ShowHexIdent ? "0x" : "", ZeroExtend ? 8 : 0, Value);
|
sprintf(text, "%s%0*X", ShowHexIdent ? "0x" : "", ZeroExtend ? 8 : 0, Value);
|
||||||
}
|
}
|
||||||
SetWindowText(text);
|
SetWindowText(text);
|
||||||
|
|
|
@ -11,10 +11,9 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <wtl/atlctrls.h>
|
#include <wtl/atlctrls.h>
|
||||||
#include <stdio.h>
|
|
||||||
|
|
||||||
class CEditNumber :
|
class CEditNumber32 :
|
||||||
public CWindowImpl<CEditNumber, CEdit>
|
public CWindowImpl<CEditNumber32, CEdit>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
enum DisplayType
|
enum DisplayType
|
||||||
|
@ -23,6 +22,15 @@ public:
|
||||||
DisplayDec,
|
DisplayDec,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
CEditNumber32(void);
|
||||||
|
virtual ~CEditNumber32(void);
|
||||||
|
|
||||||
|
BOOL Attach(HWND hWndNew);
|
||||||
|
BOOL AttachToDlgItem(HWND parent, UINT dlgID);
|
||||||
|
void SetDisplayType(DisplayType Type);
|
||||||
|
uint32_t GetValue(void);
|
||||||
|
void SetValue(uint32_t Value, bool ShowHexIdent = true, bool ZeroExtend = false);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
|
@ -31,7 +39,7 @@ protected:
|
||||||
|
|
||||||
DisplayType m_DisplayType;
|
DisplayType m_DisplayType;
|
||||||
|
|
||||||
BEGIN_MSG_MAP(CEditNumber)
|
BEGIN_MSG_MAP(CEditNumber32)
|
||||||
MESSAGE_HANDLER(WM_CHAR, OnKeyDown)
|
MESSAGE_HANDLER(WM_CHAR, OnKeyDown)
|
||||||
MESSAGE_HANDLER(WM_KEYDOWN, OnKeyDown)
|
MESSAGE_HANDLER(WM_KEYDOWN, OnKeyDown)
|
||||||
MESSAGE_HANDLER(WM_PASTE, OnPaste)
|
MESSAGE_HANDLER(WM_PASTE, OnPaste)
|
||||||
|
@ -41,17 +49,7 @@ protected:
|
||||||
bool IsHexConvertableText(LPTSTR _text);
|
bool IsHexConvertableText(LPTSTR _text);
|
||||||
void FormatClipboard();
|
void FormatClipboard();
|
||||||
|
|
||||||
LRESULT OnValidateValue(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled);
|
LRESULT OnValidateValue(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
|
||||||
LRESULT OnPaste(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& bHandled);
|
LRESULT OnPaste(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
|
||||||
LRESULT OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
|
LRESULT OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
|
||||||
|
|
||||||
public:
|
|
||||||
CEditNumber(void);
|
|
||||||
virtual ~CEditNumber(void);
|
|
||||||
|
|
||||||
BOOL Attach(HWND hWndNew);
|
|
||||||
BOOL AttachToDlgItem(HWND parent, UINT dlgID);
|
|
||||||
void SetDisplayType(DisplayType Type);
|
|
||||||
DWORD GetValue(void);
|
|
||||||
void SetValue(DWORD Value, bool ShowHexIdent = true, bool ZeroExtend = false);
|
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue