27 lines
757 B
C++
27 lines
757 B
C++
# ifndef TABLEPRINT_HPP
|
|
# define TABLEPRINT_HPP
|
|
|
|
#include <vector>
|
|
#include <string>
|
|
#include <iostream>
|
|
|
|
// tableprint is a class that prints a table of strings.
|
|
// formatted to look nice with colored headings and rows.
|
|
// converts :tick: to a green tick and :cross: to a red cross.
|
|
// assumes the first row is the header.
|
|
class tableprint {
|
|
public:
|
|
tableprint(const std::string title = "", bool compact = false);
|
|
~tableprint();
|
|
void add_row(const std::vector<std::string>& row);
|
|
void print();
|
|
void set_title(const std::string title);
|
|
void sort(std::vector<int> sort_columns);
|
|
private:
|
|
std::vector<std::vector<std::string>> rows;
|
|
std::string title;
|
|
bool mCompact;
|
|
};
|
|
|
|
# endif
|