Improve layour of bubble widgets to be more predictable, fix potential lack of error checks in Skin

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@8657 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
auria 2011-05-22 02:01:57 +00:00
parent 0dbed4b737
commit 7aac279fc8
5 changed files with 25 additions and 18 deletions

View File

@ -17,7 +17,7 @@
</div>
</div>
<bubble word_wrap="true" id="description" height="100%" x="5%" width="90%" proportion="6" />
<bubble word_wrap="true" id="description" height="100%" width="90%" proportion="6" align="center" />
<div width="90%" proportion="2" align="center">
<button id="install" x="0" y="0" width="100%" height="100%" I18N="Addons" text="Install"/>
@ -26,6 +26,6 @@
<spacer height="10" />
<button id="cancel" proportion="2" x="5%" width="90%" I18N="Addons" text="Back" align="center"/>
<button id="cancel" proportion="2" width="90%" I18N="Addons" text="Back" align="center"/>
</div>
</stkgui>

View File

@ -78,12 +78,12 @@ when the border that intersect at this corner are enabled.
<element type="textbubble" state="neutral" image="glass/textbubble.png"
left_border="28" right_border="28" top_border="28" bottom_border="28"
hborder_out_portion="0.1" vborder_out_portion="0.1" />
left_border="13" right_border="13" top_border="13" bottom_border="13"
hborder_out_portion="0.7" vborder_out_portion="0.3" />
<element type="textbubble" state="focused" image="glass/textbubble2.png"
left_border="28" right_border="28" top_border="28" bottom_border="28"
hborder_out_portion="0.1" vborder_out_portion="0.1" />
left_border="13" right_border="13" top_border="13" bottom_border="13"
hborder_out_portion="0.7" vborder_out_portion="0.3" />
<element type="progress" state="fill" image="glass/glassprogress_fill.png"
left_border="80" right_border="80" top_border="0" bottom_border="36"

View File

@ -76,12 +76,12 @@ when the border that intersect at this corner are enabled.
<!-- TODO : buttons could support 'pressed' state -->
<element type="textbubble" state="neutral" image="ocean/textbubble.png"
left_border="28" right_border="28" top_border="28" bottom_border="28"
hborder_out_portion="0.1" vborder_out_portion="0.1" />
left_border="13" right_border="13" top_border="13" bottom_border="13"
hborder_out_portion="0.7" vborder_out_portion="0.3" />
<element type="textbubble" state="focused" image="ocean/textbubble2.png"
left_border="28" right_border="28" top_border="28" bottom_border="28"
hborder_out_portion="0.1" vborder_out_portion="0.1" />
left_border="13" right_border="13" top_border="13" bottom_border="13"
hborder_out_portion="0.7" vborder_out_portion="0.3" />
<element type="progress" state="fill" image="ocean/glasssgauge_fill.png"
left_border="20" right_border="20" top_border="0" bottom_border="0"

View File

@ -76,12 +76,12 @@ when the border that intersect at this corner are enabled.
<!-- TODO : buttons could support 'pressed' state -->
<element type="textbubble" state="neutral" image="peach/textbubble.png"
left_border="28" right_border="28" top_border="28" bottom_border="28"
hborder_out_portion="0.1" vborder_out_portion="0.1" />
left_border="13" right_border="13" top_border="13" bottom_border="13"
hborder_out_portion="0.7" vborder_out_portion="0.3" />
<element type="textbubble" state="focused" image="peach/textbubble2.png"
left_border="28" right_border="28" top_border="28" bottom_border="28"
hborder_out_portion="0.1" vborder_out_portion="0.1" />
left_border="13" right_border="13" top_border="13" bottom_border="13"
hborder_out_portion="0.7" vborder_out_portion="0.3" />
<element type="progress" state="fill" image="peach/glasssgauge_fill.png"
left_border="15" right_border="15" top_border="15" bottom_border="15"

View File

@ -1810,10 +1810,10 @@ void Skin::draw3DSunkenPane (IGUIElement *element, video::SColor bgcolor, bool f
core::rect< s32 > rect2 = rect;
// minor adjustments...
rect2.UpperLeftCorner.X -= 7;
//rect2.UpperLeftCorner.X -= 7;
rect2.LowerRightCorner.Y += 7;
rect2.LowerRightCorner.X += BUBBLE_MARGIN_ON_RIGHT;
if (bubble->isFocusedForPlayer(PLAYER_ID_GAME_MASTER))
drawBoxFromStretchableTexture(widget, rect2, SkinConfig::m_render_params["textbubble::focused"]);
else
@ -1905,8 +1905,15 @@ void Skin::draw3DToolBar (IGUIElement *element, const core::rect< s32 > &rect, c
ITexture* Skin::getImage(const char* name)
{
BoxRenderParams& p = SkinConfig::m_render_params[name];
return p.getImage();
if (SkinConfig::m_render_params.find(name) != SkinConfig::m_render_params.end())
{
BoxRenderParams& p = SkinConfig::m_render_params[name];
return p.getImage();
}
else
{
return irr_driver->getTexture(file_manager->getDataDir() + "/gui/main_help.png");
}
}
// -----------------------------------------------------------------------------