2006-10-24 08:29:14 -04:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: wx/private/overlay.h
|
|
|
|
// Purpose: wxOverlayImpl declaration
|
|
|
|
// Author: Stefan Csomor
|
|
|
|
// Modified by:
|
|
|
|
// Created: 2006-10-20
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Copyright: (c) wxWidgets team
|
|
|
|
// Licence: wxWindows licence
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#ifndef _WX_PRIVATE_OVERLAY_H_
|
|
|
|
#define _WX_PRIVATE_OVERLAY_H_
|
|
|
|
|
|
|
|
#include "wx/overlay.h"
|
|
|
|
|
|
|
|
#if wxHAS_NATIVE_OVERLAY
|
|
|
|
|
|
|
|
#if defined(__WXMAC__)
|
|
|
|
#include "wx/mac/carbon/private/overlay.h"
|
|
|
|
#elif defined(__WXDFB__)
|
|
|
|
#include "wx/dfb/private/overlay.h"
|
|
|
|
#else
|
|
|
|
#error "unknown native wxOverlay implementation"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#else // !wxHAS_NATIVE_OVERLAY
|
|
|
|
|
2006-10-24 09:50:19 -04:00
|
|
|
#include "wx/bitmap.h"
|
2006-10-24 12:02:38 -04:00
|
|
|
#include "wx/window.h"
|
2006-10-24 09:50:19 -04:00
|
|
|
|
2006-10-24 08:29:14 -04:00
|
|
|
// generic implementation of wxOverlay
|
|
|
|
class wxOverlayImpl
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
wxOverlayImpl();
|
|
|
|
~wxOverlayImpl();
|
2006-10-24 09:50:19 -04:00
|
|
|
|
|
|
|
|
2006-10-24 08:29:14 -04:00
|
|
|
// clears the overlay without restoring the former state
|
|
|
|
// to be done eg when the window content has been changed and repainted
|
|
|
|
void Reset();
|
2006-10-24 09:50:19 -04:00
|
|
|
|
2006-10-24 08:29:14 -04:00
|
|
|
// returns true if it has been setup
|
|
|
|
bool IsOk();
|
2006-10-24 09:50:19 -04:00
|
|
|
|
2006-10-24 08:29:14 -04:00
|
|
|
void Init(wxWindowDC* dc, int x , int y , int width , int height);
|
2006-10-24 09:50:19 -04:00
|
|
|
|
2006-10-24 08:29:14 -04:00
|
|
|
void BeginDrawing(wxWindowDC* dc);
|
2006-10-24 09:50:19 -04:00
|
|
|
|
2006-10-24 08:29:14 -04:00
|
|
|
void EndDrawing(wxWindowDC* dc);
|
2006-10-24 09:50:19 -04:00
|
|
|
|
2006-10-24 08:29:14 -04:00
|
|
|
void Clear(wxWindowDC* dc);
|
|
|
|
|
|
|
|
private:
|
|
|
|
wxBitmap m_bmpSaved ;
|
|
|
|
int m_x ;
|
|
|
|
int m_y ;
|
|
|
|
int m_width ;
|
|
|
|
int m_height ;
|
|
|
|
// this is to enable wxMOTIF and UNIV to compile....
|
|
|
|
// currently (10 oct 06) we don't use m_window
|
|
|
|
// ce - how do we fix this
|
|
|
|
#if defined(__WXGTK__) || defined(__WXMSW__)
|
|
|
|
wxWindow* m_window ;
|
2006-10-24 09:50:19 -04:00
|
|
|
#endif
|
2006-10-24 08:29:14 -04:00
|
|
|
} ;
|
|
|
|
|
|
|
|
#endif // wxHAS_NATIVE_OVERLAY/!wxHAS_NATIVE_OVERLAY
|
|
|
|
|
|
|
|
#endif // _WX_PRIVATE_OVERLAY_H_
|