diff --git a/modules/gui/src/gosty.cc b/modules/gui/src/gosty.cc
index c978300894b699abb22739ada6792126807780d3..574d2cffdbc4d63a9f229a1983369fa05b04541d 100644
--- a/modules/gui/src/gosty.cc
+++ b/modules/gui/src/gosty.cc
@@ -28,6 +28,7 @@
 #include <ost/gui/module_config.hh>
 #include <ost/log.hh>
 #include <ost/platform.hh>
+#include <ost/gui/python_shell/text_logger.hh>
 #include <ost/gui/python_shell/python_shell.hh>
 #include <ost/gui/python_shell/python_interpreter.hh>
 #include "gl_win.hh"
@@ -124,6 +125,19 @@ int setup_resources(QApplication& app)
    return 0;
 }
 
+
+void read_logger_settings(const QString& group_name, TextLogger* logger)
+{
+  QSettings settings;
+  settings.beginGroup("logging");
+  settings.beginGroup(group_name);   
+  logger->SetCodeLogging(settings.value("log_code",QVariant(false)).toBool());
+  logger->SetOutputLogging(settings.value("log_output",QVariant(true)).toBool());
+  logger->SetErrorLogging(settings.value("log_error",QVariant(true)).toBool());
+  settings.endGroup();
+  settings.endGroup();
+}
+
 int init_python_interpreter()
 {
   // the order of these two calls is important!
@@ -136,8 +150,23 @@ int init_python_interpreter()
   if(root == "") {
     return -1;
   }
+  // setup python shell logging
+  TextLogger* console_logger=new TextLogger(stdout);
+  read_logger_settings("console", console_logger);
+  if (console_logger->GetErrorLogging()) {
+    QObject::connect(&PythonInterpreter::Instance(),  
+                     SIGNAL(ErrorOutput(unsigned int, const QString &)),
+                     console_logger,
+                     SLOT(AppendOutput(unsigned int, const QString &)));
+  }
+  if (console_logger->GetOutputLogging()) {
+    QObject::connect(&PythonInterpreter::Instance(), 
+                     SIGNAL(Output(unsigned int, const QString &)),
+                     console_logger,
+                     SLOT(AppendOutput(unsigned int, const QString &)));
+  }  
   setup_python_search_path(root, py);
-  py.RunCommand("from ost import *");  
+  py.RunCommand("from ost import *");
   return 0;
 }
 
diff --git a/modules/gui/src/gosty_app.cc b/modules/gui/src/gosty_app.cc
index 91216a846132507ee2a96e4462fd5b36b3fd70d8..212cb1781ac0e706c87a8813f832cc7cc4d1a285 100644
--- a/modules/gui/src/gosty_app.cc
+++ b/modules/gui/src/gosty_app.cc
@@ -28,7 +28,6 @@
 #include <ost/gui/python_shell/python_shell.hh>
 #include <ost/gui/gl_win.hh>
 #include <ost/gui/tools/tool_options_win.hh>
-#include <ost/gui/python_shell/text_logger.hh>
 #include <ost/gui/perspective.hh>
 #include <ost/gui/main_area.hh>
 
@@ -110,39 +109,11 @@ ost::img::gui::DataViewer* GostyApp::CreateDataViewer(const ost::img::Data& d, c
   return new ost::img::gui::DataViewer(main_,d,name);
 }
 #endif
-
-void GostyApp::ReadLoggerSettings(const QString& group_name, TextLogger* logger)
-{
-  QSettings settings;
-  settings.beginGroup("logging");
-  settings.beginGroup(group_name);   
-  logger->SetCodeLogging(settings.value("log_code",QVariant(false)).toBool());
-  logger->SetOutputLogging(settings.value("log_output",QVariant(true)).toBool());
-  logger->SetErrorLogging(settings.value("log_error",QVariant(true)).toBool());
-  settings.endGroup();
-  settings.endGroup();
-}
   
-void GostyApp::SetupPyShellLogging()
-{
-  TextLogger* console_logger=new TextLogger(stdout);
-  this->ReadLoggerSettings("console", console_logger);
-  if (console_logger->GetErrorLogging()) {
-    connect(&PythonInterpreter::Instance(), SIGNAL(ErrorOutput(unsigned int, const QString &)),
-            console_logger,SLOT(AppendOutput(unsigned int, const QString &)));
-  }
-  if (console_logger->GetOutputLogging()) {
-    connect(&PythonInterpreter::Instance(), SIGNAL(Output(unsigned int, const QString &)),
-            console_logger,SLOT(AppendOutput(unsigned int, const QString &)));
-  }
-  // TODO: Setup file logging
-}
-
 PythonShell* GostyApp::GetPyShell()
 {
   if (py_shell_==NULL) {
     py_shell_=new PythonShell;
-    this->SetupPyShellLogging();
     py_shell_->SetDestroyOnClose(false);
   }
   return py_shell_;
diff --git a/modules/gui/src/gosty_app.hh b/modules/gui/src/gosty_app.hh
index f9ce1d851526513ed93f8d825ffc8a3ab74ca600..bf92ec71e3f7f6d53dbb2d865fdc2aad6db17860 100644
--- a/modules/gui/src/gosty_app.hh
+++ b/modules/gui/src/gosty_app.hh
@@ -142,8 +142,6 @@ public slots:
   /// \brief This slot must be called when the application is going to be terminated.
   void OnQuit();
 private:  
-  void SetupPyShellLogging();
-  void ReadLoggerSettings(const QString& group_name, TextLogger* logger);
   GostyApp();  
   PythonShell*      py_shell_;
   QWidget*          w_py_shell_;