#ifndef _WX_UNIV_THEME_H_
#define _WX_UNIV_THEME_H_
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma interface "theme.h"
-#endif
-
// ----------------------------------------------------------------------------
// wxTheme
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxRenderer;
+class WXDLLEXPORT wxArtProvider;
class WXDLLEXPORT wxColourScheme;
+class WXDLLEXPORT wxInputConsumer;
class WXDLLEXPORT wxInputHandler;
-class WXDLLEXPORT wxArtProvider;
+class WXDLLEXPORT wxRenderer;
struct WXDLLEXPORT wxThemeInfo;
class WXDLLEXPORT wxTheme
// get the renderer implementing all the control-drawing operations in
// this theme
virtual wxRenderer *GetRenderer() = 0;
-
+
// get the art provider to be used together with this theme
virtual wxArtProvider *GetArtProvider() = 0;
- // get the input handler of the given type
- virtual wxInputHandler *GetInputHandler(const wxString& handlerType) = 0;
+ // get the input handler of the given type, forward to the standard one
+ virtual wxInputHandler *GetInputHandler(const wxString& handlerType,
+ wxInputConsumer *consumer) = 0;
// get the colour scheme for the control with this name
virtual wxColourScheme *GetColourScheme() = 0;
// without it, an over optimizing linker may discard the object module
// containing the theme implementation entirely
#define WX_USE_THEME(themename) \
- WXDLLEXPORT_DATA(extern bool) wxThemeUse##themename; \
+ extern WXDLLEXPORT_DATA(bool) wxThemeUse##themename; \
static struct wxThemeUserFor##themename \
{ \
wxThemeUserFor##themename() { wxThemeUse##themename = true; } \