Mercurial > hg > octave-lyh
changeset 16423:04c4dd7fd3ce
use signal for octave_link::update_dbstop_marker
* octave-qt-link.h (octave_qt_link): Derive from QObject.
(octave_qt_link::update_dbstop_marker_signal): New signal.
* libgui/src/module.mk (octave_gui_MOC): Include
src/moc-octave-qt-link.cc in the list.
* main-window.cc (main_window::construct): Connect
octave_qt_link::update_dbstop_marker_signal to
file_editor::handle_update_dbstop_marker_request.
* octave-qt-link.cc (octave_qt_link::do_update_breakpoint):
Emit signal instead of using event listener.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 04 Apr 2013 00:03:45 -0400 |
parents | 436f6e0e4268 |
children | ad052cdc89ad |
files | libgui/src/main-window.cc libgui/src/module.mk libgui/src/octave-gui.cc libgui/src/octave-qt-link.cc libgui/src/octave-qt-link.h |
diffstat | 5 files changed, 18 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/libgui/src/main-window.cc +++ b/libgui/src/main-window.cc @@ -1214,6 +1214,11 @@ _octave_qt_link = new octave_qt_link (); + 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))); + octave_link::connect_link (_octave_qt_link); octave_link::register_event_listener (_octave_qt_event_listener);
--- a/libgui/src/module.mk +++ b/libgui/src/module.mk @@ -73,6 +73,7 @@ src/moc-main-window.cc \ src/moc-octave-main-thread.cc \ src/moc-octave-qt-event-listener.cc \ + src/moc-octave-qt-link.cc \ src/moc-settings-dialog.cc \ src/moc-terminal-dockwidget.cc \ src/moc-color-picker.cc \
--- a/libgui/src/octave-gui.cc +++ b/libgui/src/octave-gui.cc @@ -80,7 +80,7 @@ int octave_start_gui (int argc, char *argv[]) { - dissociate_terminal (); + // dissociate_terminal (); QApplication application (argc, argv);
--- a/libgui/src/octave-qt-link.cc +++ b/libgui/src/octave-qt-link.cc @@ -107,12 +107,7 @@ octave_qt_link::do_update_breakpoint (bool insert, const std::string& file, int line) { - if (event_listener) - { - event_listener->update_dbstop_marker (insert, file, line); - - do_process_events (); - } + emit update_dbstop_marker_signal (insert, QString::fromStdString (file), line); } bool
--- a/libgui/src/octave-qt-link.h +++ b/libgui/src/octave-qt-link.h @@ -27,6 +27,9 @@ #include <string> +#include <QObject> +#include <QString> + #include "octave-link.h" #include "octave-main-thread.h" @@ -38,8 +41,10 @@ // buffering access operations to octave and executing them in the // readline event hook, which lives in the octave thread. -class octave_qt_link : public octave_link +class octave_qt_link : public QObject, public octave_link { + Q_OBJECT + public: octave_qt_link (void); @@ -73,6 +78,10 @@ // Thread running octave_main. octave_main_thread *main_thread; + +signals: + + void update_dbstop_marker_signal (bool insert, const QString& file, int line); }; #endif