/* * Copyright 2013, Ingo Weinhold, ingo_weinhold@gmx.de. * Distributed under the terms of the MIT License. */ #ifndef TEXT_TABLE_H #define TEXT_TABLE_H #include #include #include namespace BPrivate { class TextTable { public: TextTable(); ~TextTable(); int32 CountColumns() const; void AddColumn(const BString& title, enum alignment align = B_ALIGN_LEFT, bool canTruncate = false); int32 CountRows() const; BString TextAt(int32 rowIndex, int32 columnIndex) const; void SetTextAt(int32 rowIndex, int32 columnIndex, const BString& text); void Print(int32 maxWidth); private: struct Column; typedef BObjectList ColumnList; typedef BObjectList RowList; private: ColumnList fColumns; RowList fRows; }; } // namespace BPrivate using ::BPrivate::TextTable; #endif // TEXT_TABLE_H