git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			224 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
	
	
			
		
		
	
	
			224 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
	
	
| /////////////////////////////////////////////////////////////////////////////
 | |
| // Name:        bmpcbox.h
 | |
| // Purpose:     interface of wxBitmapComboBox
 | |
| // Author:      wxWidgets team
 | |
| // RCS-ID:      $Id$
 | |
| // Licence:     wxWindows licence
 | |
| /////////////////////////////////////////////////////////////////////////////
 | |
| 
 | |
| /**
 | |
|     @class wxBitmapComboBox
 | |
| 
 | |
|     A combobox that displays bitmap in front of the list items.
 | |
|     It currently only allows using bitmaps of one size, and resizes itself
 | |
|     so that a bitmap can be shown next to the text field.
 | |
| 
 | |
|     @remarks
 | |
|     While wxBitmapComboBox contains the wxComboBox API, but it might not actually
 | |
|     be derived from that class. In fact, if the platform does not have a native
 | |
|     implementation, wxBitmapComboBox will inherit from wxOwnerDrawnComboBox.
 | |
|     You can determine if the implementation is generic by checking whether
 | |
|     @c wxGENERIC_BITMAPCOMBOBOX is defined. Currently wxBitmapComboBox is
 | |
|     implemented natively for MSW and GTK+.
 | |
| 
 | |
|     @beginStyleTable
 | |
|     @style{wxCB_READONLY}
 | |
|            Creates a combobox without a text editor. On some platforms the
 | |
|            control may appear very different when this style is used.
 | |
|     @style{wxCB_SORT}
 | |
|            Sorts the entries in the list alphabetically.
 | |
|     @style{wxTE_PROCESS_ENTER}
 | |
|            The control will generate the event wxEVT_COMMAND_TEXT_ENTER
 | |
|            (otherwise pressing Enter key is either processed internally by the
 | |
|            control or used for navigation between dialog controls).
 | |
|            Windows only.
 | |
|     @endStyleTable
 | |
| 
 | |
|     @todo create wxCB_PROCESS_ENTER rather than reusing wxTE_PROCESS_ENTER!
 | |
| 
 | |
|     @beginEventEmissionTable{wxCommandEvent}
 | |
|     @event{EVT_COMBOBOX(id, func)}
 | |
|            Process a @c wxEVT_COMMAND_COMBOBOX_SELECTED event, when an item on
 | |
|            the list is selected.
 | |
|     @event{EVT_TEXT(id, func)}
 | |
|            Process a @c wxEVT_COMMAND_TEXT_UPDATED event, when the combobox text changes.
 | |
|     @event{EVT_TEXT_ENTER(id, func)}
 | |
|            Process a @c wxEVT_COMMAND_TEXT_ENTER event, when RETURN is pressed in
 | |
|            the combobox.
 | |
|     @endEventTable
 | |
| 
 | |
|     @library{wxadv}
 | |
|     @category{ctrl}
 | |
|     @appearance{bitmapcombobox.png}
 | |
| 
 | |
|     @see wxComboBox, wxChoice, wxOwnerDrawnComboBox, wxCommandEvent
 | |
| */
 | |
| class wxBitmapComboBox : public wxComboBox
 | |
| {
 | |
| public:
 | |
|     /**
 | |
|         Default ctor.
 | |
|     */
 | |
|     wxBitmapComboBox();
 | |
| 
 | |
|     /**
 | |
|         Constructor, creating and showing a combobox.
 | |
| 
 | |
|         @param parent
 | |
|             Parent window. Must not be @NULL.
 | |
|         @param id
 | |
|             Window identifier. The value wxID_ANY indicates a default value.
 | |
|         @param value
 | |
|             Initial selection string. An empty string indicates no selection.
 | |
|         @param pos
 | |
|             Initial position.
 | |
|         @param size
 | |
|             Initial size.
 | |
|         @param n
 | |
|             Number of strings with which to initialise the control.
 | |
|         @param choices
 | |
|             An array of strings with which to initialise the control.
 | |
|         @param style
 | |
|             The window style, see wxCB_* flags.
 | |
|         @param validator
 | |
|             Validator which can be used for additional data checks.
 | |
|         @param name
 | |
|             Control name.
 | |
| 
 | |
|         @see Create(), wxValidator
 | |
|     */
 | |
|     wxBitmapComboBox(wxWindow* parent, wxWindowID id = wxID_ANY,
 | |
|                      const wxString& value = wxEmptyString,
 | |
|                      const wxPoint& pos = wxDefaultPosition,
 | |
|                      const wxSize& size = wxDefaultSize,
 | |
|                      int n = 0,
 | |
|                      const wxString choices[] = NULL,
 | |
|                      long style = 0,
 | |
|                      const wxValidator& validator = wxDefaultValidator,
 | |
|                      const wxString& name = wxBitmapComboBoxNameStr);
 | |
| 
 | |
|     /**
 | |
|         Constructor, creating and showing a combobox.
 | |
| 
 | |
|         @param parent
 | |
|             Parent window. Must not be @NULL.
 | |
|         @param id
 | |
|             Window identifier. The value wxID_ANY indicates a default value.
 | |
|         @param value
 | |
|             Initial selection string. An empty string indicates no selection.
 | |
|         @param pos
 | |
|             Initial position.
 | |
|         @param size
 | |
|             Initial size.
 | |
|         @param choices
 | |
|             An wxArrayString with which to initialise the control.
 | |
|         @param style
 | |
|             The window style, see wxCB_* flags.
 | |
|         @param validator
 | |
|             Validator which can be used for additional data checks.
 | |
|         @param name
 | |
|             Control name.
 | |
| 
 | |
|         @see Create(), wxValidator
 | |
|     */
 | |
|     wxBitmapComboBox(wxWindow* parent, wxWindowID id,
 | |
|                      const wxString& value,
 | |
|                      const wxPoint& pos,
 | |
|                      const wxSize& size,
 | |
|                      const wxArrayString& choices,
 | |
|                      long style,
 | |
|                      const wxValidator& validator = wxDefaultValidator,
 | |
|                      const wxString& name = wxBitmapComboBoxNameStr);
 | |
| 
 | |
|     /**
 | |
|         Destructor, destroying the combobox.
 | |
|     */
 | |
|     virtual ~wxBitmapComboBox();
 | |
| 
 | |
|     /**
 | |
|         Adds the item to the end of the combo box.
 | |
|     */
 | |
|     int Append(const wxString& item,
 | |
|                const wxBitmap& bitmap = wxNullBitmap);
 | |
| 
 | |
|     /**
 | |
|         Adds the item to the end of the combo box, associating the given
 | |
|         untyped, client data pointer @a clientData with the item.
 | |
|     */
 | |
|     int Append(const wxString& item, const wxBitmap& bitmap,
 | |
|                void* clientData);
 | |
| 
 | |
|     /**
 | |
|         Adds the item to the end of the combo box, associating the given typed
 | |
|         client data pointer @a clientData with the item.
 | |
|     */
 | |
|     int Append(const wxString& item, const wxBitmap& bitmap,
 | |
|                wxClientData* clientData);
 | |
| 
 | |
|     /**
 | |
|         Creates the combobox for two-step construction.
 | |
|     */
 | |
|     bool Create(wxWindow* parent, wxWindowID id,
 | |
|                 const wxString& value,
 | |
|                 const wxPoint& pos,
 | |
|                 const wxSize& size,
 | |
|                 int n, const wxString choices[],
 | |
|                 long style = 0,
 | |
|                 const wxValidator& validator = wxDefaultValidator,
 | |
|                 const wxString& name = wxBitmapComboBoxNameStr);
 | |
| 
 | |
|     /**
 | |
|         Creates the combobox for two-step construction.
 | |
|     */
 | |
|     bool Create(wxWindow* parent, wxWindowID id,
 | |
|                 const wxString& value,
 | |
|                 const wxPoint& pos,
 | |
|                 const wxSize& size,
 | |
|                 const wxArrayString& choices,
 | |
|                 long style = 0,
 | |
|                 const wxValidator& validator = wxDefaultValidator,
 | |
|                 const wxString& name = wxBitmapComboBoxNameStr);
 | |
| 
 | |
|     /**
 | |
|         Returns the size of the bitmaps used in the combo box.
 | |
|         If the combo box is empty, then ::wxDefaultSize is returned.
 | |
|     */
 | |
|     virtual wxSize GetBitmapSize() const;
 | |
| 
 | |
|     /**
 | |
|         Returns the bitmap of the item with the given index.
 | |
|     */
 | |
|     virtual wxBitmap GetItemBitmap(unsigned int n) const;
 | |
| 
 | |
|     /**
 | |
|         Inserts the item into the list before @a pos.
 | |
|         Not valid for @c wxCB_SORT style, use Append() instead.
 | |
|     */
 | |
|     int Insert(const wxString& item, const wxBitmap& bitmap,
 | |
|                unsigned int pos);
 | |
| 
 | |
|     /**
 | |
|         Inserts the item into the list before pos, associating the given
 | |
|         untyped, client data pointer with the item.
 | |
|         Not valid for @c wxCB_SORT style, use Append() instead.
 | |
|     */
 | |
|     int Insert(const wxString& item, const wxBitmap& bitmap,
 | |
|                unsigned int pos,
 | |
|                void* clientData);
 | |
| 
 | |
|     /**
 | |
|         Inserts the item into the list before pos, associating the given typed
 | |
|         client data pointer with the item.
 | |
|         Not valid for @c wxCB_SORT style, use Append() instead.
 | |
|     */
 | |
|     int Insert(const wxString& item, const wxBitmap& bitmap,
 | |
|                unsigned int pos,
 | |
|                wxClientData* clientData);
 | |
| 
 | |
|     /**
 | |
|         Sets the bitmap for the given item.
 | |
|     */
 | |
|     virtual void SetItemBitmap(unsigned int n, const wxBitmap& bitmap);
 | |
| };
 | |
| 
 |