Mercurial > hg > octave-nkf
diff libgui/src/m-editor/file-editor-tab.h @ 16547:3cd80afc3509
improve debugging with the GUI
* dialog.h, dialog.cc (cd_or_addpath_dialog): New class.
(QUIWidgetCreator::signal_debug_cd_or_addpath): New function.
(QUIWidgetCreator::create_debug_cd_or_addpath_dialog): New signal.
* file-editor-tab.h, file-editor-tab.cc
(file_editor_tab::file_in_path): New function.
(file_editor_tab::add_breakpoint_callback,
file_editor_tab::remove_breakpoint_callback,
file_editor_tab::remove_all_breakpoints_callback): Use file_in_path.
Don't cd to the directory containing the file. Don't add 1 to the
line number.
(file_editor_tab::request_add_breakpoint,
file_editor_tab::request_remove_breakpoint):
Add 1 to the line number.
(file_editor_tab::insert_debugger_pointer,
file_editor_tab::delete_debugger_pointer,
file_editor_tab::do_breakpoint_marker): Subtract 1 from line.
(file_editor_tab::bp_info): Also cache full file name. Change all uses.
* file-editor.h, file-editor.cc (file_editor::request_open_file,
file_editor::handle_delete_debugger_pointer_request):
Don't subtract 1 from line numbers.
* main-window.h, main-window.cc (main_window::connect_uiwidget_links):
Connect uiwidget_creator::create_debug_cd_or_addpath_dialog to
main_window::handle_create_debug_cd_or_addpath_dialog.
(main_window::handle_create_debug_cd_or_addpath_dialog):
New function.
* octave-qt-link.h, octave-qt-link.cc
(octave_qt_link::do_debug_cd_or_addpath_error): New function.
* load-path.h, load-path.cc (load_path::contains_canonical,
load_path::do_contains_canonical): New functions.
* octave-link.h (octave_link::debug_cd_or_addpath_error,
octave_link::do_debug_cd_or_addpath_error): New functions.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Fri, 19 Apr 2013 17:36:40 -0400 |
parents | 744ff2fe11ce |
children | 5fc1ce2947bd |
line wrap: on
line diff
--- a/libgui/src/m-editor/file-editor-tab.h +++ b/libgui/src/m-editor/file-editor-tab.h @@ -122,10 +122,12 @@ struct bp_info { - bp_info (const QString& p, const QString& fn, int l) - : path (p.toStdString ()), function_name (fn.toStdString ()), line (l) + bp_info (const QString& f, const QString& p, const QString& fn, int l) + : file (f.toStdString ()), path (p.toStdString ()), + function_name (fn.toStdString ()), line (l) { } + std::string file; std::string path; std::string function_name; int line; @@ -143,6 +145,9 @@ void do_comment_selected_text (bool comment); void run_file_callback (void); + + bool file_in_path (const bp_info& info); + void add_breakpoint_callback (const bp_info& info); void remove_breakpoint_callback (const bp_info& info); void remove_all_breakpoints_callback (const bp_info& info);