
Public Methods | |
| CHexEditCtrl () | |
Protected Methods | |
| void | TextOutWithCheck (CDC *pdc, const CRect &rcInvalid, int x, int y, CString &strText) |
| bool | EnterNumber () |
| void | ClearSelection () |
| void | DeleteSelection () |
| void | RecalcSelection (CPoint point) |
| bool | IsSelectionEmpty () |
| bool | UpdateScrollBars () |
| void | InvalidateEditRect (long nEditPos) |
| void | DeleteData (DWORD dwPos, DWORD dwCount=1) |
| void | InsertData (DWORD dwPos, DWORD dwCount=1) |
| bool | NormalizeEditPos () |
| void | ChangeEditPos (CPoint pt) |
| void | ChangeEditPos (long dx, long dy, bool bRepaint=false) |
| void | PlaceCaret () |
| void | RecalcLayout () |
| ~CHexEditCtrl () | |
Protected Attributes | |
| COleSafeArray | m_data |
| short | m_digitsInAddress |
| short | m_digitsInData |
| short | m_columns |
| short | m_fontHeight |
| DWORD | m_dwStartAddr |
| bool | m_bDataModified |
| bool | m_bRealShowAscii |
| int | m_nHorzScroll |
| bool | m_bMouseDown |
| bool | m_bMouseMove |
| int | m_posMouseDown |
| CSize | m_charCountWindow |
| CSize | m_charCountView |
| CSize | m_cellSize |
| long | m_selStart |
| long | m_selEnd |
| long | m_editPos |
| long | m_viewPos |
| int | m_nEditDigit |
| int | m_addrMargin |
| int | m_asciiMargin |
| int | m_editMode |
| CRect | m_rcClient |
| bool | m_bTimer |
| CPoint | m_prevMousePoint |
Static Protected Attributes | |
| CString | m_strWindowClass |
| CCriticalSection | _critSect |
|
|
Constructor |
|
|
Destructor |
|
|
Set new edit position after moving caret.
|
|
|
Set new edit position after mouse click.
|
|
|
Clear selection. |
|
|
Delete dwCount numbers (not bytes!) from m_data, starting from dwPos. |
|
|
Delete currently selected data. |
|
|
This function is called prior to entering a new number or ascii byte. It does InsertBytes, scrolling and repainting, if nesessary.
|
|
|
Insert dwCount numbers (not bytes!) in m_data, starting from dwPos. |
|
|
Invalidate rect occupied by number with address nEditPos. |
|
|
Returns true, if nothing is selected, and false otherwise. |
|
|
Update caret position and scroll bars when m_editPos is changed. |
|
|
Calculate co-ordinates and show caret. |
|
|
Compute m_editPos, m_viewPos, margins etc. after changing control properties. |
|
|
Update selection margins when the mouse is moving.
|
|
|
This function calls pdc->TextOut ( x, y, strText ) function if text overlaps with rcInvalid. |
|
|
Recalculate scroll ranges and positions of scrollbars, show or hide scroll bars, if nesessary. |
|
|
Lock for m_strWindowClass. |
|
|
Right margin of address field in chars. |
|
|
Left margin of ASCII field in chars. |
|
|
True if data is modified. |
|
|
True after WM_LBUTTONDOWN, false after WM_LBUTTONUP. |
|
|
True after WM_MOUSEMOVE, false after WM_LBUTTONUP. |
|
|
This value equals the following expression: (m_showAscii && m_digitsInData == 2). |
|
|
True if timer is active. |
|
|
Char size in device points. |
|
|
Total view size in chars. |
|
|
Window size in chars. |
|
|
Number of columns. |
|
|
Data displayed. |
|
|
Number of hex digits shown in address field (4 or 8). |
|
|
Number of hex digits in one number
|
|
|
Starting address to display. |
|
|
This value is a combination of the following flags:
|
|
|
Address of number being edited. |
|
|
Font height. |
|
|
Digit being edited (0 - leftmost). |
|
|
Current horizontal scroll shift in chars. |
|
|
Address of number under mouse cursor in WM_LBUTTONDOWN. |
|
|
Co-ordinates of last point in OnMouseMove. |
|
|
Control client rect. |
|
|
Selection end (in numbers). |
|
|
Selection start (in numbers). |
|
|
Name of the window class. |