diff libgui/src/files-dock-widget.cc @ 16504:49b059bf27c7

allow loading files from file browser * files-dock-widget.h, files-dock-widget.cc (files_dock_widget::contextmenu_requested): Create menu item for loading files. (files_dock_widget::contextmenu_load): New function. (files_dock_widget::load_file_signal): New signal. * main-window.h, main-window.cc (main_window::construct): Connect file_browser_window::load_file_signal to main_window::handle_load_workspace_request. (main_window::load_workspace_callback): Update workspace after loading file. (main_window::handle_load_workspace_request): New argument for passing file name.
author John W. Eaton <jwe@octave.org>
date Fri, 12 Apr 2013 14:51:47 -0400
parents c1ff738d606d
children 8a4960f2c7c3
line wrap: on
line diff
--- a/libgui/src/files-dock-widget.cc	Fri Apr 12 14:51:39 2013 -0400
+++ b/libgui/src/files-dock-widget.cc	Fri Apr 12 14:51:47 2013 -0400
@@ -283,6 +283,7 @@
       QFileInfo info = _file_system_model->fileInfo(index);
 
       menu.addAction(tr("Open"), this, SLOT(contextmenu_open(bool)));
+      menu.addAction(tr("Load Data"), this, SLOT(contextmenu_load(bool)));
       menu.addSeparator();
       menu.addAction(tr("Rename"), this, SLOT(contextmenu_rename(bool)));
       menu.addAction(tr("Delete"), this, SLOT(contextmenu_delete(bool)));
@@ -313,6 +314,22 @@
 }
 
 void 
+files_dock_widget::contextmenu_load (bool)
+{
+  QItemSelectionModel *m = _file_tree_view->selectionModel ();
+  QModelIndexList rows = m->selectedRows ();
+
+  if (rows.size () > 0)
+    {
+      QModelIndex index = rows[0];
+
+      QFileInfo info = _file_system_model->fileInfo(index);
+
+      emit load_file_signal (info.fileName ());
+    }
+}
+
+void 
 files_dock_widget::contextmenu_rename (bool)
 {
   QItemSelectionModel *m = _file_tree_view->selectionModel ();