#ifndef STATUS_BAR_MANAGER_H_ #define STATUS_BAR_MANAGER_H_ #include #include "Progress.h" class StatusBarManager { private: bool m_is_started; std::vector m_progress_messages; struct TermSize { int rows; int columns; }; TermSize get_terminal_size(); void setup_terminal_scroll_area(int nr_rows); public: StatusBarManager(); ~StatusBarManager(); bool draw_status_line(); void start(); void stop(); void add_progress_message(Progress* message); void clear(); }; #endif // STATUS_BAR_MANAGER_H_