win.h

Go to the documentation of this file.
00001 
00046 /*#*
00047  *#* $Log$
00048  *#* Revision 1.3  2006/07/19 12:56:27  bernie
00049  *#* Convert to new Doxygen style.
00050  *#*
00051  *#* Revision 1.2  2006/01/26 00:36:48  bernie
00052  *#* Const correctness for some new functions.
00053  *#*
00054  *#* Revision 1.1  2006/01/23 23:14:29  bernie
00055  *#* Implement simple, but impressive windowing system.
00056  *#*
00057  *#*/
00058 
00059 #ifndef GFX_WIN_H
00060 #define GFX_WIN_H
00061 
00062 #include <mware/list.h> /* Node, List */
00063 #include <gfx/gfx.h>    /* coord_t */
00064 
00065 
00066 EXTERN_C_BEGIN
00067 
00088 typedef struct Window
00089 {
00090     Node    link;      
00091     struct Window *parent;  
00093     Bitmap *bitmap;    
00094     Rect    geom;      
00101     List    children;
00102 
00103 } Window;
00104 
00105 /*
00106  * Public function prototypes
00107  */
00108 void win_compose(Window *w);
00109 void win_open(Window *w, Window *parent);
00110 void win_close(Window *w);
00111 void win_raise(Window *w);
00112 void win_setGeometry(Window *w, const Rect *new_geom);
00113 void win_move(Window *w, coord_t left, coord_t top);
00114 void win_resize(Window *w, coord_t width, coord_t height);
00115 void win_create(Window *w, Bitmap *bm);
00116 
00117 EXTERN_C_END
00118 
00119 #endif /* GFX_WIN_H */
00120