git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4303
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
{
eventType = wxEVT_COMMAND_LIST_END_LABEL_EDIT;
LV_DISPINFO *info = (LV_DISPINFO *)lParam;
{
eventType = wxEVT_COMMAND_LIST_END_LABEL_EDIT;
LV_DISPINFO *info = (LV_DISPINFO *)lParam;
- wxConvertFromMSWListItem(this, event.m_item, info->item, GetHwnd());
+ wxConvertFromMSWListItem(this, event.m_item, info->item);
if ( info->item.pszText == NULL || info->item.iItem == -1 )
if ( info->item.pszText == NULL || info->item.iItem == -1 )
- event.m_cancelled = TRUE;
break;
}
case LVN_GETDISPINFO:
break;
}
case LVN_GETDISPINFO:
}
// else translate it into wxEVT_COMMAND_LIST_ITEM_ACTIVATED event
}
// else translate it into wxEVT_COMMAND_LIST_ITEM_ACTIVATED event
- eventType = wxEVT_COMMAND_LIST_ITEM_ACTIVATED;
+ {
+ eventType = wxEVT_COMMAND_LIST_ITEM_ACTIVATED;
+ NM_LISTVIEW* hdr = (NM_LISTVIEW*)lParam;
+ event.m_itemIndex = hdr->iItem;
+ }
if ( !GetEventHandler()->ProcessEvent(event) )
return FALSE;
if ( !GetEventHandler()->ProcessEvent(event) )
return FALSE;
- if ( (int)hdr1->code == LVN_GETDISPINFO)
+ switch ((int)hdr1->code)
- LV_DISPINFO *info = (LV_DISPINFO *)lParam;
- if ( info->item.mask & LVIF_TEXT )
- {
- if ( !event.m_item.m_text.IsNull() )
- info->item.pszText = AddPool(event.m_item.m_text);
- info->item.cchTextMax = wxStrlen(info->item.pszText) + 1;
+ LV_DISPINFO *info = (LV_DISPINFO *)lParam;
+ if ( info->item.mask & LVIF_TEXT )
+ {
+ if ( !event.m_item.m_text.IsNull() )
+ {
+ info->item.pszText = AddPool(event.m_item.m_text);
+ info->item.cchTextMax = wxStrlen(info->item.pszText) + 1;
+ }
+ }
+ // wxConvertToMSWListItem(this, event.m_item, info->item);
+ break;
- }
- // wxConvertToMSWListItem(this, event.m_item, info->item);
+ case LVN_ENDLABELEDIT:
+ {
+ *result = event.IsAllowed();
+ return TRUE;
+ }
+ default:
+ break;
}
*result = !event.IsAllowed();
}
*result = !event.IsAllowed();
event.m_item = (WXHTREEITEM)info->item.hItem;
event.m_label = info->item.pszText;
event.m_item = (WXHTREEITEM)info->item.hItem;
event.m_label = info->item.pszText;
+ if (info->item.pszText == NULL)
+ return FALSE;