X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ca65c0440a7163e4e37e48b1c4329709d722db47..05e0b047d879cdbfade7f2ab346c0acdf3e29f96:/src/generic/splash.cpp diff --git a/src/generic/splash.cpp b/src/generic/splash.cpp index f18edab377..3fded78761 100644 --- a/src/generic/splash.cpp +++ b/src/generic/splash.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: splash.cpp +// Name: src/generic/splash.cpp // Purpose: wxSplashScreen class // Author: Julian Smart // Modified by: @@ -9,33 +9,33 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "splash.h" -#endif - // For compilers that support precompilation, includes "wx/wx.h". #include "wx/wxprec.h" #ifdef __BORLANDC__ -#pragma hdrstop + #pragma hdrstop #endif #if wxUSE_SPLASH -#ifndef WX_PRECOMP -#include "wx/dcmemory.h" -#include "wx/dcclient.h" +#ifdef __WXGTK20__ + #include #endif #include "wx/splash.h" +#ifndef WX_PRECOMP + #include "wx/dcmemory.h" + #include "wx/dcclient.h" +#endif + /* * wxSplashScreen */ #define wxSPLASH_TIMER_ID 9999 -IMPLEMENT_DYNAMIC_CLASS(wxSplashScreen, wxFrame); +IMPLEMENT_DYNAMIC_CLASS(wxSplashScreen, wxFrame) BEGIN_EVENT_TABLE(wxSplashScreen, wxFrame) EVT_TIMER(wxSPLASH_TIMER_ID, wxSplashScreen::OnNotify) @@ -48,8 +48,16 @@ END_EVENT_TABLE() */ wxSplashScreen::wxSplashScreen(const wxBitmap& bitmap, long splashStyle, int milliseconds, wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style): - wxFrame(parent, id, wxEmptyString, wxPoint(0, 0), wxSize(100, 100), style) + wxFrame(parent, id, wxEmptyString, wxPoint(0,0), wxSize(100, 100), style) { + // At least for GTK+ 2.0, this hint is not available. +#if defined(__WXGTK20__) +#if GTK_CHECK_VERSION(2,2,0) + gtk_window_set_type_hint(GTK_WINDOW(m_widget), + GDK_WINDOW_TYPE_HINT_SPLASHSCREEN); +#endif +#endif + m_window = NULL; m_splashStyle = splashStyle; m_milliseconds = milliseconds; @@ -141,7 +149,7 @@ static void wxDrawSplashBitmap(wxDC& dc, const wxBitmap& bitmap, int WXUNUSED(x) } #endif // USE_PALETTE_IN_SPLASH - dcMem.SelectObject(bitmap); + dcMem.SelectObjectAsSource(bitmap); dc.Blit(0, 0, bitmap.GetWidth(), bitmap.GetHeight(), & dcMem, 0, 0); dcMem.SelectObject(wxNullBitmap);