7c74b12b2a
what Be's implementation did wrong but instead of taking almost 30 seconds to sort the MIME type database (roughly 1100 entries, and yes, that's why the original FileTypes is that slow when it has to show the internal types), this one needs only 4 ms for the same task (that's an amply 7500x speedup). * Implemented some more missing functions - it's by no means complete yet, though. * Rewrote OutlineListView.h, ListItem.h, and StringItem.h. * Fixed some minor bugs, but there are probably a lot more. * Major cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16349 a95241bf-73f2-0310-859d-f6bbb57e9c96
43 lines
1.0 KiB
C++
43 lines
1.0 KiB
C++
/*
|
|
* Copyright 2006, Haiku, Inc. All Rights Reserved.
|
|
* Distributed under the terms of the MIT License.
|
|
*/
|
|
#ifndef _STRING_ITEM_H
|
|
#define _STRING_ITEM_H
|
|
|
|
|
|
#include <ListItem.h>
|
|
|
|
|
|
class BStringItem : public BListItem {
|
|
public:
|
|
BStringItem(const char* text, uint32 outlineLevel = 0,
|
|
bool expanded = true);
|
|
BStringItem(BMessage* archive);
|
|
virtual ~BStringItem();
|
|
|
|
static BArchivable* Instantiate(BMessage* archive);
|
|
virtual status_t Archive(BMessage* archive, bool deep = true) const;
|
|
|
|
virtual void DrawItem(BView* owner, BRect frame, bool complete = false);
|
|
virtual void SetText(const char* text);
|
|
const char* Text() const;
|
|
|
|
virtual void Update(BView* owner, const BFont* font);
|
|
|
|
virtual status_t Perform(perform_code code, void* arg);
|
|
|
|
private:
|
|
virtual void _ReservedStringItem1();
|
|
virtual void _ReservedStringItem2();
|
|
|
|
BStringItem(const BStringItem& item);
|
|
BStringItem& operator=(const BStringItem& item);
|
|
|
|
char* fText;
|
|
float fBaselineOffset;
|
|
uint32 _reserved[2];
|
|
};
|
|
|
|
#endif // _STRING_ITEM_H
|