BStringItem

Constructor and Destructor

BStringItem()

BStringItem::BStringItem(const char *text, uint32 level = 0, bool expanded = true)
BStringItem::BStringItem(BMessage *archive)

Initializes the BStringItem by making a copy of the text string passed as an argument. This is the string the item will display. The level and expanded arguments are passed unchanged to the BListItem constructor; see that function for an explanation.

~BStringItem()

virtual BStringItem::~BStringItem()

Frees the text the item displays.

Member Functions

Archive()

virtual status_t BStringItem::Archive(BMessage *archive, bool deep = true) const

Calls the inherited version of Archive() and stores the BStringItem in the BMessage archive.

See also: BArchivable::Archive(), Instantiate() static function

DrawItem()

virtual void BStringItem::DrawItem(BView *owner, BRect frame, bool complete = false)

Draws the text string, dimming it if the item is disabled and highlighting it if the item is selected.

See also: BListItem::DrawItem()

SetText(), Text()

virtual void BStringItem::SetText(const char *text)
const char *BStringItem::Text() const

These functions set and return the text that the BStringItem draws. SetText() copies the string it’s passed. Text() returns a pointer to the string owned by the BStringItem.

Update()

virtual void BStringItem::Update(BView *owner, const BFont *font)

Overrides the BListItem version of Update() to recalculate the width and height of the BStringItem and the placement of the text. The width of the item is based on the width of the owner BView. The height and text placement are based on the owner’s font. The item must be tall enough to display the string in the current font.

Static Functions

Instantiate()

static BArchivable *BStringItem::Instantiate(BMessage *archive)

Returns a new BStringItem object, allocated by new and created with the version of the constructor that takes a BMessage archive. However, if the archive message doesn’t contain archived data for a BStringItem, Instantiate() returns NULL.

See also BArchivable::Instantiate(), instantiate_object(), Archive()

Archived Fields

The Archive() function adds the following fields to its BMessage argument:

Field

Type code

Description

_label

B_STRING_TYPE

String text (present only if it is not NULL).