(hwnd win.HWND, msg uint32, wp, lp uintptr)
| 1915 | } |
| 1916 | |
| 1917 | func tableViewNormalLVWndProc(hwnd win.HWND, msg uint32, wp, lp uintptr) uintptr { |
| 1918 | tv := (*TableView)(unsafe.Pointer(windowFromHandle(win.GetParent(hwnd)).AsWindowBase())) |
| 1919 | |
| 1920 | switch msg { |
| 1921 | case win.WM_LBUTTONDOWN, win.WM_RBUTTONDOWN: |
| 1922 | win.SetFocus(tv.hwndFrozenLV) |
| 1923 | |
| 1924 | case win.WM_SETFOCUS: |
| 1925 | tv.invalidateBorderInParent() |
| 1926 | tv.maybePublishFocusChanged(hwnd, msg, wp) |
| 1927 | |
| 1928 | case win.WM_KILLFOCUS: |
| 1929 | win.SendMessage(tv.hwndFrozenLV, msg, wp, lp) |
| 1930 | tv.WndProc(tv.hWnd, msg, wp, lp) |
| 1931 | tv.maybePublishFocusChanged(hwnd, msg, wp) |
| 1932 | } |
| 1933 | |
| 1934 | result := tv.lvWndProc(tv.normalLVOrigWndProcPtr, hwnd, msg, wp, lp) |
| 1935 | |
| 1936 | var off uint32 = win.WS_HSCROLL | win.WS_VSCROLL |
| 1937 | if tv.scrollbarOrientation&Horizontal != 0 { |
| 1938 | off &^= win.WS_HSCROLL |
| 1939 | } |
| 1940 | if tv.scrollbarOrientation&Vertical != 0 { |
| 1941 | off &^= win.WS_VSCROLL |
| 1942 | } |
| 1943 | if off != 0 { |
| 1944 | ensureWindowLongBits(hwnd, win.GWL_STYLE, off, false) |
| 1945 | } |
| 1946 | |
| 1947 | return result |
| 1948 | } |
| 1949 | |
| 1950 | func (tv *TableView) lvWndProc(origWndProcPtr uintptr, hwnd win.HWND, msg uint32, wp, lp uintptr) uintptr { |
| 1951 | var hwndOther win.HWND |
no test coverage detected
searching dependent graphs…