]> git.saurik.com Git - wxWidgets.git/blob - include/wx/osx/carbon/private/overlay.h
f5ebe1d83e6185ab7af1bd2c0abafd1a6d98017a
[wxWidgets.git] / include / wx / osx / carbon / private / overlay.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/osx/carbon/private/overlay.h
3 // Purpose: wxOverlayImpl declaration
4 // Author: Stefan Csomor
5 // Modified by:
6 // Created: 2006-10-20
7 // Copyright: (c) wxWidgets team
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_MAC_CARBON_PRIVATE_OVERLAY_H_
12 #define _WX_MAC_CARBON_PRIVATE_OVERLAY_H_
13
14 #include "wx/osx/private.h"
15 #include "wx/toplevel.h"
16 #include "wx/graphics.h"
17
18 class wxOverlayImpl
19 {
20 public:
21 wxOverlayImpl() ;
22 ~wxOverlayImpl() ;
23
24
25 // clears the overlay without restoring the former state
26 // to be done eg when the window content has been changed and repainted
27 void Reset();
28
29 // returns true if it has been setup
30 bool IsOk();
31
32 void Init( wxDC* dc, int x , int y , int width , int height );
33
34 void BeginDrawing( wxDC* dc);
35
36 void EndDrawing( wxDC* dc);
37
38 void Clear( wxDC* dc);
39
40 private:
41 OSStatus CreateOverlayWindow();
42
43 void MacGetBounds( Rect *bounds );
44
45 WindowRef m_overlayWindow;
46 WindowRef m_overlayParentWindow;
47 CGContextRef m_overlayContext ;
48 // we store the window in case we would have to issue a Refresh()
49 wxWindow* m_window ;
50
51 int m_x ;
52 int m_y ;
53 int m_width ;
54 int m_height ;
55 } ;
56
57 #endif // _WX_MAC_CARBON_PRIVATE_OVERLAY_H_