mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-08-07 13:48:33 +02:00
Code Cleanup
- Replaced multiple Task:setX methods with Task::setAsNow (x).
This commit is contained in:
parent
cf5dbbb9ee
commit
b5f3cfd9a3
6 changed files with 15 additions and 47 deletions
42
src/Task.cpp
42
src/Task.cpp
|
@ -173,52 +173,24 @@ Task::status Task::textToStatus (const std::string& input)
|
|||
std::string Task::statusToText (Task::status s)
|
||||
{
|
||||
if (s == Task::pending) return "pending";
|
||||
else if (s == Task::completed) return "completed";
|
||||
else if (s == Task::deleted) return "deleted";
|
||||
else if (s == Task::recurring) return "recurring";
|
||||
else if (s == Task::waiting) return "waiting";
|
||||
else if (s == Task::completed) return "completed";
|
||||
else if (s == Task::deleted) return "deleted";
|
||||
|
||||
return "pending";
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Task::setEntry ()
|
||||
void Task::setAsNow (const std::string& att)
|
||||
{
|
||||
char now[16];
|
||||
sprintf (now, "%u", (unsigned int) time (NULL));
|
||||
set ("entry", now);
|
||||
set (att, now);
|
||||
|
||||
recalc_urgency = true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Task::setEnd ()
|
||||
{
|
||||
char now[16];
|
||||
sprintf (now, "%u", (unsigned int) time (NULL));
|
||||
set ("end", now);
|
||||
|
||||
recalc_urgency = true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Task::setStart ()
|
||||
{
|
||||
char now[16];
|
||||
sprintf (now, "%u", (unsigned int) time (NULL));
|
||||
set ("start", now);
|
||||
|
||||
recalc_urgency = true;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
void Task::setModified ()
|
||||
{
|
||||
char now[16];
|
||||
sprintf (now, "%u", (unsigned int) time (NULL));
|
||||
set ("modified", now);
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
bool Task::has (const std::string& name) const
|
||||
{
|
||||
|
@ -1485,16 +1457,16 @@ void Task::validate (bool applyDefault /* = true */)
|
|||
#ifdef PRODUCT_TASKWARRIOR
|
||||
// Provide an entry date unless user already specified one.
|
||||
if (!has ("entry") || get ("entry") == "")
|
||||
setEntry ();
|
||||
setAsNow ("entry");
|
||||
|
||||
// Completed tasks need an end date, so inherit the entry date.
|
||||
if ((status == Task::completed || status == Task::deleted) &&
|
||||
(! has ("end") || get ("end") == ""))
|
||||
setEnd ();
|
||||
setAsNow ("end");
|
||||
|
||||
// Provide an entry date unless user already specified one.
|
||||
if (!has ("modified") || get ("modified") == "")
|
||||
setModified ();
|
||||
setAsNow ("modified");
|
||||
|
||||
if (applyDefault)
|
||||
{
|
||||
|
|
|
@ -90,11 +90,7 @@ public:
|
|||
static status textToStatus (const std::string&);
|
||||
static std::string statusToText (status);
|
||||
|
||||
void setEntry ();
|
||||
void setEnd ();
|
||||
void setStart ();
|
||||
void setModified ();
|
||||
|
||||
void setAsNow (const std::string&);
|
||||
bool has (const std::string&) const;
|
||||
std::vector <std::string> all ();
|
||||
const std::string get (const std::string&) const;
|
||||
|
|
|
@ -87,7 +87,7 @@ int CmdDelete::execute (std::string& output)
|
|||
task->modify (Task::modAnnotate);
|
||||
task->setStatus (Task::deleted);
|
||||
if (! task->has ("end"))
|
||||
task->setEnd ();
|
||||
task->setAsNow ("end");
|
||||
|
||||
if (permission (*task, question, filtered.size ()))
|
||||
{
|
||||
|
@ -112,7 +112,7 @@ int CmdDelete::execute (std::string& output)
|
|||
sibling->modify (Task::modAnnotate);
|
||||
sibling->setStatus (Task::deleted);
|
||||
if (! sibling->has ("end"))
|
||||
sibling->setEnd ();
|
||||
sibling->setAsNow ("end");
|
||||
|
||||
updateRecurrenceMask (*sibling);
|
||||
context.tdb2.modify (*sibling);
|
||||
|
@ -126,7 +126,7 @@ int CmdDelete::execute (std::string& output)
|
|||
context.tdb2.get (task->get ("parent"), parent);
|
||||
parent.setStatus (Task::deleted);
|
||||
if (! parent.has ("end"))
|
||||
parent.setEnd ();
|
||||
parent.setAsNow ("end");
|
||||
|
||||
context.tdb2.modify (parent);
|
||||
}
|
||||
|
@ -145,7 +145,7 @@ int CmdDelete::execute (std::string& output)
|
|||
child->modify (Task::modAnnotate);
|
||||
child->setStatus (Task::deleted);
|
||||
if (! child->has ("end"))
|
||||
child->setEnd ();
|
||||
child->setAsNow ("end");
|
||||
|
||||
updateRecurrenceMask (*child);
|
||||
context.tdb2.modify (*child);
|
||||
|
|
|
@ -82,7 +82,7 @@ int CmdDone::execute (std::string& output)
|
|||
task->modify (Task::modAnnotate);
|
||||
task->setStatus (Task::completed);
|
||||
if (! task->has ("end"))
|
||||
task->setEnd ();
|
||||
task->setAsNow ("end");
|
||||
|
||||
// Stop the task, if started.
|
||||
if (task->has ("start"))
|
||||
|
|
|
@ -78,7 +78,7 @@ int CmdStart::execute (std::string& output)
|
|||
task->id,
|
||||
task->get ("description"));
|
||||
task->modify (Task::modAnnotate);
|
||||
task->setStart ();
|
||||
task->setAsNow ("start");
|
||||
|
||||
if (context.config.getBoolean ("journal.time"))
|
||||
task->addAnnotation (context.config.get ("journal.time.start.annotation"));
|
||||
|
|
|
@ -93,7 +93,7 @@ void handleRecurrence ()
|
|||
rec.id = context.tdb2.next_id (); // New ID.
|
||||
rec.set ("uuid", uuid ()); // New UUID.
|
||||
rec.set ("parent", t->get ("uuid")); // Remember mom.
|
||||
rec.setEntry (); // New entry date.
|
||||
rec.setAsNow ("entry"); // New entry date.
|
||||
|
||||
char dueDate[16];
|
||||
sprintf (dueDate, "%u", (unsigned int) d->toEpoch ());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue