]> git.saurik.com Git - wxWidgets.git/blob - include/wx/osx/iphone/private.h
reuse wxObjectRefData for various ref-counted classes (closes #10886)
[wxWidgets.git] / include / wx / osx / iphone / private.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/osx/iphone/private.h
3 // Purpose: Private declarations: as this header is only included by
4 // wxWidgets itself, it may contain identifiers which don't start
5 // with "wx".
6 // Author: Stefan Csomor
7 // Modified by:
8 // Created: 1998-01-01
9 // RCS-ID: $Id: private.h 53819 2008-05-29 14:11:45Z SC $
10 // Copyright: (c) Stefan Csomor
11 // Licence: wxWindows licence
12 /////////////////////////////////////////////////////////////////////////////
13
14 #ifndef _WX_PRIVATE_IPHONE_H_
15 #define _WX_PRIVATE_IPHONE_H_
16
17 #include "wx/osx/core/private.h"
18
19 #ifdef __OBJC__
20 #import <UIKit/UIKit.h>
21 #endif
22
23 #if wxUSE_GUI
24
25 class WXDLLIMPEXP_CORE wxWidgetIPhoneImpl : public wxWidgetImpl
26 {
27 public :
28 wxWidgetIPhoneImpl( wxWindowMac* peer , WXWidget w, bool isRootControl = false ) ;
29 wxWidgetIPhoneImpl() ;
30 ~wxWidgetIPhoneImpl();
31
32 void Init();
33
34 virtual bool IsVisible() const ;
35 virtual void SetVisibility( bool visible );
36
37 virtual void Raise();
38
39 virtual void Lower();
40
41 virtual void ScrollRect( const wxRect *rect, int dx, int dy );
42
43 virtual WXWidget GetWXWidget() const { return m_osxView; }
44
45 virtual void SetBackgroundColour( const wxColour& col ) ;
46
47 virtual void GetContentArea( int &left , int &top , int &width , int &height ) const;
48 virtual void Move(int x, int y, int width, int height);
49 virtual void GetPosition( int &x, int &y ) const;
50 virtual void GetSize( int &width, int &height ) const;
51
52 virtual void SetNeedsDisplay( const wxRect* where = NULL );
53 virtual bool GetNeedsDisplay() const;
54
55 virtual bool CanFocus() const;
56 // return true if successful
57 virtual bool SetFocus();
58 virtual bool HasFocus() const;
59
60 void RemoveFromParent();
61 void Embed( wxWidgetImpl *parent );
62 protected:
63 WXWidget m_osxView;
64 DECLARE_DYNAMIC_CLASS_NO_COPY(wxWidgetIPhoneImpl)
65 };
66
67 class wxNonOwnedWindowIPhoneImpl : public wxNonOwnedWindowImpl
68 {
69 public :
70 wxNonOwnedWindowIPhoneImpl( wxNonOwnedWindow* nonownedwnd) ;
71 wxNonOwnedWindowIPhoneImpl();
72
73 virtual ~wxNonOwnedWindowIPhoneImpl();
74
75 virtual void Destroy() ;
76 void Create( wxWindow* parent, const wxPoint& pos, const wxSize& size,
77 long style, long extraStyle, const wxString& name ) ;
78
79 WXWindow GetWXWindow() const;
80 void Raise();
81 void Lower();
82 bool Show(bool show);
83 bool ShowWithEffect(bool show, wxShowEffect effect, unsigned timeout);
84
85 void Update();
86 bool SetTransparent(wxByte alpha);
87 bool SetBackgroundColour(const wxColour& col );
88 void SetExtraStyle( long exStyle );
89 bool SetBackgroundStyle(wxBackgroundStyle style);
90 bool CanSetTransparent();
91
92 void MoveWindow(int x, int y, int width, int height);
93 void GetPosition( int &x, int &y ) const;
94 void GetSize( int &width, int &height ) const;
95
96 void GetContentArea( int &left , int &top , int &width , int &height ) const;
97 bool SetShape(const wxRegion& region);
98
99 virtual void SetTitle( const wxString& title, wxFontEncoding encoding ) ;
100
101 virtual bool IsMaximized() const;
102
103 virtual bool IsIconized() const;
104
105 virtual void Iconize( bool iconize );
106
107 virtual void Maximize(bool maximize);
108
109 virtual bool IsFullScreen() const;
110
111 virtual bool ShowFullScreen(bool show, long style);
112
113 virtual void RequestUserAttention(int flags);
114
115 virtual void ScreenToWindow( int *x, int *y );
116
117 virtual void WindowToScreen( int *x, int *y );
118
119 wxNonOwnedWindow* GetWXPeer() { return m_wxPeer; }
120 protected :
121 WX_UIWindow m_macWindow;
122 void * m_macFullScreenData ;
123 DECLARE_DYNAMIC_CLASS_NO_COPY(wxNonOwnedWindowIPhoneImpl)
124 };
125
126 #endif // wxUSE_GUI
127
128 #endif
129 // _WX_PRIVATE_IPHONE_H_