1. added SetSelection() to wxItemContainer and removed its declarations
[wxWidgets.git] / include / wx / cocoa / combobox.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/cocoa/combobox.h
3 // Purpose: wxComboBox class
4 // Author: David Elliott
5 // Modified by:
6 // Created: 2003/07/14
7 // RCS-ID: $Id$
8 // Copyright: (c) 2003 David Elliott
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef __WX_COCOA_COMBOBOX_H__
13 #define __WX_COCOA_COMBOBOX_H__
14
15 //#include "wx/cocoa/NSTableView.h"
16
17 // ========================================================================
18 // wxComboBox
19 // ========================================================================
20 class WXDLLEXPORT wxComboBox: public wxTextCtrl, public wxComboBoxBase //, protected wxCocoaNSTableView
21 {
22 DECLARE_DYNAMIC_CLASS(wxComboBox)
23 DECLARE_EVENT_TABLE()
24 // WX_DECLARE_COCOA_OWNER(NSComboBox,NSTextField,NSView)
25 // ------------------------------------------------------------------------
26 // initialization
27 // ------------------------------------------------------------------------
28 public:
29 wxComboBox() { }
30 wxComboBox(wxWindow *parent, wxWindowID winid,
31 const wxString& value = wxEmptyString,
32 const wxPoint& pos = wxDefaultPosition,
33 const wxSize& size = wxDefaultSize,
34 int n = 0, const wxString choices[] = NULL,
35 long style = 0,
36 const wxValidator& validator = wxDefaultValidator,
37 const wxString& name = wxComboBoxNameStr)
38 {
39 Create(parent, winid, value, pos, size, n, choices, style, validator, name);
40 }
41 wxComboBox(wxWindow *parent, wxWindowID winid,
42 const wxString& value,
43 const wxPoint& pos,
44 const wxSize& size,
45 const wxArrayString& choices,
46 long style = 0,
47 const wxValidator& validator = wxDefaultValidator,
48 const wxString& name = wxComboBoxNameStr)
49 {
50 Create(parent, winid, value, pos, size, choices, style,
51 validator, name);
52 }
53
54 bool Create(wxWindow *parent, wxWindowID winid,
55 const wxString& value = wxEmptyString,
56 const wxPoint& pos = wxDefaultPosition,
57 const wxSize& size = wxDefaultSize,
58 int n = 0, const wxString choices[] = NULL,
59 long style = 0,
60 const wxValidator& validator = wxDefaultValidator,
61 const wxString& name = wxComboBoxNameStr);
62 bool Create(wxWindow *parent, wxWindowID winid,
63 const wxString& value,
64 const wxPoint& pos,
65 const wxSize& size,
66 const wxArrayString& choices,
67 long style = 0,
68 const wxValidator& validator = wxDefaultValidator,
69 const wxString& name = wxComboBoxNameStr);
70 virtual ~wxComboBox();
71
72 // ------------------------------------------------------------------------
73 // Cocoa callbacks
74 // ------------------------------------------------------------------------
75 protected:
76 // ------------------------------------------------------------------------
77 // Implementation
78 // ------------------------------------------------------------------------
79 public:
80 // wxCombobox methods
81 virtual void SetSelection(int);
82 // Overlapping methods
83 virtual wxString GetStringSelection();
84 // wxItemContainer
85 virtual void Clear();
86 virtual void Delete(int);
87 virtual int GetCount() const;
88 virtual wxString GetString(int) const;
89 virtual void SetString(int, const wxString&);
90 virtual int FindString(const wxString&) const;
91 virtual int GetSelection() const;
92 virtual int DoAppend(const wxString&);
93 virtual int DoInsert(const wxString&, int);
94 virtual void DoSetItemClientData(int, void*);
95 virtual void* DoGetItemClientData(int) const;
96 virtual void DoSetItemClientObject(int, wxClientData*);
97 virtual wxClientData* DoGetItemClientObject(int) const;
98 // wxComboBoxBase pure virtuals
99 virtual wxString GetValue() const
100 { return wxTextCtrl::GetValue(); }
101 virtual void SetValue(const wxString& value)
102 { return wxTextCtrl::SetValue(value); }
103 virtual void Cut() { wxTextCtrl::Cut(); }
104 virtual void Copy() { wxTextCtrl::Copy(); }
105 virtual void Paste() { wxTextCtrl::Paste(); }
106 virtual void SetInsertionPoint(long pos)
107 { wxTextCtrl::SetInsertionPoint(pos); }
108 virtual void SetInsertionPointEnd()
109 { wxTextCtrl::SetInsertionPointEnd(); }
110 virtual long GetInsertionPoint() const
111 { return wxTextCtrl::GetInsertionPoint(); }
112 virtual wxTextPos GetLastPosition() const
113 { return wxTextCtrl::GetLastPosition(); }
114 virtual void Replace(long from, long to, const wxString& value)
115 { wxTextCtrl::Replace(from,to,value); }
116 virtual void SetSelection(long from, long to)
117 { wxTextCtrl::SetSelection(from,to); }
118 virtual void SetEditable(bool editable)
119 { wxTextCtrl::SetEditable(editable); }
120 virtual bool IsEditable() const
121 { return !HasFlag(wxCB_READONLY); }
122 virtual void Undo()
123 { wxTextCtrl::Undo(); }
124 virtual void Redo()
125 { wxTextCtrl::Redo(); }
126 virtual void SelectAll()
127 { wxTextCtrl::SelectAll(); }
128 virtual bool CanCopy() const
129 { return wxTextCtrl::CanCopy(); }
130 virtual bool CanCut() const
131 { return wxTextCtrl::CanCut(); }
132 virtual bool CanPaste() const
133 { return wxTextCtrl::CanPaste(); }
134 virtual bool CanUndo() const
135 { return wxTextCtrl::CanUndo(); }
136 virtual bool CanRedo() const
137 { return wxTextCtrl::CanRedo(); }
138 };
139
140 #endif // __WX_COCOA_COMBOBOX_H__