diff --git a/include/indicators/block_progress_bar.hpp b/include/indicators/block_progress_bar.hpp index 0ce42fa..451eac4 100644 --- a/include/indicators/block_progress_bar.hpp +++ b/include/indicators/block_progress_bar.hpp @@ -55,7 +55,7 @@ public: void *>::type = nullptr> explicit BlockProgressBar(Args &&... args) : settings_(details::get( - option::ForegroundColor{Color::white}, std::forward(args)...), + option::ForegroundColor{Color::unspecified}, std::forward(args)...), details::get(option::BarWidth{100}, std::forward(args)...), details::get(option::Start{"["}, @@ -188,8 +188,8 @@ private: auto now = std::chrono::high_resolution_clock::now(); auto elapsed = std::chrono::duration_cast(now - start_time_point_); - std::cout << termcolor::bold; - details::set_stream_color(std::cout, get_value()); + if (get_value() != Color::unspecified) + details::set_stream_color(std::cout, get_value()); std::cout << get_value(); std::cout << get_value(); diff --git a/include/indicators/color.hpp b/include/indicators/color.hpp index a772dcd..a7d8f97 100644 --- a/include/indicators/color.hpp +++ b/include/indicators/color.hpp @@ -28,5 +28,5 @@ SOFTWARE. #include namespace indicators { -enum class Color { grey, red, green, yellow, blue, magenta, cyan, white }; +enum class Color { grey, red, green, yellow, blue, magenta, cyan, white, unspecified }; } diff --git a/include/indicators/progress_bar.hpp b/include/indicators/progress_bar.hpp index 4959755..2111bbf 100644 --- a/include/indicators/progress_bar.hpp +++ b/include/indicators/progress_bar.hpp @@ -87,7 +87,7 @@ public: details::get( option::SavedStartTime{false}, std::forward(args)...), details::get( - option::ForegroundColor{Color::white}, std::forward(args)...)) {} + option::ForegroundColor{Color::unspecified}, std::forward(args)...)) {} template void set_option(details::Setting &&setting) { @@ -201,8 +201,8 @@ private: if (!get_value()) elapsed_ = std::chrono::duration_cast(now - start_time_point_); - std::cout << termcolor::bold; - details::set_stream_color(std::cout, get_value()); + if (get_value() != Color::unspecified) + details::set_stream_color(std::cout, get_value()); std::cout << get_value(); std::cout << get_value(); diff --git a/include/indicators/progress_spinner.hpp b/include/indicators/progress_spinner.hpp index a69c316..c931449 100644 --- a/include/indicators/progress_spinner.hpp +++ b/include/indicators/progress_spinner.hpp @@ -58,7 +58,7 @@ public: void *>::type = nullptr> explicit ProgressSpinner(Args &&... args) : settings_(details::get( - option::ForegroundColor{Color::white}, std::forward(args)...), + option::ForegroundColor{Color::unspecified}, std::forward(args)...), details::get( option::PrefixText{}, std::forward(args)...), details::get( @@ -182,8 +182,8 @@ private: auto now = std::chrono::high_resolution_clock::now(); auto elapsed = std::chrono::duration_cast(now - start_time_point_); - std::cout << termcolor::bold; - details::set_stream_color(std::cout, get_value()); + if (get_value() != Color::unspecified) + details::set_stream_color(std::cout, get_value()); std::cout << get_value(); if (get_value()) std::cout << get_value()