Main Page Namespace List Class Hierarchy Compound List File List Namespace Members Compound Members File Members Related Pages

# LayoutManager.h

Go to the documentation of this file.

    00001
    00002
    00003
    00004 #ifndef LAYOUTMANAGER_H
    00005 #define LAYOUTMANAGER_H
    00006
    00007 #include "Control.h"
    00008 #include "Layout.h"
    00009 #include <vector>
    00010
    00011 namespace wkgl {
    00012
    00013 typedef RECT (*LAYOUTFUNC)(Control**, int, LAYOUT_INFO );
    00014
    00024 class LayoutManager : public Control
    00025 {
    00026   protected:
    00027     std::vector <Control*> comps;
    00028     LAYOUT_INFO info;
    00029     RECT area;
    00030
    00032     LAYOUTFUNC layoutf;
    00033
    00034   public:
    00038     LayoutManager( Control *parent, LAYOUT_INFO linfo,
    00039                    LAYOUTFUNC l = NULL );
    00040
    00044     virtual RECT layout();
    00045
    00049     virtual void add( Control* com );
    00050
    00054     virtual void setLayout( LAYOUTFUNC l );
    00055
    00059     virtual void setLayoutInfo( LAYOUT_INFO info );
    00060
    00064     virtual LAYOUT_INFO getLayoutInfo();
    00065
    00069     virtual RECT getPaintArea();
    00070
    00074     virtual int getWidth();
    00075
    00079     virtual int getHeight();
    00080
    00084     virtual void setPosition( int x, int y );
    00085
    00088     virtual BOOL create( Control* parent ) { layout(); return TRUE; }
    00089 };
    00090 }
    00091 #endif