]> git.saurik.com Git - wxWidgets.git/blob - interface/wx/editlbox.h
Also redirect wxEVT_KEY_UP and wxEVT_CHAR from the embedded wxTextCtrl
[wxWidgets.git] / interface / wx / editlbox.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: editlbox.h
3 // Purpose: interface of wxEditableListBox
4 // Author: wxWidgets team
5 // RCS-ID: $Id$
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
8
9 /**
10 @class wxEditableListBox
11
12 An editable listbox is composite control that lets the user easily enter,
13 delete and reorder a list of strings.
14
15 @beginStyleTable
16 @style{wxEL_ALLOW_NEW}
17 Allows the user to enter new strings.
18 @style{wxEL_ALLOW_EDIT}
19 Allows the user to edit existing strings.
20 @style{wxEL_ALLOW_DELETE}
21 Allows the user to delete existing strings.
22 @style{wxEL_NO_REORDER}
23 Does not allow the user to reorder the strings.
24 @style{wxEL_DEFAULT_STYLE}
25 Default style: wxEL_ALLOW_NEW|wxEL_ALLOW_EDIT|wxEL_ALLOW_DELETE.
26 @endStyleTable
27
28 The control uses a wxListCtrl internally and emit its events.
29
30 @library{wxadv}
31 @category{ctrl}
32
33 @see wxListBox, wxListCtrl
34 */
35 class wxEditableListBox : public wxPanel
36 {
37 public:
38 /**
39 Default ctor.
40 */
41 wxEditableListBox();
42
43 /**
44 Constructor, creating and showing a list box.
45
46 @param parent
47 Parent window. Must not be @NULL.
48 @param id
49 Window identifier. The value wxID_ANY indicates a default value.
50 @param label
51 The text shown just before the list control.
52 @param pos
53 Window position.
54 @param size
55 Window size. If wxDefaultSize is specified then the window is sized
56 appropriately.
57 @param style
58 Window style. See wxEditableListBox.
59 @param name
60 Window name.
61
62 @see Create()
63 */
64 wxEditableListBox(wxWindow* parent, wxWindowID id,
65 const wxString& label,
66 const wxPoint& pos = wxDefaultPosition,
67 const wxSize& size = wxDefaultSize,
68 long style = wxEL_DEFAULT_STYLE,
69 const wxString& name = wxEditableListBoxNameStr);
70
71 /**
72 Destructor, destroying the list box.
73 */
74 virtual ~wxEditableListBox();
75
76 /**
77 Creates the editable listbox for two-step construction.
78 See wxEditableListBox() for further details.
79 */
80 bool Create(wxWindow* parent, wxWindowID id, const wxString& label,
81 const wxPoint& pos = wxDefaultPosition,
82 const wxSize& size = wxDefaultSize,
83 long style = wxEL_DEFAULT_STYLE,
84 const wxString& name = wxEditableListBoxNameStr);
85
86 /**
87 Replaces current contents with given strings.
88 */
89 void SetStrings(const wxArrayString& strings);
90
91
92 /**
93 Returns in the given array the current contents of the control
94 (the array will be erased before control's contents are appended).
95 */
96 void GetStrings(wxArrayString& strings) const;
97 };
98