MyGUI
3.2.1
|
00001 /* 00002 * This source file is part of MyGUI. For the latest info, see http://mygui.info/ 00003 * Distributed under the MIT License 00004 * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT) 00005 */ 00006 00007 #ifndef __MYGUI_LAYOUT_DATA_H__ 00008 #define __MYGUI_LAYOUT_DATA_H__ 00009 00010 #include "MyGUI_Prerequest.h" 00011 #include "MyGUI_Common.h" 00012 00013 namespace MyGUI 00014 { 00015 00016 struct MYGUI_EXPORT ControllerInfo 00017 { 00018 std::string type; 00019 MapString properties; 00020 }; 00021 00022 struct MYGUI_EXPORT WidgetInfo 00023 { 00024 public: 00025 WidgetInfo() : 00026 align(Align::Default), 00027 style(WidgetStyle::Child), 00028 positionType(None) 00029 { 00030 } 00031 00032 public: 00033 std::vector<WidgetInfo> childWidgetsInfo; 00034 // not map because there might be several properties with same name (for example List items) 00035 VectorStringPairs properties; 00036 MapString userStrings; 00037 std::vector<ControllerInfo> controllers; 00038 std::string type; 00039 std::string skin; 00040 Align align; 00041 WidgetStyle style; 00042 std::string name; 00043 std::string layer; 00044 00045 enum PositionType { Pixels, Relative, None }; 00046 PositionType positionType; 00047 IntCoord intCoord; 00048 FloatCoord floatCoord; 00049 }; 00050 00051 typedef std::vector<WidgetInfo> VectorWidgetInfo; 00052 00053 } // namespace MyGUI 00054 00055 #endif // __MYGUI_LAYOUT_DATA_H__