From cd6c681ba5b0a753a4e1bb68b89e54e5ec2d0b9e Mon Sep 17 00:00:00 2001 From: Paul Beckingham Date: Fri, 14 Oct 2011 01:51:43 -0400 Subject: [PATCH] Feedback - Implemented consistent 'affected' feedback across all write commands. --- src/feedback.cpp | 40 ++++++++++++++++++++++++++++++++++------ src/main.h | 3 ++- 2 files changed, 36 insertions(+), 7 deletions(-) diff --git a/src/feedback.cpp b/src/feedback.cpp index 063310dfb..2b3c32a69 100644 --- a/src/feedback.cpp +++ b/src/feedback.cpp @@ -25,10 +25,10 @@ // //////////////////////////////////////////////////////////////////////////////// - -#include +#include #include #include +#include #include #include #include @@ -296,12 +296,40 @@ std::string renderAttribute (const std::string& name, const std::string& value) } //////////////////////////////////////////////////////////////////////////////// -// TODO Implement all the post-command feedback here. This includes project -// completion percentages, "3 tasks modified", all warnings, and so on. -std::string feedback (const Task&, const Task&) +// Implements: +// Deleted 3 tasks +// +// The 'effect' string should contain: +// {1} Quantity +void feedback_affected (const std::string& effect, int quantity) { + if (context.verbose ("affected") || + context.config.getBoolean ("echo.command")) // Deprecated 2.0 + { + std::cout << format (effect, quantity) + << "\n"; + } +} - return ""; +//////////////////////////////////////////////////////////////////////////////// +// Implements: +// Deleting task 123 'This is a test' +// +// The 'effect' string should contain: +// {1} ID +// {2} Description +void feedback_affected (const std::string& effect, const Task& task) +{ + if (context.verbose ("affected") || + context.config.getBoolean ("echo.command")) // Deprecated 2.0 + { + if (task.id) + std::cout << format (effect, task.id, task.get ("description")) + << "\n"; + else + std::cout << format (effect, task.get ("uuid"), task.get ("description")) + << "\n"; + } } //////////////////////////////////////////////////////////////////////////////// diff --git a/src/main.h b/src/main.h index 13880b049..f09c4a725 100644 --- a/src/main.h +++ b/src/main.h @@ -74,7 +74,8 @@ bool taskDiff (const Task&, const Task&); std::string taskDifferences (const Task&, const Task&); std::string taskInfoDifferences (const Task&, const Task&); std::string renderAttribute (const std::string&, const std::string&); -std::string feedback (const Task&, const Task&); +void feedback_affected (const std::string&, const Task&); +void feedback_affected (const std::string&, int); // sort.cpp void sort_tasks (std::vector &, std::vector &, const std::string&);