From: Robin Dunn <robin@alldunn.com>
Date: Wed, 24 Sep 2003 20:23:43 +0000 (+0000)
Subject: HitTest patch from Alberto
X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/04443bbfb00a2589ff26f1483718e2944397b7e3

HitTest patch from Alberto


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---

diff --git a/wxPython/contrib/gizmos/treelistctrl.cpp b/wxPython/contrib/gizmos/treelistctrl.cpp
index b14bb3b961..8ea7363b01 100644
--- a/wxPython/contrib/gizmos/treelistctrl.cpp
+++ b/wxPython/contrib/gizmos/treelistctrl.cpp
@@ -1646,11 +1646,16 @@ wxTreeListItem *wxTreeListItem::HitTest(const wxPoint& point,
                                         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);
@@ -3754,6 +3759,7 @@ wxTreeItemId wxTreeListMainWindow::HitTest(const wxPoint& point, int& flags,
     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;