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

update.hpp

00001 /* ==================================================== ======== ======= *
00002  *
00003  *  update.hh : graphics update
00004  *  Ubit Project  [Elc][2003]
00005  *  Author: Eric Lecolinet
00006  *
00007  *  Part of the Ubit Toolkit: A Brick Construction Game Model for Creating GUIs
00008  *
00009  *  (C) 1999-2003 Eric Lecolinet @ ENST Paris
00010  *  WWW: http://www.enst.fr/~elc/ubit   Email: elc@enst.fr (subject: ubit)
00011  *
00012  * ***********************************************************************
00013  * COPYRIGHT NOTICE : 
00014  * THIS PROGRAM IS DISTRIBUTED WITHOUT ANY WARRANTY AND WITHOUT EVEN THE 
00015  * IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 
00016  * YOU CAN REDISTRIBUTE IT AND/OR MODIFY IT UNDER THE TERMS OF THE GNU 
00017  * GENERAL PUBLIC LICENSE AS PUBLISHED BY THE FREE SOFTWARE FOUNDATION; 
00018  * EITHER VERSION 2 OF THE LICENSE, OR (AT YOUR OPTION) ANY LATER VERSION.
00019  * SEE FILES 'COPYRIGHT' AND 'COPYING' FOR MORE DETAILS.
00020  * ***********************************************************************
00021  *
00022  * ==================================================== [Elc:03] ======= *
00023  * ==================================================== ======== ======= */
00024 
00025 #ifndef _update_hh
00026 #define _update_hh
00027 //pragma ident  "@(#)update.hh  ubit:03.02.0"
00028 
00054 class UUpdate {
00055   friend class UBox;
00056   friend class UWin;
00057   friend class USoftwinImpl;
00058   friend class UHardwinImpl;
00059 public:
00060   enum Mode {
00061     ALL,
00062     LAYOUT,
00063     PAINT,
00064     MOVE, 
00065     SCROLL, 
00066     SHOW, 
00067     HIDE, 
00068     TITLE
00069   };
00070   static const UUpdate layout;  
00071   static const UUpdate paint;   
00072   static const UUpdate all;     
00073 
00074   UUpdate(Mode = ALL);
00076 
00077   void layoutIfNotShown(bool = true);
00079 
00080   void paintDoubleBuffered(bool = true);
00082 
00083   void paintElem(const UElem*);
00085 
00086   void paintStr(const UStr*, int strpos1, int strpos2); 
00088 
00089   void paintRegion(const URegion*);
00091 
00092   void paintTitle(const UStr*); 
00094 
00095   void setOffset(u_pos delta_x, u_pos delta_y);
00097 
00098 private:
00099   Mode ix;
00100   bool always, doublebuf;
00101   u_pos delta_x, delta_y;
00102   const URegion* region;
00103   const UElem* elem;
00104 };
00105 
00106 #endif
00107 /* ==================================================== [TheEnd] ======= */
00108 /* ==================================================== [Elc:03] ======= */

Generated on Thu May 19 11:39:59 2005 for Ubit[Eric.Lecolinet@enst.fr] by  doxygen 1.4.2