]>
Commit | Line | Data |
---|---|---|
1 | /////////////////////////////////////////////////////////////////////////////// | |
2 | // Name: wx/msw/ctrlsub.h | |
3 | // Purpose: common functionality of wxItemContainer-derived controls | |
4 | // Author: Vadim Zeitlin | |
5 | // Created: 2007-07-25 | |
6 | // Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org> | |
7 | // Licence: wxWindows licence | |
8 | /////////////////////////////////////////////////////////////////////////////// | |
9 | ||
10 | #ifndef _WX_MSW_CTRLSUB_H_ | |
11 | #define _WX_MSW_CTRLSUB_H_ | |
12 | ||
13 | // ---------------------------------------------------------------------------- | |
14 | // wxControlWithItems | |
15 | // ---------------------------------------------------------------------------- | |
16 | ||
17 | class WXDLLIMPEXP_CORE wxControlWithItems : public wxControlWithItemsBase | |
18 | { | |
19 | public: | |
20 | wxControlWithItems() { } | |
21 | ||
22 | protected: | |
23 | // preallocate memory for inserting the given new items into the control | |
24 | // using the wm message (normally either LB_INITSTORAGE or CB_INITSTORAGE) | |
25 | void MSWAllocStorage(const wxArrayStringsAdapter& items, unsigned wm); | |
26 | ||
27 | // insert or append a string to the controls using the given message | |
28 | // (one of {CB,LB}_{ADD,INSERT}STRING, pos must be 0 when appending) | |
29 | int MSWInsertOrAppendItem(unsigned pos, const wxString& item, unsigned wm); | |
30 | ||
31 | // normally the control containing the items is this window itself but if | |
32 | // the derived control is composed of several windows, this method can be | |
33 | // overridden to return the real list/combobox control | |
34 | virtual WXHWND MSWGetItemsHWND() const { return GetHWND(); } | |
35 | ||
36 | private: | |
37 | DECLARE_ABSTRACT_CLASS(wxControlWithItems) | |
38 | wxDECLARE_NO_COPY_CLASS(wxControlWithItems); | |
39 | }; | |
40 | ||
41 | #endif // _WX_MSW_CTRLSUB_H_ | |
42 |