changed choice to properly inherit from wxChoiceBase , added msg compatible calls to wxStaticBitmap

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor 2001-03-04 12:46:30 +00:00
parent 9c7a49b57b
commit 56d4016a16
2 changed files with 45 additions and 10 deletions

View File

@ -18,10 +18,14 @@
#include "wx/control.h" #include "wx/control.h"
#include <wx/dynarray.h>
WXDLLEXPORT_DATA(extern const char*) wxChoiceNameStr; WXDLLEXPORT_DATA(extern const char*) wxChoiceNameStr;
WX_DEFINE_ARRAY( char * , wxChoiceDataArray ) ;
// Choice item // Choice item
class WXDLLEXPORT wxChoice: public wxControl class WXDLLEXPORT wxChoice: public wxChoiceBase
{ {
DECLARE_DYNAMIC_CLASS(wxChoice) DECLARE_DYNAMIC_CLASS(wxChoice)
@ -48,17 +52,23 @@ class WXDLLEXPORT wxChoice: public wxControl
const wxValidator& validator = wxDefaultValidator, const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxChoiceNameStr); const wxString& name = wxChoiceNameStr);
virtual int DoAppend(const wxString& item);
virtual void Delete(int n);
virtual void Clear();
virtual int GetCount() const ;
virtual int GetSelection() const ;
virtual void SetSelection(int n);
virtual int FindString(const wxString& s) const;
virtual wxString GetString(int n) const ;
virtual void SetString( int , const wxString& s ) ;
void MacHandleControlClick( ControlHandle control , SInt16 controlpart ) ;
/*
virtual void Append(const wxString& item); virtual void Append(const wxString& item);
// Added min Append and GetClientData // Added min Append and GetClientData
virtual void Append(const wxString& item, void *client_data); virtual void Append(const wxString& item, void *client_data);
virtual void *GetClientData(int index) const; virtual void *GetClientData(int index) const;
virtual void Delete(int n);
virtual void Clear();
virtual int GetSelection() const ;
virtual void SetSelection(int n);
virtual inline void Select( int n ) { SetSelection( n ); } virtual inline void Select( int n ) { SetSelection( n ); }
virtual int FindString(const wxString& s) const;
virtual wxString GetString(int n) const ;
virtual void SetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO); virtual void SetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO);
virtual wxString GetStringSelection() const ; virtual wxString GetStringSelection() const ;
virtual bool SetStringSelection(const wxString& sel); virtual bool SetStringSelection(const wxString& sel);
@ -67,12 +77,23 @@ class WXDLLEXPORT wxChoice: public wxControl
virtual inline int GetCount() const { return m_strings.GetCount(); } virtual inline int GetCount() const { return m_strings.GetCount(); }
virtual void Command(wxCommandEvent& event); virtual void Command(wxCommandEvent& event);
virtual inline void SetColumns(int WXUNUSED(n) = 1 ) { /* No effect */ } ;
virtual inline int GetColumns() const { return 1 ; }; virtual inline int GetColumns() const { return 1 ; };
void MacHandleControlClick( ControlHandle control , SInt16 controlpart ) ; */
protected: protected:
virtual void DoSetItemClientData( int n, void* clientData );
virtual void* DoGetItemClientData( int n ) const;
virtual void DoSetItemClientObject( int n, wxClientData* clientData );
virtual wxClientData* DoGetItemClientObject( int n ) const;
virtual void DoSetSize(int x, int y,
int width, int height,
int sizeFlags = wxSIZE_AUTO);
// free all memory we have (used by Clear() and dtor)
void Free();
wxArrayString m_strings; wxArrayString m_strings;
wxChoiceDataArray m_dataArray ;
MenuHandle m_macPopUpMenuHandle ; MenuHandle m_macPopUpMenuHandle ;
}; };

View File

@ -52,6 +52,20 @@ class WXDLLEXPORT wxStaticBitmap: public wxControl
inline wxBitmap& GetBitmap() const { return (wxBitmap&) m_messageBitmap; } inline wxBitmap& GetBitmap() const { return (wxBitmap&) m_messageBitmap; }
// for compatibility with wxMSW
const wxIcon& GetIcon() const
{
// don't use wxDynamicCast, icons and bitmaps are really the same thing
// in wxGTK
return (const wxIcon &)m_messageBitmap;
}
// for compatibility with wxMSW
void SetIcon(const wxIcon& icon)
{
SetBitmap( icon );
}
// overriden base class virtuals // overriden base class virtuals
virtual bool AcceptsFocus() const { return FALSE; } virtual bool AcceptsFocus() const { return FALSE; }
wxSize DoGetBestSize() const ; wxSize DoGetBestSize() const ;