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

uwinImpl.hpp

00001 /* ==================================================== ======== ======= * 00002 * 00003 * uwinImpl.hh [Window Implementation] 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 _uwinImpl_hh 00026 #define _uwinImpl_hh 00027 //pragma ident "@(#)uwin.hh ubit:03.04.00" 00028 #include <ubit/uprop.hpp> 00029 #include <ubit/ugraph.hpp> 00030 00031 /* ==================================================== ======== ======= */ 00032 00033 class USoftwinImpl { 00034 friend class UWin; 00035 friend class UHardwinImpl; 00036 00037 UPos pos; 00038 UView* current_winview; 00039 00040 public: 00041 USoftwinImpl(class UWin&); 00042 ~USoftwinImpl(); 00043 00044 void update(const class UUpdate& upmode, class UWin*, class UView* winview); 00045 }; 00046 00047 /* ==================================================== ======== ======= */ 00048 00049 class UHardwinImpl { 00050 friend class UWin; 00051 friend class USoftwinImpl; 00052 00053 class UWinGraph& wingraph; 00054 class ULink* sub_softwins; 00055 00056 public: 00057 UHardwinImpl(class UWin&); 00058 ~UHardwinImpl(); 00059 00060 class UWinGraph* getWinGraph() const {return &wingraph;} 00061 class UNatWin* getNatWin() const {return wingraph.getNatWin();} 00062 00063 class ULink* getSoftwinLink() const {return sub_softwins;} 00064 class UGroup* getSoftwins() const; 00065 void removeSoftwin(UWin* softwin); 00066 void addSoftwin(UWin* softwin, UWin* hardwin, UView* hardwin_view); 00067 00068 void update(const class UUpdate &mode, class UWin*, class UView* winview); 00069 void updateImpl(const class UUpdate& upmode, class UWin*, 00070 class UView* winview, bool impose_size, u_dim w, u_dim h); 00071 }; 00072 00073 #endif 00074 /* ==================================================== [TheEnd] ======= */ 00075 /* ==================================================== [Elc:03] ======= */ 00076

Generated on Fri Aug 13 12:12:14 2004 for Ubit[Eric.Lecolinet@enst.fr] by doxygen 1.3.7