X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8907154c1a8a6882c6797d1f16393ddfb23e7f3a..6ff68ce9ad2f2b1bc97f45ffefdf6add1fcb7eef:/src/mac/carbon/treectrl.cpp diff --git a/src/mac/carbon/treectrl.cpp b/src/mac/carbon/treectrl.cpp index 1706ddf912..7977dabef9 100644 --- a/src/mac/carbon/treectrl.cpp +++ b/src/mac/carbon/treectrl.cpp @@ -1,12 +1,12 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: treectrl.cpp +// Name: src/mac/carbon/treectrl.cpp // Purpose: wxTreeCtrl. See also Robert's generic wxTreeCtrl. // Author: Stefan Csomor // Modified by: // Created: 1998-01-01 // RCS-ID: $Id$ // Copyright: (c) Stefan Csomor -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #include "wx/wxprec.h" @@ -15,9 +15,11 @@ #include "wx/treebase.h" #include "wx/stubs/treectrl.h" + IMPLEMENT_DYNAMIC_CLASS(wxTreeCtrl, wxControl) IMPLEMENT_DYNAMIC_CLASS(wxTreeItem, wxObject) + wxTreeCtrl::wxTreeCtrl() { m_imageListNormal = NULL; @@ -25,39 +27,40 @@ wxTreeCtrl::wxTreeCtrl() m_textCtrl = NULL; } -bool wxTreeCtrl::Create(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, - long style, const wxValidator& validator, const wxString& name) +bool wxTreeCtrl::Create(wxWindow *parent, + wxWindowID id, const wxPoint& pos, const wxSize& size, + long style, const wxValidator& wxVALIDATOR_PARAM(validator), + const wxString& name) { - SetName(name); - SetValidator(validator); - m_imageListNormal = NULL; m_imageListState = NULL; m_textCtrl = NULL; - m_windowStyle = style; - + SetName(name); +#if wxUSE_VALIDATORS + SetValidator(validator); +#endif SetParent(parent); - m_windowId = (id == -1) ? NewControlId() : id; + m_windowStyle = style; + + m_windowId = (id == wxID_ANY) ? NewControlId() : id; - if (parent) parent->AddChild(this); + if (parent) + parent->AddChild(this); - // TODO create tree control + // TODO: create tree control - return FALSE; + return false; } wxTreeCtrl::~wxTreeCtrl() { - if (m_textCtrl) - { - delete m_textCtrl; - } + delete m_textCtrl; } // Attributes -int wxTreeCtrl::GetCount() const +unsigned int wxTreeCtrl::GetCount() const { // TODO return 0; @@ -77,26 +80,20 @@ void wxTreeCtrl::SetIndent(int indent) wxImageList *wxTreeCtrl::GetImageList(int which) const { if ( which == wxIMAGE_LIST_NORMAL ) - { return m_imageListNormal; - } else if ( which == wxIMAGE_LIST_STATE ) - { return m_imageListState; - } + return NULL; } void wxTreeCtrl::SetImageList(wxImageList *imageList, int which) { if ( which == wxIMAGE_LIST_NORMAL ) - { m_imageListNormal = imageList; - } else if ( which == wxIMAGE_LIST_STATE ) - { m_imageListState = imageList; - } + // TODO } @@ -109,7 +106,7 @@ long wxTreeCtrl::GetNextItem(long item, int code) const bool wxTreeCtrl::ItemHasChildren(long item) const { // TODO - return FALSE; + return false; } long wxTreeCtrl::GetChild(long item) const @@ -151,20 +148,20 @@ long wxTreeCtrl::GetRootItem() const bool wxTreeCtrl::GetItem(wxTreeItem& info) const { // TODO - return FALSE; + return false; } bool wxTreeCtrl::SetItem(wxTreeItem& info) { // TODO - return FALSE; + return false; } int wxTreeCtrl::GetItemState(long item, long stateMask) const { wxTreeItem info; - info.m_mask = wxTREE_MASK_STATE ; + info.m_mask = wxTREE_MASK_STATE; info.m_stateMask = stateMask; info.m_itemId = item; @@ -178,7 +175,7 @@ bool wxTreeCtrl::SetItemState(long item, long state, long stateMask) { wxTreeItem info; - info.m_mask = wxTREE_MASK_STATE ; + info.m_mask = wxTREE_MASK_STATE; info.m_state = state; info.m_stateMask = stateMask; info.m_itemId = item; @@ -190,13 +187,14 @@ bool wxTreeCtrl::SetItemImage(long item, int image, int selImage) { wxTreeItem info; - info.m_mask = wxTREE_MASK_IMAGE ; + info.m_mask = wxTREE_MASK_IMAGE; info.m_image = image; if ( selImage > -1) { info.m_selectedImage = selImage; info.m_mask |= wxTREE_MASK_SELECTED_IMAGE; } + info.m_itemId = item; return SetItem(info); @@ -206,11 +204,12 @@ wxString wxTreeCtrl::GetItemText(long item) const { wxTreeItem info; - info.m_mask = wxTREE_MASK_TEXT ; + info.m_mask = wxTREE_MASK_TEXT; info.m_itemId = item; if (!GetItem(info)) - return wxString(""); + return wxEmptyString; + return info.m_text; } @@ -218,7 +217,7 @@ void wxTreeCtrl::SetItemText(long item, const wxString& str) { wxTreeItem info; - info.m_mask = wxTREE_MASK_TEXT ; + info.m_mask = wxTREE_MASK_TEXT; info.m_itemId = item; info.m_text = str; @@ -229,11 +228,12 @@ long wxTreeCtrl::GetItemData(long item) const { wxTreeItem info; - info.m_mask = wxTREE_MASK_DATA ; + info.m_mask = wxTREE_MASK_DATA; info.m_itemId = item; if (!GetItem(info)) return 0; + return info.m_data; } @@ -241,7 +241,7 @@ bool wxTreeCtrl::SetItemData(long item, long data) { wxTreeItem info; - info.m_mask = wxTREE_MASK_DATA ; + info.m_mask = wxTREE_MASK_DATA; info.m_itemId = item; info.m_data = data; @@ -251,10 +251,10 @@ bool wxTreeCtrl::SetItemData(long item, long data) bool wxTreeCtrl::GetItemRect(long item, wxRect& rect, bool textOnly) const { // TODO - return FALSE; + return false; } -wxTextCtrl* wxTreeCtrl::GetEditControl() const +wxTextCtrl * wxTreeCtrl::GetEditControl() const { return m_textCtrl; } @@ -263,7 +263,7 @@ wxTextCtrl* wxTreeCtrl::GetEditControl() const bool wxTreeCtrl::DeleteItem(long item) { // TODO - return FALSE; + return false; } bool wxTreeCtrl::ExpandItem(long item, int action) @@ -273,45 +273,50 @@ bool wxTreeCtrl::ExpandItem(long item, int action) { case wxTREE_EXPAND_EXPAND: break; - + case wxTREE_EXPAND_COLLAPSE: break; - + case wxTREE_EXPAND_COLLAPSE_RESET: break; - + case wxTREE_EXPAND_TOGGLE: break; - + default: - wxFAIL_MSG("unknown action in wxTreeCtrl::ExpandItem"); + wxFAIL_MSG(wxT("unknown action in wxTreeCtrl::ExpandItem"); } - - bool bOk = FALSE; // TODO expand item - + + // TODO: expand item + bool bOk = false; + // May not send messages, so emulate them - if ( bOk ) { + if ( bOk ) + { wxTreeEvent event(wxEVT_NULL, m_windowId); - event.m_item.m_itemId = item; - event.m_item.m_mask = - event.m_item.m_stateMask = 0xffff; // get all + event.m_item.m_itemId = item; + event.m_item.m_mask = event.m_item.m_stateMask = 0xFFFF; // get all GetItem(event.m_item); - + bool bIsExpanded = (event.m_item.m_state & wxTREE_STATE_EXPANDED) != 0; - + event.m_code = action; event.SetEventObject(this); - + // @@@ return values of {EXPAND|COLLAPS}ING event handler is discarded - event.SetEventType(bIsExpanded ? wxEVT_COMMAND_TREE_ITEM_EXPANDING + event.SetEventType( + bIsExpanded + ? wxEVT_COMMAND_TREE_ITEM_EXPANDING : wxEVT_COMMAND_TREE_ITEM_COLLAPSING); GetEventHandler()->ProcessEvent(event); - - event.SetEventType(bIsExpanded ? wxEVT_COMMAND_TREE_ITEM_EXPANDED + + event.SetEventType( + bIsExpanded + ? wxEVT_COMMAND_TREE_ITEM_EXPANDED : wxEVT_COMMAND_TREE_ITEM_COLLAPSED); GetEventHandler()->ProcessEvent(event); } - + return bOk; } @@ -321,8 +326,8 @@ long wxTreeCtrl::InsertItem(long parent, wxTreeItem& info, long insertAfter) return 0; } -long wxTreeCtrl::InsertItem(long parent, const wxString& label, int image, int selImage, - long insertAfter) +long wxTreeCtrl::InsertItem(long parent, const wxString& label, + int image, int selImage, long insertAfter) { wxTreeItem info; info.m_text = label; @@ -343,22 +348,22 @@ long wxTreeCtrl::InsertItem(long parent, const wxString& label, int image, int s bool wxTreeCtrl::SelectItem(long item) { // TODO - return FALSE; + return false; } bool wxTreeCtrl::ScrollTo(long item) { // TODO - return FALSE; + return false; } bool wxTreeCtrl::DeleteAllItems() { // TODO - return FALSE; + return false; } -wxTextCtrl* wxTreeCtrl::EditLabel(long item, wxClassInfo* textControlClass) +wxTextCtrl * wxTreeCtrl::EditLabel(long item, wxClassInfo* textControlClass) { // TODO return NULL; @@ -368,7 +373,7 @@ wxTextCtrl* wxTreeCtrl::EditLabel(long item, wxClassInfo* textControlClass) bool wxTreeCtrl::EndEditLabel(bool cancel) { // TODO - return FALSE; + return false; } long wxTreeCtrl::HitTest(const wxPoint& point, int& flags) @@ -380,13 +385,13 @@ long wxTreeCtrl::HitTest(const wxPoint& point, int& flags) bool wxTreeCtrl::SortChildren(long item) { // TODO - return FALSE; + return false; } bool wxTreeCtrl::EnsureVisible(long item) { // TODO - return FALSE; + return false; } // Tree item structure @@ -405,10 +410,9 @@ wxTreeItem::wxTreeItem() // Tree event IMPLEMENT_DYNAMIC_CLASS(wxTreeEvent, wxCommandEvent) -wxTreeEvent::wxTreeEvent(wxEventType commandType, int id): - wxCommandEvent(commandType, id) +wxTreeEvent::wxTreeEvent(wxEventType commandType, int id) + : wxCommandEvent(commandType, id) { m_code = 0; m_oldItem = 0; } -