X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8b9d7133f9520f76f87dd27bffc30235c4933c9f..455a9ca633a90e704b6c1da8d516a2ceb4647f75:/samples/splash/splash.cpp diff --git a/samples/splash/splash.cpp b/samples/splash/splash.cpp index cd7c2ad931..290058ca79 100644 --- a/samples/splash/splash.cpp +++ b/samples/splash/splash.cpp @@ -32,6 +32,7 @@ #include "wx/image.h" #include "wx/splash.h" +#include "wx/mediactrl.h" // ---------------------------------------------------------------------------- // resources @@ -118,19 +119,19 @@ bool MyApp::OnInit() { wxImage::AddHandler(new wxPNGHandler); + // create the main application window + MyFrame *frame = new MyFrame(_T("wxSplashScreen sample application")); + wxBitmap bitmap; if (bitmap.LoadFile(_T("splash.png"), wxBITMAP_TYPE_PNG)) { - wxSplashScreen* splash = new wxSplashScreen(bitmap, + new wxSplashScreen(bitmap, wxSPLASH_CENTRE_ON_SCREEN|wxSPLASH_TIMEOUT, - 6000, NULL, wxID_ANY, wxDefaultPosition, wxDefaultSize, + 6000, frame, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSIMPLE_BORDER|wxSTAY_ON_TOP); } wxYield(); - // create the main application window - MyFrame *frame = new MyFrame(_T("wxSplashScreen sample application")); - // and show it (the frames, unlike simple controls, are not shown when // created initially) frame->Show(true); @@ -158,7 +159,7 @@ MyFrame::MyFrame(const wxString& title) // the "About" item should be in the help menu wxMenu *helpMenu = new wxMenu; - helpMenu->Append(wxID_ABOUT, _T("&About...\tF1"), _T("Show about dialog")); + helpMenu->Append(wxID_ABOUT, _T("&About...\tF1"), _T("Show about frame")); menuFile->Append(wxID_EXIT, _T("E&xit\tAlt-X"), _T("Quit this program")); @@ -189,9 +190,28 @@ void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event)) void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event)) { - wxString msg; - msg.Printf( _T("This is the About dialog of the wxSplashScreen sample.\n") - _T("Welcome to %s"), wxVERSION_STRING); - - wxMessageBox(msg, _T("About sample"), wxOK | wxICON_INFORMATION, this); + wxBitmap bitmap; + if (bitmap.LoadFile(_T("splash.png"), wxBITMAP_TYPE_PNG)) + { + wxImage image = bitmap.ConvertToImage(); + image.Rescale( bitmap.GetWidth()/2, bitmap.GetHeight()/2 ); + bitmap = wxBitmap(image); + wxSplashScreen *splash = new wxSplashScreen(bitmap, + wxSPLASH_CENTRE_ON_PARENT | wxSPLASH_NO_TIMEOUT, + 0, this, wxID_ANY, wxDefaultPosition, wxDefaultSize, + wxSIMPLE_BORDER|wxSTAY_ON_TOP); + wxWindow *win = splash->GetSplashWindow(); +#if wxUSE_MEDIACTRL + wxMediaCtrl *media = new wxMediaCtrl( win, wxID_EXIT, _T("press.mpg"), wxPoint(2,2)); + media->SetSize(wxSize(80,60)); + media->Play(); +#else + wxStaticText *text = new wxStaticText( win, wxID_EXIT, _T("click somewhere\non image"), wxPoint(13,11) ); + text->SetBackgroundColour(*wxWHITE); + text->SetForegroundColour(*wxBLACK); + wxFont font = text->GetFont(); + font.SetPointSize(2*font.GetPointSize()/3); + text->SetFont(font); +#endif + } }