deltaFlow
Display.H File Reference

Display and formatting utilities for terminal and file output. More...

#include <fmt/color.h>
#include <fmt/core.h>
#include <string>
#include <vector>
#include <unistd.h>
#include "Version.H"
Include dependency graph for Display.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Display::LicenseLine
 A single line in the license notice box. More...
 
struct  Display::ProductLine
 A single line in the product info box. More...
 

Namespaces

namespace  Display
 Terminal and file output formatting for deltaFlow.
 

Functions

std::string Display::padRight (const std::string &text, int width)
 Right-pads a string with spaces to the given width.
 
std::string Display::centerIn (const std::string &text, int width)
 Centers a string within a given width.
 
std::string Display::separator (char ch='=')
 Returns a separator line of the given character.
 
std::string Display::center (const std::string &text)
 Returns a centered string within the page width.
 
std::string Display::hostname ()
 Returns the machine hostname.
 
std::vector< LicenseLineDisplay::licenseContent ()
 Returns the license notice content lines.
 
std::vector< ProductLineDisplay::productContent ()
 Returns the product info box content lines.
 
std::string Display::licenseNotice ()
 Returns the plain-text license notice box.
 
std::string Display::productBox ()
 Returns the plain-text product info box.
 
std::string Display::fileBanner ()
 Returns a full plain-text banner for output/log files.
 
std::string Display::sectionHeader (const std::string &title)
 Returns a section header for output files.
 
std::string Display::subSectionHeader (const std::string &title)
 Returns a sub-section header for output files.
 
void Display::printLicenseNotice ()
 Prints the colored license notice box to terminal.
 
void Display::printProductBox ()
 Prints the colored product info box to terminal.
 
void Display::printTerminalBanner ()
 Prints the full colored banner to terminal.
 
void Display::printSectionHeader (const std::string &title)
 Prints a colored section header to terminal.
 

Variables

constexpr fmt::rgb Display::LOGO_COLOR {153, 0, 204}
 deltaFlow logo color
 
constexpr int Display::pageWidth = 80
 Standard output page width.
 
constexpr int Display::licenseBoxWidth = 67
 License notice box width.
 
constexpr int Display::productBoxWidth = 59
 Product info box width.
 

Detailed Description

Display and formatting utilities for terminal and file output.

Definition in file Display.H.