const wxSize& size, long style)
: wxFrame(parent, id, wxEmptyString, wxPoint(0,0), wxSize(100, 100), style)
{
- // At least for GTK+ 2.0, this hint is not available.
+ // splash screen must not be used as parent by the other windows because it
+ // is going to disappear soon, indicate it by giving it this special style
+ SetExtraStyle(GetExtraStyle() | wxWS_EX_TRANSIENT);
+
#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;
#endif // USE_PALETTE_IN_SPLASH
dcMem.SelectObjectAsSource(bitmap);
- dc.Blit(0, 0, bitmap.GetWidth(), bitmap.GetHeight(), & dcMem, 0, 0);
+ dc.Blit(0, 0, bitmap.GetWidth(), bitmap.GetHeight(), &dcMem, 0, 0, wxCOPY,
+ true /* use mask */);
dcMem.SelectObject(wxNullBitmap);
#ifdef USE_PALETTE_IN_SPLASH
void wxSplashScreenWindow::OnPaint(wxPaintEvent& WXUNUSED(event))
{
wxPaintDC dc(this);
- if (m_bitmap.Ok())
+ if (m_bitmap.IsOk())
wxDrawSplashBitmap(dc, m_bitmap, 0, 0);
}
void wxSplashScreenWindow::OnEraseBackground(wxEraseEvent& event)
{
- if (event.GetDC() && m_bitmap.Ok())
+ if (event.GetDC() && m_bitmap.IsOk())
{
wxDrawSplashBitmap(* event.GetDC(), m_bitmap, 0, 0);
}
else
{
wxClientDC dc(this);
- if (m_bitmap.Ok())
+ if (m_bitmap.IsOk())
wxDrawSplashBitmap(dc, m_bitmap, 0, 0);
}
}