comparison win/dw.c @ 1911:102fca5f2e19

Fix bug with filename and not row title from being returned in the item context callback.
author mhessling@81767d24-ef19-dc11-ae90-00e081727c95
date Sun, 03 Jan 2016 04:10:57 +0000
parents 000a94a1ddc1
children ad3a32fd7008
comparison
equal deleted inserted replaced
1910:000a94a1ddc1 1911:102fca5f2e19
3003 } 3003 }
3004 break; 3004 break;
3005 case WM_CONTEXTMENU: 3005 case WM_CONTEXTMENU:
3006 { 3006 {
3007 SignalHandler *tmp = Root; 3007 SignalHandler *tmp = Root;
3008 3008 void **params = NULL;
3009 while(tmp) 3009 while(tmp)
3010 { 3010 {
3011 if(tmp->message == NM_RCLICK && tmp->window == hWnd) 3011 if(tmp->message == NM_RCLICK && tmp->window == hWnd)
3012 { 3012 {
3013 int (DWSIGNAL *containercontextfunc)(HWND, char *, int, int, void *, void *) = tmp->signalfunction; 3013 int (DWSIGNAL *containercontextfunc)(HWND, char *, int, int, void *, void *) = tmp->signalfunction;
3035 lvi.cchTextMax = 1024; 3035 lvi.cchTextMax = 1024;
3036 lvi.mask = LVIF_PARAM | LVIF_TEXT; 3036 lvi.mask = LVIF_PARAM | LVIF_TEXT;
3037 3037
3038 ListView_GetItem(tmp->window, &lvi); 3038 ListView_GetItem(tmp->window, &lvi);
3039 ListView_SetSelectionMark(tmp->window, iItem); 3039 ListView_SetSelectionMark(tmp->window, iItem);
3040 params = (void **)lvi.lParam;
3040 } 3041 }
3041 3042
3042 containercontextfunc(tmp->window, lvi.pszText ? WideToUTF8(lvi.pszText) : NULL, x, y, tmp->data, (void *)lvi.lParam); 3043 containercontextfunc(tmp->window, params ? params[_DW_DATA_TYPE_STRING] : NULL, x, y, tmp->data, (void *)lvi.lParam);
3043 tmp = NULL; 3044 tmp = NULL;
3044 } 3045 }
3045 if(tmp) 3046 if(tmp)
3046 tmp = tmp->next; 3047 tmp = tmp->next;
3047 } 3048 }