X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bdb310a72026e7781cda51fd3fc353cbec9151ed..3cc487d140f11e26a9c4ae35ba87cc22684da65a:/src/generic/treectlg.cpp?ds=sidebyside diff --git a/src/generic/treectlg.cpp b/src/generic/treectlg.cpp index e9a1973d8b..01072caca3 100644 --- a/src/generic/treectlg.cpp +++ b/src/generic/treectlg.cpp @@ -178,10 +178,10 @@ public: // status inquiries bool HasChildren() const { return !m_children.IsEmpty(); } - bool IsSelected() const { return m_hasHilight; } + bool IsSelected() const { return m_hasHilight != 0; } bool IsExpanded() const { return !m_isCollapsed; } bool HasPlus() const { return m_hasPlus || HasChildren(); } - bool IsBold() const { return m_isBold; } + bool IsBold() const { return m_isBold != 0; } // attributes // get them - may be NULL @@ -615,6 +615,8 @@ void wxGenericTreeCtrl::Init() m_imageListNormal = m_imageListState = (wxImageList *) NULL; + m_ownsImageListNormal = + m_ownsImageListState = FALSE; m_dragCount = 0; m_isDragging = FALSE; @@ -658,6 +660,8 @@ wxGenericTreeCtrl::~wxGenericTreeCtrl() DeleteAllItems(); delete m_renameTimer; + if (m_ownsImageListNormal) delete m_imageListNormal; + if (m_ownsImageListState) delete m_imageListState; } // ----------------------------------------------------------------------------- @@ -1629,7 +1633,10 @@ wxImageList *wxGenericTreeCtrl::GetStateImageList() const void wxGenericTreeCtrl::SetImageList(wxImageList *imageList) { + if (m_ownsImageListNormal) delete m_imageListNormal; + m_imageListNormal = imageList; + m_ownsImageListNormal = FALSE; if ( !m_imageListNormal ) return; @@ -1656,7 +1663,21 @@ void wxGenericTreeCtrl::SetImageList(wxImageList *imageList) void wxGenericTreeCtrl::SetStateImageList(wxImageList *imageList) { + if (m_ownsImageListState) delete m_imageListState; m_imageListState = imageList; + m_ownsImageListState = FALSE; +} + +void wxGenericTreeCtrl::AssignImageList(wxImageList *imageList) +{ + SetImageList(imageList); + m_ownsImageListNormal = TRUE; +} + +void wxGenericTreeCtrl::AssignStateImageList(wxImageList *imageList) +{ + SetStateImageList(imageList); + m_ownsImageListState = TRUE; } // -----------------------------------------------------------------------------