/////////////////////////////////////////////////////////////////////////////
-// Name: listbox.h
+// Name: wx/os2/listbox.h
// Purpose: wxListBox class
// Author: David Webster
// Modified by:
// ----------------------------------------------------------------------------
#if wxUSE_OWNER_DRAWN
- class WXDLLEXPORT wxOwnerDrawn;
+ class WXDLLIMPEXP_FWD_CORE wxOwnerDrawn;
- // define the array of list box items
- #include <wx/dynarray.h>
+ // define the array of list box items
+ #include "wx/dynarray.h"
- WX_DEFINE_EXPORTED_ARRAY(wxOwnerDrawn *, wxListBoxItemsArray);
+ WX_DEFINE_EXPORTED_ARRAY_PTR(wxOwnerDrawn *, wxListBoxItemsArray);
#endif // wxUSE_OWNER_DRAWN
// forward decl for GetSelections()
// List box control
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxListBox : public wxListBoxBase
+class WXDLLIMPEXP_CORE wxListBox : public wxListBoxBase
{
public:
// ctors and such
,int n = 0
,const wxString asChoices[] = NULL
,long lStyle = 0
-#if wxUSE_VALIDATORS
,const wxValidator& rValidator = wxDefaultValidator
-#endif
,const wxString& rsName = wxListBoxNameStr)
{
Create( pParent
,n
,asChoices
,lStyle
-#if wxUSE_VALIDATORS
,rValidator
-#endif
+ ,rsName
+ );
+ }
+ wxListBox( wxWindow* pParent
+ ,wxWindowID vId
+ ,const wxPoint& rPos
+ ,const wxSize& rSize
+ ,const wxArrayString& asChoices
+ ,long lStyle = 0
+ ,const wxValidator& rValidator = wxDefaultValidator
+ ,const wxString& rsName = wxListBoxNameStr)
+ {
+ Create( pParent
+ ,vId
+ ,rPos
+ ,rSize
+ ,asChoices
+ ,lStyle
+ ,rValidator
,rsName
);
}
,int n = 0
,const wxString asChoices[] = NULL
,long lStyle = 0
-#if wxUSE_VALIDATORS
,const wxValidator& rValidator = wxDefaultValidator
-#endif
,const wxString& rsName = wxListBoxNameStr
);
+ bool Create( wxWindow* pParent
+ ,wxWindowID vId
+ ,const wxPoint& rPos
+ ,const wxSize& rSize
+ ,const wxArrayString& asChoices
+ ,long lStyle = 0
+ ,const wxValidator& rValidator = wxDefaultValidator
+ ,const wxString& rsName = wxListBoxNameStr
+ );
virtual ~wxListBox();
//
// Implement base class pure virtuals
//
- virtual void Clear(void);
- virtual void Delete(int n);
+ virtual void DoClear(void);
+ virtual void DoDeleteOneItem(unsigned int n);
- virtual int GetCount(void) const;
- virtual wxString GetString(int n) const;
- virtual void SetString( int n
- ,const wxString& rsString
- );
- virtual int FindString(const wxString& rsString) const;
+ virtual unsigned int GetCount() const;
+ virtual wxString GetString(unsigned int n) const;
+ virtual void SetString(unsigned int n, const wxString& rsString);
virtual bool IsSelected(int n) const;
- virtual void SetSelection( int n
- ,bool bSelect = TRUE
- );
+ virtual void DoSetSelection(int n, bool bSelect);
virtual int GetSelection(void) const;
virtual int GetSelections(wxArrayInt& raSelections) const;
- virtual int DoAppend(const wxString& rsItem);
- virtual void DoInsertItems( const wxArrayString& raItems
- ,int rPos
- );
- virtual void DoSetItems( const wxArrayString& raItems
- ,void ** ppClientData
- );
-
virtual void DoSetFirstItem(int n);
- virtual void DoSetItemClientData( int n
- ,void* pClientData
- );
- virtual void* DoGetItemClientData(int n) const;
- virtual void DoSetItemClientObject( int n
- ,wxClientData* pClientData
- );
- virtual wxClientData* DoGetItemClientObject(int n) const;
+ virtual void DoSetItemClientData(unsigned int n, void* pClientData);
+ virtual void* DoGetItemClientData(unsigned int n) const;
//
// wxCheckListBox support
//
#if wxUSE_OWNER_DRAWN
- bool OS2OnMeasure(WXMEASUREITEMSTRUCT *item);
+ long OS2OnMeasure(WXMEASUREITEMSTRUCT *item);
bool OS2OnDraw(WXDRAWITEMSTRUCT *item);
virtual wxOwnerDrawn* CreateItem(size_t n);
bool HasMultipleSelection(void) const;
virtual wxSize DoGetBestSize(void) const;
- int m_nNumItems;
- int m_nSelected;
-
+ unsigned int m_nNumItems;
+ int m_nSelected;
#if wxUSE_OWNER_DRAWN
//
wxListBoxItemsArray m_aItems;
#endif
-private:
-#if wxUSE_WX_RESOURCES
-# if wxUSE_OWNER_DRAWN
- virtual wxControl* CreateItem( const wxItemResource* pChildResource
- ,const wxItemResource* pParentResource
- ,const wxResourceTable* pTable = (const wxResourceTable *) NULL
- )
- {
- return(wxWindowBase::CreateItem( pChildResource
- ,pParentResource
- ,pTable
- )
- );
- }
-# endif
-#endif
+ //
+ // Implement base wxItemContainer virtuals
+ //
+ virtual int DoInsertItems(const wxArrayStringsAdapter& items,
+ unsigned int pos,
+ void **clientData,
+ wxClientDataType type);
+
DECLARE_DYNAMIC_CLASS(wxListBox)
}; // end of wxListBox
-#endif
- // _WX_LISTBOX_H_
+#endif // _WX_LISTBOX_H_