diff libgui/src/main-window.cc @ 16431:5982d469f79b

use signal for setting, appending to, and clearing history widget * history-dockwidget.h, history-dockwidget.cc (history_dock_widget::request_history_model_update, history_dock_widget::reset_model, history_dock_widget::update_history_callback): Delete. (history_dock_widget::set_history, history_dock_widget::append_history, history_dock_widget::clear_history): New functions. * main-window.h, main-window.cc (main_window::update_history): Delete. (main_window::construct): Delete connection from _octave_qt_event_listener::update_history_signal to main_window::update_history. Connect _octave_qt_link::set_history_signal to _history_dock_widget::set_history. Connect _octave_qt_link::append_history_signal to _history_dock_widget::append_history. Connect _octave_qt_link::clear_history_signal to _history_dock_widget::clear_history. (main_window::clear_history_callback): Call Fhistory instead of command_history::clear and _history_dock_widget->reset_model. * octave-main-thread.cc (octave_main_thread::run): Don't call octave_link::update_history. * octave-qt-event-listener.h, octave-qt-event-listener.cc (octave_qt_event_listener::update_history): Delete. (octave_qt_event_listener::update_history_signal): Delete. * octave-qt-link.h, octave-qt-link.cc (octave_qt_link::do_update_history): Delete. (octave_qt_link::do_set_history,octave_qt_link::do_append_history, octave_qt_link::do_clear_history): New functions. (octave_qt_link::do_post_input_event): Don't call do_update_history. (set_history_signal, append_history_signal, clear_history_signal): New signals. * octave-event-listener.h (octave_event_listener::update_history): Delete. * input.cc (octave_base_reader::octave_gets): Call command_history::add. * oct-hist.cc (do_history): New option, -c. Call octave_link history functions as needed. (initialize_history): Call octave_link::set_history. (octave_history_write_timestamp): Call octave_link::append_history. (Fedit_history): Document -c. * octave-link.h (octave_link::update_history, octave_link::do_update_history): Delete. (octave_link::set_history, octave_link::append_history, octave_link::clear_history, octave_link::do_set_history, octave_link::do_append_history, octave_link::do_clear_history, octave_link::do_pre_input_event, octave_link::do_post_input_event): New functions.
author John W. Eaton <jwe@octave.org>
date Thu, 04 Apr 2013 13:20:43 -0400
parents 203976ae18d1
children fe4cd846c3e7
line wrap: on
line diff
--- a/libgui/src/main-window.cc	Thu Apr 04 09:28:47 2013 -0400
+++ b/libgui/src/main-window.cc	Thu Apr 04 13:20:43 2013 -0400
@@ -156,7 +156,7 @@
 }
 
 void
-main_window::handle_clear_history_request()
+main_window::handle_clear_history_request (void)
 {
   octave_link::post_event (this, &main_window::clear_history_callback);
 }
@@ -289,12 +289,6 @@
 }
 
 void
-main_window::update_history (void)
-{
-  _history_dock_widget->update_history_callback ();
-}
-
-void
 main_window::change_current_working_directory ()
 {
   QString directory =
@@ -1145,11 +1139,6 @@
            SLOT (update_workspace ()));
 
   connect (_octave_qt_event_listener,
-           SIGNAL (update_history_signal ()),
-           this,
-           SLOT (update_history ()));
-
-  connect (_octave_qt_event_listener,
            SIGNAL (entered_debug_mode_signal ()),
            this,
            SLOT(handle_entered_debug_mode ()));
@@ -1164,6 +1153,18 @@
   _octave_qt_link = new octave_qt_link ();
 
   connect (_octave_qt_link,
+           SIGNAL (set_history_signal (const QStringList&)),
+           _history_dock_widget, SLOT (set_history (const QStringList&)));
+
+  connect (_octave_qt_link,
+           SIGNAL (append_history_signal (const QString&)),
+           _history_dock_widget, SLOT (append_history (const QString&)));
+
+  connect (_octave_qt_link,
+           SIGNAL (clear_history_signal (void)),
+           _history_dock_widget, SLOT (clear_history (void)));
+
+  connect (_octave_qt_link,
            SIGNAL (update_dbstop_marker_signal (bool, const QString&, int)),
            _file_editor,
            SLOT (handle_update_dbstop_marker_request (bool, const QString&, int)));
@@ -1209,9 +1210,7 @@
 void
 main_window::clear_history_callback (void)
 {
-  command_history::clear ();
-
-  _history_dock_widget->reset_model ();
+  Fhistory (ovl ("-c"));
 }
 
 void