Mercurial > hg > octave-lyh
diff libinterp/interpfcn/octave-link.h @ 16437:919796a440c6
use signal for changing directory
* files-dockwidget.cc (files_dock_widget::files_dock_widget):
Set title to "File Browser", not "Current Directory".
* files-dockwidget.h, files-dockwidget.cc
(files_dock_widget::change_directory_up): Rename from
files_dock_widget::do_up_directory. Change all uses.
(files_dock_widget::_last_current_directory): Delete variable and all
uses.
(files_dock_widget::accept_directory_line_edit): Rename from
handle_directory_entered. Change all uses.
(files_dock_widget::item_double_clicked): Call set_current_directory
instead of display_directory.
(files_dock_widget::set_current_directory): Also emit
displayed_directory_changed signal.
(files_dock_widget::display_directory): Sort list. Don't emit
displayed_directory_changed.
private:
* file-editor-tab.cc (file_editor_tab::run_file): Delete unused local
variable current_path.
* main-window.h, main-window.cc
(main_window::current_working_directory_has_changed): Delete function
and all uses.
(main_window::browse_for_directory): Rename from
main_window::change_current_working_directory. Change all uses.
(main_window::change_directory): Rename from
main_window::set_current_working_directory. Change all uses. Update
display.
(main_window::change_directory_up): Rename from
main_window::current_working_directory_up. Change all uses. Use
absolute path for ".." directory.
(main_window::accept_directory_line_edit): Rename from
main_window::current_working_directory_entered. Change all uses.
(main_window::construct): Set initial working directory to current
directory at startup.
* octave-qt-link.h, octave-qt-link.cc
(octave_qt_link::do_change_directory): New function.
(octave_qt_link::change_directory_signal): New signal.
* octave-event-listener.h
(octave_event_listener::current_directory_has_changed): Delete.
* dirfns.cc (octave_change_to_directory): Also call
octave_link::change_directory.
* octave-link.h, octave-link.cc (octave_link::last_cwd): Delete
variable and all uses.
(octave_link::do_generate_events): Don't track current directory or
post directory changed event.
(octave_link::last_working_directory,
octave_link::do_last_working_directory): Delete.
(octave_link::do_change_directory): Rename from
octave_link::do_last_working_directory.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 05 Apr 2013 00:40:12 -0400 |
parents | 5982d469f79b |
children | a971d8bdaadc |
line wrap: on
line diff
--- a/libinterp/interpfcn/octave-link.h +++ b/libinterp/interpfcn/octave-link.h @@ -108,10 +108,10 @@ instance->do_finished_readline_hook (); } - static std::string last_working_directory (void) + static void change_directory (const std::string& dir) { - return instance_ok () - ? instance->do_last_working_directory () : std::string (); + if (instance_ok ()) + instance->do_change_directory (dir); } static void update_workspace (void) @@ -201,9 +201,6 @@ // Event Queue. event_queue gui_event_queue; - // Stores the last known current working directory of octave. - std::string last_cwd; - bool debugging; void do_register_event_listener (octave_event_listener *oel); @@ -234,7 +231,7 @@ void do_entered_readline_hook (void) { } void do_finished_readline_hook (void) { } - std::string do_last_working_directory (void); + virtual void do_change_directory (const std::string& dir) = 0; virtual void do_update_workspace (void) = 0;