10#ifndef GUI_LAYOUT_HELPER__H_
11#define GUI_LAYOUT_HELPER__H_
15#include "eC_TList_doubleLinked.h"
22#define GET_LAYOUT_HELPER #error "please use GUILayouter:: instead"
51 LIST_ALIGN_HORIZONTAL=0,
60 REPOSITION_ALIGN_TOP=0,
61 REPOSITION_ALIGN_BOTTOM,
62 REPOSITION_ALIGN_LEFT,
63 REPOSITION_ALIGN_RIGHT,
64 REPOSITION_ALIGN_INVALID
75 LAYOUT_ALIGN_HORIZONTAL_CENTERED,
76 LAYOUT_ALIGN_VERTICAL_CENTERED,
77 LAYOUT_DISTRIBUTE_HORIZONTALLY,
78 LAYOUT_DISTRIBUTE_VERTICALLY
85 LAYOUT_FLIP_HORIZONTAL,
109 const eC_Value& vRelDistance = eC_FromInt(0));
158 eC_UInt uiColumn, eC_Bool bMakeSameSize);
235 const eC_Value& vSpace);
244 const eC_Value& vSpace);
253 const eC_Value& vAbsXPos);
262 const eC_Value& vAbsYPos);
337 const eC_Value& vBorder,
338 const eC_Value& vGap,
340 const eC_Bool& bResizeParent =
true,
341 const eC_Bool& bDoubleBorder =
true);
354 const eC_Bool& bUnifyItemSize,
This is the Guiliani base class for all composite objects.
Definition: GUICompositeObject.h:70
A collection of methods to help layout a GUI.
Definition: GUILayoutHelper.h:45
static void AlignObjects(eC_TListDoubleLinked< CGUIObject * > &pkAlignedObjs, LayoutAlignment_t eAlignment, const CGUIObject *pkRefObj)
static void DistributeObjects(eC_TListDoubleLinked< CGUIObject * > &pkObjs, eC_Bool bHorizontal, eC_Bool bVertical)
static void AdaptHeight(eC_TListDoubleLinked< CGUIObject * > &pkObjs, CGUIObject *pkRefObj)
static void FlipObject(CGUIObject *pkFlipObj, const LayoutFlip_t &eFlip)
static void RotateObject(CGUIObject *pkRotateObj, const LayoutRotate_t &eRotate)
static CGUIRect GetCurrentAbsRect(const CGUIObject *pkObject)
static void AdaptWidth(CGUIObject *pkObj, const CGUIObject *pkRefObj)
static void ResizeObjects(eC_TListDoubleLinked< CGUIObject * > &pkObjs, const CGUIObject *pkRefObj)
static void AlignObject(CGUIObject *pkAlignedObj, LayoutAlignment_t eAlignment, const CGUIObject *pkRefObj)
static void UseBoundingRectangleOfChildren(CGUICompositeObject *pkParent)
ListAlignment_t
Definition: GUILayoutHelper.h:50
static eC_Value GetCurrentAbsYPos(const CGUIObject *pkObject)
static void RepositionChildren(CGUICompositeObject *pkParent, const eC_Value &vBorder, const eC_Value &vGap, const RepositionAlignment_t &eBasePoint, const eC_Bool &bResizeParent=true, const eC_Bool &bDoubleBorder=true)
static eC_Value GetCurrentAbsXPos(const CGUIObject *pkObject)
static void AdaptWidth(eC_TListDoubleLinked< CGUIObject * > &pkObjs, const CGUIObject *pkRefObj)
static void ResizeObject(CGUIObject *pkObj, const CGUIObject *pkRefObj)
static void SpreadVertically(const CGUICompositeObject *pkParent, const eC_Value &vSpace)
~CGUILayoutHelper()
Destructor.
Definition: GUILayoutHelper.h:98
static void AdaptHeight(CGUIObject *pkObj, CGUIObject *pkRefObj)
static eC_Value GetCurrentAbsYDistance(const CGUIObject *pkObjectAtBottom, const CGUIObject *pkObjectAtTop)
Definition: GUILayoutHelper.h:310
static void MoveToCurrentAbsYPos(CGUIObject *pkObject, const eC_Value &vAbsYPos)
static void SpreadHorizontally(const CGUICompositeObject *pkParent, const eC_Value &vSpace)
static eC_Value GetCurrentAbsXDistance(const CGUIObject *pkObjectOnRight, const CGUIObject *pkObjectOnLeft)
Definition: GUILayoutHelper.h:294
static void AlignChildren(const CGUICompositeObject *pkParent, LayoutAlignment_t eAlignment, const eC_Value &vRelDistance=eC_FromInt(0))
LayoutRotate_t
Definition: GUILayoutHelper.h:92
static void AlignObject(CGUIObject *pkAlignedObj, LayoutAlignment_t eAlignment)
static void ResizeChildren(CGUICompositeObject *pkParent, const eC_Value &vWidthScale, const eC_Value &vHeightScale)
static void MoveToCurrentAbsXPos(CGUIObject *pkObject, const eC_Value &vAbsXPos)
RepositionAlignment_t
Definition: GUILayoutHelper.h:59
LayoutFlip_t
Definition: GUILayoutHelper.h:84
static void AlignToGrid(const CGUICompositeObject *pkParentObj, eC_UInt uiRow, eC_UInt uiColumn, eC_Bool bMakeSameSize)
LayoutAlignment_t
Definition: GUILayoutHelper.h:70
static void AdjustListArrangement(CGUICompositeObject *pkParent, const CGUIRect &kAvailableArea, const eC_Bool &bUnifyItemSize, const ListAlignment_t &eBasePoint)
This is the Guiliani base class all controls are derived from.
Definition: GUIObject.h:81
Helper class to supply a platform independent rectangle implementation.
Definition: GUIRect.h:63