Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

splash.h

Go to the documentation of this file.
00001 /*
00002  *  Celestia GTK+ Front-End
00003  *  Copyright (C) 2005 Pat Suwalski <pat@suwalski.net>
00004  *
00005  *  This program is free software; you can redistribute it and/or modify
00006  *  it under the terms of the GNU General Public License as published by
00007  *  the Free Software Foundation; either version 2 of the License, or
00008  *  (at your option) any later version.
00009  *
00010  *  $Id: splash.h,v 1.1 2006/01/01 23:43:52 suwalski Exp $
00011  */
00012 
00013 #ifndef GTK_SPLASH_H
00014 #define GTK_SPLASH_H
00015 
00016 #include "common.h"
00017 
00018 
00019 typedef struct _SplashData SplashData;
00020 
00021 /* This class overrides the ProgressNotifier to receive splash event updates
00022  * from the core. */
00023 class GtkSplashProgressNotifier : public ProgressNotifier
00024 {
00025         public:
00026                 GtkSplashProgressNotifier(SplashData* _splash);
00027                 virtual ~GtkSplashProgressNotifier();
00028 
00029                 virtual void update(const string& filename);
00030 
00031         private:
00032                 SplashData* splash;
00033 };
00034 
00035 /* Struct holds all information relevant to the splash screen. */
00036 struct _SplashData {
00037         AppData* app;
00038         
00039         GtkWidget* splash;
00040         GtkWidget* label;
00041 
00042         GtkSplashProgressNotifier* notifier;
00043 
00044         gboolean hasARGB;
00045         gboolean redraw;
00046 };
00047 
00048 
00049 /* Entry Functions */
00050 SplashData* splashStart(AppData* app, gboolean showSplash);
00051 void splashEnd(SplashData* ss);
00052 void splashSetText(SplashData* ss, const char* text);
00053 
00054 
00055 #endif /* GTK_SPLASH_H */

Generated on Sat Jan 14 22:30:30 2006 for Celestia by  doxygen 1.4.1