|
|
@ -7,6 +7,7 @@
|
|
|
|
#include <ColorText.h>
|
|
|
|
#include <ColorText.h>
|
|
|
|
|
|
|
|
|
|
|
|
#include <modules/Screen.h>
|
|
|
|
#include <modules/Screen.h>
|
|
|
|
|
|
|
|
#include <modules/Gui.h>
|
|
|
|
|
|
|
|
|
|
|
|
#include <set>
|
|
|
|
#include <set>
|
|
|
|
#include <list>
|
|
|
|
#include <list>
|
|
|
@ -55,9 +56,14 @@ public:
|
|
|
|
df::global::gps->display_frames=show_fps;
|
|
|
|
df::global::gps->display_frames=show_fps;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void add_response(color_value v,std::string s)
|
|
|
|
void add_response(color_value v, std::string s)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
responses.push_back(std::make_pair(v,s));
|
|
|
|
std::stringstream ss(s);
|
|
|
|
|
|
|
|
std::string part;
|
|
|
|
|
|
|
|
while (std::getline(ss, part))
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
responses.push_back(std::make_pair(v, part + '\n'));
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
protected:
|
|
|
|
protected:
|
|
|
|
std::list<std::pair<color_value,std::string> > responses;
|
|
|
|
std::list<std::pair<color_value,std::string> > responses;
|
|
|
@ -166,6 +172,10 @@ void viewscreen_commandpromptst::feed(std::set<df::interface_key> *events)
|
|
|
|
DFHACK_PLUGIN("command-prompt");
|
|
|
|
DFHACK_PLUGIN("command-prompt");
|
|
|
|
command_result show_prompt(color_ostream &out, std::vector <std::string> & parameters)
|
|
|
|
command_result show_prompt(color_ostream &out, std::vector <std::string> & parameters)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
if (Gui::getCurFocus() == "dfhack/commandprompt")
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
Screen::dismiss(Gui::getCurViewscreen(true));
|
|
|
|
|
|
|
|
}
|
|
|
|
std::string params;
|
|
|
|
std::string params;
|
|
|
|
for(size_t i=0;i<parameters.size();i++)
|
|
|
|
for(size_t i=0;i<parameters.size();i++)
|
|
|
|
params+=parameters[i]+" ";
|
|
|
|
params+=parameters[i]+" ";
|
|
|
|