improved autocomplete and history

This commit is contained in:
Lendemor 2017-08-31 20:15:42 +02:00
parent 51e3b949c4
commit c70453ff65
3 changed files with 23 additions and 22 deletions

View File

@ -182,7 +182,7 @@ std::string TextInputNode::getText()
void TextInputNode::clearText()
{
m_history.push_back(m_text);
m_history_pos++;
m_history_pos=m_history.size();
m_text.clear();
}

View File

@ -73,6 +73,11 @@ void SparrowShell::AutocompletionCallBack::exec(){
std::vector<std::string> results = m_shell->m_script->possibleCompletion(text);
if (!results.empty()){
if(results.size() == 1){
std::string text = results[0];
text+="()";
m_text_input_node->setText(text);
}else{
std:: string common_prefix = results[0];
for( auto result : results){
int i = 0;
@ -84,12 +89,13 @@ void SparrowShell::AutocompletionCallBack::exec(){
common_prefix = cp;
}
m_text_input_node->setText(common_prefix);
}
std::string output = "";
for(std::string& fun : results)
output+=fun+" ";
m_shell->out(output,glm::vec3(1,1,0));
}
}
}
void SparrowShell::InputCallBack::exec(){
std::string text = m_text_input_node->getText();

View File

@ -438,13 +438,8 @@ int main(){
}*/
// shell output tests
engine.getShell()->out("Hello World!");
engine.getShell()->out("Starting test :");
// engine.getScene()->updateShaders();
// BackGroundNode* bgrn = new BackGroundNode(glm::vec2(10),glm::vec3(1.,1.,1.),1,1);
// engine.getScene()->getRootObject()->addChild(bgrn);
// engine.getShell()->out("Hello World!");
// engine.getShell()->out("Starting test :");
// preparing shaders and launching the engine
engine.start();