X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fb49f3b32e78c4f951c7331447851c3aa0302dde..f396e5a7ca14cd432fd7a7a60624bd9fe0ed7a83:/include/wx/os2/combobox.h diff --git a/include/wx/os2/combobox.h b/include/wx/os2/combobox.h index 1678e513f1..144f662a10 100644 --- a/include/wx/os2/combobox.h +++ b/include/wx/os2/combobox.h @@ -13,14 +13,13 @@ #define _WX_COMBOBOX_H_ #include "wx/choice.h" +#include "wx/textentry.h" #if wxUSE_COMBOBOX -WXDLLEXPORT_DATA(extern const char*) wxComboBoxNameStr; -WXDLLEXPORT_DATA(extern const char*) wxEmptyString; - // Combobox item -class WXDLLEXPORT wxComboBox : public wxChoice +class WXDLLEXPORT wxComboBox : public wxChoice, + public wxTextEntry { public: @@ -34,9 +33,7 @@ class WXDLLEXPORT wxComboBox : public wxChoice ,int n = 0 ,const wxString asChoices[] = NULL ,long lStyle = 0 -#if wxUSE_VALIDATORS ,const wxValidator& rValidator = wxDefaultValidator -#endif ,const wxString& rsName = wxComboBoxNameStr ) { @@ -48,9 +45,30 @@ class WXDLLEXPORT wxComboBox : public wxChoice ,n ,asChoices ,lStyle -#if wxUSE_VALIDATORS ,rValidator -#endif + ,rsName + ); + } + + inline wxComboBox( wxWindow* pParent + ,wxWindowID vId + ,const wxString& rsValue + ,const wxPoint& rPos + ,const wxSize& rSize + ,const wxArrayString& asChoices + ,long lStyle = 0 + ,const wxValidator& rValidator = wxDefaultValidator + ,const wxString& rsName = wxComboBoxNameStr + ) + { + Create( pParent + ,vId + ,rsValue + ,rPos + ,rSize + ,asChoices + ,lStyle + ,rValidator ,rsName ); } @@ -63,41 +81,37 @@ class WXDLLEXPORT wxComboBox : public wxChoice ,int n = 0 ,const wxString asChoices[] = NULL ,long lStyle = 0 -#if wxUSE_VALIDATORS ,const wxValidator& rValidator = wxDefaultValidator -#endif ,const wxString& rsName = wxComboBoxNameStr ); - // - // List functions: see wxChoice - // - inline wxString GetValue(void) const { return GetLabel(); } - virtual void SetValue(const wxString& rsValue); - - // - // Clipboard operations - // - virtual void Copy(); - virtual void Cut(); - virtual void Paste(); - - virtual void SetInsertionPoint(long lPos); - virtual void SetInsertionPointEnd(void); - virtual long GetInsertionPoint(void) const; - virtual long GetLastPosition(void) const; - virtual void Replace( long lFrom - ,long lTo - ,const wxString& rsValue - ); - virtual void Remove( long lFrom - ,long lTo - ); + bool Create( wxWindow* pParent + ,wxWindowID vId + ,const wxString& rsValue + ,const wxPoint& rPos + ,const wxSize& rSize + ,const wxArrayString& asChoices + ,long lStyle = 0 + ,const wxValidator& rValidator = wxDefaultValidator + ,const wxString& rsName = wxComboBoxNameStr + ); + + // resolve ambiguities among virtual functions inherited from both base + // classes + virtual void Clear(); + virtual wxString GetValue() const; + virtual void SetValue(const wxString& value); + virtual wxString GetStringSelection() const + { return wxChoice::GetStringSelection(); } + inline virtual void SetSelection(int n) { wxChoice::SetSelection(n); } - virtual void SetSelection( long lFrom - ,long lTo - ); - virtual void SetEditable(bool bEditable); + virtual void SetSelection(long from, long to) + { wxTextEntry::SetSelection(from, to); } + virtual int GetSelection() const { return wxChoice::GetSelection(); } + virtual void GetSelection(long *from, long *to) const + { wxTextEntry::GetSelection(from, to); } + + virtual bool IsEditable() const; virtual bool OS2Command( WXUINT uParam ,WXWORD wId @@ -107,14 +121,11 @@ class WXDLLEXPORT wxComboBox : public wxChoice ,WXLPARAM lParam ); -protected: - virtual void DoSetSize( int nX - ,int nY - ,int nWidth - ,int nHeight - ,int nSizeFlags = wxSIZE_AUTO - ); private: + // implement wxTextEntry pure virtual: it implements all the operations for + // the simple EDIT controls + virtual WXHWND GetEditHWND() const { return m_hWnd; } + DECLARE_DYNAMIC_CLASS(wxComboBox) }; // end of CLASS wxComboBox