From 73d587a5c2ca2873636c6cc79670bb9acfb974e1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Olivier=20Teuli=C3=A8re?= Date: Wed, 24 Mar 2004 22:10:56 +0000 Subject: [PATCH] * skins2/parser/builder*: All the controls now have a 'visible' attribute * share/skins2/default/skin.dtd: Changed a few details here and there --- modules/gui/skins2/parser/builder.cpp | 49 ++++++++++++++++++---- modules/gui/skins2/parser/builder_data.def | 14 +++---- modules/gui/skins2/parser/builder_data.hpp | 34 ++++++++------- modules/gui/skins2/parser/skin_parser.cpp | 32 +++++++------- share/skins2/default/skin.dtd | 10 +++-- share/skins2/default/theme.xml | 8 ++-- 6 files changed, 94 insertions(+), 53 deletions(-) diff --git a/modules/gui/skins2/parser/builder.cpp b/modules/gui/skins2/parser/builder.cpp index c3dfa384f0..2e721a138f 100755 --- a/modules/gui/skins2/parser/builder.cpp +++ b/modules/gui/skins2/parser/builder.cpp @@ -139,7 +139,7 @@ void Builder::addBitmap( const BuilderData::Bitmap &rData ) void Builder::addFont( const BuilderData::Font &rData ) { - GenericFont *pFont = new FT2Font( getIntf(), rData.m_fontName, + GenericFont *pFont = new FT2Font( getIntf(), rData.m_fontFile, rData.m_size ); if( pFont->init() ) { @@ -240,9 +240,14 @@ void Builder::addButton( const BuilderData::Button &rData ) return; } + // Get the visibility variable + // XXX check when it is null + Interpreter *pInterpreter = Interpreter::instance( getIntf() ); + VarBool *pVisible = pInterpreter->getVarBool( rData.m_visible, m_pTheme ); + CtrlButton *pButton = new CtrlButton( getIntf(), *pBmpUp, *pBmpOver, *pBmpDown, *pCommand, UString( getIntf(), rData.m_tooltip.c_str() ), - UString( getIntf(), rData.m_help.c_str() ), NULL ); + UString( getIntf(), rData.m_help.c_str() ), pVisible ); // Compute the position of the control // XXX (we suppose all the images have the same size...) @@ -308,12 +313,16 @@ void Builder::addCheckbox( const BuilderData::Checkbox &rData ) return; } + // Get the visibility variable + // XXX check when it is null + VarBool *pVisible = pInterpreter->getVarBool( rData.m_visible, m_pTheme ); + // Create the control CtrlCheckbox *pCheckbox = new CtrlCheckbox( getIntf(), *pBmpUp1, *pBmpOver1, *pBmpDown1, *pBmpUp2, *pBmpOver2, *pBmpDown2, *pCommand1, *pCommand2, UString( getIntf(), rData.m_tooltip1.c_str() ), UString( getIntf(), rData.m_tooltip2.c_str() ), *pVar, - UString( getIntf(), rData.m_help.c_str() ), NULL ); + UString( getIntf(), rData.m_help.c_str() ), pVisible ); // Compute the position of the control // XXX (we suppose all the images have the same size...) @@ -347,9 +356,13 @@ void Builder::addImage( const BuilderData::Image &rData ) return; } + // Get the visibility variable + // XXX check when it is null + Interpreter *pInterpreter = Interpreter::instance( getIntf() ); + VarBool *pVisible = pInterpreter->getVarBool( rData.m_visible, m_pTheme ); + CtrlImage *pImage = new CtrlImage( getIntf(), *pBmp, - UString( getIntf(), rData.m_help.c_str() ), - NULL); + UString( getIntf(), rData.m_help.c_str() ), pVisible ); // Compute the position of the control const Position pos = makePosition( rData.m_leftTop, rData.m_rightBottom, @@ -402,8 +415,13 @@ void Builder::addText( const BuilderData::Text &rData ) pVar->set( msg ); m_pTheme->m_vars.push_back( VariablePtr( pVar ) ); + // Get the visibility variable + // XXX check when it is null + Interpreter *pInterpreter = Interpreter::instance( getIntf() ); + VarBool *pVisible = pInterpreter->getVarBool( rData.m_visible, m_pTheme ); + CtrlText *pText = new CtrlText( getIntf(), *pVar, *pFont, - UString( getIntf(), rData.m_help.c_str() ), rData.m_color, NULL ); + UString( getIntf(), rData.m_help.c_str() ), rData.m_color, pVisible ); int height = pFont->getSize(); @@ -438,12 +456,16 @@ void Builder::addRadialSlider( const BuilderData::RadialSlider &rData ) return; } + // Get the visibility variable + // XXX check when it is null + VarBool *pVisible = pInterpreter->getVarBool( rData.m_visible, m_pTheme ); + // Create the control CtrlRadialSlider *pRadial = new CtrlRadialSlider( getIntf(), *pSeq, rData.m_nbImages, *pVar, rData.m_minAngle, rData.m_maxAngle, UString( getIntf(), rData.m_help.c_str() ), - NULL ); + pVisible ); // XXX: resizing is not supported // Compute the position of the control @@ -548,11 +570,15 @@ void Builder::addList( const BuilderData::List &rData ) return; } + // Get the visibility variable + // XXX check when it is null + VarBool *pVisible = pInterpreter->getVarBool( rData.m_visible, m_pTheme ); + // Create the list control CtrlList *pList = new CtrlList( getIntf(), *pVar, *pFont, rData.m_fgColor, rData.m_playColor, rData.m_bgColor1, rData.m_bgColor2, rData.m_selColor, - UString( getIntf(), rData.m_help.c_str() ), NULL ); + UString( getIntf(), rData.m_help.c_str() ), pVisible ); // Compute the position of the control const Position pos = makePosition( rData.m_leftTop, rData.m_rightBottom, @@ -575,8 +601,13 @@ void Builder::addVideo( const BuilderData::Video &rData ) return; } + // Get the visibility variable + // XXX check when it is null + Interpreter *pInterpreter = Interpreter::instance( getIntf() ); + VarBool *pVisible = pInterpreter->getVarBool( rData.m_visible, m_pTheme ); + CtrlVideo *pVideo = new CtrlVideo( getIntf(), - UString( getIntf(), rData.m_help.c_str() ), NULL); + UString( getIntf(), rData.m_help.c_str() ), pVisible ); // Compute the position of the control const Position pos = makePosition( rData.m_leftTop, rData.m_rightBottom, diff --git a/modules/gui/skins2/parser/builder_data.def b/modules/gui/skins2/parser/builder_data.def index a018aab8cc..b327082a87 100644 --- a/modules/gui/skins2/parser/builder_data.def +++ b/modules/gui/skins2/parser/builder_data.def @@ -1,14 +1,14 @@ Theme tooltipfont:string magnet:int alpha:uint32_t moveAlpha:uint32_t fadeTime:uint32_t Bitmap id:string fileName:string alphaColor:uint32_t -Font id:string fontName:string size:int +Font id:string fontFile:string size:int Window id:string xPos:int yPos:int visible:bool dragDrop:bool playOnDrop:bool Layout id:string width:int height:int minWidth:int maxWidth:int minHeight:int maxHeight:int windowId:string Anchor xPos:int yPos:int range:int priority:int points:string windowId:string -Button id:string xPos:int yPos:int leftTop:string rightBottom:string upId:string downId:string overId:string actionId:string tooltip:string help:string layer:int windowId:string layoutId:string -Checkbox id:string xPos:int yPos:int leftTop:string rightBottom:string up1Id:string down1Id:string over1Id:string up2Id:string down2Id:string over2Id:string state:string action1:string action2:string tooltip1:string tooltip2:string help:string layer:int windowId:string layoutId:string -Image id:string xPos:int yPos:int leftTop:string rightBottom:string visible:bool bmpId:string actionId:string help:string layer:int windowId:string layoutId:string -Text id:string xPos:int yPos:int fontId:string text:string width:int color:uint32_t help:string layer:int windowId:string layoutId:string +Button id:string xPos:int yPos:int leftTop:string rightBottom:string visible:string upId:string downId:string overId:string actionId:string tooltip:string help:string layer:int windowId:string layoutId:string +Checkbox id:string xPos:int yPos:int leftTop:string rightBottom:string visible:string up1Id:string down1Id:string over1Id:string up2Id:string down2Id:string over2Id:string state:string action1:string action2:string tooltip1:string tooltip2:string help:string layer:int windowId:string layoutId:string +Image id:string xPos:int yPos:int leftTop:string rightBottom:string visible:string bmpId:string actionId:string help:string layer:int windowId:string layoutId:string +Text id:string xPos:int yPos:int visible:string fontId:string text:string width:int color:uint32_t help:string layer:int windowId:string layoutId:string RadialSlider id:string visible:string xPos:int yPos:int leftTop:string rightBottom:string sequence:string nbImages:int minAngle:float maxAngle:float value:string tooltip:string help:string layer:int windowId:string layoutId:string Slider id:string visible:string xPos:int yPos:int leftTop:string rightBottom:string upId:string downId:string overId:string points:string thickness:int value:string tooltip:string help:string layer:int windowId:string layoutId:string -List id:string xPos:int yPos:int width:int height:int leftTop:string rightBottom:string fontId:string var:string fgColor:uint32_t playColor:uint32_t bgColor1:uint32_t bgColor2:uint32_t selColor:uint32_t help:string layer:int windowId:string layoutId:string -Video id:string xPos:int yPos:int width:int height:int leftTop:string rightBottom:string visible:bool help:string layer:int windowId:string layoutId:string +List id:string xPos:int yPos:int visible:string width:int height:int leftTop:string rightBottom:string fontId:string var:string fgColor:uint32_t playColor:uint32_t bgColor1:uint32_t bgColor2:uint32_t selColor:uint32_t help:string layer:int windowId:string layoutId:string +Video id:string xPos:int yPos:int width:int height:int leftTop:string rightBottom:string visible:string help:string layer:int windowId:string layoutId:string diff --git a/modules/gui/skins2/parser/builder_data.hpp b/modules/gui/skins2/parser/builder_data.hpp index 67daa133eb..ce3f65c04a 100644 --- a/modules/gui/skins2/parser/builder_data.hpp +++ b/modules/gui/skins2/parser/builder_data.hpp @@ -70,11 +70,11 @@ m_id( id ), m_fileName( fileName ), m_alphaColor( alphaColor ) {} /// 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; + const string m_fontFile; int m_size; }; /// List @@ -133,14 +133,15 @@ 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, 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 ): +m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), 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 ) {} const string m_id; int m_xPos; int m_yPos; const string m_leftTop; const string m_rightBottom; + const string m_visible; const string m_upId; const string m_downId; const string m_overId; @@ -157,14 +158,15 @@ 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, 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 ): +m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( rightBottom ), 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 ) {} const string m_id; int m_xPos; int m_yPos; const string m_leftTop; const string m_rightBottom; + const string m_visible; const string m_up1Id; const string m_down1Id; const string m_over1Id; @@ -187,7 +189,7 @@ 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 ): + Image( const string & id, int xPos, int yPos, const string & leftTop, const string & rightBottom, const string & 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 ) {} const string m_id; @@ -195,7 +197,7 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( int m_yPos; const string m_leftTop; const string m_rightBottom; - bool m_visible; + const string m_visible; const string m_bmpId; const string m_actionId; const string m_help; @@ -209,12 +211,13 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_leftTop( leftTop ), m_rightBottom( /// 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, uint32_t color, const string & help, int layer, const string & windowId, const string & layoutId ): +m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_visible( visible ), m_fontId( fontId ), m_text( text ), m_width( width ), m_color( color ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {} const string m_id; int m_xPos; int m_yPos; + const string m_visible; const string m_fontId; const string m_text; int m_width; @@ -283,12 +286,13 @@ 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, 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_visible( visible ), 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 ) {} const string m_id; int m_xPos; int m_yPos; + const string m_visible; int m_width; int m_height; const string m_leftTop; @@ -311,7 +315,7 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_width( width ), m_height( height ) /// Type definition struct Video { - Video( const string & id, int xPos, int yPos, int width, int height, const string & leftTop, const string & rightBottom, bool visible, const string & help, int layer, const string & windowId, const string & layoutId ): + Video( const string & id, int xPos, int yPos, int width, int height, const string & leftTop, const string & rightBottom, const string & visible, 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_visible( visible ), m_help( help ), m_layer( layer ), m_windowId( windowId ), m_layoutId( layoutId ) {} const string m_id; @@ -321,7 +325,7 @@ m_id( id ), m_xPos( xPos ), m_yPos( yPos ), m_width( width ), m_height( height ) int m_height; const string m_leftTop; const string m_rightBottom; - bool m_visible; + const string m_visible; const string m_help; int m_layer; const string m_windowId; diff --git a/modules/gui/skins2/parser/skin_parser.cpp b/modules/gui/skins2/parser/skin_parser.cpp index df4cd9feb9..3ad7171e47 100644 --- a/modules/gui/skins2/parser/skin_parser.cpp +++ b/modules/gui/skins2/parser/skin_parser.cpp @@ -55,18 +55,18 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) { const BuilderData::Button button( uniqueId( attr["id"] ), atoi( attr["x"] ) + m_xOffset, atoi( attr["y"] ) + m_yOffset, attr["lefttop"], - attr["rightbottom"], attr["up"], attr["down"], attr["over"], - attr["action"], attr["tooltiptext"], attr["help"], m_curLayer, - m_curWindowId, m_curLayoutId ); + attr["rightbottom"], attr["visible"], attr["up"], attr["down"], + attr["over"], attr["action"], attr["tooltiptext"], attr["help"], + m_curLayer, m_curWindowId, m_curLayoutId ); m_curLayer++; m_data.m_listButton.push_back( button ); } - else if( rName == "CheckBox" ) + else if( rName == "Checkbox" ) { const BuilderData::Checkbox checkbox( uniqueId( attr["id"] ), atoi( attr["x"] ) + m_xOffset, atoi( attr["y"] ) + m_yOffset, attr["lefttop"], - attr["rightbottom"], attr["up1"], attr["down1"], attr["over1"], + attr["rightbottom"], attr["visible"], attr["up1"], attr["down1"], attr["over1"], attr["up2"], attr["down2"], attr["over2"], attr["state"], attr["action1"], attr["action2"], attr["tooltiptext1"], attr["tooltiptext2"], attr["help"], m_curLayer, m_curWindowId, @@ -77,7 +77,7 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) else if( rName == "Font" ) { - const BuilderData::Font fontData( attr["id"], attr["font"], + const BuilderData::Font fontData( attr["id"], attr["file"], atoi( attr["size"] ) ); m_data.m_listFont.push_back( fontData ); } @@ -94,7 +94,7 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) { const BuilderData::Image imageData( uniqueId( attr["id"] ), atoi( attr["x"] ) + m_xOffset, atoi( attr["y"] ) + m_yOffset, attr["lefttop"], - attr["rightbottom"], ConvertBoolean( attr["visible"] ), + attr["rightbottom"], attr["visible"], attr["image"], attr["action"], attr["help"], m_curLayer, m_curWindowId, m_curLayoutId ); m_curLayer++; @@ -116,8 +116,9 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) { m_curListId = uniqueId( attr["id"] ); const BuilderData::List listData( m_curListId, atoi( attr["x"] ) + - m_xOffset, atoi( attr["y"] ) + m_yOffset, atoi( attr["width"]), - atoi( attr["height"] ), attr["lefttop"], attr["rightbottom"], + m_xOffset, atoi( attr["y"] ) + m_yOffset, attr["visible"], + atoi( attr["width"]), atoi( attr["height"] ), + attr["lefttop"], attr["rightbottom"], attr["font"], attr["var"], ConvertColor( attr["fgcolor"] ), ConvertColor( attr["playcolor"] ), ConvertColor( attr["bgcolor1"] ), @@ -130,7 +131,8 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) else if( rName == "RadialSlider" ) { - const BuilderData::RadialSlider radial( uniqueId( attr["id"] ), attr["visible"], + const BuilderData::RadialSlider radial( uniqueId( attr["id"] ), + attr["visible"], atoi( attr["x"] ) + m_xOffset, atoi( attr["y"] ) + m_yOffset, attr["lefttop"], attr["rightbottom"], attr["sequence"], atoi( attr["nbImages"] ), atof( attr["minAngle"] ) * M_PI / 180, @@ -149,7 +151,8 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) // Slider associated to a list newValue = "playlist.slider"; } - const BuilderData::Slider slider( uniqueId( attr["id"] ), attr["visible"], + const BuilderData::Slider slider( uniqueId( attr["id"] ), + attr["visible"], atoi( attr["x"] ) + m_xOffset, atoi( attr["y"] ) + m_yOffset, attr["lefttop"], attr["rightbottom"], attr["up"], attr["down"], attr["over"], attr["points"], atoi( attr["thickness"] ), @@ -161,8 +164,9 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) else if( rName == "Text" ) { - const BuilderData::Text textData( uniqueId( attr["id"] ), atoi( attr["x"] ) + - m_xOffset, atoi( attr["y"] ) + m_yOffset, attr["font"], + const BuilderData::Text textData( uniqueId( attr["id"] ), + atoi( attr["x"] ) + m_xOffset, atoi( attr["y"] ) + m_yOffset, + attr["visible"], attr["font"], attr["text"], atoi( attr["width"] ), ConvertColor( attr["color"] ), attr["help"], m_curLayer, m_curWindowId, m_curLayoutId ); @@ -198,7 +202,7 @@ void SkinParser::handleBeginElement( const string &rName, AttrList_t &attr ) atoi( attr["x"] ) + m_xOffset, atoi( attr["y"] ) + m_yOffset, atoi( attr["width"] ), atoi( attr["height" ]), attr["lefttop"], attr["rightbottom"], - ConvertBoolean( attr["visible"] ), attr["help"], m_curLayer, + attr["visible"], attr["help"], m_curLayer, m_curWindowId, m_curLayoutId ); m_curLayer++; m_data.m_listVideo.push_back( videoData ); diff --git a/share/skins2/default/skin.dtd b/share/skins2/default/skin.dtd index 7ba49bffc6..faf91f1b8c 100644 --- a/share/skins2/default/skin.dtd +++ b/share/skins2/default/skin.dtd @@ -22,7 +22,7 @@ - - - + - - + + @@ -81,8 +81,8 @@