mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-09-01 18:27:20 +02:00
CmdContext: Add initial implementation of the delete subcommand
This commit is contained in:
parent
e91063426a
commit
636f6bfd96
2 changed files with 31 additions and 0 deletions
|
@ -55,8 +55,11 @@ int CmdContext::execute (std::string& output)
|
||||||
if (words.size () > 0)
|
if (words.size () > 0)
|
||||||
{
|
{
|
||||||
std::string subcommand = words[0];
|
std::string subcommand = words[0];
|
||||||
|
|
||||||
if (subcommand == "define")
|
if (subcommand == "define")
|
||||||
rc = defineContext(words, out);
|
rc = defineContext(words, out);
|
||||||
|
else if (subcommand == "delete")
|
||||||
|
rc = deleteContext(words, out);
|
||||||
}
|
}
|
||||||
|
|
||||||
output = out.str ();
|
output = out.str ();
|
||||||
|
@ -111,6 +114,33 @@ int CmdContext::defineContext (std::vector <std::string>& words, std::stringstre
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
int CmdContext::deleteContext (std::vector <std::string>& words, std::stringstream& out)
|
||||||
|
{
|
||||||
|
// task context delete home
|
||||||
|
if (words.size () > 1)
|
||||||
|
{
|
||||||
|
std::string name = "context." + words[1];
|
||||||
|
|
||||||
|
bool confirmation = context.config.getBoolean ("confirmation");
|
||||||
|
int status = CmdConfig::unsetConfigVariable(name, confirmation);
|
||||||
|
|
||||||
|
std::string currentContext = context.config.get ("context");
|
||||||
|
|
||||||
|
if (currentContext == words[1])
|
||||||
|
CmdConfig::unsetConfigVariable("context", false);
|
||||||
|
|
||||||
|
if (status == 0)
|
||||||
|
out << "Context '" << words[1] << "' successfully undefined." << "\n";
|
||||||
|
else
|
||||||
|
out << "Context '" << words[1] << "' was not undefined." << "\n";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
throw "You have to specify context name.";
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
CmdCompletionContext::CmdCompletionContext ()
|
CmdCompletionContext::CmdCompletionContext ()
|
||||||
{
|
{
|
||||||
|
|
|
@ -37,6 +37,7 @@ public:
|
||||||
int execute (std::string&);
|
int execute (std::string&);
|
||||||
std::string joinWords (std::vector <std::string>& words, unsigned int from, unsigned int to = 0);
|
std::string joinWords (std::vector <std::string>& words, unsigned int from, unsigned int to = 0);
|
||||||
int defineContext (std::vector <std::string>& words, std::stringstream& out);
|
int defineContext (std::vector <std::string>& words, std::stringstream& out);
|
||||||
|
int deleteContext (std::vector <std::string>& words, std::stringstream& out);
|
||||||
};
|
};
|
||||||
|
|
||||||
class CmdCompletionContext : public Command
|
class CmdCompletionContext : public Command
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue