]> git.saurik.com Git - wxWidgets.git/blob - interface/bmpcbox.h
5d8e53ba26f5e75f82c29109f93c828593ed6340
[wxWidgets.git] / interface / bmpcbox.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: bmpcbox.h
3 // Purpose: documentation for wxBitmapComboBox class
4 // Author: wxWidgets team
5 // RCS-ID: $Id$
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
8
9 /**
10 @class wxBitmapComboBox
11 @wxheader{bmpcbox.h}
12
13 A combobox that displays bitmap in front of the list items.
14 It currently only allows using bitmaps of one size, and resizes itself
15 so that a bitmap can be shown next to the text field.
16
17 @beginStyleTable
18 @style{wxCB_READONLY}:
19 Creates a combobox without a text editor. On some platforms the
20 control may appear very different when this style is used.
21 @style{wxCB_SORT}:
22 Sorts the entries in the list alphabetically.
23 @style{wxTE_PROCESS_ENTER}:
24 The control will generate the event wxEVT_COMMAND_TEXT_ENTER
25 (otherwise pressing Enter key is either processed internally by the
26 control or used for navigation between dialog controls). Windows
27 only.
28 @endStyleTable
29
30 @beginEventTable
31 @event{EVT_COMBOBOX(id, func)}:
32 Process a wxEVT_COMMAND_COMBOBOX_SELECTED event, when an item on
33 the list is selected.
34 @event{EVT_TEXT(id, func)}:
35 Process a wxEVT_COMMAND_TEXT_UPDATED event, when the combobox text
36 changes.
37 @event{EVT_TEXT_ENTER(id, func)}:
38 Process a wxEVT_COMMAND_TEXT_ENTER event, when RETURN is pressed in
39 the combobox.
40 @endEventTable
41
42 @library{wxadv}
43 @category{ctrl}
44 @appearance{bitmapcombobox.png}
45
46 @seealso
47 wxComboBox, wxChoice, wxOwnerDrawnComboBox, wxCommandEvent
48 */
49 class wxBitmapComboBox : public wxComboBox
50 {
51 public:
52 //@{
53 /**
54 Constructor, creating and showing a combobox.
55
56 @param parent
57 Parent window. Must not be @NULL.
58 @param id
59 Window identifier. The value wxID_ANY indicates a default value.
60 @param value
61 Initial selection string. An empty string indicates no selection.
62 @param pos
63 Window position.
64 @param size
65 Window size. If wxDefaultSize is specified then the window is
66 sized
67 appropriately.
68 @param n
69 Number of strings with which to initialise the control.
70 @param choices
71 An array of strings with which to initialise the control.
72 @param style
73 Window style. See wxBitmapComboBox.
74 @param validator
75 Window validator.
76 @param name
77 Window name.
78
79 @see Create(), wxValidator
80 */
81 wxBitmapComboBox();
82 wxBitmapComboBox(wxWindow* parent, wxWindowID id,
83 const wxString& value = "",
84 const wxPoint& pos = wxDefaultPosition,
85 const wxSize& size = wxDefaultSize,
86 int n = 0,
87 const wxString choices[] = NULL,
88 long style = 0,
89 const wxValidator& validator = wxDefaultValidator,
90 const wxString& name = "comboBox");
91 wxBitmapComboBox(wxWindow* parent, wxWindowID id,
92 const wxString& value,
93 const wxPoint& pos,
94 const wxSize& size,
95 const wxArrayString& choices,
96 long style = 0,
97 const wxValidator& validator = wxDefaultValidator,
98 const wxString& name = "comboBox");
99 //@}
100
101 /**
102 Destructor, destroying the combobox.
103 */
104 ~wxBitmapComboBox();
105
106 //@{
107 /**
108 Adds the item to the end of the combo box, associating the given, typed or
109 untyped, client data pointer with the item.
110 */
111 int Append(const wxString& item,
112 const wxBitmap& bitmap = wxNullBitmap);
113 int Append(const wxString& item, const wxBitmap& bitmap,
114 void* clientData);
115 int Append(const wxString& item, const wxBitmap& bitmap,
116 wxClientData* clientData);
117 //@}
118
119 //@{
120 /**
121 Creates the combobox for two-step construction. Derived classes
122 should call or replace this function. See wxBitmapComboBox()
123 for further details.
124 */
125 bool Create(wxWindow* parent, wxWindowID id,
126 const wxString& value = "",
127 const wxPoint& pos = wxDefaultPosition,
128 const wxSize& size = wxDefaultSize,
129 int n, const wxString choices[],
130 long style = 0,
131 const wxValidator& validator = wxDefaultValidator,
132 const wxString& name = "comboBox");
133 bool Create(wxWindow* parent, wxWindowID id,
134 const wxString& value,
135 const wxPoint& pos,
136 const wxSize& size,
137 const wxArrayString& choices,
138 long style = 0,
139 const wxValidator& validator = wxDefaultValidator,
140 const wxString& name = "comboBox");
141 //@}
142
143 /**
144 Returns size of bitmaps used in the list.
145 */
146 wxSize GetBitmapSize();
147
148 /**
149 Returns the bitmap of the item with the given index.
150 */
151 wxBitmap GetItemBitmap(unsigned int n);
152
153 //@{
154 /**
155 Inserts the item into the list before pos, associating the given, typed or
156 untyped, client data pointer with the item.
157 Not valid for @c wxCB_SORT style, use Append instead.
158 */
159 int Insert(const wxString& item, const wxBitmap& bitmap,
160 unsigned int pos);
161 int Insert(const wxString& item, const wxBitmap& bitmap,
162 unsigned int pos,
163 void* clientData);
164 int Insert(const wxString& item, const wxBitmap& bitmap,
165 unsigned int pos,
166 wxClientData* clientData);
167 //@}
168
169 /**
170 Sets the bitmap for the given item.
171 */
172 void SetItemBitmap(unsigned int n, const wxBitmap& bitmap);
173 };