• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/amule/wxWidgets-2.8.12/include/wx/mac/carbon/private/
1/////////////////////////////////////////////////////////////////////////////
2// Name:        mactext.h
3// Purpose:     private wxMacTextControl base class
4// Author:      Stefan Csomor
5// Modified by:
6// Created:     03/02/99
7// RCS-ID:      $Id:
8// Copyright:   (c) Stefan Csomor
9// Licence:     wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_MAC_PRIVATE_MACTEXT_H_
13#define _WX_MAC_PRIVATE_MACTEXT_H_
14
15#include "wx/mac/private.h"
16
17// common interface for all implementations
18class wxMacTextControl : public wxMacControl
19{
20public :
21    wxMacTextControl( wxTextCtrl *peer ) ;
22    virtual ~wxMacTextControl() ;
23
24    virtual wxString GetStringValue() const = 0 ;
25    virtual void SetStringValue( const wxString &val ) = 0 ;
26    virtual void SetSelection( long from, long to ) = 0 ;
27    virtual void GetSelection( long* from, long* to ) const = 0 ;
28    virtual void WriteText( const wxString& str ) = 0 ;
29
30    virtual void SetStyle( long start, long end, const wxTextAttr& style ) ;
31    virtual void Copy() ;
32    virtual void Cut() ;
33    virtual void Paste() ;
34    virtual bool CanPaste() const ;
35    virtual void SetEditable( bool editable ) ;
36    virtual wxTextPos GetLastPosition() const ;
37    virtual void Replace( long from, long to, const wxString &str ) ;
38    virtual void Remove( long from, long to ) ;
39
40
41    virtual bool HasOwnContextMenu() const
42    { return false ; }
43
44    virtual bool SetupCursor( const wxPoint& pt )
45    { return false ; }
46
47    virtual void Clear() ;
48    virtual bool CanUndo() const;
49    virtual void Undo() ;
50    virtual bool CanRedo() const;
51    virtual void Redo() ;
52    virtual int GetNumberOfLines() const ;
53    virtual long XYToPosition(long x, long y) const;
54    virtual bool PositionToXY(long pos, long *x, long *y) const ;
55    virtual void ShowPosition(long WXUNUSED(pos)) ;
56    virtual int GetLineLength(long lineNo) const ;
57    virtual wxString GetLineText(long lineNo) const ;
58    virtual void CheckSpelling(bool check) { }
59    virtual void SetFont( const wxFont & font , const wxColour& foreground , long windowStyle );
60
61#ifndef __WXMAC_OSX__
62    virtual void            MacControlUserPaneDrawProc(wxInt16 part) = 0 ;
63    virtual wxInt16         MacControlUserPaneHitTestProc(wxInt16 x, wxInt16 y) = 0 ;
64    virtual wxInt16         MacControlUserPaneTrackingProc(wxInt16 x, wxInt16 y, void* actionProc) = 0 ;
65    virtual void            MacControlUserPaneIdleProc() = 0 ;
66    virtual wxInt16         MacControlUserPaneKeyDownProc(wxInt16 keyCode, wxInt16 charCode, wxInt16 modifiers) = 0 ;
67    virtual void            MacControlUserPaneActivateProc(bool activating) = 0 ;
68    virtual wxInt16         MacControlUserPaneFocusProc(wxInt16 action) = 0 ;
69    virtual void            MacControlUserPaneBackgroundProc(void* info) = 0 ;
70#endif
71} ;
72
73#if TARGET_API_MAC_OSX
74
75class wxMacUnicodeTextControl : public wxMacTextControl
76{
77public :
78    wxMacUnicodeTextControl( wxTextCtrl *wxPeer ) ;
79    wxMacUnicodeTextControl( wxTextCtrl *wxPeer,
80                             const wxString& str,
81                             const wxPoint& pos,
82                             const wxSize& size, long style ) ;
83    virtual ~wxMacUnicodeTextControl();
84
85    virtual bool Create( wxTextCtrl *wxPeer,
86                         const wxString& str,
87                         const wxPoint& pos,
88                         const wxSize& size, long style ) ;
89    virtual void VisibilityChanged(bool shown);
90    virtual wxString GetStringValue() const ;
91    virtual void SetStringValue( const wxString &str) ;
92    virtual void Copy();
93    virtual void Cut();
94    virtual void Paste();
95    virtual bool CanPaste() const;
96    virtual void SetEditable(bool editable) ;
97    virtual void GetSelection( long* from, long* to) const ;
98    virtual void SetSelection( long from , long to ) ;
99    virtual void WriteText(const wxString& str) ;
100
101protected :
102	virtual void CreateControl( wxTextCtrl* peer, const Rect* bounds, CFStringRef cfr );
103
104    // contains the tag for the content (is different for password and non-password controls)
105    OSType m_valueTag ;
106    WXEVENTHANDLERREF    m_macTextCtrlEventHandler ;
107public :
108    ControlEditTextSelectionRec m_selection ;
109};
110
111#endif // TARGET_API_MAC_OSX
112
113#endif // _WX_MAC_PRIVATE_MACTEXT_H_
114