]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/choice.h
   1 ///////////////////////////////////////////////////////////////////////////// 
   3 // Purpose:     wxChoice class interface 
   4 // Author:      Vadim Zeitlin 
   8 // Copyright:   (c) wxWindows team 
   9 // Licence:     wxWindows licence 
  10 ///////////////////////////////////////////////////////////////////////////// 
  12 #ifndef _WX_CHOICE_H_BASE_ 
  13 #define _WX_CHOICE_H_BASE_ 
  15 // ---------------------------------------------------------------------------- 
  17 // ---------------------------------------------------------------------------- 
  20     #pragma interface "choicebase.h" 
  23 #include "wx/ctrlsub.h"     // the base class 
  25 // ---------------------------------------------------------------------------- 
  27 // ---------------------------------------------------------------------------- 
  29 WXDLLEXPORT_DATA(extern const wxChar
*) wxChoiceNameStr
; 
  31 // ---------------------------------------------------------------------------- 
  32 // wxChoice allows to select one of a non-modifiable list of strings 
  33 // ---------------------------------------------------------------------------- 
  35 class WXDLLEXPORT wxChoiceBase 
: public wxControlWithItems
 
  38     // all generic methods are in wxControlWithItems 
  40     virtual ~wxChoiceBase() {} 
  43     // single selection logic 
  44     virtual void SetSelection(int n
) = 0; 
  45     virtual bool SetStringSelection(const wxString
& s
); 
  47     // don't override this 
  48     virtual void Select(int n
) { SetSelection(n
); } 
  50     // set/get the number of columns in the control (as they're not supporte on 
  51     // most platforms, they do nothing by default) 
  52     virtual void SetColumns(int WXUNUSED(n
) = 1 ) { } 
  53     virtual int GetColumns() const { return 1 ; } 
  55     // emulate selecting the item event.GetInt() 
  56     void Command(wxCommandEvent
& event
); 
  60 // ---------------------------------------------------------------------------- 
  61 // include the platform-dependent class definition 
  62 // ---------------------------------------------------------------------------- 
  64 #if defined(__WXMSW__) 
  65     #include "wx/msw/choice.h" 
  66 #elif defined(__WXMOTIF__) 
  67     #include "wx/motif/choice.h" 
  68 #elif defined(__WXGTK__) 
  69     #include "wx/gtk/choice.h" 
  70 #elif defined(__WXQT__) 
  71     #include "wx/qt/choice.h" 
  72 #elif defined(__WXMAC__) 
  73     #include "wx/mac/choice.h" 
  74 #elif defined(__WXPM__) 
  75     #include "wx/os2/choice.h" 
  76 #elif defined(__WXSTUBS__) 
  77     #include "wx/stubs/choice.h"