00001 /******************************************************************************* 00002 This file is Part of the Gewi GUI Library for ZEngine. 00003 Gewi and ZEngine Copyright (C) 2002, 2003 James Turk 00004 00005 Licensed under a BSD-style license. (see licensing.txt) 00006 00007 The maintainer of this library is James Turk (james@conceptofzero.net) 00008 this library is found at the home of ZEngine http://zengine.sourceforge.net 00009 *******************************************************************************/ 00010 00020 #ifndef __gewicontainer_h__ 00021 #define __gewicontainer_h__ 00022 00023 #include "GewiIncludes.h" 00024 #include "GewiWidgetList.h" 00025 #include "GewiWidget.h" 00026 00027 namespace Gewi 00028 { 00029 00035 class GContainer : public GWidget 00036 { 00043 friend class Gewi::GWidget; 00044 00045 protected: 00047 WidgetList rChildList; 00048 00055 void AddChild(GWidget *widget); 00056 00063 void ReleaseChild(GWidget *widget); 00064 00071 void InsertWidget(WidgetNode *node); 00072 00073 public: 00080 GContainer(GContainer *parent=NULL); 00081 00082 ~GContainer(); 00083 00091 virtual void Move(float x, float y); 00092 00103 virtual void Message(SDL_Event *rawEvent, GewiEvent event, Uint16 mouseX, Uint16 mouseY, char ch); 00104 00110 virtual void Show(); 00111 }; 00112 00113 } 00114 00115 #endif //__gewicontainer_h__