From 8f3e155417d153fb70dce042f07e919c283a8e4f Mon Sep 17 00:00:00 2001 From: Marc Flerackers Date: Wed, 11 Sep 2002 06:44:19 +0000 Subject: [PATCH] Archive was overwritten with an older version git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1011 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/interface/StatusBar.cpp | 52 +++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 14 deletions(-) diff --git a/src/kits/interface/StatusBar.cpp b/src/kits/interface/StatusBar.cpp index 5641b7f804..0c45356d7a 100644 --- a/src/kits/interface/StatusBar.cpp +++ b/src/kits/interface/StatusBar.cpp @@ -141,33 +141,57 @@ BArchivable *BStatusBar::Instantiate(BMessage *archive) //------------------------------------------------------------------------------ status_t BStatusBar::Archive(BMessage *archive, bool deep) const { - BView::Archive(archive, deep); + status_t err = BView::Archive(archive, deep); + + if (err != B_OK) + return err; if (fBarHeight != 16.0f) - archive->AddFloat("_high", fBarHeight); + err = archive->AddFloat("_high", fBarHeight); + + if (err != B_OK) + return err; // TODO: Should we compare the color with (50, 150, 255) ? - archive->AddData("_bcolor", B_INT32_TYPE, &fBarColor, sizeof( int32 )); - + err = archive->AddData("_bcolor", B_INT32_TYPE, &fBarColor, sizeof( int32 )); + + if (err != B_OK) + return err; + if (fCurrent != 0.0f) - archive->AddFloat("_val", fCurrent); + err = archive->AddFloat("_val", fCurrent); + if (err != B_OK) + return err; + if (fMax != 100.0f ) - archive->AddFloat("_max", fMax); - + err = archive->AddFloat("_max", fMax); + + if (err != B_OK) + return err; + if (fText ) - archive->AddString("_text", fText); - - if (fTrailingText) - archive->AddString("_ttext", fTrailingText); + err = archive->AddString("_text", fText); + if (err != B_OK) + return err; + + if (fTrailingText) + err = archive->AddString("_ttext", fTrailingText); + + if (err != B_OK) + return err; + if (fLabel) - archive->AddString("_label", fLabel); + err = archive->AddString("_label", fLabel); + + if (err != B_OK) + return err; if (fTrailingLabel) - archive->AddString ("_tlabel", fTrailingLabel); + err = archive->AddString ("_tlabel", fTrailingLabel); - return B_OK; + return err; } //------------------------------------------------------------------------------ void BStatusBar::AttachedToWindow()