MCPcopy Create free account
hub / github.com/BeneficialCode/WinArk / CHexControl

Class CHexControl

WinArk/HexControl.h:67–170  ·  view source on GitHub ↗

WTL ˫���崰��

Source from the content-addressed store, hash-verified

65
66// WTL ˫���崰��
67class CHexControl :
68 public CBufferedPaintWindowImpl<CHexControl> {
69public:
70 DECLARE_WND_CLASS_EX(L"WTLHexControl",CS_OWNDC|CS_DBLCLKS|CS_HREDRAW|CS_VREDRAW,NULL)
71
72 HWND GetHwnd() const;
73 void SetBufferManager(IBufferManager* mgr);
74 IBufferManager* GetBufferManager() const;
75 void SetReadOnly(bool readonly);
76 bool IsReadOnly() const;
77 void SetAllowExtension(bool allow);
78 bool IsAllowExtension() const;
79 void SetSize(int64_t size);
80 bool SetDataSize(int32_t size);
81 int32_t GetDataSize() const;
82 bool SetBytesPerLine(int32_t bytesPerLine);
83 int32_t GetBytesPerLine() const;
84 bool Copy(int64_t offset = -1, int64_t size = 0);
85 bool Paste(int64_t offset = -1);
86 bool CanCopy() const;
87 bool CanPaste() const;
88 bool Cut(int64_t offset = -1, int64_t size = 0);
89 bool Delete(int64_t offset = -1, int64_t size = 0);
90 bool CanCut() const;
91 bool CanDelete() const;
92 int64_t SetBiasOffset(int64_t offset);
93 int64_t GetBiasOffset() const;
94 HexControlColors& GetColors();
95 std::wstring GetText(int64_t offset, int64_t size);
96 void Refresh();
97
98
99 BEGIN_MSG_MAP(CHexControl)
100 MESSAGE_HANDLER(WM_LBUTTONDOWN, OnLeftButtonDown)
101 MESSAGE_HANDLER(WM_SIZE, OnSize)
102 MESSAGE_HANDLER(WM_KEYDOWN, OnKeyDown)
103 MESSAGE_HANDLER(WM_MOUSEMOVE, OnMouseMove)
104 MESSAGE_HANDLER(WM_LBUTTONUP, OnLeftButtonUp)
105 MESSAGE_HANDLER(WM_CHAR, OnChar)
106 MESSAGE_HANDLER(WM_CREATE, OnCreate)
107 MESSAGE_HANDLER(WM_VSCROLL, OnVScroll)
108 MESSAGE_HANDLER(WM_HSCROLL, OnHScroll)
109 MESSAGE_HANDLER(WM_MOUSEWHEEL, OnMouseWheel)
110 MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
111 MESSAGE_HANDLER(WM_KILLFOCUS, OnKillFocus)
112 MESSAGE_HANDLER(WM_GETDLGCODE, OnGetDialogCode)
113 MESSAGE_HANDLER(WM_CONTEXTMENU, OnContextMenu)
114 CHAIN_MSG_MAP(CBufferedPaintWindowImpl<CHexControl>)
115 END_MSG_MAP()
116
117 void DoPaint(CDCHandle dc, RECT& rect);
118
119private:
120 LRESULT OnSize(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
121 LRESULT OnCreate(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
122 LRESULT OnHScroll(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
123 LRESULT OnVScroll(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
124 LRESULT OnMouseWheel(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected