30 #ifndef _CEGUIGridLayoutContainer_h_
31 #define _CEGUIGridLayoutContainer_h_
33 #include "CEGUILayoutContainer.h"
34 #include "../CEGUIWindowFactory.h"
35 #include "CEGUIGridLayoutContainerProperties.h"
38 # pragma warning(push)
39 # pragma warning(disable : 4251)
115 void setGridDimensions(
size_t width,
size_t height);
121 size_t getGridWidth()
const;
127 size_t getGridHeight()
const;
150 void setNextAutoPositioningIdx(
size_t idx);
157 size_t getNextAutoPositioningIdx()
const;
163 void autoPositioningSkipCells(
size_t cells);
182 void addChildWindowToPosition(
Window* window,
size_t gridX,
size_t gridY);
201 void addChildWindowToPosition(
const String& name,
size_t gridX,
size_t gridY);
207 Window* getChildWindowAtPosition(
size_t gridX,
size_t gridY);
216 void removeChildWindowFromPosition(
size_t gridX,
size_t gridY);
225 virtual void swapChildWindowPositions(
size_t wnd1,
size_t wnd2);
231 void swapChildWindowPositions(
size_t gridX1,
size_t gridY1,
232 size_t gridX2,
size_t gridY2);
244 void swapChildWindows(
Window* wnd1,
const String& wnd2);
250 void swapChildWindows(
const String& wnd1,
Window* wnd2);
256 void moveChildWindowToPosition(
Window* wnd,
size_t gridX,
size_t gridY);
262 void moveChildWindowToPosition(
const String& wnd,
263 size_t gridX,
size_t gridY);
266 virtual void layout();
280 size_t mapFromGridToIdx(
size_t gridX,
size_t gridY,
281 size_t gridWidth,
size_t gridHeight)
const;
283 void mapFromIdxToGrid(
size_t idx,
size_t& gridX,
size_t& gridY,
284 size_t gridWidth,
size_t gridHeight)
const;
289 UVector2 getGridCellOffset(
const std::vector<UDim>& colSizes,
290 const std::vector<UDim>& rowSizes,
291 size_t gridX,
size_t gridY)
const;
293 UVector2 getGridSize(
const std::vector<UDim>& colSizes,
294 const std::vector<UDim>& rowSizes)
const;
297 size_t translateAPToGridIdx(
size_t APIdx)
const;
328 bool isDummy(
Window* wnd)
const;
331 virtual void addChild_impl(
Window* wnd);
333 virtual void removeChild_impl(
Window* wnd);
348 if (class_name ==
"GridLayoutContainer")
return true;
360 void addGridLayoutContainerProperties(
void);
365 #if defined(_MSC_VER)
366 # pragma warning(pop)
369 #endif // end of guard _CEGUIGridLayoutContainer_h_
size_t d_nextAutoPositioningIdx
Definition: CEGUIGridLayoutContainer.h:309
Definition: CEGUIGridLayoutContainer.h:66
virtual bool testClassName_impl(const String &class_name) const
Return whether this window was inherited from the given class name at some point in the inheritance h...
Definition: CEGUILayoutContainer.h:117
static const String EventNamespace
Namespace for global events.
Definition: CEGUIGridLayoutContainer.h:91
Definition: CEGUIGridLayoutContainerProperties.h:49
no auto positioning!
Definition: CEGUIGridLayoutContainer.h:60
size_t d_nextDummyIdx
Definition: CEGUIGridLayoutContainer.h:323
virtual bool testClassName_impl(const String &class_name) const
Return whether this window was inherited from the given class name at some point in the inheritance h...
Definition: CEGUIGridLayoutContainer.h:346
An abstract base class providing common functionality and specifying the required interface for deriv...
Definition: CEGUILayoutContainer.h:54
size_t d_gridWidth
stores grid width - amount of columns
Definition: CEGUIGridLayoutContainer.h:300
static const String WidgetTypeName
The unique typename of this widget.
Definition: CEGUIGridLayoutContainer.h:79
A Layout Container window layouting it's children into a grid.
Definition: CEGUIGridLayoutContainer.h:49
size_t d_nextGridY
Definition: CEGUIGridLayoutContainer.h:318
static const String DummyNameSuffix
Widget name suffix for dummies.
Definition: CEGUIGridLayoutContainer.h:85
An abstract base class providing common functionality and specifying the required interface for deriv...
Definition: CEGUIWindow.h:138
Definition: CEGUIGridLayoutContainerProperties.h:64
size_t d_nextGridX
Definition: CEGUIGridLayoutContainer.h:314
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition: CEGUIInputEvent.h:245
AutoPositioning d_autoPositioning
stores currently used auto positioning method
Definition: CEGUIGridLayoutContainer.h:305
AutoPositioning
Definition: CEGUIGridLayoutContainer.h:57
static const String EventChildWindowOrderChanged
fired when child windows get rearranged
Definition: CEGUIGridLayoutContainer.h:94
String class used within the GUI system.
Definition: CEGUIString.h:57
size_t d_gridHeight
stores grid height - amount of rows
Definition: CEGUIGridLayoutContainer.h:302
Two dimensional vector class built using unified dimensions (UDims). The UVector2 class is used for r...
Definition: CEGUIUDim.h:128