X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/861410228d37a914cb2d906cfd528b3c60fa017d..58cb01d1eb3d75298cc424ad6866fb5bec136fb6:/include/wx/dc.h diff --git a/include/wx/dc.h b/include/wx/dc.h index faed2c0dce..440c908c3b 100644 --- a/include/wx/dc.h +++ b/include/wx/dc.h @@ -18,6 +18,7 @@ #include "wx/object.h" // the base class +#include "wx/intl.h" // for wxLayoutDirection #include "wx/cursor.h" // we have member variables of these classes #include "wx/font.h" // so we can't do without them #include "wx/colour.h" @@ -855,6 +856,10 @@ private: #include "wx/os2/dc.h" #endif +#if wxUSE_GRAPHICS_CONTEXT + #include "wx/dcgraph.h" +#endif + // ---------------------------------------------------------------------------- // helper class: you can use it to temporarily change the DC text colour and // restore it automatically when the object goes out of scope @@ -963,66 +968,4 @@ private: DECLARE_NO_COPY_CLASS(wxDCClipper) }; -// ---------------------------------------------------------------------------- -// creates an overlay over an existing window, allowing for manipulations like -// rubberbanding etc. this API is not stable yet, not to be used outside wx -// internal code -// ---------------------------------------------------------------------------- - -class wxOverlayImpl ; -class wxWindowDC ; - -class WXDLLEXPORT wxOverlay -{ -public : - wxOverlay(); - ~wxOverlay(); - - // clears the overlay without restoring the former state - // to be done eg when the window content has been changed and repainted - void Reset(); - -private : - friend class WXDLLEXPORT wxDCOverlay; - - // returns true if it has been setup - bool IsOk(); - - void Init( wxWindowDC* dc, int x , int y , int width , int height ); - - void BeginDrawing( wxWindowDC* dc); - - void EndDrawing( wxWindowDC* dc); - - void Clear( wxWindowDC* dc); - - wxOverlayImpl* m_impl; - - bool m_inDrawing; -} ; - -class WXDLLEXPORT wxDCOverlay -{ -public : - // connects this overlay to the corresponding drawing dc, if the overlay is not initialized yet - // this call will do so - wxDCOverlay(wxOverlay &overlay, wxWindowDC *dc, int x , int y , int width , int height); - - // convenience wrapper that behaves the same using the entire area of the dc - wxDCOverlay(wxOverlay &overlay, wxWindowDC *dc); - - // removes the connection between the overlay and the dc - virtual ~wxDCOverlay(); - - // clears the layer, restoring the state at the last init - void Clear(); -private : - void Init(wxWindowDC *dc, int x , int y , int width , int height); - - wxOverlay& m_overlay; - - wxWindowDC* m_dc; -} ; - -#endif - // _WX_DC_H_BASE_ +#endif // _WX_DC_H_BASE_