fixes ChannelSlider::Draw when Label() is NULL

fixes a bit preferred size, still needs work


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16212 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Jérôme Duval 2006-02-02 20:49:40 +00:00
parent ff3abf4d6f
commit 24ab95eee1
2 changed files with 14 additions and 7 deletions

View File

@ -168,12 +168,17 @@ BChannelControl::DetachedFromWindow()
}
void
BChannelControl::GetPreferredSize(float *_width, float *_height)
{
BControl::GetPreferredSize(_width, _height);
}
void
BChannelControl::ResizeToPreferred()
{
float width, height;
GetPreferredSize(&width, &height);
ResizeTo(width, height);
BControl::ResizeToPreferred();
}

View File

@ -232,10 +232,12 @@ BChannelSlider::Draw(BRect updateRect)
UpdateFontDimens();
DrawThumbs();
BRect bounds(Bounds());
float labelWidth = StringWidth(Label());
if (Label()) {
BRect bounds(Bounds());
float labelWidth = StringWidth(Label());
DrawString(Label(), BPoint((bounds.Width() - labelWidth) / 2, fBaseLine));
DrawString(Label(), BPoint((bounds.Width() - labelWidth) / 2, fBaseLine));
}
}
@ -398,7 +400,7 @@ BChannelSlider::SetEnabled(bool on)
void
BChannelSlider::GetPreferredSize(float *width, float *height)
{
// TODO: Implement
BChannelControl::GetPreferredSize(width, height);
}