X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f5bf3b95098a2f4e62d788596234a5473594329b..789295bf7bd4b58b0270800fb689fce0786dae15:/include/wx/gtk1/listbox.h diff --git a/include/wx/gtk1/listbox.h b/include/wx/gtk1/listbox.h index 9bbbb0fa42..a20c32802a 100644 --- a/include/wx/gtk1/listbox.h +++ b/include/wx/gtk1/listbox.h @@ -1,11 +1,10 @@ ///////////////////////////////////////////////////////////////////////////// // Name: listbox.h -// Purpose: +// Purpose: wxListBox class declaration // Author: Robert Roebling -// Created: 01/02/97 -// Id: -// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem -// Licence: wxWindows licence +// Id: $Id$ +// Copyright: (c) 1998 Robert Roebling +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -26,6 +25,7 @@ //----------------------------------------------------------------------------- class wxListBox; +class wxArrayInt; //----------------------------------------------------------------------------- // global data @@ -37,49 +37,87 @@ extern const char *wxListBoxNameStr; // wxListBox //----------------------------------------------------------------------------- -class wxListBox: public wxControl +class wxListBox : public wxControl { - DECLARE_DYNAMIC_CLASS(wxListBox) - - public: - - wxListBox(void); - wxListBox( wxWindow *parent, wxWindowID id, - const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, - const int n = 0, const wxString choices[] = NULL, - const long style = 0, const wxString &name = wxListBoxNameStr ); - bool Create( wxWindow *parent, wxWindowID id, - const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize, - const int n = 0, const wxString choices[] = NULL, - const long style = 0, const wxString &name = wxListBoxNameStr ); +DECLARE_DYNAMIC_CLASS(wxListBox) + +public: + wxListBox(); + wxListBox( wxWindow *parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + int n = 0, const wxString choices[] = (const wxString *) NULL, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxListBoxNameStr ) + { + m_hasCheckBoxes = FALSE; + Create(parent, id, pos, size, n, choices, style, validator, name); + } + virtual ~wxListBox(); + + bool Create(wxWindow *parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + int n = 0, const wxString choices[] = (const wxString *) NULL, + long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxListBoxNameStr); + void Append( const wxString &item ); - void Append( const wxString &item, char *clientData ); - void Clear(void); + void Append( const wxString &item, void* clientData ); + void Append( const wxString &item, wxClientData* clientData ); + + void InsertItems(int nItems, const wxString items[], int pos); + + void SetClientData( int n, void* clientData ); + void* GetClientData( int n ); + void SetClientObject( int n, wxClientData* clientData ); + wxClientData* GetClientObject( int n ); + + void SetClientObject( wxClientData *data ) { wxControl::SetClientObject( data ); } + wxClientData *GetClientObject() const { return wxControl::GetClientObject(); } + void SetClientData( void *data ) { wxControl::SetClientData( data ); } + void *GetClientData() const { return wxControl::GetClientData(); } + + void Clear(); void Delete( int n ); + void Deselect( int n ); int FindString( const wxString &item ) const; - char *GetClientData( const int n ) const; int GetSelection(void) const; int GetSelections( class wxArrayInt &) const; wxString GetString( int n ) const; wxString GetStringSelection(void) const; - int Number(void); - bool Selected( const int n ); - void Set( const int n, const wxString *choices ); - void SetClientData( const int n, char *clientData ); + int Number(); + bool Selected( int n ); + void Set( int n, const wxString *choices ); void SetFirstItem( int n ); void SetFirstItem( const wxString &item ); - void SetSelection( const int n, const bool select = TRUE ); - void SetString( const int n, const wxString &string ); - void SetStringSelection( const wxString &string, const bool select = TRUE ); - - private: - - GtkList *m_list; - - public: - + void SetSelection( int n, bool select = TRUE ); + void SetString( int n, const wxString &string ); + void SetStringSelection( const wxString &string, bool select = TRUE ); + +#if wxUSE_DRAG_AND_DROP + void SetDropTarget( wxDropTarget *dropTarget ); +#endif + + // implementation + + void AppendCommon( const wxString &item ); int GetIndex( GtkWidget *item ) const; + GtkWidget *GetConnectWidget(); + bool IsOwnGtkWindow( GdkWindow *window ); + void ApplyWidgetStyle(); + +#if wxUSE_TOOLTIPS + void ApplyToolTip( GtkTooltips *tips, const wxChar *tip ); +#endif // wxUSE_TOOLTIPS + + GtkList *m_list; + wxList m_clientDataList; + wxList m_clientObjectList; + bool m_hasCheckBoxes; }; #endif // __GTKLISTBOXH__