2007-07-26 09:54:14 -04:00
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: wx/msw/ctrlsub.h
|
|
|
|
// Purpose: common functionality of wxItemContainer-derived controls
|
|
|
|
// Author: Vadim Zeitlin
|
|
|
|
// Created: 2007-07-25
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Copyright: (c) 2007 Vadim Zeitlin <vadim@wxwindows.org>
|
|
|
|
// Licence: wxWindows licence
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef _WX_MSW_CTRLSUB_H_
|
|
|
|
#define _WX_MSW_CTRLSUB_H_
|
|
|
|
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// wxControlWithItems
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
|
2008-03-26 11:06:00 -04:00
|
|
|
class WXDLLIMPEXP_CORE wxControlWithItems : public wxControlWithItemsBase
|
2007-07-26 09:54:14 -04:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
wxControlWithItems() { }
|
|
|
|
|
|
|
|
protected:
|
|
|
|
// preallocate memory for inserting the given new items into the control
|
|
|
|
// using the wm message (normally either LB_INITSTORAGE or CB_INITSTORAGE)
|
|
|
|
void MSWAllocStorage(const wxArrayStringsAdapter& items, unsigned wm);
|
|
|
|
|
|
|
|
// insert or append a string to the controls using the given message
|
|
|
|
// (one of {CB,LB}_{ADD,INSERT}STRING, pos must be 0 when appending)
|
|
|
|
int MSWInsertOrAppendItem(unsigned pos, const wxString& item, unsigned wm);
|
|
|
|
|
|
|
|
// normally the control containing the items is this window itself but if
|
|
|
|
// the derived control is composed of several windows, this method can be
|
|
|
|
// overridden to return the real list/combobox control
|
|
|
|
virtual WXHWND MSWGetItemsHWND() const { return GetHWND(); }
|
|
|
|
|
|
|
|
private:
|
|
|
|
DECLARE_ABSTRACT_CLASS(wxControlWithItems)
|
|
|
|
DECLARE_NO_COPY_CLASS(wxControlWithItems)
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // _WX_MSW_CTRLSUB_H_
|
|
|
|
|