# HG changeset patch # User Torsten Lilge # Date 1601323021 -7200 # Node ID 03c0024f95c74b2c522760329bf4f01f7e2a60be # Parent 6d68413cfd2def1fb7f4a939918633c9a83ec1f4 avoid using bare pointers for symbol lists in editor (bug #56990) * octave-qscintilla.cc (octave_qscintilla): remove obsolete initializations; (event): get symbol names if in debug mode and tool tip event, if word under cursor is in symbol names, get symbol values and insert value into tool tip; * octave-qscintilla.h: remove obsolete class variables for symbol list pointers * workspace-model.h: return const QStringLists for symbol names and values instead of pointers diff -r 6d68413cfd2d -r 03c0024f95c7 libgui/src/m-editor/octave-qscintilla.cc --- a/libgui/src/m-editor/octave-qscintilla.cc Mon Sep 28 21:48:03 2020 +0200 +++ b/libgui/src/m-editor/octave-qscintilla.cc Mon Sep 28 21:57:01 2020 +0200 @@ -111,8 +111,6 @@ octave_qscintilla::octave_qscintilla (QWidget *p, base_qobject& oct_qobj) : QsciScintilla (p), m_octave_qobj (oct_qobj), m_debug_mode (false), - m_symbol_names (m_octave_qobj.get_workspace_model ()->get_symbol_names ()), - m_symbol_values (m_octave_qobj.get_workspace_model ()->get_symbol_values ()), m_word_at_cursor (), m_selection (), m_selection_replacement (), m_selection_line (-1), m_selection_col (-1), m_indicator_id (1), m_tooltip_font (QToolTip::font ()) @@ -1127,11 +1125,15 @@ { QHelpEvent *help_e = static_cast(e); QString variable = wordAtPoint (help_e->pos()); - int symbol_idx = m_symbol_names->indexOf (variable); + QStringList symbol_names + = m_octave_qobj.get_workspace_model ()->get_symbol_names (); + int symbol_idx = symbol_names.indexOf (variable); if (symbol_idx > -1) { + QStringList symbol_values + = m_octave_qobj.get_workspace_model ()->get_symbol_values (); QToolTip::showText (help_e->globalPos(), variable - + " = " + m_symbol_values->at (symbol_idx)); + + " = " + symbol_values.at (symbol_idx)); } else { diff -r 6d68413cfd2d -r 03c0024f95c7 libgui/src/m-editor/octave-qscintilla.h --- a/libgui/src/m-editor/octave-qscintilla.h Mon Sep 28 21:48:03 2020 +0200 +++ b/libgui/src/m-editor/octave-qscintilla.h Mon Sep 28 21:57:01 2020 +0200 @@ -140,8 +140,6 @@ base_qobject& m_octave_qobj; bool m_debug_mode; - QStringList *m_symbol_names; - QStringList *m_symbol_values; QString m_word_at_cursor; diff -r 6d68413cfd2d -r 03c0024f95c7 libgui/src/workspace-model.h --- a/libgui/src/workspace-model.h Mon Sep 28 21:48:03 2020 +0200 +++ b/libgui/src/workspace-model.h Mon Sep 28 21:57:01 2020 +0200 @@ -75,8 +75,8 @@ symbol_info_list get_symbol_info (void) const { return m_syminfo_list; } - QStringList *get_symbol_names (void) { return &m_symbols; } - QStringList *get_symbol_values (void) { return &m_values; } + QStringList get_symbol_names (void) const { return m_symbols; } + QStringList get_symbol_values (void) const { return m_values; } signals: