]> git.sesse.net Git - vlc/blobdiff - modules/gui/skins2/parser/builder_data.hpp
skins2: implement art display in image controls
[vlc] / modules / gui / skins2 / parser / builder_data.hpp
index 4c893e7fda5d76c7051b3a5ed0e791c48de423aa..f9d0cebd3cbd5e97b6d05a1fdf78ac2e5b61c3ab 100644 (file)
@@ -1,11 +1,11 @@
 /*****************************************************************************
  * builder_data.hpp
  *****************************************************************************
- * Copyright (C) 2003 VideoLAN
+ * Copyright (C) 2003 the VideoLAN team
  * $Id$
  *
  * Authors: Cyril Deguet     <asmax@via.ecp.fr>
- *          Olivier Teuliรจre <ipkiss@via.ecp.fr>
+ *          Olivier Teuliere <ipkiss@via.ecp.fr>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,7 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
  *****************************************************************************/
 
 //File generated by gen_builder.py
@@ -28,7 +28,7 @@
 #ifndef BUILDER_DATA_HPP
 #define BUILDER_DATA_HPP
 
-#include <vlc/vlc.h>
+#include <vlc_common.h>
 #include <list>
 #include <map>
 #include <string>
@@ -42,13 +42,13 @@ struct BuilderData
     /// Type definition
     struct Theme
     {
-        Theme( int magnet, uint32_t alpha, uint32_t moveAlpha, uint32_t fadeTime ):
-m_magnet( magnet ), m_alpha( alpha ), m_moveAlpha( moveAlpha ), m_fadeTime( fadeTime ) {}
+        Theme( const string & tooltipfont, int magnet, uint32_t alpha, uint32_t moveAlpha ):
+m_tooltipfont( tooltipfont ), m_magnet( magnet ), m_alpha( alpha ), m_moveAlpha( moveAlpha ) {}
 
+        string m_tooltipfont;
         int m_magnet;
         uint32_t m_alpha;
         uint32_t m_moveAlpha;
-        uint32_t m_fadeTime;
     };
     /// List
     list<Theme> m_listTheme;
@@ -56,36 +56,108 @@ m_magnet( magnet ), m_alpha( alpha ), m_moveAlpha( moveAlpha ), m_fadeTime( fade
     /// Type definition
     struct Bitmap
     {
-        Bitmap( const string & id, const string & fileName, uint32_t alphaColor ):
-m_id( id ), m_fileName( fileName ), m_alphaColor( alphaColor ) {}
+        Bitmap( const string & id, const string & fileName, uint32_t alphaColor, int nbFrames, int fps, int nbLoops ):
+m_id( id ), m_fileName( fileName ), m_alphaColor( alphaColor ), m_nbFrames( nbFrames ), m_fps( fps ), m_nbLoops( nbLoops ) {}
 
-        const string m_id;
-        const string m_fileName;
+        string m_id;
+        string m_fileName;
         uint32_t m_alphaColor;
+        int m_nbFrames;
+        int m_fps;
+        int m_nbLoops;
     };
     /// List
     list<Bitmap> m_listBitmap;
 
+    /// Type definition
+    struct SubBitmap
+    {
+        SubBitmap( const string & id, const string & parent, int x, int y, int width, int height, int nbFrames, int fps, int nbLoops ):
+m_id( id ), m_parent( parent ), m_x( x ), m_y( y ), m_width( width ), m_height( height ), m_nbFrames( nbFrames ), m_fps( fps ), m_nbLoops( nbLoops ) {}
+
+        string m_id;
+        string m_parent;
+        int m_x;
+        int m_y;
+        int m_width;
+        int m_height;
+        int m_nbFrames;
+        int m_fps;
+        int m_nbLoops;
+    };
+    /// List
+    list<SubBitmap> m_listSubBitmap;
+
+    /// Type definition
+    struct BitmapFont
+    {
+        BitmapFont( const string & id, const string & file, const string & type ):
+m_id( id ), m_file( file ), m_type( type ) {}
+
+        string m_id;
+        string m_file;
+        string m_type;
+    };
+    /// List
+    list<BitmapFont> m_listBitmapFont;
+
     /// Type definition
     struct Font
     {
-        Font( const string & id, const string & fontName, int size ):
-m_id( id ), m_fontName( fontName ), m_size( size ) {}
+        Font( const string & id, const string & fontFile, int size ):
+m_id( id ), m_fontFile( fontFile ), m_size( size ) {}
 
-        const string m_id;
-        const string m_fontName;
+        string m_id;
+        string m_fontFile;
         int m_size;
     };
     /// List
     list<Font> m_listFont;
 
+    /// Type definition
+    struct PopupMenu
+    {
+        PopupMenu( const string & id ):
+m_id( id ) {}
+
+        string m_id;
+    };
+    /// List
+    list<PopupMenu> m_listPopupMenu;
+
+    /// Type definition
+    struct MenuItem
+    {
+        MenuItem( const string & label, const string & action, int pos, const string & popupId ):
+m_label( label ), m_action( action ), m_pos( pos ), m_popupId( popupId ) {}
+
+        string m_label;
+        string m_action;
+        int m_pos;
+        string m_popupId;
+    };
+    /// List
+    list<MenuItem> m_listMenuItem;
+
+    /// Type definition
+    struct MenuSeparator
+    {
+        MenuSeparator( int pos, const string & popupId ):
+m_pos( pos ), m_popupId( popupId ) {}
+
+        int m_pos;
+        string m_popupId;
+    };
+    /// List
+    list<MenuSeparator> m_listMenuSeparator;
+
     /// Type definition
     struct Window
     {
         Window( const string & id, int xPos, int yPos, bool visible, bool dragDrop, bool playOnDrop ):
 m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_visible( visible ), m_dragDrop( dragDrop ), m_playOnDrop( playOnDrop ) {}
 
-        const string m_id;
+        string m_id;
         int m_xPos;
         int m_yPos;
         bool m_visible;
@@ -101,14 +173,14 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_visible( visible ), m_dragDrop( dr
         Layout( const string & id, int width, int height, int minWidth, int maxWidth, int minHeight, int maxHeight, const string & windowId ):
 m_id( id ), m_width( width ), m_height( height ), m_minWidth( minWidth ), m_maxWidth( maxWidth ), m_minHeight( minHeight ), m_maxHeight( maxHeight ), m_windowId( windowId ) {}
 
-        const string m_id;
+        string m_id;
         int m_width;
         int m_height;
         int m_minWidth;
         int m_maxWidth;
         int m_minHeight;
         int m_maxHeight;
-        const string m_windowId;
+        string m_windowId;
     };
     /// List
     list<Layout> m_listLayout;
@@ -116,15 +188,16 @@ m_id( id ), m_width( width ), m_height( height ), m_minWidth( minWidth ), m_maxW
     /// Type definition
     struct Anchor
     {
-        Anchor( int xPos, int yPos, int range, int priority, const string & points, const string & windowId ):
-m_xPos( xPos ), m_yPos( yPos ), m_range( range ), m_priority( priority ), m_points( points ), m_windowId( windowId ) {}
+        Anchor( int xPos, int yPos, const string & leftTop, int range, int priority, const string & points, const string & layoutId ):
+m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_range( range ), m_priority( priority ), m_points( points ), m_layoutId( layoutId ) {}
 
         int m_xPos;
         int m_yPos;
+        string m_leftTop;
         int m_range;
         int m_priority;
-        const string m_points;
-        const string m_windowId;
+        string m_points;
+        string m_layoutId;
     };
     /// List
     list<Anchor> m_listAnchor;
@@ -132,23 +205,27 @@ m_xPos( xPos ), m_yPos( yPos ), m_range( range ), m_priority( priority ), m_poin
     /// Type definition
     struct Button
     {
-        Button( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, const string & upId, const string & downId, const string & overId, const string & actionId, const string & tooltip, const string & help, int layer, const string & windowId, const string & layoutId ):
-m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_upId( upId ), m_downId( downId ), m_overId( overId ), m_actionId( actionId ), m_tooltip( tooltip ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {}
+        Button( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & visible, const string & upId, const string & downId, const string & overId, const string & actionId, const string & tooltip, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_visible( visible ), m_upId( upId ), m_downId( downId ), m_overId( overId ), m_actionId( actionId ), m_tooltip( tooltip ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
 
-        const string m_id;
+        string m_id;
         int m_xPos;
         int m_yPos;
-        const string m_leftTop;
-        const string m_rightBottom;
-        const string m_upId;
-        const string m_downId;
-        const string m_overId;
-        const string m_actionId;
-        const string m_tooltip;
-        const string m_help;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_visible;
+        string m_upId;
+        string m_downId;
+        string m_overId;
+        string m_actionId;
+        string m_tooltip;
+        string m_help;
         int m_layer;
-        const string m_windowId;
-        const string m_layoutId;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
     };
     /// List
     list<Button> m_listButton;
@@ -156,29 +233,33 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom(
     /// Type definition
     struct Checkbox
     {
-        Checkbox( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, const string & up1Id, const string & down1Id, const string & over1Id, const string & up2Id, const string & down2Id, const string & over2Id, const string & state, const string & action1, const string & action2, const string & tooltip1, const string & tooltip2, const string & help, int layer, const string & windowId, const string & layoutId ):
-m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_up1Id( up1Id ), m_down1Id( down1Id ), m_over1Id( over1Id ), m_up2Id( up2Id ), m_down2Id( down2Id ), m_over2Id( over2Id ), m_state( state ), m_action1( action1 ), m_action2( action2 ), m_tooltip1( tooltip1 ), m_tooltip2( tooltip2 ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {}
+        Checkbox( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & visible, const string & up1Id, const string & down1Id, const string & over1Id, const string & up2Id, const string & down2Id, const string & over2Id, const string & state, const string & action1, const string & action2, const string & tooltip1, const string & tooltip2, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_visible( visible ), m_up1Id( up1Id ), m_down1Id( down1Id ), m_over1Id( over1Id ), m_up2Id( up2Id ), m_down2Id( down2Id ), m_over2Id( over2Id ), m_state( state ), m_action1( action1 ), m_action2( action2 ), m_tooltip1( tooltip1 ), m_tooltip2( tooltip2 ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
 
-        const string m_id;
+        string m_id;
         int m_xPos;
         int m_yPos;
-        const string m_leftTop;
-        const string m_rightBottom;
-        const string m_up1Id;
-        const string m_down1Id;
-        const string m_over1Id;
-        const string m_up2Id;
-        const string m_down2Id;
-        const string m_over2Id;
-        const string m_state;
-        const string m_action1;
-        const string m_action2;
-        const string m_tooltip1;
-        const string m_tooltip2;
-        const string m_help;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_visible;
+        string m_up1Id;
+        string m_down1Id;
+        string m_over1Id;
+        string m_up2Id;
+        string m_down2Id;
+        string m_over2Id;
+        string m_state;
+        string m_action1;
+        string m_action2;
+        string m_tooltip1;
+        string m_tooltip2;
+        string m_help;
         int m_layer;
-        const string m_windowId;
-        const string m_layoutId;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
     };
     /// List
     list<Checkbox> m_listCheckbox;
@@ -186,42 +267,91 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom(
     /// Type definition
     struct Image
     {
-        Image( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, bool visible, const string & bmpId, const string & actionId, const string & help, int layer, const string & windowId, const string & layoutId ):
-m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_visible( visible ), m_bmpId( bmpId ), m_actionId( actionId ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {}
+        Image( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & visible, const string & bmpId, const string & actionId, const string & action2Id, const string & resize, const string & help, bool art, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_visible( visible ), m_bmpId( bmpId ), m_actionId( actionId ), m_action2Id( action2Id ), m_resize( resize ), m_help( help ), m_art( art ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
 
-        const string m_id;
+        string m_id;
         int m_xPos;
         int m_yPos;
-        const string m_leftTop;
-        const string m_rightBottom;
-        bool m_visible;
-        const string m_bmpId;
-        const string m_actionId;
-        const string m_help;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_visible;
+        string m_bmpId;
+        string m_actionId;
+        string m_action2Id;
+        string m_resize;
+        string m_help;
+        bool   m_art;
         int m_layer;
-        const string m_windowId;
-        const string m_layoutId;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
     };
     /// List
     list<Image> m_listImage;
 
+    /// Type definition
+    struct IniFile
+    {
+        IniFile( const string & id, const string & file ):
+m_id( id ), m_file( file ) {}
+
+        string m_id;
+        string m_file;
+    };
+    /// List
+    list<IniFile> m_listIniFile;
+
+    /// Type definition
+    struct Panel
+    {
+        Panel( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, int width, int height, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_width( width ), m_height( height ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
+
+        string m_id;
+        int m_xPos;
+        int m_yPos;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        int m_width;
+        int m_height;
+        int m_layer;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
+    };
+    /// List
+    list<Panel> m_listPanel;
+
     /// Type definition
     struct Text
     {
-        Text( const string & id, int xPos, int yPos, const string & fontId, const string & text, int width, uint32_t color, const string & help, int layer, const string & windowId, const string & layoutId ):
-m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_fontId( fontId ), m_text( text ), m_width( width ), m_color( color ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {}
+        Text( const string & id, int xPos, int yPos, const string & visible, const string & fontId, const string & text, int width, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, uint32_t color, const string & scrolling, const string & alignment, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_visible( visible ), m_fontId( fontId ), m_text( text ), m_width( width ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_color( color ), m_scrolling( scrolling ), m_alignment( alignment ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
 
-        const string m_id;
+        string m_id;
         int m_xPos;
         int m_yPos;
-        const string m_fontId;
-        const string m_text;
+        string m_visible;
+        string m_fontId;
+        string m_text;
         int m_width;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
         uint32_t m_color;
-        const string m_help;
+        string m_scrolling;
+        string m_alignment;
+        string m_help;
         int m_layer;
-        const string m_windowId;
-        const string m_layoutId;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
     };
     /// List
     list<Text> m_listText;
@@ -229,25 +359,28 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_fontId( fontId ), m_text( text ),
     /// Type definition
     struct RadialSlider
     {
-        RadialSlider( const string & id, const string & visible, int xPos, int yPos, const string & leftTop, const string & rightBottom, const string & sequence, int nbImages, float minAngle, float maxAngle, const string & value, const string & tooltip, const string & help, int layer, const string & windowId, const string & layoutId ):
-m_id( id ), m_visible( visible ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_sequence( sequence ), m_nbImages( nbImages ), m_minAngle( minAngle ), m_maxAngle( maxAngle ), m_value( value ), m_tooltip( tooltip ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {}
+        RadialSlider( const string & id, const string & visible, int xPos, int yPos, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & sequence, int nbImages, float minAngle, float maxAngle, const string & value, const string & tooltip, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_visible( visible ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_sequence( sequence ), m_nbImages( nbImages ), m_minAngle( minAngle ), m_maxAngle( maxAngle ), m_value( value ), m_tooltip( tooltip ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
 
-        const string m_id;
-        const string m_visible;
+        string m_id;
+        string m_visible;
         int m_xPos;
         int m_yPos;
-        const string m_leftTop;
-        const string m_rightBottom;
-        const string m_sequence;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_sequence;
         int m_nbImages;
         float m_minAngle;
         float m_maxAngle;
-        const string m_value;
-        const string m_tooltip;
-        const string m_help;
+        string m_value;
+        string m_tooltip;
+        string m_help;
         int m_layer;
-        const string m_windowId;
-        const string m_layoutId;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
     };
     /// List
     list<RadialSlider> m_listRadialSlider;
@@ -255,26 +388,34 @@ m_id( id ), m_visible( visible ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( lef
     /// Type definition
     struct Slider
     {
-        Slider( const string & id, const string & visible, int xPos, int yPos, const string & leftTop, const string & rightBottom, const string & upId, const string & downId, const string & overId, const string & points, int thickness, const string & value, const string & tooltip, const string & help, int layer, const string & windowId, const string & layoutId ):
-m_id( id ), m_visible( visible ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_upId( upId ), m_downId( downId ), m_overId( overId ), m_points( points ), m_thickness( thickness ), m_value( value ), m_tooltip( tooltip ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {}
+        Slider( const string & id, const string & visible, int xPos, int yPos, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & upId, const string & downId, const string & overId, const string & points, int thickness, const string & value, const string & imageId, int nbHoriz, int nbVert, int padHoriz, int padVert, const string & tooltip, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_visible( visible ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_upId( upId ), m_downId( downId ), m_overId( overId ), m_points( points ), m_thickness( thickness ), m_value( value ), m_imageId( imageId ), m_nbHoriz( nbHoriz ), m_nbVert( nbVert ), m_padHoriz( padHoriz ), m_padVert( padVert ), m_tooltip( tooltip ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
 
-        const string m_id;
-        const string m_visible;
+        string m_id;
+        string m_visible;
         int m_xPos;
         int m_yPos;
-        const string m_leftTop;
-        const string m_rightBottom;
-        const string m_upId;
-        const string m_downId;
-        const string m_overId;
-        const string m_points;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_upId;
+        string m_downId;
+        string m_overId;
+        string m_points;
         int m_thickness;
-        const string m_value;
-        const string m_tooltip;
-        const string m_help;
+        string m_value;
+        string m_imageId;
+        int m_nbHoriz;
+        int m_nbVert;
+        int m_padHoriz;
+        int m_padVert;
+        string m_tooltip;
+        string m_help;
         int m_layer;
-        const string m_windowId;
-        const string m_layoutId;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
     };
     /// List
     list<Slider> m_listSlider;
@@ -282,31 +423,99 @@ m_id( id ), m_visible( visible ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( lef
     /// Type definition
     struct List
     {
-        List( const string & id, int xPos, int yPos, int width, int height, const string & leftTop, const string & rightBottom, const string & fontId, const string & var, uint32_t fgColor, uint32_t playColor, uint32_t bgColor1, uint32_t bgColor2, uint32_t selColor, const string & help, int layer, const string & windowId, const string & layoutId ):
-m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_width( width ), m_height( height ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_fontId( fontId ), m_var( var ), m_fgColor( fgColor ), m_playColor( playColor ), m_bgColor1( bgColor1 ), m_bgColor2( bgColor2 ), m_selColor( selColor ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {}
+        List( const string & id, int xPos, int yPos, const string & visible, int width, int height, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & fontId, const string & var, const string & bgImageId, const string & fgColor, const string & playColor, const string & bgColor1, const string & bgColor2, const string & selColor, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_visible( visible ), m_width( width ), m_height( height ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_fontId( fontId ), m_var( var ), m_bgImageId( bgImageId ), m_fgColor( fgColor ), m_playColor( playColor ), m_bgColor1( bgColor1 ), m_bgColor2( bgColor2 ), m_selColor( selColor ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
 
-        const string m_id;
+        string m_id;
         int m_xPos;
         int m_yPos;
+        string m_visible;
         int m_width;
         int m_height;
-        const string m_leftTop;
-        const string m_rightBottom;
-        const string m_fontId;
-        const string m_var;
-        uint32_t m_fgColor;
-        uint32_t m_playColor;
-        uint32_t m_bgColor1;
-        uint32_t m_bgColor2;
-        uint32_t m_selColor;
-        const string m_help;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_fontId;
+        string m_var;
+        string m_bgImageId;
+        string m_fgColor;
+        string m_playColor;
+        string m_bgColor1;
+        string m_bgColor2;
+        string m_selColor;
+        string m_help;
         int m_layer;
-        const string m_windowId;
-        const string m_layoutId;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
     };
     /// List
     list<List> m_listList;
 
+    /// Type definition
+    struct Tree
+    {
+        Tree( const string & id, int xPos, int yPos, const string & visible, const string & flat, int width, int height, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & fontId, const string & var, const string & bgImageId, const string & itemImageId, const string & openImageId, const string & closedImageId, const string & fgColor, const string & playColor, const string & bgColor1, const string & bgColor2, const string & selColor, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_visible( visible ), m_flat( flat ), m_width( width ), m_height( height ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_fontId( fontId ), m_var( var ), m_bgImageId( bgImageId ), m_itemImageId( itemImageId ), m_openImageId( openImageId ), m_closedImageId( closedImageId ), m_fgColor( fgColor ), m_playColor( playColor ), m_bgColor1( bgColor1 ), m_bgColor2( bgColor2 ), m_selColor( selColor ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
+
+        string m_id;
+        int m_xPos;
+        int m_yPos;
+        string m_visible;
+        string m_flat;
+        int m_width;
+        int m_height;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_fontId;
+        string m_var;
+        string m_bgImageId;
+        string m_itemImageId;
+        string m_openImageId;
+        string m_closedImageId;
+        string m_fgColor;
+        string m_playColor;
+        string m_bgColor1;
+        string m_bgColor2;
+        string m_selColor;
+        string m_help;
+        int m_layer;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
+    };
+    /// List
+    list<Tree> m_listTree;
+
+    /// Type definition
+    struct Video
+    {
+        Video( const string & id, int xPos, int yPos, int width, int height, const string & leftTop, const string & rightBottom, bool xKeepRatio, bool yKeepRatio, const string & visible, bool autoResize, const string & help, int layer, const string & windowId, const string & layoutId, const string & panelId ):
+m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_width( width ), m_height( height ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), m_xKeepRatio( xKeepRatio ), m_yKeepRatio( yKeepRatio ), m_visible( visible ), m_autoResize( autoResize ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ), m_panelId( panelId ) {}
+
+        string m_id;
+        int m_xPos;
+        int m_yPos;
+        int m_width;
+        int m_height;
+        string m_leftTop;
+        string m_rightBottom;
+        bool m_xKeepRatio;
+        bool m_yKeepRatio;
+        string m_visible;
+        bool m_autoResize;
+        string m_help;
+        int m_layer;
+        string m_windowId;
+        string m_layoutId;
+        string m_panelId;
+    };
+    /// List
+    list<Video> m_listVideo;
+
 
 };