summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2021-04-29 12:17:02 +0300
committerGeorge Hazan <ghazan@miranda.im>2021-04-29 12:17:02 +0300
commit518a066dd786632852dc12de8bb0a3bd217f8f5d (patch)
tree09d2ce74c22dba27ff2b8eb5a0a1fb1581b21575
parent506ed6798e98e6487b08fbdd837d26e149b890c1 (diff)
UI classes:
- added method CCtrlBase::GetCaretPos() to calculate context menu position; - added missing const qualifiers for Get* methods
-rw-r--r--include/m_gui.h266
-rw-r--r--libs/win32/mir_core.libbin475218 -> 476778 bytes
-rw-r--r--libs/win64/mir_core.libbin480318 -> 481918 bytes
-rw-r--r--src/mir_core/src/CCtrlBase.cpp21
-rw-r--r--src/mir_core/src/CCtrlCheck.cpp2
-rw-r--r--src/mir_core/src/CCtrlClc.cpp28
-rw-r--r--src/mir_core/src/CCtrlCombo.cpp12
-rw-r--r--src/mir_core/src/CCtrlListBox.cpp35
-rw-r--r--src/mir_core/src/CCtrlListView.cpp107
-rw-r--r--src/mir_core/src/CCtrlSlider.cpp2
-rw-r--r--src/mir_core/src/CCtrlTreeView.cpp77
-rw-r--r--src/mir_core/src/CDlgBase.cpp11
-rw-r--r--src/mir_core/src/mir_core.def240
-rw-r--r--src/mir_core/src/mir_core64.def240
14 files changed, 559 insertions, 482 deletions
diff --git a/include/m_gui.h b/include/m_gui.h
index f1ac5c07e4..f5ed8fb8e8 100644
--- a/include/m_gui.h
+++ b/include/m_gui.h
@@ -246,7 +246,7 @@ public:
__inline CDataLink(BYTE type) : m_type(type) {}
virtual ~CDataLink() {}
- __inline BYTE GetDataType() { return m_type; }
+ __inline BYTE GetDataType() const { return m_type; }
virtual DWORD LoadInt() = 0;
virtual void SaveInt(DWORD value) = 0;
@@ -455,6 +455,13 @@ protected:
/////////////////////////////////////////////////////////////////////////////////////////
// CCtrlBase
+struct CContextMenuPos
+{
+ const CCtrlBase *pCtrl;
+ POINT pt;
+ INT_PTR iCurr; // int for list boxes, HTREEITEM for treeview
+};
+
class MIR_CORE_EXPORT CCtrlBase
{
friend class CDlgBase;
@@ -488,15 +495,15 @@ public:
void SetTextA(const char *text);
void SetInt(int value);
- wchar_t* GetText();
- char* GetTextA();
- char* GetTextU();
+ wchar_t* GetText() const;
+ char* GetTextA() const;
+ char* GetTextU() const;
- wchar_t* GetText(wchar_t *buf, size_t size);
- char* GetTextA(char *buf, size_t size);
- char* GetTextU(char *buf, size_t size);
+ wchar_t* GetText(wchar_t *buf, size_t size) const;
+ char* GetTextA(char *buf, size_t size) const;
+ char* GetTextU(char *buf, size_t size) const;
- int GetInt();
+ int GetInt() const;
virtual BOOL OnCommand(HWND /*hwndCtrl*/, WORD /*idCtrl*/, WORD /*idCode*/) { return FALSE; }
virtual BOOL OnNotify(int /*idCtrl*/, NMHDR* /*pnmh*/) { return FALSE; }
@@ -519,10 +526,12 @@ protected:
public:
CCallback<CCtrlBase> OnChange;
- CCallback<CCtrlBase> OnBuildMenu;
+ CCallback<CContextMenuPos> OnBuildMenu;
protected:
+ virtual void GetCaretPos(CContextMenuPos&) const;
virtual LRESULT CustomWndProc(UINT msg, WPARAM wParam, LPARAM lParam);
+
void Subclass();
void Unsubclass();
@@ -654,6 +663,7 @@ public:
void AddContact(MCONTACT hContact);
void AddGroup(HANDLE hGroup);
+ HANDLE AddInfoItem(CLCINFOITEM *cii);
void AutoRebuild();
void DeleteItem(HANDLE hItem);
void EditLabel(HANDLE hItem);
@@ -662,35 +672,34 @@ public:
void Expand(HANDLE hItem, DWORD flags);
HANDLE FindContact(MCONTACT hContact);
HANDLE FindGroup(MGROUP hGroup);
- COLORREF GetBkColor();
- bool GetCheck(HANDLE hItem);
- int GetCount();
- HWND GetEditControl();
- DWORD GetExpand(HANDLE hItem);
- int GetExtraColumns();
- BYTE GetExtraImage(HANDLE hItem, int iColumn);
- HIMAGELIST GetExtraImageList();
- HFONT GetFont(int iFontId);
- HANDLE GetSelection();
+ COLORREF GetBkColor() const;
+ bool GetCheck(HANDLE hItem) const;
+ int GetCount() const;
+ HWND GetEditControl() const;
+ DWORD GetExStyle() const;
+ DWORD GetExpand(HANDLE hItem) const;
+ int GetExtraColumns() const;
+ BYTE GetExtraImage(HANDLE hItem, int iColumn) const;
+ HIMAGELIST GetExtraImageList() const;
+ HFONT GetFont(int iFontId) const;
+ bool GetHideOfflineRoot() const;
+ int GetItemType(HANDLE hItem) const;
+ HANDLE GetNextItem(HANDLE hItem, DWORD flags) const;
+ HANDLE GetSelection() const;
HANDLE HitTest(int x, int y, DWORD *hitTest);
void SelectItem(HANDLE hItem);
void SetBkColor(COLORREF clBack);
void SetCheck(HANDLE hItem, bool check);
+ void SetExStyle(DWORD exStyle);
void SetExtraColumns(int iColumns);
void SetExtraImage(HANDLE hItem, int iColumn, int iImage);
void SetExtraImageList(HIMAGELIST hImgList);
void SetFont(int iFontId, HANDLE hFont, bool bRedraw);
void SetItemText(HANDLE hItem, char *szText);
void SetHideEmptyGroups(bool state);
- bool GetHideOfflineRoot();
void SetHideOfflineRoot(bool state);
- void SetUseGroups(bool state);
void SetOfflineModes(DWORD modes);
- DWORD GetExStyle();
- void SetExStyle(DWORD exStyle);
- HANDLE AddInfoItem(CLCINFOITEM *cii);
- int GetItemType(HANDLE hItem);
- HANDLE GetNextItem(HANDLE hItem, DWORD flags);
+ void SetUseGroups(bool state);
struct TEventInfo
{
@@ -756,7 +765,7 @@ public:
bool OnApply() override;
void OnReset() override;
- int GetState();
+ int GetState() const;
void SetState(int state);
bool IsChecked();
@@ -856,7 +865,7 @@ public:
bool OnApply() override;
void OnReset() override;
- int GetPosition();
+ int GetPosition() const;
void SetPosition(int pos);
};
@@ -894,16 +903,16 @@ public:
int AddString(const wchar_t *text, LPARAM data=0);
void DeleteString(int index);
int FindString(const wchar_t *str, int index = -1, bool exact = false);
- int GetCount();
- int GetCurSel();
- LPARAM GetItemData(int index);
- int GetItemRect(int index, RECT *pResult);
- wchar_t* GetItemText(int index);
- wchar_t* GetItemText(int index, wchar_t *buf, int size);
- bool GetSel(int index);
- int GetSelCount();
- int* GetSelItems(int *items, int count);
- int* GetSelItems();
+ int GetCount() const;
+ int GetCurSel() const;
+ LPARAM GetItemData(int index) const;
+ int GetItemRect(int index, RECT *pResult) const;
+ wchar_t* GetItemText(int index) const;
+ wchar_t* GetItemText(int index, wchar_t *buf, int size) const;
+ bool GetSel(int index) const;
+ int GetSelCount() const;
+ int* GetSelItems(int *items, int count) const;
+ int* GetSelItems() const;
int InsertString(const wchar_t *text, int pos, LPARAM data=0);
void ResetContent();
int SelectString(const wchar_t *str);
@@ -919,6 +928,7 @@ public:
protected:
BOOL OnCommand(HWND hwndCtrl, WORD idCtrl, WORD idCode) override;
+ void GetCaretPos(CContextMenuPos&) const override;
};
/////////////////////////////////////////////////////////////////////////////////////////
@@ -942,12 +952,12 @@ public:
void DeleteString(int index);
int FindString(const wchar_t *str, int index = -1, bool exact = false);
int FindStringA(const char *str, int index = -1, bool exact = false);
- int GetCount();
- int GetCurSel();
- bool GetDroppedState();
- LPARAM GetItemData(int index);
- wchar_t* GetItemText(int index);
- wchar_t* GetItemText(int index, wchar_t *buf, int size);
+ int GetCount() const;
+ int GetCurSel() const;
+ bool GetDroppedState() const;
+ LPARAM GetItemData(int index) const;
+ wchar_t* GetItemText(int index) const;
+ wchar_t* GetItemText(int index, wchar_t *buf, int size) const;
int InsertString(const wchar_t *text, int pos, LPARAM data=0);
void ResetContent();
int SelectString(const wchar_t *str);
@@ -984,57 +994,57 @@ public:
int EnableGroupView(BOOL fEnable);
BOOL EnsureVisible(int i, BOOL fPartialOK);
int FindItem(int iStart, const LVFINDINFO *plvfi);
- COLORREF GetBkColor();
- void GetBkImage(LPLVBKIMAGE plvbki);
- UINT GetCallbackMask();
- BOOL GetCheckState(UINT iIndex);
- void GetColumn(int iCol, LPLVCOLUMN pcol);
- void GetColumnOrderArray(int iCount, int *lpiArray);
- int GetColumnWidth(int iCol);
- int GetCountPerPage();
- HWND GetEditControl();
- DWORD GetExtendedListViewStyle();
- INT GetFocusedGroup();
- int GetGroupCount();
- void GetGroupInfo(int iGroupId, PLVGROUP pgrp);
- void GetGroupInfoByIndex(int iIndex, PLVGROUP pgrp);
- void GetGroupMetrics(LVGROUPMETRICS *pGroupMetrics);
- UINT GetGroupState(UINT dwGroupId, UINT dwMask);
- HWND GetHeader();
- HCURSOR GetHotCursor();
- INT GetHotItem();
- DWORD GetHoverTime();
- HIMAGELIST GetImageList(int iImageList);
- BOOL GetInsertMark(LVINSERTMARK *plvim);
- COLORREF GetInsertMarkColor();
- int GetInsertMarkRect(LPRECT prc);
- BOOL GetISearchString(LPSTR lpsz);
- bool GetItem(LPLVITEM pitem);
- int GetItemCount();
- void GetItemPosition(int i, POINT *ppt);
- void GetItemRect(int i, RECT *prc, int code);
- DWORD GetItemSpacing(BOOL fSmall);
- UINT GetItemState(int i, UINT mask);
- void GetItemText(int iItem, int iSubItem, LPTSTR pszText, int cchTextMax);
- int GetNextItem(int iStart, UINT flags);
- BOOL GetNumberOfWorkAreas(LPUINT lpuWorkAreas);
- BOOL GetOrigin(LPPOINT lpptOrg);
- COLORREF GetOutlineColor();
- UINT GetSelectedColumn();
- UINT GetSelectedCount();
- INT GetSelectionMark();
- int GetStringWidth(LPCSTR psz);
- BOOL GetSubItemRect(int iItem, int iSubItem, int code, LPRECT lpRect);
- COLORREF GetTextBkColor();
- COLORREF GetTextColor();
- void GetTileInfo(PLVTILEINFO plvtinfo);
- void GetTileViewInfo(PLVTILEVIEWINFO plvtvinfo);
- HWND GetToolTips();
- int GetTopIndex();
- BOOL GetUnicodeFormat();
- DWORD GetView();
- BOOL GetViewRect(RECT *prc);
- void GetWorkAreas(INT nWorkAreas, LPRECT lprc);
+ COLORREF GetBkColor() const;
+ void GetBkImage(LPLVBKIMAGE plvbki) const;
+ UINT GetCallbackMask() const;
+ BOOL GetCheckState(UINT iIndex) const;
+ void GetColumn(int iCol, LPLVCOLUMN pcol) const;
+ void GetColumnOrderArray(int iCount, int *lpiArray) const;
+ int GetColumnWidth(int iCol) const;
+ int GetCountPerPage() const;
+ HWND GetEditControl() const;
+ DWORD GetExtendedListViewStyle() const;
+ INT GetFocusedGroup() const;
+ int GetGroupCount() const;
+ void GetGroupInfo(int iGroupId, PLVGROUP pgrp) const;
+ void GetGroupInfoByIndex(int iIndex, PLVGROUP pgrp) const;
+ void GetGroupMetrics(LVGROUPMETRICS *pGroupMetrics) const;
+ UINT GetGroupState(UINT dwGroupId, UINT dwMask) const;
+ HWND GetHeader() const;
+ HCURSOR GetHotCursor() const;
+ INT GetHotItem() const;
+ DWORD GetHoverTime() const;
+ HIMAGELIST GetImageList(int iImageList) const;
+ BOOL GetInsertMark(LVINSERTMARK *plvim) const;
+ COLORREF GetInsertMarkColor() const;
+ int GetInsertMarkRect(LPRECT prc) const;
+ BOOL GetISearchString(LPSTR lpsz) const;
+ bool GetItem(LPLVITEM pitem) const;
+ int GetItemCount() const;
+ void GetItemPosition(int i, POINT *ppt) const;
+ void GetItemRect(int i, RECT *prc, int code) const;
+ DWORD GetItemSpacing(BOOL fSmall) const;
+ UINT GetItemState(int i, UINT mask) const;
+ void GetItemText(int iItem, int iSubItem, LPTSTR pszText, int cchTextMax) const;
+ int GetNextItem(int iStart, UINT flags) const;
+ BOOL GetNumberOfWorkAreas(LPUINT lpuWorkAreas) const;
+ BOOL GetOrigin(LPPOINT lpptOrg) const;
+ COLORREF GetOutlineColor() const;
+ UINT GetSelectedColumn() const;
+ UINT GetSelectedCount() const;
+ INT GetSelectionMark() const;
+ int GetStringWidth(LPCSTR psz) const;
+ BOOL GetSubItemRect(int iItem, int iSubItem, int code, LPRECT lpRect) const;
+ COLORREF GetTextBkColor() const;
+ COLORREF GetTextColor() const;
+ void GetTileInfo(PLVTILEINFO plvtinfo) const;
+ void GetTileViewInfo(PLVTILEVIEWINFO plvtvinfo) const;
+ HWND GetToolTips() const;
+ int GetTopIndex() const;
+ BOOL GetUnicodeFormat() const;
+ DWORD GetView() const;
+ BOOL GetViewRect(RECT *prc) const;
+ void GetWorkAreas(INT nWorkAreas, LPRECT lprc) const;
BOOL HasGroup(int dwGroupId);
int HitTest(LPLVHITTESTINFO pinfo);
int HitTestEx(LPLVHITTESTINFO pinfo);
@@ -1102,7 +1112,7 @@ public:
void AddGroup(int iGroupId, const wchar_t *name);
int AddItem(const wchar_t *text, int iIcon, LPARAM lParam = 0, int iGroupId = -1);
void SetItem(int iItem, int iSubItem, const wchar_t *text, int iIcon = -1);
- LPARAM GetItemData(int iItem);
+ LPARAM GetItemData(int iItem) const;
// Events
struct TEventInfo {
@@ -1144,6 +1154,7 @@ public:
protected:
BOOL OnNotify(int idCtrl, NMHDR *pnmh) override;
+ void GetCaretPos(CContextMenuPos&) const override;
};
/////////////////////////////////////////////////////////////////////////////////////////
@@ -1175,35 +1186,35 @@ public:
void EndEditLabelNow(BOOL cancel);
void EnsureVisible(HTREEITEM hItem);
void Expand(HTREEITEM hItem, DWORD flag);
- COLORREF GetBkColor();
- DWORD GetCheckState(HTREEITEM hItem);
- HTREEITEM GetChild(HTREEITEM hItem);
- int GetCount();
- HTREEITEM GetDropHilight();
- HWND GetEditControl();
- HTREEITEM GetFirstVisible();
- HIMAGELIST GetImageList(int iImage);
- int GetIndent();
- COLORREF GetInsertMarkColor();
- bool GetItem(TVITEMEX *tvi);
- int GetItemHeight();
- void GetItemRect(HTREEITEM hItem, RECT *rcItem, BOOL fItemRect);
- DWORD GetItemState(HTREEITEM hItem, DWORD stateMask);
- HTREEITEM GetLastVisible();
- COLORREF GetLineColor();
- HTREEITEM GetNextItem(HTREEITEM hItem, DWORD flag);
- HTREEITEM GetNextSibling(HTREEITEM hItem);
- HTREEITEM GetNextVisible(HTREEITEM hItem);
- HTREEITEM GetParent(HTREEITEM hItem);
- HTREEITEM GetPrevSibling(HTREEITEM hItem);
- HTREEITEM GetPrevVisible(HTREEITEM hItem);
- HTREEITEM GetRoot();
- DWORD GetScrollTime();
- HTREEITEM GetSelection();
- COLORREF GetTextColor();
- HWND GetToolTips();
- BOOL GetUnicodeFormat();
- unsigned GetVisibleCount();
+ COLORREF GetBkColor() const;
+ DWORD GetCheckState(HTREEITEM hItem) const;
+ HTREEITEM GetChild(HTREEITEM hItem) const;
+ int GetCount() const;
+ HTREEITEM GetDropHilight() const;
+ HWND GetEditControl() const;
+ HTREEITEM GetFirstVisible() const;
+ HIMAGELIST GetImageList(int iImage) const;
+ int GetIndent() const;
+ COLORREF GetInsertMarkColor() const;
+ bool GetItem(TVITEMEX *tvi) const;
+ int GetItemHeight() const;
+ void GetItemRect(HTREEITEM hItem, RECT *rcItem, BOOL fItemRect) const;
+ DWORD GetItemState(HTREEITEM hItem, DWORD stateMask) const;
+ HTREEITEM GetLastVisible() const;
+ COLORREF GetLineColor() const;
+ HTREEITEM GetNextItem(HTREEITEM hItem, DWORD flag) const;
+ HTREEITEM GetNextSibling(HTREEITEM hItem) const;
+ HTREEITEM GetNextVisible(HTREEITEM hItem) const;
+ HTREEITEM GetParent(HTREEITEM hItem) const;
+ HTREEITEM GetPrevSibling(HTREEITEM hItem) const;
+ HTREEITEM GetPrevVisible(HTREEITEM hItem) const;
+ HTREEITEM GetRoot() const;
+ DWORD GetScrollTime() const;
+ HTREEITEM GetSelection() const;
+ COLORREF GetTextColor() const;
+ HWND GetToolTips() const;
+ BOOL GetUnicodeFormat() const;
+ unsigned GetVisibleCount() const;
HTREEITEM HitTest(TVHITTESTINFO *hti);
HTREEITEM InsertItem(TVINSERTSTRUCT *tvis);
void Select(HTREEITEM hItem, DWORD flag);
@@ -1231,8 +1242,8 @@ public:
void TranslateItem(HTREEITEM hItem);
void TranslateTree();
HTREEITEM FindNamedItem(HTREEITEM hItem, const wchar_t *name);
- void GetItem(HTREEITEM hItem, TVITEMEX *tvi);
- void GetItem(HTREEITEM hItem, TVITEMEX *tvi, wchar_t *szText, int iTextLength);
+ void GetItem(HTREEITEM hItem, TVITEMEX *tvi) const;
+ void GetItem(HTREEITEM hItem, TVITEMEX *tvi, wchar_t *szText, int iTextLength) const;
void InvertCheck(HTREEITEM hItem);
bool IsSelected(HTREEITEM hItem);
@@ -1285,6 +1296,7 @@ protected:
void OnDestroy() override;
BOOL OnNotify(int idCtrl, NMHDR *pnmh) override;
+ void GetCaretPos(CContextMenuPos&) const override;
LRESULT CustomWndProc(UINT msg, WPARAM wParam, LPARAM lParam) override;
union {
diff --git a/libs/win32/mir_core.lib b/libs/win32/mir_core.lib
index e6c0078677..3bd5d7972e 100644
--- a/libs/win32/mir_core.lib
+++ b/libs/win32/mir_core.lib
Binary files differ
diff --git a/libs/win64/mir_core.lib b/libs/win64/mir_core.lib
index e4012645a0..d0d240a72c 100644
--- a/libs/win64/mir_core.lib
+++ b/libs/win64/mir_core.lib
Binary files differ
diff --git a/src/mir_core/src/CCtrlBase.cpp b/src/mir_core/src/CCtrlBase.cpp
index c07055c658..4cb2bcdb40 100644
--- a/src/mir_core/src/CCtrlBase.cpp
+++ b/src/mir_core/src/CCtrlBase.cpp
@@ -123,7 +123,7 @@ void CCtrlBase::SetInt(int value)
SetWindowText(m_hwnd, buf);
}
-wchar_t* CCtrlBase::GetText()
+wchar_t* CCtrlBase::GetText() const
{
int length = GetWindowTextLengthW(m_hwnd);
wchar_t *result = (wchar_t *)mir_alloc((length+1) * sizeof(wchar_t));
@@ -133,7 +133,7 @@ wchar_t* CCtrlBase::GetText()
return result;
}
-char* CCtrlBase::GetTextA()
+char* CCtrlBase::GetTextA() const
{
int length = GetWindowTextLengthA(m_hwnd);
char *result = (char *)mir_alloc((length+1) * sizeof(char));
@@ -143,33 +143,33 @@ char* CCtrlBase::GetTextA()
return result;
}
-char* CCtrlBase::GetTextU()
+char* CCtrlBase::GetTextU() const
{
return mir_utf8encodeW(ptrW(GetText()));
}
-wchar_t* CCtrlBase::GetText(wchar_t *buf, size_t size)
+wchar_t* CCtrlBase::GetText(wchar_t *buf, size_t size) const
{
GetWindowTextW(m_hwnd, buf, (int)size);
buf[size - 1] = 0;
return buf;
}
-char* CCtrlBase::GetTextA(char *buf, size_t size)
+char* CCtrlBase::GetTextA(char *buf, size_t size) const
{
GetWindowTextA(m_hwnd, buf, (int)size);
buf[size - 1] = 0;
return buf;
}
-char* CCtrlBase::GetTextU(char *buf, size_t size)
+char* CCtrlBase::GetTextU(char *buf, size_t size) const
{
ptrW wszText(GetText());
strncpy_s(buf, size, T2Utf(wszText), _TRUNCATE);
return buf;
}
-int CCtrlBase::GetInt()
+int CCtrlBase::GetInt() const
{
int length = GetWindowTextLengthW(m_hwnd) + 1;
wchar_t *result = (wchar_t *)_alloca(length * sizeof(wchar_t));
@@ -177,6 +177,13 @@ int CCtrlBase::GetInt()
return _wtoi(result);
}
+void CCtrlBase::GetCaretPos(CContextMenuPos &pos) const
+{
+ pos.pCtrl = this;
+ pos.iCurr = -1;
+ GetCursorPos(&pos.pt);
+}
+
LRESULT CCtrlBase::CustomWndProc(UINT, WPARAM, LPARAM)
{
return FALSE;
diff --git a/src/mir_core/src/CCtrlCheck.cpp b/src/mir_core/src/CCtrlCheck.cpp
index 210c6a1d03..ce765274b4 100644
--- a/src/mir_core/src/CCtrlCheck.cpp
+++ b/src/mir_core/src/CCtrlCheck.cpp
@@ -52,7 +52,7 @@ void CCtrlCheck::OnReset()
SetState(LoadInt());
}
-int CCtrlCheck::GetState()
+int CCtrlCheck::GetState() const
{
return ::SendMessage(m_hwnd, BM_GETCHECK, 0, 0);
}
diff --git a/src/mir_core/src/CCtrlClc.cpp b/src/mir_core/src/CCtrlClc.cpp
index b38fd1e4f4..da007afe25 100644
--- a/src/mir_core/src/CCtrlClc.cpp
+++ b/src/mir_core/src/CCtrlClc.cpp
@@ -89,44 +89,44 @@ HANDLE CCtrlClc::FindGroup(MGROUP hGroup)
{ return (HANDLE)SendMessage(m_hwnd, CLM_FINDGROUP, hGroup, 0);
}
-COLORREF CCtrlClc::GetBkColor()
+COLORREF CCtrlClc::GetBkColor() const
{ return (COLORREF)SendMessage(m_hwnd, CLM_GETBKCOLOR, 0, 0);
}
-bool CCtrlClc::GetCheck(HANDLE hItem)
+bool CCtrlClc::GetCheck(HANDLE hItem) const
{ return SendMessage(m_hwnd, CLM_GETCHECKMARK, (WPARAM)hItem, 0) ? true : false;
}
-int CCtrlClc::GetCount()
+int CCtrlClc::GetCount() const
{ return SendMessage(m_hwnd, CLM_GETCOUNT, 0, 0);
}
-HWND CCtrlClc::GetEditControl()
+HWND CCtrlClc::GetEditControl() const
{ return (HWND)SendMessage(m_hwnd, CLM_GETEDITCONTROL, 0, 0);
}
-DWORD CCtrlClc::GetExpand(HANDLE hItem)
+DWORD CCtrlClc::GetExpand(HANDLE hItem) const
{ return SendMessage(m_hwnd, CLM_GETEXPAND, (WPARAM)hItem, 0);
}
-int CCtrlClc::GetExtraColumns()
+int CCtrlClc::GetExtraColumns() const
{ return SendMessage(m_hwnd, CLM_GETEXTRACOLUMNS, 0, 0);
}
-BYTE CCtrlClc::GetExtraImage(HANDLE hItem, int iColumn)
+BYTE CCtrlClc::GetExtraImage(HANDLE hItem, int iColumn) const
{
return (BYTE)(SendMessage(m_hwnd, CLM_GETEXTRAIMAGE, (WPARAM)hItem, MAKELPARAM(iColumn, 0)) & 0xFFFF);
}
-HIMAGELIST CCtrlClc::GetExtraImageList()
+HIMAGELIST CCtrlClc::GetExtraImageList() const
{ return (HIMAGELIST)SendMessage(m_hwnd, CLM_GETEXTRAIMAGELIST, 0, 0);
}
-HFONT CCtrlClc::GetFont(int iFontId)
+HFONT CCtrlClc::GetFont(int iFontId) const
{ return (HFONT)SendMessage(m_hwnd, CLM_GETFONT, (WPARAM)iFontId, 0);
}
-HANDLE CCtrlClc::GetSelection()
+HANDLE CCtrlClc::GetSelection() const
{ return (HANDLE)SendMessage(m_hwnd, CLM_GETSELECTION, 0, 0);
}
@@ -170,7 +170,7 @@ void CCtrlClc::SetHideEmptyGroups(bool state)
{ SendMessage(m_hwnd, CLM_SETHIDEEMPTYGROUPS, state ? 1 : 0, 0);
}
-bool CCtrlClc::GetHideOfflineRoot()
+bool CCtrlClc::GetHideOfflineRoot() const
{ return SendMessage(m_hwnd, CLM_GETHIDEOFFLINEROOT, 0, 0) ? true : false;
}
@@ -186,7 +186,7 @@ void CCtrlClc::SetOfflineModes(DWORD modes)
{ SendMessage(m_hwnd, CLM_SETOFFLINEMODES, modes, 0);
}
-DWORD CCtrlClc::GetExStyle()
+DWORD CCtrlClc::GetExStyle() const
{ return SendMessage(m_hwnd, CLM_GETEXSTYLE, 0, 0);
}
@@ -198,10 +198,10 @@ HANDLE CCtrlClc::AddInfoItem(CLCINFOITEM *cii)
{ return (HANDLE)SendMessage(m_hwnd, CLM_ADDINFOITEM, 0, (LPARAM)cii);
}
-int CCtrlClc::GetItemType(HANDLE hItem)
+int CCtrlClc::GetItemType(HANDLE hItem) const
{ return SendMessage(m_hwnd, CLM_GETITEMTYPE, (WPARAM)hItem, 0);
}
-HANDLE CCtrlClc::GetNextItem(HANDLE hItem, DWORD flags)
+HANDLE CCtrlClc::GetNextItem(HANDLE hItem, DWORD flags) const
{ return (HANDLE)SendMessage(m_hwnd, CLM_GETNEXTITEM, (WPARAM)flags, (LPARAM)hItem);
}
diff --git a/src/mir_core/src/CCtrlCombo.cpp b/src/mir_core/src/CCtrlCombo.cpp
index 8a90cbc5d9..39e82949f6 100644
--- a/src/mir_core/src/CCtrlCombo.cpp
+++ b/src/mir_core/src/CCtrlCombo.cpp
@@ -104,30 +104,30 @@ int CCtrlCombo::FindStringA(const char *str, int index, bool exact)
{ return SendMessageA(m_hwnd, exact?CB_FINDSTRINGEXACT:CB_FINDSTRING, index, (LPARAM)str);
}
-int CCtrlCombo::GetCount()
+int CCtrlCombo::GetCount() const
{ return SendMessage(m_hwnd, CB_GETCOUNT, 0, 0);
}
-int CCtrlCombo::GetCurSel()
+int CCtrlCombo::GetCurSel() const
{ return SendMessage(m_hwnd, CB_GETCURSEL, 0, 0);
}
-bool CCtrlCombo::GetDroppedState()
+bool CCtrlCombo::GetDroppedState() const
{ return SendMessage(m_hwnd, CB_GETDROPPEDSTATE, 0, 0) ? true : false;
}
-LPARAM CCtrlCombo::GetItemData(int index)
+LPARAM CCtrlCombo::GetItemData(int index) const
{ return SendMessage(m_hwnd, CB_GETITEMDATA, index, 0);
}
-wchar_t* CCtrlCombo::GetItemText(int index)
+wchar_t* CCtrlCombo::GetItemText(int index) const
{
wchar_t *result = (wchar_t *)mir_alloc(sizeof(wchar_t) * (SendMessage(m_hwnd, CB_GETLBTEXTLEN, index, 0) + 1));
SendMessage(m_hwnd, CB_GETLBTEXT, index, (LPARAM)result);
return result;
}
-wchar_t* CCtrlCombo::GetItemText(int index, wchar_t *buf, int size)
+wchar_t* CCtrlCombo::GetItemText(int index, wchar_t *buf, int size) const
{
wchar_t *result = (wchar_t *)_alloca(sizeof(wchar_t) * (SendMessage(m_hwnd, CB_GETLBTEXTLEN, index, 0) + 1));
SendMessage(m_hwnd, CB_GETLBTEXT, index, (LPARAM)result);
diff --git a/src/mir_core/src/CCtrlListBox.cpp b/src/mir_core/src/CCtrlListBox.cpp
index ddcd41d35b..a4cbc3e796 100644
--- a/src/mir_core/src/CCtrlListBox.cpp
+++ b/src/mir_core/src/CCtrlListBox.cpp
@@ -39,6 +39,21 @@ BOOL CCtrlListBox::OnCommand(HWND, WORD, WORD idCode)
return TRUE;
}
+void CCtrlListBox::GetCaretPos(CContextMenuPos &pos) const
+{
+ pos.pCtrl = this;
+ pos.iCurr = GetCurSel();
+ if (pos.iCurr != -1) {
+ RECT rc;
+ GetItemRect(pos.iCurr, &rc);
+ pos.pt.x = rc.left;
+ pos.pt.y = rc.top;
+ }
+ else CSuper::GetCaretPos(pos);
+}
+
+/////////////////////////////////////////////////////////////////////////////////////////
+
int CCtrlListBox::AddString(const wchar_t *text, LPARAM data)
{
int iItem = ListBox_AddString(m_hwnd, text);
@@ -54,30 +69,30 @@ int CCtrlListBox::FindString(const wchar_t *str, int index, bool exact)
{ return SendMessage(m_hwnd, exact?LB_FINDSTRINGEXACT:LB_FINDSTRING, index, (LPARAM)str);
}
-int CCtrlListBox::GetCount()
+int CCtrlListBox::GetCount() const
{ return ListBox_GetCount(m_hwnd);
}
-int CCtrlListBox::GetCurSel()
+int CCtrlListBox::GetCurSel() const
{ return ListBox_GetCurSel(m_hwnd);
}
-LPARAM CCtrlListBox::GetItemData(int index)
+LPARAM CCtrlListBox::GetItemData(int index) const
{ return ListBox_GetItemData(m_hwnd, index);
}
-int CCtrlListBox::GetItemRect(int index, RECT *pResult)
+int CCtrlListBox::GetItemRect(int index, RECT *pResult) const
{ return ListBox_GetItemRect(m_hwnd, index, pResult);
}
-wchar_t* CCtrlListBox::GetItemText(int index)
+wchar_t* CCtrlListBox::GetItemText(int index) const
{
wchar_t *result = (wchar_t *)mir_alloc(sizeof(wchar_t) * (SendMessage(m_hwnd, LB_GETTEXTLEN, index, 0) + 1));
SendMessage(m_hwnd, LB_GETTEXT, index, (LPARAM)result);
return result;
}
-wchar_t* CCtrlListBox::GetItemText(int index, wchar_t *buf, int size)
+wchar_t* CCtrlListBox::GetItemText(int index, wchar_t *buf, int size) const
{
wchar_t *result = (wchar_t *)_alloca(sizeof(wchar_t) * (SendMessage(m_hwnd, LB_GETTEXTLEN, index, 0) + 1));
SendMessage(m_hwnd, LB_GETTEXT, index, (LPARAM)result);
@@ -85,21 +100,21 @@ wchar_t* CCtrlListBox::GetItemText(int index, wchar_t *buf, int size)
return buf;
}
-bool CCtrlListBox::GetSel(int index)
+bool CCtrlListBox::GetSel(int index) const
{ return ListBox_GetSel(m_hwnd, index) ? true : false;
}
-int CCtrlListBox::GetSelCount()
+int CCtrlListBox::GetSelCount() const
{ return ListBox_GetSelCount(m_hwnd);
}
-int* CCtrlListBox::GetSelItems(int *items, int count)
+int* CCtrlListBox::GetSelItems(int *items, int count) const
{
ListBox_GetSelItems(m_hwnd, count, items);
return items;
}
-int* CCtrlListBox::GetSelItems()
+int* CCtrlListBox::GetSelItems() const
{
int count = GetSelCount() + 1;
int *result = (int *)mir_alloc(sizeof(int) * count);
diff --git a/src/mir_core/src/CCtrlListView.cpp b/src/mir_core/src/CCtrlListView.cpp
index b03844b272..090925d80e 100644
--- a/src/mir_core/src/CCtrlListView.cpp
+++ b/src/mir_core/src/CCtrlListView.cpp
@@ -140,7 +140,7 @@ void CCtrlListView::SetItem(int iItem, int iSubItem, const wchar_t *text, int iI
SetItem(&lvi);
}
-LPARAM CCtrlListView::GetItemData(int iItem)
+LPARAM CCtrlListView::GetItemData(int iItem) const
{
LVITEM lvi = { 0 };
lvi.mask = LVIF_PARAM;
@@ -149,6 +149,19 @@ LPARAM CCtrlListView::GetItemData(int iItem)
return lvi.lParam;
}
+void CCtrlListView::GetCaretPos(CContextMenuPos &pos) const
+{
+ pos.pCtrl = this;
+ pos.iCurr = GetSelectionMark();
+ if (pos.iCurr != -1) {
+ RECT rc;
+ GetItemRect(pos.iCurr, &rc, TRUE);
+ pos.pt.x = rc.left;
+ pos.pt.y = rc.top;
+ }
+ else CSuper::GetCaretPos(pos);
+}
+
// classic api
DWORD CCtrlListView::ApproximateViewRect(int cx, int cy, int iCount)
{ return ListView_ApproximateViewRect(m_hwnd, cx, cy, iCount);
@@ -183,142 +196,142 @@ BOOL CCtrlListView::EnsureVisible(int i, BOOL fPartialOK)
int CCtrlListView::FindItem(int iStart, const LVFINDINFO *plvfi)
{ return ListView_FindItem(m_hwnd, iStart, plvfi);
}
-COLORREF CCtrlListView::GetBkColor()
+COLORREF CCtrlListView::GetBkColor() const
{ return ListView_GetBkColor(m_hwnd);
}
-void CCtrlListView::GetBkImage(LPLVBKIMAGE plvbki)
+void CCtrlListView::GetBkImage(LPLVBKIMAGE plvbki) const
{ ListView_GetBkImage(m_hwnd, plvbki);
}
-UINT CCtrlListView::GetCallbackMask()
+UINT CCtrlListView::GetCallbackMask() const
{ return ListView_GetCallbackMask(m_hwnd);
}
-BOOL CCtrlListView::GetCheckState(UINT iIndex)
+BOOL CCtrlListView::GetCheckState(UINT iIndex) const
{ return ListView_GetCheckState(m_hwnd, iIndex);
}
-void CCtrlListView::GetColumn(int iCol, LPLVCOLUMN pcol)
+void CCtrlListView::GetColumn(int iCol, LPLVCOLUMN pcol) const
{ ListView_GetColumn(m_hwnd, iCol, pcol);
}
-void CCtrlListView::GetColumnOrderArray(int iCount, int *lpiArray)
+void CCtrlListView::GetColumnOrderArray(int iCount, int *lpiArray) const
{ ListView_GetColumnOrderArray(m_hwnd, iCount, lpiArray);
}
-int CCtrlListView::GetColumnWidth(int iCol)
+int CCtrlListView::GetColumnWidth(int iCol) const
{ return ListView_GetColumnWidth(m_hwnd, iCol);
}
-int CCtrlListView::GetCountPerPage()
+int CCtrlListView::GetCountPerPage() const
{ return ListView_GetCountPerPage(m_hwnd);
}
-HWND CCtrlListView::GetEditControl()
+HWND CCtrlListView::GetEditControl() const
{ return ListView_GetEditControl(m_hwnd);
}
-DWORD CCtrlListView::GetExtendedListViewStyle()
+DWORD CCtrlListView::GetExtendedListViewStyle() const
{ return ListView_GetExtendedListViewStyle(m_hwnd);
}
-void CCtrlListView::GetGroupMetrics(LVGROUPMETRICS *pGroupMetrics)
+void CCtrlListView::GetGroupMetrics(LVGROUPMETRICS *pGroupMetrics) const
{ ListView_GetGroupMetrics(m_hwnd, pGroupMetrics);
}
-HWND CCtrlListView::GetHeader()
+HWND CCtrlListView::GetHeader() const
{ return ListView_GetHeader(m_hwnd);
}
-HCURSOR CCtrlListView::GetHotCursor()
+HCURSOR CCtrlListView::GetHotCursor() const
{ return ListView_GetHotCursor(m_hwnd);
}
-INT CCtrlListView::GetHotItem()
+INT CCtrlListView::GetHotItem() const
{ return ListView_GetHotItem(m_hwnd);
}
-DWORD CCtrlListView::GetHoverTime()
+DWORD CCtrlListView::GetHoverTime() const
{ return ListView_GetHoverTime(m_hwnd);
}
-HIMAGELIST CCtrlListView::GetImageList(int iImageList)
+HIMAGELIST CCtrlListView::GetImageList(int iImageList) const
{ return ListView_GetImageList(m_hwnd, iImageList);
}
-BOOL CCtrlListView::GetInsertMark(LVINSERTMARK *plvim)
+BOOL CCtrlListView::GetInsertMark(LVINSERTMARK *plvim) const
{ return ListView_GetInsertMark(m_hwnd, plvim);
}
-COLORREF CCtrlListView::GetInsertMarkColor()
+COLORREF CCtrlListView::GetInsertMarkColor() const
{ return ListView_GetInsertMarkColor(m_hwnd);
}
-int CCtrlListView::GetInsertMarkRect(LPRECT prc)
+int CCtrlListView::GetInsertMarkRect(LPRECT prc) const
{ return ListView_GetInsertMarkRect(m_hwnd, prc);
}
-BOOL CCtrlListView::GetISearchString(LPSTR lpsz)
+BOOL CCtrlListView::GetISearchString(LPSTR lpsz) const
{ return ListView_GetISearchString(m_hwnd, lpsz);
}
-bool CCtrlListView::GetItem(LPLVITEM pitem)
+bool CCtrlListView::GetItem(LPLVITEM pitem) const
{ return ListView_GetItem(m_hwnd, pitem) == TRUE;
}
-int CCtrlListView::GetItemCount()
+int CCtrlListView::GetItemCount() const
{ return ListView_GetItemCount(m_hwnd);
}
-void CCtrlListView::GetItemPosition(int i, POINT *ppt)
+void CCtrlListView::GetItemPosition(int i, POINT *ppt) const
{ ListView_GetItemPosition(m_hwnd, i, ppt);
}
-void CCtrlListView::GetItemRect(int i, RECT *prc, int code)
+void CCtrlListView::GetItemRect(int i, RECT *prc, int code) const
{ ListView_GetItemRect(m_hwnd, i, prc, code);
}
-DWORD CCtrlListView::GetItemSpacing(BOOL fSmall)
+DWORD CCtrlListView::GetItemSpacing(BOOL fSmall) const
{ return ListView_GetItemSpacing(m_hwnd, fSmall);
}
-UINT CCtrlListView::GetItemState(int i, UINT mask)
+UINT CCtrlListView::GetItemState(int i, UINT mask) const
{ return ListView_GetItemState(m_hwnd, i, mask);
}
-void CCtrlListView::GetItemText(int iItem, int iSubItem, LPTSTR pszText, int cchTextMax)
+void CCtrlListView::GetItemText(int iItem, int iSubItem, LPTSTR pszText, int cchTextMax) const
{ ListView_GetItemText(m_hwnd, iItem, iSubItem, pszText, cchTextMax);
}
-int CCtrlListView::GetNextItem(int iStart, UINT flags)
+int CCtrlListView::GetNextItem(int iStart, UINT flags) const
{ return ListView_GetNextItem(m_hwnd, iStart, flags);
}
-BOOL CCtrlListView::GetNumberOfWorkAreas(LPUINT lpuWorkAreas)
+BOOL CCtrlListView::GetNumberOfWorkAreas(LPUINT lpuWorkAreas) const
{ return ListView_GetNumberOfWorkAreas(m_hwnd, lpuWorkAreas);
}
-BOOL CCtrlListView::GetOrigin(LPPOINT lpptOrg)
+BOOL CCtrlListView::GetOrigin(LPPOINT lpptOrg) const
{ return ListView_GetOrigin(m_hwnd, lpptOrg);
}
-COLORREF CCtrlListView::GetOutlineColor()
+COLORREF CCtrlListView::GetOutlineColor() const
{ return ListView_GetOutlineColor(m_hwnd);
}
-UINT CCtrlListView::GetSelectedColumn()
+UINT CCtrlListView::GetSelectedColumn() const
{ return ListView_GetSelectedColumn(m_hwnd);
}
-UINT CCtrlListView::GetSelectedCount()
+UINT CCtrlListView::GetSelectedCount() const
{ return ListView_GetSelectedCount(m_hwnd);
}
-INT CCtrlListView::GetSelectionMark()
+INT CCtrlListView::GetSelectionMark() const
{ return ListView_GetSelectionMark(m_hwnd);
}
-int CCtrlListView::GetStringWidth(LPCSTR psz)
+int CCtrlListView::GetStringWidth(LPCSTR psz) const
{ return ListView_GetStringWidth(m_hwnd, psz);
}
-BOOL CCtrlListView::GetSubItemRect(int iItem, int iSubItem, int code, LPRECT lpRect)
+BOOL CCtrlListView::GetSubItemRect(int iItem, int iSubItem, int code, LPRECT lpRect) const
{ return ListView_GetSubItemRect(m_hwnd, iItem, iSubItem, code, lpRect);
}
-COLORREF CCtrlListView::GetTextBkColor()
+COLORREF CCtrlListView::GetTextBkColor() const
{ return ListView_GetTextBkColor(m_hwnd);
}
-COLORREF CCtrlListView::GetTextColor()
+COLORREF CCtrlListView::GetTextColor() const
{ return ListView_GetTextColor(m_hwnd);
}
-void CCtrlListView::GetTileInfo(PLVTILEINFO plvtinfo)
+void CCtrlListView::GetTileInfo(PLVTILEINFO plvtinfo) const
{ ListView_GetTileInfo(m_hwnd, plvtinfo);
}
-void CCtrlListView::GetTileViewInfo(PLVTILEVIEWINFO plvtvinfo)
+void CCtrlListView::GetTileViewInfo(PLVTILEVIEWINFO plvtvinfo) const
{ ListView_GetTileViewInfo(m_hwnd, plvtvinfo);
}
-HWND CCtrlListView::GetToolTips()
+HWND CCtrlListView::GetToolTips() const
{ return ListView_GetToolTips(m_hwnd);
}
-int CCtrlListView::GetTopIndex()
+int CCtrlListView::GetTopIndex() const
{ return ListView_GetTopIndex(m_hwnd);
}
-BOOL CCtrlListView::GetUnicodeFormat()
+BOOL CCtrlListView::GetUnicodeFormat() const
{ return ListView_GetUnicodeFormat(m_hwnd);
}
-DWORD CCtrlListView::GetView()
+DWORD CCtrlListView::GetView() const
{ return ListView_GetView(m_hwnd);
}
-BOOL CCtrlListView::GetViewRect(RECT *prc)
+BOOL CCtrlListView::GetViewRect(RECT *prc) const
{ return ListView_GetViewRect(m_hwnd, prc);
}
-void CCtrlListView::GetWorkAreas(INT nWorkAreas, LPRECT lprc)
+void CCtrlListView::GetWorkAreas(INT nWorkAreas, LPRECT lprc) const
{ ListView_GetWorkAreas(m_hwnd, nWorkAreas, lprc);
}
BOOL CCtrlListView::HasGroup(int dwGroupId)
diff --git a/src/mir_core/src/CCtrlSlider.cpp b/src/mir_core/src/CCtrlSlider.cpp
index c9086eaeea..df42737d0b 100644
--- a/src/mir_core/src/CCtrlSlider.cpp
+++ b/src/mir_core/src/CCtrlSlider.cpp
@@ -59,7 +59,7 @@ void CCtrlSlider::OnReset()
SetPosition(LoadInt());
}
-int CCtrlSlider::GetPosition()
+int CCtrlSlider::GetPosition() const
{
return SendMsg(TBM_GETPOS, 0, 0);
}
diff --git a/src/mir_core/src/CCtrlTreeView.cpp b/src/mir_core/src/CCtrlTreeView.cpp
index 29b5cead72..565e5aee83 100644
--- a/src/mir_core/src/CCtrlTreeView.cpp
+++ b/src/mir_core/src/CCtrlTreeView.cpp
@@ -423,7 +423,7 @@ HTREEITEM CCtrlTreeView::FindNamedItem(HTREEITEM hItem, const wchar_t *name)
return nullptr;
}
-void CCtrlTreeView::GetItem(HTREEITEM hItem, TVITEMEX *tvi)
+void CCtrlTreeView::GetItem(HTREEITEM hItem, TVITEMEX *tvi) const
{
memset(tvi, 0, sizeof(*tvi));
tvi->mask = TVIF_CHILDREN | TVIF_HANDLE | TVIF_IMAGE | TVIF_INTEGRAL | TVIF_PARAM | TVIF_SELECTEDIMAGE | TVIF_STATE;
@@ -431,7 +431,7 @@ void CCtrlTreeView::GetItem(HTREEITEM hItem, TVITEMEX *tvi)
GetItem(tvi);
}
-void CCtrlTreeView::GetItem(HTREEITEM hItem, TVITEMEX *tvi, wchar_t *szText, int iTextLength)
+void CCtrlTreeView::GetItem(HTREEITEM hItem, TVITEMEX *tvi, wchar_t *szText, int iTextLength) const
{
memset(tvi, 0, sizeof(*tvi));
tvi->mask = TVIF_CHILDREN | TVIF_HANDLE | TVIF_IMAGE | TVIF_INTEGRAL | TVIF_PARAM | TVIF_SELECTEDIMAGE | TVIF_STATE | TVIF_TEXT;
@@ -548,6 +548,21 @@ void CCtrlTreeView::Select(LIST<_TREEITEM> &selected)
Select(it);
}
+void CCtrlTreeView::GetCaretPos(CContextMenuPos &pos) const
+{
+ HTREEITEM hItem = GetSelection();
+ if (hItem != nullptr) {
+ pos.pCtrl = this;
+ pos.iCurr = (INT_PTR)hItem;
+
+ RECT rc;
+ GetItemRect(hItem, &rc, TRUE);
+ pos.pt.x = rc.left;
+ pos.pt.y = rc.top;
+ }
+ else CSuper::GetCaretPos(pos);
+}
+
/////////////////////////////////////////////////////////////////////////////////////////
HIMAGELIST CCtrlTreeView::CreateDragImage(HTREEITEM hItem)
@@ -578,119 +593,119 @@ void CCtrlTreeView::Expand(HTREEITEM hItem, DWORD flag)
{ TreeView_Expand(m_hwnd, hItem, flag);
}
-COLORREF CCtrlTreeView::GetBkColor()
+COLORREF CCtrlTreeView::GetBkColor() const
{ return TreeView_GetBkColor(m_hwnd);
}
-DWORD CCtrlTreeView::GetCheckState(HTREEITEM hItem)
+DWORD CCtrlTreeView::GetCheckState(HTREEITEM hItem) const
{ return TreeView_GetCheckState(m_hwnd, hItem);
}
-HTREEITEM CCtrlTreeView::GetChild(HTREEITEM hItem)
+HTREEITEM CCtrlTreeView::GetChild(HTREEITEM hItem) const
{ return TreeView_GetChild(m_hwnd, hItem);
}
-int CCtrlTreeView::GetCount()
+int CCtrlTreeView::GetCount() const
{ return TreeView_GetCount(m_hwnd);
}
-HTREEITEM CCtrlTreeView::GetDropHilight()
+HTREEITEM CCtrlTreeView::GetDropHilight() const
{ return TreeView_GetDropHilight(m_hwnd);
}
-HWND CCtrlTreeView::GetEditControl()
+HWND CCtrlTreeView::GetEditControl() const
{ return TreeView_GetEditControl(m_hwnd);
}
-HTREEITEM CCtrlTreeView::GetFirstVisible()
+HTREEITEM CCtrlTreeView::GetFirstVisible() const
{ return TreeView_GetFirstVisible(m_hwnd);
}
-HIMAGELIST CCtrlTreeView::GetImageList(int iImage)
+HIMAGELIST CCtrlTreeView::GetImageList(int iImage) const
{ return TreeView_GetImageList(m_hwnd, iImage);
}
-int CCtrlTreeView::GetIndent()
+int CCtrlTreeView::GetIndent() const
{ return TreeView_GetIndent(m_hwnd);
}
-COLORREF CCtrlTreeView::GetInsertMarkColor()
+COLORREF CCtrlTreeView::GetInsertMarkColor() const
{ return TreeView_GetInsertMarkColor(m_hwnd);
}
-bool CCtrlTreeView::GetItem(TVITEMEX *tvi)
+bool CCtrlTreeView::GetItem(TVITEMEX *tvi) const
{ return TreeView_GetItem(m_hwnd, tvi) == TRUE;
}
-int CCtrlTreeView::GetItemHeight()
+int CCtrlTreeView::GetItemHeight() const
{ return TreeView_GetItemHeight(m_hwnd);
}
-void CCtrlTreeView::GetItemRect(HTREEITEM hItem, RECT *rcItem, BOOL fItemRect)
+void CCtrlTreeView::GetItemRect(HTREEITEM hItem, RECT *rcItem, BOOL fItemRect) const
{ TreeView_GetItemRect(m_hwnd, hItem, rcItem, fItemRect);
}
-DWORD CCtrlTreeView::GetItemState(HTREEITEM hItem, DWORD stateMask)
+DWORD CCtrlTreeView::GetItemState(HTREEITEM hItem, DWORD stateMask) const
{ return TreeView_GetItemState(m_hwnd, hItem, stateMask);
}
-HTREEITEM CCtrlTreeView::GetLastVisible()
+HTREEITEM CCtrlTreeView::GetLastVisible() const
{ return TreeView_GetLastVisible(m_hwnd);
}
-COLORREF CCtrlTreeView::GetLineColor()
+COLORREF CCtrlTreeView::GetLineColor() const
{ return TreeView_GetLineColor(m_hwnd);
}
-HTREEITEM CCtrlTreeView::GetNextItem(HTREEITEM hItem, DWORD flag)
+HTREEITEM CCtrlTreeView::GetNextItem(HTREEITEM hItem, DWORD flag) const
{ return TreeView_GetNextItem(m_hwnd, hItem, flag);
}
-HTREEITEM CCtrlTreeView::GetNextSibling(HTREEITEM hItem)
+HTREEITEM CCtrlTreeView::GetNextSibling(HTREEITEM hItem) const
{ return TreeView_GetNextSibling(m_hwnd, hItem);
}
-HTREEITEM CCtrlTreeView::GetNextVisible(HTREEITEM hItem)
+HTREEITEM CCtrlTreeView::GetNextVisible(HTREEITEM hItem) const
{ return TreeView_GetNextVisible(m_hwnd, hItem);
}
-HTREEITEM CCtrlTreeView::GetParent(HTREEITEM hItem)
+HTREEITEM CCtrlTreeView::GetParent(HTREEITEM hItem) const
{ return TreeView_GetParent(m_hwnd, hItem);
}
-HTREEITEM CCtrlTreeView::GetPrevSibling(HTREEITEM hItem)
+HTREEITEM CCtrlTreeView::GetPrevSibling(HTREEITEM hItem) const
{ return TreeView_GetPrevSibling(m_hwnd, hItem);
}
-HTREEITEM CCtrlTreeView::GetPrevVisible(HTREEITEM hItem)
+HTREEITEM CCtrlTreeView::GetPrevVisible(HTREEITEM hItem) const
{ return TreeView_GetPrevVisible(m_hwnd, hItem);
}
-HTREEITEM CCtrlTreeView::GetRoot()
+HTREEITEM CCtrlTreeView::GetRoot() const
{ return TreeView_GetRoot(m_hwnd);
}
-DWORD CCtrlTreeView::GetScrollTime()
+DWORD CCtrlTreeView::GetScrollTime() const
{ return TreeView_GetScrollTime(m_hwnd);
}
-HTREEITEM CCtrlTreeView::GetSelection()
+HTREEITEM CCtrlTreeView::GetSelection() const
{ return TreeView_GetSelection(m_hwnd);
}
-COLORREF CCtrlTreeView::GetTextColor()
+COLORREF CCtrlTreeView::GetTextColor() const
{ return TreeView_GetTextColor(m_hwnd);
}
-HWND CCtrlTreeView::GetToolTips()
+HWND CCtrlTreeView::GetToolTips() const
{ return TreeView_GetToolTips(m_hwnd);
}
-BOOL CCtrlTreeView::GetUnicodeFormat()
+BOOL CCtrlTreeView::GetUnicodeFormat() const
{ return TreeView_GetUnicodeFormat(m_hwnd);
}
-unsigned CCtrlTreeView::GetVisibleCount()
+unsigned CCtrlTreeView::GetVisibleCount() const
{ return TreeView_GetVisibleCount(m_hwnd);
}
diff --git a/src/mir_core/src/CDlgBase.cpp b/src/mir_core/src/CDlgBase.cpp
index d2cbbc23a1..2b588dffc2 100644
--- a/src/mir_core/src/CDlgBase.cpp
+++ b/src/mir_core/src/CDlgBase.cpp
@@ -350,8 +350,15 @@ INT_PTR CDlgBase::DlgProc(UINT msg, WPARAM wParam, LPARAM lParam)
break;
case WM_CONTEXTMENU:
- if (CCtrlBase *ctrl = FindControl(HWND(wParam)))
- ctrl->OnBuildMenu(ctrl);
+ if (CCtrlBase *ctrl = FindControl(HWND(wParam))) {
+ CContextMenuPos pos;
+ ctrl->GetCaretPos(pos);
+ if (lParam != -1) {
+ pos.pt.x = GET_X_LPARAM(lParam);
+ pos.pt.y = GET_Y_LPARAM(lParam);
+ }
+ ctrl->OnBuildMenu(&pos);
+ }
break;
case WM_SIZE:
diff --git a/src/mir_core/src/mir_core.def b/src/mir_core/src/mir_core.def
index 29d9d1c2dd..dc0233e891 100644
--- a/src/mir_core/src/mir_core.def
+++ b/src/mir_core/src/mir_core.def
@@ -574,125 +574,125 @@ mir_wstrcmpi @280
?FindString@CCtrlCombo@@QAEHPB_WH_N@Z @759 NONAME
?FindString@CCtrlListBox@@QAEHPB_WH_N@Z @760 NONAME
?FindStringA@CCtrlCombo@@QAEHPBDH_N@Z @761 NONAME
-?GetBkColor@CCtrlClc@@QAEKXZ @762 NONAME
-?GetBkColor@CCtrlListView@@QAEKXZ @763 NONAME
-?GetBkColor@CCtrlTreeView@@QAEKXZ @764 NONAME
-?GetBkImage@CCtrlListView@@QAEXPAUtagLVBKIMAGEW@@@Z @765 NONAME
-?GetCallbackMask@CCtrlListView@@QAEIXZ @766 NONAME
-?GetCheck@CCtrlClc@@QAE_NPAX@Z @767 NONAME
-?GetCheckState@CCtrlListView@@QAEHI@Z @768 NONAME
-?GetCheckState@CCtrlTreeView@@QAEKPAU_TREEITEM@@@Z @769 NONAME
-?GetChild@CCtrlTreeView@@QAEPAU_TREEITEM@@PAU2@@Z @770 NONAME
-?GetColumn@CCtrlListView@@QAEXHPAUtagLVCOLUMNW@@@Z @771 NONAME
-?GetColumnOrderArray@CCtrlListView@@QAEXHPAH@Z @772 NONAME
-?GetColumnWidth@CCtrlListView@@QAEHH@Z @773 NONAME
-?GetCount@CCtrlClc@@QAEHXZ @774 NONAME
-?GetCount@CCtrlCombo@@QAEHXZ @775 NONAME
-?GetCount@CCtrlListBox@@QAEHXZ @776 NONAME
-?GetCount@CCtrlTreeView@@QAEHXZ @777 NONAME
-?GetCountPerPage@CCtrlListView@@QAEHXZ @778 NONAME
+?GetBkColor@CCtrlClc@@QBEKXZ @762 NONAME
+?GetBkColor@CCtrlListView@@QBEKXZ @763 NONAME
+?GetBkColor@CCtrlTreeView@@QBEKXZ @764 NONAME
+?GetBkImage@CCtrlListView@@QBEXPAUtagLVBKIMAGEW@@@Z @765 NONAME
+?GetCallbackMask@CCtrlListView@@QBEIXZ @766 NONAME
+?GetCheck@CCtrlClc@@QBE_NPAX@Z @767 NONAME
+?GetCheckState@CCtrlListView@@QBEHI@Z @768 NONAME
+?GetCheckState@CCtrlTreeView@@QBEKPAU_TREEITEM@@@Z @769 NONAME
+?GetChild@CCtrlTreeView@@QBEPAU_TREEITEM@@PAU2@@Z @770 NONAME
+?GetColumn@CCtrlListView@@QBEXHPAUtagLVCOLUMNW@@@Z @771 NONAME
+?GetColumnOrderArray@CCtrlListView@@QBEXHPAH@Z @772 NONAME
+?GetColumnWidth@CCtrlListView@@QBEHH@Z @773 NONAME
+?GetCount@CCtrlClc@@QBEHXZ @774 NONAME
+?GetCount@CCtrlCombo@@QBEHXZ @775 NONAME
+?GetCount@CCtrlListBox@@QBEHXZ @776 NONAME
+?GetCount@CCtrlTreeView@@QBEHXZ @777 NONAME
+?GetCountPerPage@CCtrlListView@@QBEHXZ @778 NONAME
?GetCtrlId@CCtrlBase@@QBEHXZ @779 NONAME
-?GetCurSel@CCtrlCombo@@QAEHXZ @780 NONAME
-?GetCurSel@CCtrlListBox@@QAEHXZ @781 NONAME
+?GetCurSel@CCtrlCombo@@QBEHXZ @780 NONAME
+?GetCurSel@CCtrlListBox@@QBEHXZ @781 NONAME
?GetDataType@CCtrlData@@IAEEXZ @782 NONAME
-?GetDataType@CDataLink@@QAEEXZ @783 NONAME
-?GetDropHilight@CCtrlTreeView@@QAEPAU_TREEITEM@@XZ @784 NONAME
-?GetDroppedState@CCtrlCombo@@QAE_NXZ @785 NONAME
-?GetEditControl@CCtrlClc@@QAEPAUHWND__@@XZ @786 NONAME
-?GetEditControl@CCtrlListView@@QAEPAUHWND__@@XZ @787 NONAME
-?GetEditControl@CCtrlTreeView@@QAEPAUHWND__@@XZ @788 NONAME
-?GetExStyle@CCtrlClc@@QAEKXZ @789 NONAME
-?GetExpand@CCtrlClc@@QAEKPAX@Z @790 NONAME
-?GetExtendedListViewStyle@CCtrlListView@@QAEKXZ @791 NONAME
-?GetExtraColumns@CCtrlClc@@QAEHXZ @792 NONAME
-?GetExtraImage@CCtrlClc@@QAEEPAXH@Z @793 NONAME
-?GetExtraImageList@CCtrlClc@@QAEPAU_IMAGELIST@@XZ @794 NONAME
-?GetFirstVisible@CCtrlTreeView@@QAEPAU_TREEITEM@@XZ @795 NONAME
-?GetFont@CCtrlClc@@QAEPAUHFONT__@@H@Z @796 NONAME
-?GetGroupMetrics@CCtrlListView@@QAEXPAUtagLVGROUPMETRICS@@@Z @797 NONAME
-?GetHeader@CCtrlListView@@QAEPAUHWND__@@XZ @798 NONAME
-?GetHideOfflineRoot@CCtrlClc@@QAE_NXZ @799 NONAME
-?GetHotCursor@CCtrlListView@@QAEPAUHICON__@@XZ @800 NONAME
-?GetHotItem@CCtrlListView@@QAEHXZ @801 NONAME
-?GetHoverTime@CCtrlListView@@QAEKXZ @802 NONAME
+?GetDataType@CDataLink@@QBEEXZ @783 NONAME
+?GetDropHilight@CCtrlTreeView@@QBEPAU_TREEITEM@@XZ @784 NONAME
+?GetDroppedState@CCtrlCombo@@QBE_NXZ @785 NONAME
+?GetEditControl@CCtrlClc@@QBEPAUHWND__@@XZ @786 NONAME
+?GetEditControl@CCtrlListView@@QBEPAUHWND__@@XZ @787 NONAME
+?GetEditControl@CCtrlTreeView@@QBEPAUHWND__@@XZ @788 NONAME
+?GetExStyle@CCtrlClc@@QBEKXZ @789 NONAME
+?GetExpand@CCtrlClc@@QBEKPAX@Z @790 NONAME
+?GetExtendedListViewStyle@CCtrlListView@@QBEKXZ @791 NONAME
+?GetExtraColumns@CCtrlClc@@QBEHXZ @792 NONAME
+?GetExtraImage@CCtrlClc@@QBEEPAXH@Z @793 NONAME
+?GetExtraImageList@CCtrlClc@@QBEPAU_IMAGELIST@@XZ @794 NONAME
+?GetFirstVisible@CCtrlTreeView@@QBEPAU_TREEITEM@@XZ @795 NONAME
+?GetFont@CCtrlClc@@QBEPAUHFONT__@@H@Z @796 NONAME
+?GetGroupMetrics@CCtrlListView@@QBEXPAUtagLVGROUPMETRICS@@@Z @797 NONAME
+?GetHeader@CCtrlListView@@QBEPAUHWND__@@XZ @798 NONAME
+?GetHideOfflineRoot@CCtrlClc@@QBE_NXZ @799 NONAME
+?GetHotCursor@CCtrlListView@@QBEPAUHICON__@@XZ @800 NONAME
+?GetHotItem@CCtrlListView@@QBEHXZ @801 NONAME
+?GetHoverTime@CCtrlListView@@QBEKXZ @802 NONAME
?GetHwnd@CCtrlBase@@QBEPAUHWND__@@XZ @803 NONAME
?GetHwnd@CDlgBase@@QBEPAUHWND__@@XZ @804 NONAME
-?GetISearchString@CCtrlListView@@QAEHPAD@Z @805 NONAME
-?GetImageList@CCtrlListView@@QAEPAU_IMAGELIST@@H@Z @806 NONAME
-?GetImageList@CCtrlTreeView@@QAEPAU_IMAGELIST@@H@Z @807 NONAME
-?GetIndent@CCtrlTreeView@@QAEHXZ @808 NONAME
-?GetInsertMark@CCtrlListView@@QAEHPAULVINSERTMARK@@@Z @809 NONAME
-?GetInsertMarkColor@CCtrlListView@@QAEKXZ @810 NONAME
-?GetInsertMarkColor@CCtrlTreeView@@QAEKXZ @811 NONAME
-?GetInsertMarkRect@CCtrlListView@@QAEHPAUtagRECT@@@Z @812 NONAME
-?GetInt@CCtrlBase@@QAEHXZ @813 NONAME
-?GetItem@CCtrlListView@@QAE_NPAUtagLVITEMW@@@Z @814 NONAME
-?GetItem@CCtrlTreeView@@QAEXPAU_TREEITEM@@PAUtagTVITEMEXW@@@Z @815 NONAME
-?GetItem@CCtrlTreeView@@QAEXPAU_TREEITEM@@PAUtagTVITEMEXW@@PA_WH@Z @816 NONAME
-?GetItem@CCtrlTreeView@@QAE_NPAUtagTVITEMEXW@@@Z @817 NONAME
-?GetItemCount@CCtrlListView@@QAEHXZ @818 NONAME
-?GetItemData@CCtrlCombo@@QAEJH@Z @819 NONAME
-?GetItemData@CCtrlListBox@@QAEJH@Z @820 NONAME
-?GetItemData@CCtrlListView@@QAEJH@Z @821 NONAME
-?GetItemHeight@CCtrlTreeView@@QAEHXZ @822 NONAME
-?GetItemPosition@CCtrlListView@@QAEXHPAUtagPOINT@@@Z @823 NONAME
-?GetItemRect@CCtrlListView@@QAEXHPAUtagRECT@@H@Z @824 NONAME
-?GetItemRect@CCtrlTreeView@@QAEXPAU_TREEITEM@@PAUtagRECT@@H@Z @825 NONAME
-?GetItemSpacing@CCtrlListView@@QAEKH@Z @826 NONAME
-?GetItemState@CCtrlListView@@QAEIHI@Z @827 NONAME
-?GetItemState@CCtrlTreeView@@QAEKPAU_TREEITEM@@K@Z @828 NONAME
-?GetItemText@CCtrlCombo@@QAEPA_WH@Z @829 NONAME
-?GetItemText@CCtrlCombo@@QAEPA_WHPA_WH@Z @830 NONAME
-?GetItemText@CCtrlListBox@@QAEPA_WH@Z @831 NONAME
-?GetItemText@CCtrlListBox@@QAEPA_WHPA_WH@Z @832 NONAME
-?GetItemText@CCtrlListView@@QAEXHHPA_WH@Z @833 NONAME
-?GetItemType@CCtrlClc@@QAEHPAX@Z @834 NONAME
-?GetLastVisible@CCtrlTreeView@@QAEPAU_TREEITEM@@XZ @835 NONAME
-?GetLineColor@CCtrlTreeView@@QAEKXZ @837 NONAME
-?GetNextItem@CCtrlClc@@QAEPAXPAXK@Z @838 NONAME
-?GetNextItem@CCtrlListView@@QAEHHI@Z @839 NONAME
-?GetNextItem@CCtrlTreeView@@QAEPAU_TREEITEM@@PAU2@K@Z @840 NONAME
-?GetNextSibling@CCtrlTreeView@@QAEPAU_TREEITEM@@PAU2@@Z @841 NONAME
-?GetNextVisible@CCtrlTreeView@@QAEPAU_TREEITEM@@PAU2@@Z @842 NONAME
-?GetNumberOfWorkAreas@CCtrlListView@@QAEHPAI@Z @843 NONAME
-?GetOrigin@CCtrlListView@@QAEHPAUtagPOINT@@@Z @844 NONAME
-?GetOutlineColor@CCtrlListView@@QAEKXZ @845 NONAME
+?GetISearchString@CCtrlListView@@QBEHPAD@Z @805 NONAME
+?GetImageList@CCtrlListView@@QBEPAU_IMAGELIST@@H@Z @806 NONAME
+?GetImageList@CCtrlTreeView@@QBEPAU_IMAGELIST@@H@Z @807 NONAME
+?GetIndent@CCtrlTreeView@@QBEHXZ @808 NONAME
+?GetInsertMark@CCtrlListView@@QBEHPAULVINSERTMARK@@@Z @809 NONAME
+?GetInsertMarkColor@CCtrlListView@@QBEKXZ @810 NONAME
+?GetInsertMarkColor@CCtrlTreeView@@QBEKXZ @811 NONAME
+?GetInsertMarkRect@CCtrlListView@@QBEHPAUtagRECT@@@Z @812 NONAME
+?GetInt@CCtrlBase@@QBEHXZ @813 NONAME
+?GetItem@CCtrlListView@@QBE_NPAUtagLVITEMW@@@Z @814 NONAME
+?GetItem@CCtrlTreeView@@QBEXPAU_TREEITEM@@PAUtagTVITEMEXW@@@Z @815 NONAME
+?GetItem@CCtrlTreeView@@QBEXPAU_TREEITEM@@PAUtagTVITEMEXW@@PA_WH@Z @816 NONAME
+?GetItem@CCtrlTreeView@@QBE_NPAUtagTVITEMEXW@@@Z @817 NONAME
+?GetItemCount@CCtrlListView@@QBEHXZ @818 NONAME
+?GetItemData@CCtrlCombo@@QBEJH@Z @819 NONAME
+?GetItemData@CCtrlListBox@@QBEJH@Z @820 NONAME
+?GetItemData@CCtrlListView@@QBEJH@Z @821 NONAME
+?GetItemHeight@CCtrlTreeView@@QBEHXZ @822 NONAME
+?GetItemPosition@CCtrlListView@@QBEXHPAUtagPOINT@@@Z @823 NONAME
+?GetItemRect@CCtrlListView@@QBEXHPAUtagRECT@@H@Z @824 NONAME
+?GetItemRect@CCtrlTreeView@@QBEXPAU_TREEITEM@@PAUtagRECT@@H@Z @825 NONAME
+?GetItemSpacing@CCtrlListView@@QBEKH@Z @826 NONAME
+?GetItemState@CCtrlListView@@QBEIHI@Z @827 NONAME
+?GetItemState@CCtrlTreeView@@QBEKPAU_TREEITEM@@K@Z @828 NONAME
+?GetItemText@CCtrlCombo@@QBEPA_WH@Z @829 NONAME
+?GetItemText@CCtrlCombo@@QBEPA_WHPA_WH@Z @830 NONAME
+?GetItemText@CCtrlListBox@@QBEPA_WH@Z @831 NONAME
+?GetItemText@CCtrlListBox@@QBEPA_WHPA_WH@Z @832 NONAME
+?GetItemText@CCtrlListView@@QBEXHHPA_WH@Z @833 NONAME
+?GetItemType@CCtrlClc@@QBEHPAX@Z @834 NONAME
+?GetLastVisible@CCtrlTreeView@@QBEPAU_TREEITEM@@XZ @835 NONAME
+?GetLineColor@CCtrlTreeView@@QBEKXZ @837 NONAME
+?GetNextItem@CCtrlClc@@QBEPAXPAXK@Z @838 NONAME
+?GetNextItem@CCtrlListView@@QBEHHI@Z @839 NONAME
+?GetNextItem@CCtrlTreeView@@QBEPAU_TREEITEM@@PAU2@K@Z @840 NONAME
+?GetNextSibling@CCtrlTreeView@@QBEPAU_TREEITEM@@PAU2@@Z @841 NONAME
+?GetNextVisible@CCtrlTreeView@@QBEPAU_TREEITEM@@PAU2@@Z @842 NONAME
+?GetNumberOfWorkAreas@CCtrlListView@@QBEHPAI@Z @843 NONAME
+?GetOrigin@CCtrlListView@@QBEHPAUtagPOINT@@@Z @844 NONAME
+?GetOutlineColor@CCtrlListView@@QBEKXZ @845 NONAME
?GetParent@CCtrlBase@@QBEPAVCDlgBase@@XZ @846 NONAME
-?GetParent@CCtrlTreeView@@QAEPAU_TREEITEM@@PAU2@@Z @847 NONAME
-?GetPrevSibling@CCtrlTreeView@@QAEPAU_TREEITEM@@PAU2@@Z @848 NONAME
-?GetPrevVisible@CCtrlTreeView@@QAEPAU_TREEITEM@@PAU2@@Z @849 NONAME
-?GetRoot@CCtrlTreeView@@QAEPAU_TREEITEM@@XZ @851 NONAME
-?GetScrollTime@CCtrlTreeView@@QAEKXZ @852 NONAME
-?GetSel@CCtrlListBox@@QAE_NH@Z @853 NONAME
-?GetSelCount@CCtrlListBox@@QAEHXZ @854 NONAME
-?GetSelItems@CCtrlListBox@@QAEPAHPAHH@Z @855 NONAME
-?GetSelItems@CCtrlListBox@@QAEPAHXZ @856 NONAME
-?GetSelectedColumn@CCtrlListView@@QAEIXZ @857 NONAME
-?GetSelectedCount@CCtrlListView@@QAEIXZ @858 NONAME
-?GetSelection@CCtrlClc@@QAEPAXXZ @859 NONAME
-?GetSelection@CCtrlTreeView@@QAEPAU_TREEITEM@@XZ @860 NONAME
-?GetSelectionMark@CCtrlListView@@QAEHXZ @861 NONAME
-?GetState@CCtrlCheck@@QAEHXZ @862 NONAME
-?GetStringWidth@CCtrlListView@@QAEHPBD@Z @863 NONAME
-?GetSubItemRect@CCtrlListView@@QAEHHHHPAUtagRECT@@@Z @864 NONAME
-?GetText@CCtrlBase@@QAEPA_WPA_WI@Z @865 NONAME
-?GetText@CCtrlBase@@QAEPA_WXZ @866 NONAME
-?GetTextA@CCtrlBase@@QAEPADPADI@Z @867 NONAME
-?GetTextA@CCtrlBase@@QAEPADXZ @868 NONAME
-?GetTextBkColor@CCtrlListView@@QAEKXZ @869 NONAME
-?GetTextColor@CCtrlListView@@QAEKXZ @870 NONAME
-?GetTextColor@CCtrlTreeView@@QAEKXZ @871 NONAME
-?GetTileInfo@CCtrlListView@@QAEXPAUtagLVTILEINFO@@@Z @873 NONAME
-?GetTileViewInfo@CCtrlListView@@QAEXPAUtagLVTILEVIEWINFO@@@Z @874 NONAME
-?GetToolTips@CCtrlListView@@QAEPAUHWND__@@XZ @875 NONAME
-?GetToolTips@CCtrlTreeView@@QAEPAUHWND__@@XZ @876 NONAME
-?GetTopIndex@CCtrlListView@@QAEHXZ @877 NONAME
-?GetUnicodeFormat@CCtrlListView@@QAEHXZ @878 NONAME
-?GetUnicodeFormat@CCtrlTreeView@@QAEHXZ @879 NONAME
-?GetView@CCtrlListView@@QAEKXZ @880 NONAME
-?GetViewRect@CCtrlListView@@QAEHPAUtagRECT@@@Z @881 NONAME
-?GetVisibleCount@CCtrlTreeView@@QAEIXZ @882 NONAME
-?GetWorkAreas@CCtrlListView@@QAEXHPAUtagRECT@@@Z @883 NONAME
+?GetParent@CCtrlTreeView@@QBEPAU_TREEITEM@@PAU2@@Z @847 NONAME
+?GetPrevSibling@CCtrlTreeView@@QBEPAU_TREEITEM@@PAU2@@Z @848 NONAME
+?GetPrevVisible@CCtrlTreeView@@QBEPAU_TREEITEM@@PAU2@@Z @849 NONAME
+?GetRoot@CCtrlTreeView@@QBEPAU_TREEITEM@@XZ @851 NONAME
+?GetScrollTime@CCtrlTreeView@@QBEKXZ @852 NONAME
+?GetSel@CCtrlListBox@@QBE_NH@Z @853 NONAME
+?GetSelCount@CCtrlListBox@@QBEHXZ @854 NONAME
+?GetSelItems@CCtrlListBox@@QBEPAHPAHH@Z @855 NONAME
+?GetSelItems@CCtrlListBox@@QBEPAHXZ @856 NONAME
+?GetSelectedColumn@CCtrlListView@@QBEIXZ @857 NONAME
+?GetSelectedCount@CCtrlListView@@QBEIXZ @858 NONAME
+?GetSelection@CCtrlClc@@QBEPAXXZ @859 NONAME
+?GetSelection@CCtrlTreeView@@QBEPAU_TREEITEM@@XZ @860 NONAME
+?GetSelectionMark@CCtrlListView@@QBEHXZ @861 NONAME
+?GetState@CCtrlCheck@@QBEHXZ @862 NONAME
+?GetStringWidth@CCtrlListView@@QBEHPBD@Z @863 NONAME
+?GetSubItemRect@CCtrlListView@@QBEHHHHPAUtagRECT@@@Z @864 NONAME
+?GetText@CCtrlBase@@QBEPA_WPA_WI@Z @865 NONAME
+?GetText@CCtrlBase@@QBEPA_WXZ @866 NONAME
+?GetTextA@CCtrlBase@@QBEPADPADI@Z @867 NONAME
+?GetTextA@CCtrlBase@@QBEPADXZ @868 NONAME
+?GetTextBkColor@CCtrlListView@@QBEKXZ @869 NONAME
+?GetTextColor@CCtrlListView@@QBEKXZ @870 NONAME
+?GetTextColor@CCtrlTreeView@@QBEKXZ @871 NONAME
+?GetTileInfo@CCtrlListView@@QBEXPAUtagLVTILEINFO@@@Z @873 NONAME
+?GetTileViewInfo@CCtrlListView@@QBEXPAUtagLVTILEVIEWINFO@@@Z @874 NONAME
+?GetToolTips@CCtrlListView@@QBEPAUHWND__@@XZ @875 NONAME
+?GetToolTips@CCtrlTreeView@@QBEPAUHWND__@@XZ @876 NONAME
+?GetTopIndex@CCtrlListView@@QBEHXZ @877 NONAME
+?GetUnicodeFormat@CCtrlListView@@QBEHXZ @878 NONAME
+?GetUnicodeFormat@CCtrlTreeView@@QBEHXZ @879 NONAME
+?GetView@CCtrlListView@@QBEKXZ @880 NONAME
+?GetViewRect@CCtrlListView@@QBEHPAUtagRECT@@@Z @881 NONAME
+?GetVisibleCount@CCtrlTreeView@@QBEIXZ @882 NONAME
+?GetWorkAreas@CCtrlListView@@QBEXHPAUtagRECT@@@Z @883 NONAME
?GlobalDlgProc@CDlgBase@@CGHPAUHWND__@@IIJ@Z @884 NONAME
?GlobalDlgResizer@CDlgBase@@CAHPAUHWND__@@JPAUUTILRESIZECONTROL@@@Z @885 NONAME
?GlobalSubclassWndProc@CCtrlBase@@CGJPAUHWND__@@IIJ@Z @886 NONAME
@@ -973,7 +973,7 @@ CallFunctionSync @1170
?Start@CTimer@@QAEXH@Z @1188 NONAME
?Stop@CTimer@@QAE_NXZ @1189 NONAME
?AddTimer@CDlgBase@@IAEXPAVCTimer@@@Z @1190 NONAME
-?GetItemRect@CCtrlListBox@@QAEHHPAUtagRECT@@@Z @1193 NONAME
+?GetItemRect@CCtrlListBox@@QBEHHPAUtagRECT@@@Z @1193 NONAME
?SetItemHeight@CCtrlListBox@@QAEXHH@Z @1194 NONAME
?UseSystemColors@CCtrlBase@@QAEXXZ @1195 NONAME
?SetPosition@CCtrlSpin@@QAEXG@Z @1196 NONAME
@@ -1408,8 +1408,8 @@ db_event_edit @1268
??AXMLConstHandle@tinyxml2@@QBE?BV01@PBD@Z @1629 NONAME
??AXMLHandle@tinyxml2@@QAE?AV01@PBD@Z @1630 NONAME
db_get_utfa @1631
-?GetTextU@CCtrlBase@@QAEPADPADI@Z @1632 NONAME
-?GetTextU@CCtrlBase@@QAEPADXZ @1633 NONAME
+?GetTextU@CCtrlBase@@QBEPADPADI@Z @1632 NONAME
+?GetTextU@CCtrlBase@@QBEPADXZ @1633 NONAME
?BytesParsed@XMLDocument@tinyxml2@@QBEHXZ @1634 NONAME
TranslateU_LP @1635
XmlAddAttr @1636
@@ -1492,8 +1492,12 @@ TimeZone_GetSystemTime @1692
??0CCtrlSlider@@QAE@PAVCDlgBase@@HHH@Z @1715 NONAME
??1CCtrlSlider@@UAE@XZ @1716 NONAME
??_7CCtrlSlider@@6B@ @1717 NONAME
-?GetPosition@CCtrlSlider@@QAEHXZ @1718 NONAME
+?GetPosition@CCtrlSlider@@QBEHXZ @1718 NONAME
?OnApply@CCtrlSlider@@UAE_NXZ @1719 NONAME
?OnCommand@CCtrlSlider@@MAEHPAUHWND__@@GG@Z @1720 NONAME
?OnReset@CCtrlSlider@@UAEXXZ @1721 NONAME
?SetPosition@CCtrlSlider@@QAEXH@Z @1722 NONAME
+?GetCaretPos@CCtrlBase@@MBEXAAUCContextMenuPos@@@Z @1723 NONAME
+?GetCaretPos@CCtrlListBox@@MBEXAAUCContextMenuPos@@@Z @1724 NONAME
+?GetCaretPos@CCtrlListView@@MBEXAAUCContextMenuPos@@@Z @1725 NONAME
+?GetCaretPos@CCtrlTreeView@@MBEXAAUCContextMenuPos@@@Z @1726 NONAME
diff --git a/src/mir_core/src/mir_core64.def b/src/mir_core/src/mir_core64.def
index 20f21631fb..f7eea3fc43 100644
--- a/src/mir_core/src/mir_core64.def
+++ b/src/mir_core/src/mir_core64.def
@@ -574,125 +574,125 @@ mir_wstrcmpi @280
?FindString@CCtrlCombo@@QEAAHPEB_WH_N@Z @759 NONAME
?FindString@CCtrlListBox@@QEAAHPEB_WH_N@Z @760 NONAME
?FindStringA@CCtrlCombo@@QEAAHPEBDH_N@Z @761 NONAME
-?GetBkColor@CCtrlClc@@QEAAKXZ @762 NONAME
-?GetBkColor@CCtrlListView@@QEAAKXZ @763 NONAME
-?GetBkColor@CCtrlTreeView@@QEAAKXZ @764 NONAME
-?GetBkImage@CCtrlListView@@QEAAXPEAUtagLVBKIMAGEW@@@Z @765 NONAME
-?GetCallbackMask@CCtrlListView@@QEAAIXZ @766 NONAME
-?GetCheck@CCtrlClc@@QEAA_NPEAX@Z @767 NONAME
-?GetCheckState@CCtrlListView@@QEAAHI@Z @768 NONAME
-?GetCheckState@CCtrlTreeView@@QEAAKPEAU_TREEITEM@@@Z @769 NONAME
-?GetChild@CCtrlTreeView@@QEAAPEAU_TREEITEM@@PEAU2@@Z @770 NONAME
-?GetColumn@CCtrlListView@@QEAAXHPEAUtagLVCOLUMNW@@@Z @771 NONAME
-?GetColumnOrderArray@CCtrlListView@@QEAAXHPEAH@Z @772 NONAME
-?GetColumnWidth@CCtrlListView@@QEAAHH@Z @773 NONAME
-?GetCount@CCtrlClc@@QEAAHXZ @774 NONAME
-?GetCount@CCtrlCombo@@QEAAHXZ @775 NONAME
-?GetCount@CCtrlListBox@@QEAAHXZ @776 NONAME
-?GetCount@CCtrlTreeView@@QEAAHXZ @777 NONAME
-?GetCountPerPage@CCtrlListView@@QEAAHXZ @778 NONAME
+?GetBkColor@CCtrlClc@@QEBAKXZ @762 NONAME
+?GetBkColor@CCtrlListView@@QEBAKXZ @763 NONAME
+?GetBkColor@CCtrlTreeView@@QEBAKXZ @764 NONAME
+?GetBkImage@CCtrlListView@@QEBAXPEAUtagLVBKIMAGEW@@@Z @765 NONAME
+?GetCallbackMask@CCtrlListView@@QEBAIXZ @766 NONAME
+?GetCheck@CCtrlClc@@QEBA_NPEAX@Z @767 NONAME
+?GetCheckState@CCtrlListView@@QEBAHI@Z @768 NONAME
+?GetCheckState@CCtrlTreeView@@QEBAKPEAU_TREEITEM@@@Z @769 NONAME
+?GetChild@CCtrlTreeView@@QEBAPEAU_TREEITEM@@PEAU2@@Z @770 NONAME
+?GetColumn@CCtrlListView@@QEBAXHPEAUtagLVCOLUMNW@@@Z @771 NONAME
+?GetColumnOrderArray@CCtrlListView@@QEBAXHPEAH@Z @772 NONAME
+?GetColumnWidth@CCtrlListView@@QEBAHH@Z @773 NONAME
+?GetCount@CCtrlClc@@QEBAHXZ @774 NONAME
+?GetCount@CCtrlCombo@@QEBAHXZ @775 NONAME
+?GetCount@CCtrlListBox@@QEBAHXZ @776 NONAME
+?GetCount@CCtrlTreeView@@QEBAHXZ @777 NONAME
+?GetCountPerPage@CCtrlListView@@QEBAHXZ @778 NONAME
?GetCtrlId@CCtrlBase@@QEBAHXZ @779 NONAME
-?GetCurSel@CCtrlCombo@@QEAAHXZ @780 NONAME
-?GetCurSel@CCtrlListBox@@QEAAHXZ @781 NONAME
+?GetCurSel@CCtrlCombo@@QEBAHXZ @780 NONAME
+?GetCurSel@CCtrlListBox@@QEBAHXZ @781 NONAME
?GetDataType@CCtrlData@@IEAAEXZ @782 NONAME
-?GetDataType@CDataLink@@QEAAEXZ @783 NONAME
-?GetDropHilight@CCtrlTreeView@@QEAAPEAU_TREEITEM@@XZ @784 NONAME
-?GetDroppedState@CCtrlCombo@@QEAA_NXZ @785 NONAME
-?GetEditControl@CCtrlClc@@QEAAPEAUHWND__@@XZ @786 NONAME
-?GetEditControl@CCtrlListView@@QEAAPEAUHWND__@@XZ @787 NONAME
-?GetEditControl@CCtrlTreeView@@QEAAPEAUHWND__@@XZ @788 NONAME
-?GetExStyle@CCtrlClc@@QEAAKXZ @789 NONAME
-?GetExpand@CCtrlClc@@QEAAKPEAX@Z @790 NONAME
-?GetExtendedListViewStyle@CCtrlListView@@QEAAKXZ @791 NONAME
-?GetExtraColumns@CCtrlClc@@QEAAHXZ @792 NONAME
-?GetExtraImage@CCtrlClc@@QEAAEPEAXH@Z @793 NONAME
-?GetExtraImageList@CCtrlClc@@QEAAPEAU_IMAGELIST@@XZ @794 NONAME
-?GetFirstVisible@CCtrlTreeView@@QEAAPEAU_TREEITEM@@XZ @795 NONAME
-?GetFont@CCtrlClc@@QEAAPEAUHFONT__@@H@Z @796 NONAME
-?GetGroupMetrics@CCtrlListView@@QEAAXPEAUtagLVGROUPMETRICS@@@Z @797 NONAME
-?GetHeader@CCtrlListView@@QEAAPEAUHWND__@@XZ @798 NONAME
-?GetHideOfflineRoot@CCtrlClc@@QEAA_NXZ @799 NONAME
-?GetHotCursor@CCtrlListView@@QEAAPEAUHICON__@@XZ @800 NONAME
-?GetHotItem@CCtrlListView@@QEAAHXZ @801 NONAME
-?GetHoverTime@CCtrlListView@@QEAAKXZ @802 NONAME
+?GetDataType@CDataLink@@QEBAEXZ @783 NONAME
+?GetDropHilight@CCtrlTreeView@@QEBAPEAU_TREEITEM@@XZ @784 NONAME
+?GetDroppedState@CCtrlCombo@@QEBA_NXZ @785 NONAME
+?GetEditControl@CCtrlClc@@QEBAPEAUHWND__@@XZ @786 NONAME
+?GetEditControl@CCtrlListView@@QEBAPEAUHWND__@@XZ @787 NONAME
+?GetEditControl@CCtrlTreeView@@QEBAPEAUHWND__@@XZ @788 NONAME
+?GetExStyle@CCtrlClc@@QEBAKXZ @789 NONAME
+?GetExpand@CCtrlClc@@QEBAKPEAX@Z @790 NONAME
+?GetExtendedListViewStyle@CCtrlListView@@QEBAKXZ @791 NONAME
+?GetExtraColumns@CCtrlClc@@QEBAHXZ @792 NONAME
+?GetExtraImage@CCtrlClc@@QEBAEPEAXH@Z @793 NONAME
+?GetExtraImageList@CCtrlClc@@QEBAPEAU_IMAGELIST@@XZ @794 NONAME
+?GetFirstVisible@CCtrlTreeView@@QEBAPEAU_TREEITEM@@XZ @795 NONAME
+?GetFont@CCtrlClc@@QEBAPEAUHFONT__@@H@Z @796 NONAME
+?GetGroupMetrics@CCtrlListView@@QEBAXPEAUtagLVGROUPMETRICS@@@Z @797 NONAME
+?GetHeader@CCtrlListView@@QEBAPEAUHWND__@@XZ @798 NONAME
+?GetHideOfflineRoot@CCtrlClc@@QEBA_NXZ @799 NONAME
+?GetHotCursor@CCtrlListView@@QEBAPEAUHICON__@@XZ @800 NONAME
+?GetHotItem@CCtrlListView@@QEBAHXZ @801 NONAME
+?GetHoverTime@CCtrlListView@@QEBAKXZ @802 NONAME
?GetHwnd@CCtrlBase@@QEBAPEAUHWND__@@XZ @803 NONAME
?GetHwnd@CDlgBase@@QEBAPEAUHWND__@@XZ @804 NONAME
-?GetISearchString@CCtrlListView@@QEAAHPEAD@Z @805 NONAME
-?GetImageList@CCtrlListView@@QEAAPEAU_IMAGELIST@@H@Z @806 NONAME
-?GetImageList@CCtrlTreeView@@QEAAPEAU_IMAGELIST@@H@Z @807 NONAME
-?GetIndent@CCtrlTreeView@@QEAAHXZ @808 NONAME
-?GetInsertMark@CCtrlListView@@QEAAHPEAULVINSERTMARK@@@Z @809 NONAME
-?GetInsertMarkColor@CCtrlListView@@QEAAKXZ @810 NONAME
-?GetInsertMarkColor@CCtrlTreeView@@QEAAKXZ @811 NONAME
-?GetInsertMarkRect@CCtrlListView@@QEAAHPEAUtagRECT@@@Z @812 NONAME
-?GetInt@CCtrlBase@@QEAAHXZ @813 NONAME
-?GetItem@CCtrlListView@@QEAA_NPEAUtagLVITEMW@@@Z @814 NONAME
-?GetItem@CCtrlTreeView@@QEAAXPEAU_TREEITEM@@PEAUtagTVITEMEXW@@@Z @815 NONAME
-?GetItem@CCtrlTreeView@@QEAAXPEAU_TREEITEM@@PEAUtagTVITEMEXW@@PEA_WH@Z @816 NONAME
-?GetItem@CCtrlTreeView@@QEAA_NPEAUtagTVITEMEXW@@@Z @817 NONAME
-?GetItemCount@CCtrlListView@@QEAAHXZ @818 NONAME
-?GetItemData@CCtrlCombo@@QEAA_JH@Z @819 NONAME
-?GetItemData@CCtrlListBox@@QEAA_JH@Z @820 NONAME
-?GetItemData@CCtrlListView@@QEAA_JH@Z @821 NONAME
-?GetItemHeight@CCtrlTreeView@@QEAAHXZ @822 NONAME
-?GetItemPosition@CCtrlListView@@QEAAXHPEAUtagPOINT@@@Z @823 NONAME
-?GetItemRect@CCtrlListView@@QEAAXHPEAUtagRECT@@H@Z @824 NONAME
-?GetItemRect@CCtrlTreeView@@QEAAXPEAU_TREEITEM@@PEAUtagRECT@@H@Z @825 NONAME
-?GetItemSpacing@CCtrlListView@@QEAAKH@Z @826 NONAME
-?GetItemState@CCtrlListView@@QEAAIHI@Z @827 NONAME
-?GetItemState@CCtrlTreeView@@QEAAKPEAU_TREEITEM@@K@Z @828 NONAME
-?GetItemText@CCtrlCombo@@QEAAPEA_WH@Z @829 NONAME
-?GetItemText@CCtrlCombo@@QEAAPEA_WHPEA_WH@Z @830 NONAME
-?GetItemText@CCtrlListBox@@QEAAPEA_WH@Z @831 NONAME
-?GetItemText@CCtrlListBox@@QEAAPEA_WHPEA_WH@Z @832 NONAME
-?GetItemText@CCtrlListView@@QEAAXHHPEA_WH@Z @833 NONAME
-?GetItemType@CCtrlClc@@QEAAHPEAX@Z @834 NONAME
-?GetLastVisible@CCtrlTreeView@@QEAAPEAU_TREEITEM@@XZ @835 NONAME
-?GetLineColor@CCtrlTreeView@@QEAAKXZ @837 NONAME
-?GetNextItem@CCtrlClc@@QEAAPEAXPEAXK@Z @838 NONAME
-?GetNextItem@CCtrlListView@@QEAAHHI@Z @839 NONAME
-?GetNextItem@CCtrlTreeView@@QEAAPEAU_TREEITEM@@PEAU2@K@Z @840 NONAME
-?GetNextSibling@CCtrlTreeView@@QEAAPEAU_TREEITEM@@PEAU2@@Z @841 NONAME
-?GetNextVisible@CCtrlTreeView@@QEAAPEAU_TREEITEM@@PEAU2@@Z @842 NONAME
-?GetNumberOfWorkAreas@CCtrlListView@@QEAAHPEAI@Z @843 NONAME
-?GetOrigin@CCtrlListView@@QEAAHPEAUtagPOINT@@@Z @844 NONAME
-?GetOutlineColor@CCtrlListView@@QEAAKXZ @845 NONAME
+?GetISearchString@CCtrlListView@@QEBAHPEAD@Z @805 NONAME
+?GetImageList@CCtrlListView@@QEBAPEAU_IMAGELIST@@H@Z @806 NONAME
+?GetImageList@CCtrlTreeView@@QEBAPEAU_IMAGELIST@@H@Z @807 NONAME
+?GetIndent@CCtrlTreeView@@QEBAHXZ @808 NONAME
+?GetInsertMark@CCtrlListView@@QEBAHPEAULVINSERTMARK@@@Z @809 NONAME
+?GetInsertMarkColor@CCtrlListView@@QEBAKXZ @810 NONAME
+?GetInsertMarkColor@CCtrlTreeView@@QEBAKXZ @811 NONAME
+?GetInsertMarkRect@CCtrlListView@@QEBAHPEAUtagRECT@@@Z @812 NONAME
+?GetInt@CCtrlBase@@QEBAHXZ @813 NONAME
+?GetItem@CCtrlListView@@QEBA_NPEAUtagLVITEMW@@@Z @814 NONAME
+?GetItem@CCtrlTreeView@@QEBAXPEAU_TREEITEM@@PEAUtagTVITEMEXW@@@Z @815 NONAME
+?GetItem@CCtrlTreeView@@QEBAXPEAU_TREEITEM@@PEAUtagTVITEMEXW@@PEA_WH@Z @816 NONAME
+?GetItem@CCtrlTreeView@@QEBA_NPEAUtagTVITEMEXW@@@Z @817 NONAME
+?GetItemCount@CCtrlListView@@QEBAHXZ @818 NONAME
+?GetItemData@CCtrlCombo@@QEBA_JH@Z @819 NONAME
+?GetItemData@CCtrlListBox@@QEBA_JH@Z @820 NONAME
+?GetItemData@CCtrlListView@@QEBA_JH@Z @821 NONAME
+?GetItemHeight@CCtrlTreeView@@QEBAHXZ @822 NONAME
+?GetItemPosition@CCtrlListView@@QEBAXHPEAUtagPOINT@@@Z @823 NONAME
+?GetItemRect@CCtrlListView@@QEBAXHPEAUtagRECT@@H@Z @824 NONAME
+?GetItemRect@CCtrlTreeView@@QEBAXPEAU_TREEITEM@@PEAUtagRECT@@H@Z @825 NONAME
+?GetItemSpacing@CCtrlListView@@QEBAKH@Z @826 NONAME
+?GetItemState@CCtrlListView@@QEBAIHI@Z @827 NONAME
+?GetItemState@CCtrlTreeView@@QEBAKPEAU_TREEITEM@@K@Z @828 NONAME
+?GetItemText@CCtrlCombo@@QEBAPEA_WH@Z @829 NONAME
+?GetItemText@CCtrlCombo@@QEBAPEA_WHPEA_WH@Z @830 NONAME
+?GetItemText@CCtrlListBox@@QEBAPEA_WH@Z @831 NONAME
+?GetItemText@CCtrlListBox@@QEBAPEA_WHPEA_WH@Z @832 NONAME
+?GetItemText@CCtrlListView@@QEBAXHHPEA_WH@Z @833 NONAME
+?GetItemType@CCtrlClc@@QEBAHPEAX@Z @834 NONAME
+?GetLastVisible@CCtrlTreeView@@QEBAPEAU_TREEITEM@@XZ @835 NONAME
+?GetLineColor@CCtrlTreeView@@QEBAKXZ @837 NONAME
+?GetNextItem@CCtrlClc@@QEBAPEAXPEAXK@Z @838 NONAME
+?GetNextItem@CCtrlListView@@QEBAHHI@Z @839 NONAME
+?GetNextItem@CCtrlTreeView@@QEBAPEAU_TREEITEM@@PEAU2@K@Z @840 NONAME
+?GetNextSibling@CCtrlTreeView@@QEBAPEAU_TREEITEM@@PEAU2@@Z @841 NONAME
+?GetNextVisible@CCtrlTreeView@@QEBAPEAU_TREEITEM@@PEAU2@@Z @842 NONAME
+?GetNumberOfWorkAreas@CCtrlListView@@QEBAHPEAI@Z @843 NONAME
+?GetOrigin@CCtrlListView@@QEBAHPEAUtagPOINT@@@Z @844 NONAME
+?GetOutlineColor@CCtrlListView@@QEBAKXZ @845 NONAME
?GetParent@CCtrlBase@@QEBAPEAVCDlgBase@@XZ @846 NONAME
-?GetParent@CCtrlTreeView@@QEAAPEAU_TREEITEM@@PEAU2@@Z @847 NONAME
-?GetPrevSibling@CCtrlTreeView@@QEAAPEAU_TREEITEM@@PEAU2@@Z @848 NONAME
-?GetPrevVisible@CCtrlTreeView@@QEAAPEAU_TREEITEM@@PEAU2@@Z @849 NONAME
-?GetRoot@CCtrlTreeView@@QEAAPEAU_TREEITEM@@XZ @851 NONAME
-?GetScrollTime@CCtrlTreeView@@QEAAKXZ @852 NONAME
-?GetSel@CCtrlListBox@@QEAA_NH@Z @853 NONAME
-?GetSelCount@CCtrlListBox@@QEAAHXZ @854 NONAME
-?GetSelItems@CCtrlListBox@@QEAAPEAHPEAHH@Z @855 NONAME
-?GetSelItems@CCtrlListBox@@QEAAPEAHXZ @856 NONAME
-?GetSelectedColumn@CCtrlListView@@QEAAIXZ @857 NONAME
-?GetSelectedCount@CCtrlListView@@QEAAIXZ @858 NONAME
-?GetSelection@CCtrlClc@@QEAAPEAXXZ @859 NONAME
-?GetSelection@CCtrlTreeView@@QEAAPEAU_TREEITEM@@XZ @860 NONAME
-?GetSelectionMark@CCtrlListView@@QEAAHXZ @861 NONAME
-?GetState@CCtrlCheck@@QEAAHXZ @862 NONAME
-?GetStringWidth@CCtrlListView@@QEAAHPEBD@Z @863 NONAME
-?GetSubItemRect@CCtrlListView@@QEAAHHHHPEAUtagRECT@@@Z @864 NONAME
-?GetText@CCtrlBase@@QEAAPEA_WPEA_W_K@Z @865 NONAME
-?GetText@CCtrlBase@@QEAAPEA_WXZ @866 NONAME
-?GetTextA@CCtrlBase@@QEAAPEADPEAD_K@Z @867 NONAME
-?GetTextA@CCtrlBase@@QEAAPEADXZ @868 NONAME
-?GetTextBkColor@CCtrlListView@@QEAAKXZ @869 NONAME
-?GetTextColor@CCtrlListView@@QEAAKXZ @870 NONAME
-?GetTextColor@CCtrlTreeView@@QEAAKXZ @871 NONAME
-?GetTileInfo@CCtrlListView@@QEAAXPEAUtagLVTILEINFO@@@Z @873 NONAME
-?GetTileViewInfo@CCtrlListView@@QEAAXPEAUtagLVTILEVIEWINFO@@@Z @874 NONAME
-?GetToolTips@CCtrlListView@@QEAAPEAUHWND__@@XZ @875 NONAME
-?GetToolTips@CCtrlTreeView@@QEAAPEAUHWND__@@XZ @876 NONAME
-?GetTopIndex@CCtrlListView@@QEAAHXZ @877 NONAME
-?GetUnicodeFormat@CCtrlListView@@QEAAHXZ @878 NONAME
-?GetUnicodeFormat@CCtrlTreeView@@QEAAHXZ @879 NONAME
-?GetView@CCtrlListView@@QEAAKXZ @880 NONAME
-?GetViewRect@CCtrlListView@@QEAAHPEAUtagRECT@@@Z @881 NONAME
-?GetVisibleCount@CCtrlTreeView@@QEAAIXZ @882 NONAME
-?GetWorkAreas@CCtrlListView@@QEAAXHPEAUtagRECT@@@Z @883 NONAME
+?GetParent@CCtrlTreeView@@QEBAPEAU_TREEITEM@@PEAU2@@Z @847 NONAME
+?GetPrevSibling@CCtrlTreeView@@QEBAPEAU_TREEITEM@@PEAU2@@Z @848 NONAME
+?GetPrevVisible@CCtrlTreeView@@QEBAPEAU_TREEITEM@@PEAU2@@Z @849 NONAME
+?GetRoot@CCtrlTreeView@@QEBAPEAU_TREEITEM@@XZ @851 NONAME
+?GetScrollTime@CCtrlTreeView@@QEBAKXZ @852 NONAME
+?GetSel@CCtrlListBox@@QEBA_NH@Z @853 NONAME
+?GetSelCount@CCtrlListBox@@QEBAHXZ @854 NONAME
+?GetSelItems@CCtrlListBox@@QEBAPEAHPEAHH@Z @855 NONAME
+?GetSelItems@CCtrlListBox@@QEBAPEAHXZ @856 NONAME
+?GetSelectedColumn@CCtrlListView@@QEBAIXZ @857 NONAME
+?GetSelectedCount@CCtrlListView@@QEBAIXZ @858 NONAME
+?GetSelection@CCtrlClc@@QEBAPEAXXZ @859 NONAME
+?GetSelection@CCtrlTreeView@@QEBAPEAU_TREEITEM@@XZ @860 NONAME
+?GetSelectionMark@CCtrlListView@@QEBAHXZ @861 NONAME
+?GetState@CCtrlCheck@@QEBAHXZ @862 NONAME
+?GetStringWidth@CCtrlListView@@QEBAHPEBD@Z @863 NONAME
+?GetSubItemRect@CCtrlListView@@QEBAHHHHPEAUtagRECT@@@Z @864 NONAME
+?GetText@CCtrlBase@@QEBAPEA_WPEA_W_K@Z @865 NONAME
+?GetText@CCtrlBase@@QEBAPEA_WXZ @866 NONAME
+?GetTextA@CCtrlBase@@QEBAPEADPEAD_K@Z @867 NONAME
+?GetTextA@CCtrlBase@@QEBAPEADXZ @868 NONAME
+?GetTextBkColor@CCtrlListView@@QEBAKXZ @869 NONAME
+?GetTextColor@CCtrlListView@@QEBAKXZ @870 NONAME
+?GetTextColor@CCtrlTreeView@@QEBAKXZ @871 NONAME
+?GetTileInfo@CCtrlListView@@QEBAXPEAUtagLVTILEINFO@@@Z @873 NONAME
+?GetTileViewInfo@CCtrlListView@@QEBAXPEAUtagLVTILEVIEWINFO@@@Z @874 NONAME
+?GetToolTips@CCtrlListView@@QEBAPEAUHWND__@@XZ @875 NONAME
+?GetToolTips@CCtrlTreeView@@QEBAPEAUHWND__@@XZ @876 NONAME
+?GetTopIndex@CCtrlListView@@QEBAHXZ @877 NONAME
+?GetUnicodeFormat@CCtrlListView@@QEBAHXZ @878 NONAME
+?GetUnicodeFormat@CCtrlTreeView@@QEBAHXZ @879 NONAME
+?GetView@CCtrlListView@@QEBAKXZ @880 NONAME
+?GetViewRect@CCtrlListView@@QEBAHPEAUtagRECT@@@Z @881 NONAME
+?GetVisibleCount@CCtrlTreeView@@QEBAIXZ @882 NONAME
+?GetWorkAreas@CCtrlListView@@QEBAXHPEAUtagRECT@@@Z @883 NONAME
?GlobalDlgProc@CDlgBase@@CA_JPEAUHWND__@@I_K_J@Z @884 NONAME
?GlobalDlgResizer@CDlgBase@@CAHPEAUHWND__@@_JPEAUUTILRESIZECONTROL@@@Z @885 NONAME
?GlobalSubclassWndProc@CCtrlBase@@CA_JPEAUHWND__@@I_K_J@Z @886 NONAME
@@ -973,7 +973,7 @@ CallFunctionSync @1170
?Start@CTimer@@QEAAXH@Z @1188 NONAME
?Stop@CTimer@@QEAA_NXZ @1189 NONAME
?AddTimer@CDlgBase@@IEAAXPEAVCTimer@@@Z @1190 NONAME
-?GetItemRect@CCtrlListBox@@QEAAHHPEAUtagRECT@@@Z @1193 NONAME
+?GetItemRect@CCtrlListBox@@QEBAHHPEAUtagRECT@@@Z @1193 NONAME
?SetItemHeight@CCtrlListBox@@QEAAXHH@Z @1194 NONAME
?UseSystemColors@CCtrlBase@@QEAAXXZ @1195 NONAME
?SetPosition@CCtrlSpin@@QEAAXG@Z @1196 NONAME
@@ -1408,8 +1408,8 @@ db_event_edit @1268
??AXMLConstHandle@tinyxml2@@QEBA?BV01@PEBD@Z @1629 NONAME
??AXMLHandle@tinyxml2@@QEAA?AV01@PEBD@Z @1630 NONAME
db_get_utfa @1631
-?GetTextU@CCtrlBase@@QEAAPEADPEAD_K@Z @1632 NONAME
-?GetTextU@CCtrlBase@@QEAAPEADXZ @1633 NONAME
+?GetTextU@CCtrlBase@@QEBAPEADPEAD_K@Z @1632 NONAME
+?GetTextU@CCtrlBase@@QEBAPEADXZ @1633 NONAME
?BytesParsed@XMLDocument@tinyxml2@@QEBAHXZ @1634 NONAME
TranslateU_LP @1635
XmlAddAttr @1636
@@ -1492,8 +1492,12 @@ TimeZone_GetSystemTime @1692
??0CCtrlSlider@@QEAA@PEAVCDlgBase@@HHH@Z @1715 NONAME
??1CCtrlSlider@@UEAA@XZ @1716 NONAME
??_7CCtrlSlider@@6B@ @1717 NONAME
-?GetPosition@CCtrlSlider@@QEAAHXZ @1718 NONAME
+?GetPosition@CCtrlSlider@@QEBAHXZ @1718 NONAME
?OnApply@CCtrlSlider@@UEAA_NXZ @1719 NONAME
?OnCommand@CCtrlSlider@@MEAAHPEAUHWND__@@GG@Z @1720 NONAME
?OnReset@CCtrlSlider@@UEAAXXZ @1721 NONAME
?SetPosition@CCtrlSlider@@QEAAXH@Z @1722 NONAME
+?GetCaretPos@CCtrlBase@@MEBAXAEAUCContextMenuPos@@@Z @1723 NONAME
+?GetCaretPos@CCtrlListBox@@MEBAXAEAUCContextMenuPos@@@Z @1724 NONAME
+?GetCaretPos@CCtrlListView@@MEBAXAEAUCContextMenuPos@@@Z @1725 NONAME
+?GetCaretPos@CCtrlTreeView@@MEBAXAEAUCContextMenuPos@@@Z @1726 NONAME