X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fgui%2Fwidgets%2FScriptingDock.cxx;fp=src%2Fgui%2Fwidgets%2FScriptingDock.cxx;h=b3545703d3962266fb0e8afa69b310053ff39c7e;hp=0000000000000000000000000000000000000000;hb=9f0c6d8fbed0f25248f28acced4c7372dd259d7a;hpb=f599dfc8d14e90bbd2a2946c107cfeebc901184a diff --git a/src/gui/widgets/ScriptingDock.cxx b/src/gui/widgets/ScriptingDock.cxx new file mode 100644 index 0000000..b354570 --- /dev/null +++ b/src/gui/widgets/ScriptingDock.cxx @@ -0,0 +1,15 @@ +#include "ScriptingDock.hxx" + +void ScriptingDock::doEvaluate() { + QString text = line->text(); + line->clear(); + LOG4CXX_INFO(logger, "Evaluating String \"" << text.toStdString() << "\""); + browser->append(QString("> ") + text); + + SCM result_obj = scm_c_eval_string(text.toStdString().c_str()); + SCM result_str = scm_object_to_string(result_obj, SCM_UNDEFINED); + + SCM output = scm_get_output_string(guile_output_port); + browser->append(scm_to_locale_string(output)); + browser->append(scm_to_locale_string(result_str)); +}