]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/splash.h
Add wxToolBarToolBase, missing flags, etc.
[wxWidgets.git] / include / wx / generic / splash.h
index a8bf2ae8a10a0e6ed7f1df5ac48cb853154d8cf5..1441be4420c36fc86d98184d861a63dcffcf1c89 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        splash.h
+// Name:        wx/generic/splash.h
 // Purpose:     Splash screen class
 // Author:      Julian Smart
 // Modified by:
@@ -13,8 +13,9 @@
 #define _WX_SPLASH_H_
 
 #include "wx/bitmap.h"
-#include "wx/timer.h"
+#include "wx/eventfilter.h"
 #include "wx/frame.h"
+#include "wx/timer.h"
 
 
 /*
 #define wxSPLASH_TIMEOUT            0x04
 #define wxSPLASH_NO_TIMEOUT         0x00
 
-class WXDLLIMPEXP_ADV wxSplashScreenWindow;
+class WXDLLIMPEXP_FWD_ADV wxSplashScreenWindow;
 
 /*
  * wxSplashScreen
  */
 
-class WXDLLIMPEXP_ADV wxSplashScreen: public wxFrame
+class WXDLLIMPEXP_ADV wxSplashScreen: public wxFrame,
+                                      public wxEventFilter
 {
 public:
     // for RTTI macros only
-    wxSplashScreen() {}
+    wxSplashScreen() { Init(); }
     wxSplashScreen(const wxBitmap& bitmap, long splashStyle, int milliseconds,
                    wxWindow* parent, wxWindowID id,
                    const wxPoint& pos = wxDefaultPosition,
                    const wxSize& size = wxDefaultSize,
                    long style = wxSIMPLE_BORDER|wxFRAME_NO_TASKBAR|wxSTAY_ON_TOP);
-    ~wxSplashScreen();
+    virtual ~wxSplashScreen();
 
     void OnCloseWindow(wxCloseEvent& event);
     void OnNotify(wxTimerEvent& event);
@@ -52,7 +54,13 @@ public:
     wxSplashScreenWindow* GetSplashWindow() const { return m_window; }
     int GetTimeout() const { return m_milliseconds; }
 
+    // Override wxEventFilter method to hide splash screen on any user input.
+    virtual int FilterEvent(wxEvent& event);
+
 protected:
+    // Common part of all ctors.
+    void Init();
+
     wxSplashScreenWindow*   m_window;
     long                    m_splashStyle;
     int                     m_milliseconds;
@@ -60,7 +68,7 @@ protected:
 
     DECLARE_DYNAMIC_CLASS(wxSplashScreen)
     DECLARE_EVENT_TABLE()
-    DECLARE_NO_COPY_CLASS(wxSplashScreen)
+    wxDECLARE_NO_COPY_CLASS(wxSplashScreen);
 };
 
 /*
@@ -74,8 +82,6 @@ public:
 
     void OnPaint(wxPaintEvent& event);
     void OnEraseBackground(wxEraseEvent& event);
-    void OnMouseEvent(wxMouseEvent& event);
-    void OnChar(wxKeyEvent& event);
 
     void SetBitmap(const wxBitmap& bitmap) { m_bitmap = bitmap; }
     wxBitmap& GetBitmap() { return m_bitmap; }
@@ -84,7 +90,7 @@ protected:
     wxBitmap    m_bitmap;
 
     DECLARE_EVENT_TABLE()
-    DECLARE_NO_COPY_CLASS(wxSplashScreenWindow)
+    wxDECLARE_NO_COPY_CLASS(wxSplashScreenWindow);
 };