| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- #include "stdafx.h"
- #include "prefs.h"
- #include "libs.h"
- #include "resource.h"
- #include <mmsystem.h>
- char _credits[]=
- "\r\n"
- "Programming and design: Mark Sibly\r\n\r\n"
- "Documentation: Mark Sibly, Simon Harrison, Paul Gerfen, Shane Monroe and the Blitz Doc Team\r\n\r\n"
- "Testing and support: James Boyd, Simon Armstrong and the Blitz Dev Team\r\n\r\n"
- "Image loader courtesy of FreeImage by Floris van den berg\r\n\r\n"
- "Please visit www.blitzbasic.com for all your Blitz related needs!";
- /*
- char _credits[]=
- "\r\n"
- "Programming and Design: Mark Sibly\r\n\r\n"
- "Documentation: Simon Harrison; Simon Armstrong; Mark Sibly\r\n\r\n"
- "Many thanks to: Claire Foley; Janet Sibly; Rick, Kay and Robbie Keam; "
- "James Boyd; the Blitz Dev Team\r\n\r\n"
- "Image loader courtesy of FreeImage by Floris van den Berg\r\n\r\n"
- "Please visit www.blitzbasic.com for all your Blitz related needs!";
- */
- class Dialog : public CDialog{
- bool _quit;
- public:
- Dialog():_quit(false){}
- afx_msg void OnOK(){
- _quit=true;
- }
- void wait(){
- _quit=false;
- MSG msg;
- while( !_quit && GetMessage( &msg,0,0,0 ) ){
- if( !AfxGetApp()->PreTranslateMessage(&msg) ){
- TranslateMessage( &msg );
- DispatchMessage( &msg );
- }
- }
- EndDialog(0);
- }
- void wait( int n ){
- int _expire=(int)timeGetTime()+n;
- for(;;){
- int tm=_expire-(int)timeGetTime();
- if( tm<0 ) tm=0;
- MsgWaitForMultipleObjects( 0,0,false,tm,QS_ALLEVENTS );
- MSG msg;
- if( PeekMessage( &msg,0,0,0,PM_REMOVE ) ){
- if( !AfxGetApp()->PreTranslateMessage(&msg) ){
- TranslateMessage( &msg );
- DispatchMessage( &msg );
- }
- }
- if( !tm ) return;
- }
- }
- };
- void aboutBlitz( bool delay ){
- AfxGetMainWnd()->EnableWindow(0);
- Dialog about;
- about.Create( IDD_ABOUT );
- string credits;
- credits+=_credits;
- about.GetDlgItem( IDC_CREDITS )->SetWindowText( credits.c_str() );
- int ide_ver=VERSION&0xffff;
- int lnk_ver=linker_ver&0xffff;
- int run_ver=runtime_ver&0xffff;
- string ide_v=itoa(ide_ver/1000)+"."+itoa(ide_ver%1000);
- string lnk_v=itoa(lnk_ver/1000)+"."+itoa(lnk_ver%1000);
- string run_v=itoa(run_ver/1000)+"."+itoa(run_ver%1000);
- string t="";
- #ifdef PRO
- t+="Blitz3D";
- #else
- t+="Blitz2D";
- #endif
- #ifdef EDU
- t+=" - Educational Version";
- #else
- #ifdef DEMO
- t+=" - Demo Version\n\n";
- /*
- int n=shareProtCheck();
- if( n>1 ) t+=itoa(n)+" runs left";
- else if( n ) t+=itoa(n)+" run left";
- else t+="expired";
- t+=")\n\n";
- */
- #else
- t+=" - Release Version\n\n";
- #endif
- #endif
- about.GetDlgItem( IDC_PRODUCT )->SetWindowText( t.c_str() );
- t="IDE V"+ide_v+" Linker V"+lnk_v+" Runtime V"+run_v;
- about.GetDlgItem( IDC_VERSION )->SetWindowText( t.c_str() );
- #ifdef DEMO
- if( delay ){
- about.GetDlgItem( IDOK )->ShowWindow( SW_HIDE );
- about.GetDlgItem( IDC_PROGRESS1 )->ShowWindow( SW_SHOW );
- for( int k=0;k<100;++k ){
- ((CProgressCtrl*)about.GetDlgItem( IDC_PROGRESS1 ))->SetPos( k+1 );
- about.wait( 50 );
- }
- about.GetDlgItem( IDOK )->ShowWindow( SW_SHOW );
- }
- #endif
- about.GetDlgItem( IDC_PROGRESS1 )->ShowWindow( SW_HIDE );
- about.wait();
- about.EndDialog(0);
- AfxGetMainWnd()->EnableWindow(1);
- }
|