const wxTreeListMainWindow *theCtrl,
int &flags, int& column, int level)
{
- column = -1;
+ column = theCtrl->GetMainColumn(); //-1;
wxTreeListItem* res = HitTest(point, theCtrl, flags, level);
- if(!res) return res;
- if(flags & wxTREE_HITTEST_ONITEMINDENT) {
+ if(!res) {
+ column = -1;
+ return res;
+ }
+ if (point.x >= theCtrl->m_owner->GetHeaderWindow()->GetWidth())
+ column = -1;
+ else if(flags & wxTREE_HITTEST_ONITEMINDENT) {
int x = 0;
for(size_t i = 0; i < theCtrl->GetMainColumn(); ++i) {
int w = theCtrl->m_owner->GetHeaderWindow()->GetColumnWidth(i);
// right : open if parent and go next (or expand on Win32)
// home : go to root
// end : go to last item without opening parents
- switch (event.KeyCode())
+ switch (event.GetKeyCode())
{
#ifndef __WXMSW__ // mimic the standard win32 tree ctrl
case '+':
int w, h;
GetSize(&w, &h);
flags=0;
+ column = -1;
if (point.x<0) flags |= wxTREE_HITTEST_TOLEFT;
if (point.x>w) flags |= wxTREE_HITTEST_TORIGHT;
if (point.y<0) flags |= wxTREE_HITTEST_ABOVE;