diff --git a/include/Gewi.h b/include/Gewi.h new file mode 100755 index 0000000..99805d3 --- /dev/null +++ b/include/Gewi.h @@ -0,0 +1,64 @@ +/*! + \file Gewi.h + \brief Header file for Gewi. + + Header file for the Gewi GUI lib, an addon for the ZEngine Game Engine, both from Concept of Zero, this is the + file that programs that wish to use should include. +
$Id: Gewi.h,v 1.1 2003/06/07 05:42:08 cozman Exp $
+ \author James Turk +**/ + +/*! + \mainpage Gewi Documentation + + \author James Turk + \version 0.2.0 + \date June 7th, 2003 + + \section Gewi About ZEngine and Gewi +
+     -ZEngine is designed to provide a powerful yet easy to use 2D game engine in a well designed + Object Oriented manner, and uses cross platform libraries such as SDL and OpenGL. (ZEngine can use SDL_ttf,SDL_image, + SDL_mixer, and PhysFS all of which are cross platform as well as Open Source.) Gewi sits neatly on top of ZEngine and + is written in much the same style, Gewi is designed to be the GUI portion of ZEngine but grew so large it needed to become + a seperate project.
+     -Both are licensed under a BSD-style license, and anyone is free to suggest or implement changes + to be added to either, as well as modify ZEngine or Gewi to fit their own needs or use it however they like.
+     -Because Gewi relys so heavily on ZEngine it has no website, if anybody writes a version of Gewi + that does not use the ZEngine backend I'd be glad to see it and even integrate it with the ZEngine/Gewi source. Until + there is some other version, Gewi will always be found right next to ZEngine.
+     -The Gewi website : http://zengine.sourceforge.net/gewi/.
+     -The ZEngine website : http://zengine.sourceforge.net/.
+     -The ZEngine tutorials : http://conceptofzero.net/tutorials/zengine/.
+     -The ZEngine forums : http://www.conceptofzero.net/forums/index.php?act=SF&f=15 + + \section Licensing Licensing +
+
            This file is Part of the Gewi GUI Library for ZEngine.
+             Gewi and ZEngine Copyright (C) 2002, 2003 James Turk
+
+            Licensed under a BSD-style license. (see licensing.txt)
+
+    The maintainer of this library is James Turk (james@conceptofzero.net) 
+  this library is found at the home of ZEngine http://zengine.sourceforge.net
+    
+ \section Authors Contributing Authors +
+ James Turk james@conceptofzero.net - Core Engine, Design, Docs, and Classes
+**/ + +#ifndef __gewi_h__ +#define __gewi_h__ + +#include "GewiIncludes.h" +#include "GewiDefines.h" +#include "GewiContainer.h" +#include "GewiButton.h" +#include "GewiEngine.h" +#include "GewiSlider.h" +#include "GewiStaticText.h" +#include "GewiTextButton.h" +#include "GewiTextField.h" +#include "GewiWindow.h" + +#endif //__zengine_h__ diff --git a/include/GewiDefines.h b/include/GewiDefines.h new file mode 100755 index 0000000..5a1c0d8 --- /dev/null +++ b/include/GewiDefines.h @@ -0,0 +1,67 @@ +/******************************************************************************* + This file is Part of the Gewi GUI Library for ZEngine. + Gewi and ZEngine Copyright (C) 2002, 2003 James Turk + + Licensed under a BSD-style license. (see licensing.txt) + + The maintainer of this library is James Turk (james@conceptofzero.net) + this library is found at the home of ZEngine http://zengine.sourceforge.net +*******************************************************************************/ + +/*! + \file GewiDefines.h + \brief Define file for Gewi where enumerations, typedefs and #define statements are placed. + + Definition file, holds enumerations and typedefs which need to be accessed by many files within Gewi. +
$id$
+ \author James Turk +**/ + +#ifndef __gewidefines_h__ +#define __gewidefines_h__ + +namespace Gewi +{ + +//! Resources are stored centrally and widgets access them by their ResourceID. +typedef unsigned int ResourceID; +//! GewiJustify is a hack so that members of the _GewiJustify enum can be or'ed (|) together. +typedef unsigned int GewiJustify; + +/*! + \brief Enumeration for basic events that a widget can handle. + + Defines names for specific events that are filtered and given to widgets. +**/ +enum GewiEvent +{ + GE_LDOWN, /*!< Left mouse button pressed event. */ + GE_LUP, /*!< Left mouse button released event. */ + GE_RDOWN, /*!< Right mouse button pressed event. */ + GE_RUP, /*!< Right mouse button released event. */ + GE_KDOWN, /*!< Key pressed. */ + GE_KUP, /*!< Key released. */ + GE_GOTFOCUS, /*!< Widget got focus. */ + GE_LOSTFOCUS /*!< Widget lost focus. */ +}; + +/*! + \brief Describess justification options in text buttons and static fields. + + Justification options in text buttons and static fields, these values can be or'ed + together via the typedef GewiJustify. For example GJ_LEFT|GJ_TOP would position the + label in the upper left corner. GJ_RIGHT|GJ_CENTER would be in the vertical center of + the box, yet justified to the right on the horizontal axis. +**/ +enum _GewiJustify +{ + GJ_CENTER = 0, /*!< Center text. */ + GJ_LEFT = 1<<0, /*!< Align text to the left. */ + GJ_RIGHT = 1<<1, /*!< Align text to the right. */ + GJ_TOP = 1<<2, /*!< Position text to the top. */ + GJ_BOTTOM = 1<<3 /*!< Position text to the bottom. */ +}; + +}; + +#endif //__gewidefines_h__ \ No newline at end of file