diff libgui/src/files-dock-widget.cc @ 16635:25e418d23a4b

fix running files from file browser's context menu * main-window.cc(run_file_in_terminal): new slot for run_file_signal (run_file_callback): callback for running files after checking the path * main-window.h: new functions run_file_in_terminal und run_file_callback) * files-dock-widget.cc(constructor): connect signal to slot for running files (contextmenu_run): emit run_file_signal with QFileInfo as parameter * files-dock-widget.h: run_file_signal has QFileInfo as parameter * file-editor-tab.cc: removed function run_file_callback (run_file): get file info of current file and emit run_file_signal (file_in_path): moved to octave_qt_link allowiung access from other widgets, updated calls to this functions * file-editor-tab.h: new run_file_signal with QFileInfo, removed functions run_file_callback and file_in_path * file-editor.cc(add_file_editor_tab): connect signal to slot for running files * octave-qt-link.cc/h(file_in_path): moved from file-editor-tab and made static
author Torsten <ttl@justmail.de>
date Fri, 10 May 2013 21:01:02 +0200
parents 38fef1e833ea
children d4bcb38ad056
line wrap: on
line diff
--- a/libgui/src/files-dock-widget.cc	Fri May 10 01:02:58 2013 +0100
+++ b/libgui/src/files-dock-widget.cc	Fri May 10 21:01:02 2013 +0200
@@ -194,8 +194,8 @@
   connect (_current_directory, SIGNAL (activated (const QString &)),
            this, SLOT (set_current_directory (const QString &)));
 
-  connect (this, SIGNAL (run_file_signal (const QString&)),
-           parent (), SLOT (execute_command_in_terminal (const QString&)));
+  connect (this, SIGNAL (run_file_signal (const QFileInfo&)),
+           parent (), SLOT (run_file_in_terminal (const QFileInfo&)));
 
   QCompleter *completer = new QCompleter (_file_system_model, this);
   _current_directory->setCompleter (completer);
@@ -452,12 +452,7 @@
       QModelIndex index = rows[0];
 
       QFileInfo info = _file_system_model->fileInfo(index);
-
-      QString function_name = info.fileName ();
-      // We have to cut off the suffix, because octave appends it.
-      function_name.chop (info.suffix ().length () + 1);
-      emit run_file_signal (QString ("cd \'%1\'\n%2\n")
-                            .arg(info.absolutePath ()).arg (function_name));
+      emit run_file_signal (info);
     }
 }
 
@@ -667,4 +662,3 @@
 {
   emit displayed_directory_changed (dir);
 }
-