-/// Mode of wxDfbCloneSurface() call
-enum wxDfbCloneSurfaceMode
-{
- /// Don't copy surface pixels, just clone surface size and attributes
- wxDfbCloneSurface_NoPixels = 0,
- /// Make exact copy, including the pixels
- wxDfbCloneSurface_CopyPixels
-};
-
-/**
- Creates a new surface by cloning existing one. Depending on @a mode,
- either makes exact copy (wxDfbCloneSurface_CopyPixels) or only creates a
- new surface with the same size and attributes (wxDfbCloneSurface_NoPixels).
- */
-IDirectFBSurfacePtr wxDfbCloneSurface(const IDirectFBSurfacePtr& s,
- wxDfbCloneSurfaceMode mode);
-
-/// Returns bit depth used by the surface
-int wxDfbGetSurfaceDepth(const IDirectFBSurfacePtr& s);
-
-/// Returns interface to the primary display layer:
-IDirectFBDisplayLayerPtr wxDfbGetDisplayLayer();
-
-/// Returns interface to the primary surface:
-IDirectFBSurfacePtr wxDfbGetPrimarySurface();
-
-
-//-----------------------------------------------------------------------------
-// wxDfbEvent
-//-----------------------------------------------------------------------------
-
-/**
- The struct defined by this macro is a thin wrapper around DFB*Event type.
- It is needed because DFB*Event are typedefs and so we can't forward declare
- them, but we need to pass them to methods declared in public headers where
- <directfb.h> cannot be included. So this struct just holds the event value,
- it's sole purpose is that it can be forward declared.
- */
-#define WXDFB_DEFINE_EVENT_WRAPPER(T) \
- struct wx##T \
- { \
- wx##T() {} \
- wx##T(const T& event) : m_event(event) {} \
- \
- operator T&() { return m_event; } \
- operator const T&() const { return m_event; } \
- T* operator&() { return &m_event; } \
- \
- DFBEventClass GetClass() const { return m_event.clazz; } \
- \
- private: \
- T m_event; \
- };
-
-WXDFB_DEFINE_EVENT_WRAPPER(DFBEvent)
-WXDFB_DEFINE_EVENT_WRAPPER(DFBWindowEvent)
-