Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

/home/jeroen/FOX/fox/fox-1.7.33/include/FXSplashWindow.h
00001 /********************************************************************************
00002 *                                                                               *
00003 *                            S p l a s h    W i n d o w                         *
00004 *                                                                               *
00005 *********************************************************************************
00006 * Copyright (C) 2004,2012 by Jeroen van der Zijp.   All Rights Reserved.        *
00007 *********************************************************************************
00008 * This library is free software; you can redistribute it and/or modify          *
00009 * it under the terms of the GNU Lesser General Public License as published by   *
00010 * the Free Software Foundation; either version 3 of the License, or             *
00011 * (at your option) any later version.                                           *
00012 *                                                                               *
00013 * This library is distributed in the hope that it will be useful,               *
00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of                *
00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                 *
00016 * GNU Lesser General Public License for more details.                           *
00017 *                                                                               *
00018 * You should have received a copy of the GNU Lesser General Public License      *
00019 * along with this program.  If not, see <http://www.gnu.org/licenses/>          *
00020 ********************************************************************************/
00021 #ifndef FXSPLASHWINDOW_H
00022 #define FXSPLASHWINDOW_H
00023 
00024 #ifndef FXTOPWINDOW_H
00025 #include "FXTopWindow.h"
00026 #endif
00027 
00028 namespace FX {
00029 
00030 
00032 enum {
00033   SPLASH_SIMPLE    = 0,                 
00034   SPLASH_SHAPED    = 0x02000000,        
00035   SPLASH_OWNS_ICON = 0x04000000,        
00036   SPLASH_DESTROY   = 0x08000000         
00037   };
00038 
00039 
00046 class FXAPI FXSplashWindow : public FXTopWindow {
00047   FXDECLARE(FXSplashWindow)
00048 protected:
00049   FXIcon *icon;         // Really big icon
00050   FXTime  delay;        // Delay before hiding
00051 protected:
00052   FXSplashWindow();
00053 private:
00054   FXSplashWindow(const FXSplashWindow&);
00055   FXSplashWindow &operator=(const FXSplashWindow&);
00056 public:
00057   long onPaint(FXObject*,FXSelector,void*);
00058 public:
00059 
00066   FXSplashWindow(FXApp* ap,FXIcon* ic,FXuint opts=SPLASH_SIMPLE,FXTime ns=2000000000);
00067 
00074   FXSplashWindow(FXWindow* ow,FXIcon* ic,FXuint opts=SPLASH_SIMPLE,FXTime ns=2000000000);
00075 
00077   virtual void create();
00078 
00080   virtual void detach();
00081 
00083   virtual void show();
00084 
00086   virtual void show(FXuint placement);
00087 
00089   virtual void hide();
00090 
00092   virtual FXint getDefaultWidth();
00093 
00095   virtual FXint getDefaultHeight();
00096 
00098   void setIcon(FXIcon* ic);
00099 
00101   FXIcon* getIcon() const { return icon; }
00102 
00104   void setDelay(FXTime ns);
00105 
00107   FXTime getDelay() const { return delay; }
00108 
00110   virtual void save(FXStream& store) const;
00111 
00113   virtual void load(FXStream& store);
00114 
00116   virtual ~FXSplashWindow();
00117   };
00118 
00119 }
00120 
00121 #endif

Copyright © 1997-2011 Jeroen van der Zijp