]> git.saurik.com Git - wxWidgets.git/blame - include/wx/msw/combobox.h
Fixed memory bug
[wxWidgets.git] / include / wx / msw / combobox.h
CommitLineData
2bda0e17 1/////////////////////////////////////////////////////////////////////////////
f6bcfd97 2// Name: wx/msw/combobox.h
2bda0e17
KB
3// Purpose: wxComboBox class
4// Author: Julian Smart
5// Modified by:
6// Created: 01/02/97
7// RCS-ID: $Id$
bbcdf8bc 8// Copyright: (c) Julian Smart
4438caf4 9// Licence: wxWindows licence
2bda0e17
KB
10/////////////////////////////////////////////////////////////////////////////
11
bbcdf8bc
JS
12#ifndef _WX_COMBOBOX_H_
13#define _WX_COMBOBOX_H_
2bda0e17
KB
14
15#ifdef __GNUG__
4438caf4 16 #pragma interface "combobox.h"
2bda0e17
KB
17#endif
18
19#include "wx/choice.h"
20
47d67540 21#if wxUSE_COMBOBOX
2bda0e17 22
39ca6d79
OK
23WXDLLEXPORT_DATA(extern const wxChar*) wxComboBoxNameStr;
24WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
2bda0e17 25
4438caf4
VZ
26// ----------------------------------------------------------------------------
27// Combobox control
28// ----------------------------------------------------------------------------
29
2bda0e17
KB
30class WXDLLEXPORT wxComboBox: public wxChoice
31{
4438caf4
VZ
32 DECLARE_DYNAMIC_CLASS(wxComboBox)
33
34public:
35 wxComboBox() { }
36
37 wxComboBox(wxWindow *parent, wxWindowID id,
38 const wxString& value = wxEmptyString,
39 const wxPoint& pos = wxDefaultPosition,
40 const wxSize& size = wxDefaultSize,
41 int n = 0, const wxString choices[] = NULL,
42 long style = 0,
43 const wxValidator& validator = wxDefaultValidator,
44 const wxString& name = wxComboBoxNameStr)
45 {
46 Create(parent, id, value, pos, size, n, choices, style, validator, name);
47 }
48
f6bcfd97
BP
49 bool Create(wxWindow *parent,
50 wxWindowID id,
51 const wxString& value = wxEmptyString,
52 const wxPoint& pos = wxDefaultPosition,
53 const wxSize& size = wxDefaultSize,
54 int n = 0,
55 const wxString choices[] = NULL,
56 long style = 0,
57 const wxValidator& validator = wxDefaultValidator,
58 const wxString& name = wxComboBoxNameStr);
4438caf4
VZ
59
60 // List functions: see wxChoice
61
62 // Text field functions
63 wxString GetValue() const { return GetLabel(); }
64 virtual void SetValue(const wxString& value);
65
66 // Clipboard operations
67 virtual void Copy();
68 virtual void Cut();
69 virtual void Paste();
70 virtual void SetInsertionPoint(long pos);
71 virtual void SetInsertionPointEnd();
72 virtual long GetInsertionPoint() const;
73 virtual long GetLastPosition() const;
74 virtual void Replace(long from, long to, const wxString& value);
75 virtual void Remove(long from, long to);
76 virtual void SetSelection(int n) { wxChoice::SetSelection(n); }
77 virtual void SetSelection(long from, long to);
78 virtual void SetEditable(bool editable);
79
f6bcfd97 80 // implementation only from now on
4438caf4 81 virtual bool MSWCommand(WXUINT param, WXWORD id);
f6bcfd97
BP
82 bool MSWProcessEditMsg(WXUINT msg, WXWPARAM wParam, WXLPARAM lParam);
83 virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
84 WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
85
86 WXHWND GetEditHWND() const;
4438caf4
VZ
87
88protected:
882a8f40
VZ
89 virtual void DoMoveWindow(int x, int y, int width, int height);
90 virtual wxSize DoGetBestSize() const;
2bda0e17
KB
91};
92
47d67540 93#endif // wxUSE_COMBOBOX
2bda0e17 94#endif
bbcdf8bc 95 // _WX_COMBOBOX_H_