X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3d1a4878f36ba4b5f66c2ccfd2cb27a9dc528b6f..6cef0db28018fd2644ee4e38af715872e5242459:/src/mac/carbon/treectrl.cpp diff --git a/src/mac/carbon/treectrl.cpp b/src/mac/carbon/treectrl.cpp index 0fa15e39ef..82a90b0854 100644 --- a/src/mac/carbon/treectrl.cpp +++ b/src/mac/carbon/treectrl.cpp @@ -1,29 +1,24 @@ ///////////////////////////////////////////////////////////////////////////// -// 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 ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "treectrl.h" -#endif - #include "wx/wxprec.h" #include "wx/stubs/textctrl.h" #include "wx/treebase.h" #include "wx/stubs/treectrl.h" -#if !USE_SHARED_LIBRARY + IMPLEMENT_DYNAMIC_CLASS(wxTreeCtrl, wxControl) IMPLEMENT_DYNAMIC_CLASS(wxTreeItem, wxObject) -#endif wxTreeCtrl::wxTreeCtrl() { @@ -32,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; @@ -84,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 } @@ -116,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 @@ -158,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; @@ -185,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; @@ -197,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); @@ -213,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; } @@ -225,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; @@ -236,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; } @@ -248,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; @@ -258,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; } @@ -270,7 +263,7 @@ wxTextCtrl* wxTreeCtrl::GetEditControl() const bool wxTreeCtrl::DeleteItem(long item) { // TODO - return FALSE; + return false; } bool wxTreeCtrl::ExpandItem(long item, int action) @@ -280,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 + HandleWindowEvent(event); + + event.SetEventType( + bIsExpanded + ? wxEVT_COMMAND_TREE_ITEM_EXPANDED : wxEVT_COMMAND_TREE_ITEM_COLLAPSED); - GetEventHandler()->ProcessEvent(event); + HandleWindowEvent(event); } - + return bOk; } @@ -328,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; @@ -350,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; @@ -375,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) @@ -387,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 @@ -412,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; } -