From 3b36695de4d1d88e57c75465d81c6462a454eb86 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Wed, 9 May 2001 22:15:05 +0000 Subject: [PATCH] Fixed bug that prevented wxTreeCtrl.OnCompareItems from being called. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- wxPython/CHANGES.txt | 4 +++- wxPython/demo/wxTreeCtrl.py | 8 +++++--- wxPython/src/controls2.i | 4 +++- wxPython/src/msw/controls2.cpp | 4 +++- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/wxPython/CHANGES.txt b/wxPython/CHANGES.txt index 425cc911ad..882c1135f3 100644 --- a/wxPython/CHANGES.txt +++ b/wxPython/CHANGES.txt @@ -55,7 +55,9 @@ Added a ton of missing methods for wxPrintData. Switched to InnoSetup for MSW distributions. -Added wxToggleButton +Added wxToggleButton. + +Fixed bug that prevented wxTreeCtrl.OnCompareItems from being called. diff --git a/wxPython/demo/wxTreeCtrl.py b/wxPython/demo/wxTreeCtrl.py index 17fcfe8359..f16c48c6cf 100644 --- a/wxPython/demo/wxTreeCtrl.py +++ b/wxPython/demo/wxTreeCtrl.py @@ -6,13 +6,14 @@ import string #--------------------------------------------------------------------------- class MyTreeCtrl(wxTreeCtrl): - def __init__(self, parent, id, pos, size, style): + def __init__(self, parent, id, pos, size, style, log): wxTreeCtrl.__init__(self, parent, id, pos, size, style) - + self.log = log def OnCompareItems(self, item1, item2): t1 = self.GetItemText(item1) t2 = self.GetItemText(item2) + self.log.WriteText('compare: ' + t1 + '<>' + t2 + '\n') if t1 < t2: return -1 if t1 == t2: return 0 return 1 @@ -29,7 +30,8 @@ class TestTreeCtrlPanel(wxPanel): tID = NewId() self.tree = MyTreeCtrl(self, tID, wxDefaultPosition, wxDefaultSize, - wxTR_HAS_BUTTONS | wxTR_EDIT_LABELS)# | wxTR_MULTIPLE) + wxTR_HAS_BUTTONS | wxTR_EDIT_LABELS# | wxTR_MULTIPLE + , self.log) #import images #il = wxImageList(16, 16) diff --git a/wxPython/src/controls2.i b/wxPython/src/controls2.i index 1ca0a09bb9..998a4650c9 100644 --- a/wxPython/src/controls2.i +++ b/wxPython/src/controls2.i @@ -490,6 +490,7 @@ public: %{ class wxPyTreeCtrl : public wxTreeCtrl { + DECLARE_ABSTRACT_CLASS(wxPyTreeCtrl); public: wxPyTreeCtrl(wxWindow *parent, wxWindowID id, const wxPoint& pos, @@ -499,7 +500,6 @@ public: char* name) : wxTreeCtrl(parent, id, pos, size, style, validator, name) {} - int OnCompareItems(const wxTreeItemId& item1, const wxTreeItemId& item2) { int rval = 0; @@ -517,6 +517,8 @@ public: PYPRIVATE; }; +IMPLEMENT_ABSTRACT_CLASS(wxPyTreeCtrl, wxTreeCtrl); + %} // These are for the GetFirstChild/GetNextChild methods below diff --git a/wxPython/src/msw/controls2.cpp b/wxPython/src/msw/controls2.cpp index d564344390..4cfdb3f11e 100644 --- a/wxPython/src/msw/controls2.cpp +++ b/wxPython/src/msw/controls2.cpp @@ -164,6 +164,7 @@ public: }; class wxPyTreeCtrl : public wxTreeCtrl { + DECLARE_ABSTRACT_CLASS(wxPyTreeCtrl); public: wxPyTreeCtrl(wxWindow *parent, wxWindowID id, const wxPoint& pos, @@ -173,7 +174,6 @@ public: char* name) : wxTreeCtrl(parent, id, pos, size, style, validator, name) {} - int OnCompareItems(const wxTreeItemId& item1, const wxTreeItemId& item2) { int rval = 0; @@ -191,6 +191,8 @@ public: PYPRIVATE; }; +IMPLEMENT_ABSTRACT_CLASS(wxPyTreeCtrl, wxTreeCtrl); + #ifdef __cplusplus extern "C" { #endif -- 2.47.2