Task: Improved method signature

This commit is contained in:
Paul Beckingham 2016-12-31 15:44:13 -05:00
parent 6c9660aee8
commit fab2979b87
6 changed files with 9 additions and 24 deletions

View file

@ -224,14 +224,10 @@ std::string CmdEdit::formatTask (Task task, const std::string& dateformat)
<< "# iMask: " << task.get ("imask") << '\n'
<< " Project: " << task.get ("project") << '\n';
std::vector <std::string> tags;
task.getTags (tags);
auto allTags = join (" ", tags);
if (verbose)
before << "# " << STRING_EDIT_TAG_SEP << '\n';
before << " Tags: " << allTags << '\n'
before << " Tags: " << join (" ", task.getTags ()) << '\n'
<< " Description: " << task.get ("description") << '\n'
<< " Created: " << formatDate (task, "entry", dateformat) << '\n'
<< " Started: " << formatDate (task, "start", dateformat) << '\n'
@ -353,9 +349,8 @@ void CmdEdit::parseTask (Task& task, const std::string& after, const std::string
// tags
value = findValue (after, "\n Tags:");
auto tags = split (value, ' ');
task.remove ("tags");
task.addTags (tags);
task.addTags (split (value, ' '));
// description.
value = findMultilineValue (after, "\n Description:", "\n Created:");

View file

@ -300,8 +300,7 @@ int CmdInfo::execute (std::string& output)
}
// tags ...
std::vector <std::string> tags;
task.getTags (tags);
auto tags = task.getTags ();
if (tags.size ())
{
auto allTags = join (" ", tags);

View file

@ -145,8 +145,7 @@ int CmdStats::execute (std::string& output)
task.getAnnotations (annotations);
annotationsT += annotations.size ();
std::vector <std::string> tags;
task.getTags (tags);
auto tags = task.getTags ();
if (tags.size ())
++taggedT;

View file

@ -79,10 +79,7 @@ int CmdTags::execute (std::string& output)
std::map <std::string, int> unique;
for (auto& task : filtered)
{
std::vector <std::string> tags;
task.getTags (tags);
for (auto& tag : tags)
for (auto& tag : task.getTags ())
if (unique.find (tag) != unique.end ())
unique[tag]++;
else
@ -182,13 +179,8 @@ int CmdCompletionTags::execute (std::string& output)
// names as keys.
std::map <std::string, int> unique;
for (auto& task : filtered)
{
std::vector <std::string> tags;
task.getTags (tags);
for (auto& tag : tags)
for (auto& tag : task.getTags ())
unique[tag] = 0;
}
// Add built-in tags to map.
unique["nocolor"] = 0;