diff --git a/headers/os/interface/StringView.h b/headers/os/interface/StringView.h index 442dd28905..393cf32c67 100644 --- a/headers/os/interface/StringView.h +++ b/headers/os/interface/StringView.h @@ -55,9 +55,8 @@ class BStringView : public BView{ virtual void AllDetached(); virtual status_t GetSupportedSuites(BMessage* data); -// TODO: should be implemented and invalidate the layout -// virtual void SetFont(const BFont* font, -// uint32 mask = B_FONT_ALL); + virtual void SetFont(const BFont* font, + uint32 mask = B_FONT_ALL); virtual void InvalidateLayout(bool descendants = false); diff --git a/src/kits/interface/StringView.cpp b/src/kits/interface/StringView.cpp index 84030d4a20..1aecc0e4b7 100644 --- a/src/kits/interface/StringView.cpp +++ b/src/kits/interface/StringView.cpp @@ -137,7 +137,7 @@ BStringView::AttachedToWindow() void -BStringView::Draw(BRect bounds) +BStringView::Draw(BRect updateRect) { if (!fText) return; @@ -282,6 +282,16 @@ BStringView::GetSupportedSuites(BMessage* message) } +void +BStringView::SetFont(const BFont* font, uint32 mask) +{ + BView::SetFont(font, mask); + + InvalidateLayout(); + Invalidate(); +} + + void BStringView::InvalidateLayout(bool descendants) {