]> git.saurik.com Git - wxWidgets.git/blame - include/wx/os2/textentry.h
Make storing non-trivial data in wxThreadSpecificInfo possible.
[wxWidgets.git] / include / wx / os2 / textentry.h
CommitLineData
9a3a5e5e
SN
1///////////////////////////////////////////////////////////////////////////////
2// Name: wx/os2/textentry.h
3// Purpose: wxOS2-specific wxTextEntry implementation
4// Author: Stefan Neis
5// Created: 2007-11-18
9a3a5e5e
SN
6// Copyright: (c) 2007 Stefan Neis
7// Licence: wxWindows licence
8///////////////////////////////////////////////////////////////////////////////
9
10#ifndef _WX_OS2_TEXTENTRY_H_
11#define _WX_OS2_TEXTENTRY_H_
12
13// ----------------------------------------------------------------------------
14// wxTextEntry: common part of wxComboBox and (single line) wxTextCtrl
15// ----------------------------------------------------------------------------
16
17class WXDLLIMPEXP_CORE wxTextEntry : public wxTextEntryBase
18{
19public:
20 wxTextEntry() { }
21
22 // implement wxTextEntryBase pure virtual methods
23 virtual void WriteText(const wxString& text);
9a3a5e5e
SN
24 virtual void Remove(long from, long to);
25
26 virtual void Copy();
27 virtual void Cut();
28 virtual void Paste();
29
30 virtual void Undo();
31 virtual void Redo();
32 virtual bool CanUndo() const;
33 virtual bool CanRedo() const;
34
35 virtual void SetInsertionPoint(long pos);
36 virtual long GetInsertionPoint() const;
37 virtual long GetLastPosition() const;
38
39 virtual void SetSelection(long from, long to)
40 { DoSetSelection(from, to); }
41 virtual void GetSelection(long *from, long *to) const;
42
43 virtual bool IsEditable() const;
44 virtual void SetEditable(bool editable);
45
46 virtual void SetMaxLength(unsigned long len);
47
48protected:
135b23b2
VZ
49 virtual wxString DoGetValue() const;
50
9a3a5e5e
SN
51 // this is really a hook for multiline text controls as the single line
52 // ones don't need to ever scroll to show the selection but having it here
53 // allows us to put Remove() in the base class
54 enum
55 {
56 SetSel_NoScroll = 0, // don't do anything special
57 SetSel_Scroll = 1 // default: scroll to make the selection visible
58 };
59 virtual void DoSetSelection(long from, long to, int flags = SetSel_Scroll);
60
61private:
62 // implement this to return the HWND of the EDIT control
63 virtual WXHWND GetEditHWND() const = 0;
64};
65
66#endif // _WX_OS2_TEXTENTRY_H_
67