+ void AddItem(wxMacDataItem *container, wxMacDataItem *item);
+ void AddItems(wxMacDataItem *container, wxArrayMacDataItemPtr &items );
+
+ void RemoveAllItems(wxMacDataItem *container);
+ void RemoveItem(wxMacDataItem *container, wxMacDataItem* item);
+ void RemoveItems(wxMacDataItem *container, wxArrayMacDataItemPtr &items);
+
+ void SetSelectedItem( wxMacDataItem* item , DataBrowserSetOption option);
+ void SetSelectedItems( wxArrayMacDataItemPtr &items , DataBrowserSetOption option);
+ void SetSelectedAllItems( DataBrowserSetOption option);
+ Boolean IsItemSelected( const wxMacDataItem* item) const;
+
+ void RevealItem( wxMacDataItem* item, DataBrowserRevealOptions options);
+
+ void GetSelectionAnchor( wxMacDataItemPtr* first , wxMacDataItemPtr* last) const;
+
+ // item aware methods, to be used in subclasses
+
+ virtual Boolean CompareItems(const wxMacDataItem* itemOneID,
+ const wxMacDataItem* itemTwoID,
+ DataBrowserPropertyID sortProperty);
+
+ virtual OSStatus GetSetItemData(wxMacDataItem* itemID,
+ DataBrowserPropertyID property,
+ DataBrowserItemDataRef itemData,
+ Boolean changeValue );
+
+ virtual void ItemNotification(
+ const wxMacDataItem* itemID,
+ DataBrowserItemNotification message,
+ DataBrowserItemDataRef itemData);
+
+ // as we are getting the same events for human and API selection we have to suppress
+ // events in the latter case, since this will be used from many subclasses we keep it here
+
+ bool IsSelectionSuppressed() const { return m_suppressSelection; }
+ bool SuppressSelection( bool suppress );
+
+
+ // wxMacListControl Methods
+ // add and remove
+
+ virtual void MacDelete( unsigned int n );
+ virtual void MacInsert( unsigned int n, const wxArrayStringsAdapter& items, int column = -1 );
+ virtual int MacAppend( const wxString& item );
+ virtual void MacClear();
+
+ // selecting
+
+ virtual void MacDeselectAll();
+ virtual void MacSetSelection( unsigned int n, bool select, bool multi = false );
+ virtual int MacGetSelection() const;
+ virtual int MacGetSelections( wxArrayInt& aSelections ) const;
+ virtual bool MacIsSelected( unsigned int n ) const;
+
+ // display
+
+ virtual void MacScrollTo( unsigned int n );
+
+ // accessing content
+
+ virtual void MacSetString( unsigned int n, const wxString& item );
+ virtual void MacSetClientData( unsigned int n, void * data);
+ virtual wxString MacGetString( unsigned int n) const;
+ virtual void * MacGetClientData( unsigned int) const;
+ virtual unsigned int MacGetCount() const;