Mercurial > hg > octave-nkf
diff libgui/src/m-editor/file-editor-tab.cc @ 16413:28136851099a
remove _terminal pointer from main_window, it is contained by other Qt object
* main-window.cc, main-window.h (main_window::_terminal):
Delete member variable.
(main_window::get_terminal_view, main_window::get_history_dock_widget,
main_window::get_files_dock_widget, main_window::is_closing):
Delete unused functions.
(main_window::notice_settings): New argument settings.
(main_window::handle_command_double_clicked): Don't sent terminal a
command here.
(main_window::process_settings_dialog_request): New argument, settings.
(main_window::read_settings): New argument, settings.
Produce debug message if settings is nul.
(main_window::write_settings): Produce debug message if settings is nul.
(main_window::construct): Make _terminal a local variable and rename
to terminal. Change all uses.
* QTerminal.cc: New file.
(QTerminal::relay_command): New slot.
* QTerminal.h (QTerminal::notice_settings,
QTerminal::notice_settings): New slots.
* QTerminal: Delete.
* files_dockwidget.cc, files_dockwidget.h
(files_dock_widget::notice_settings): New argument, settings.
* file_editor_tab.cc, file_editor_tab.h (file_editor_tab::notice_settings):
Changed the slot to accept QSettings pointer rather than retrieve from
resource_manager. (file_editor_tabl::file_editor_tab,
file_editor_tab::update_lexer): Check that settings is not null
before using.
* file_editor.cc, file_editor.h (file_editor::notice_settings,
file_editor::fetab_settings_changed): New argument, settings.
(file_editor::update_lexer, file_editor::file_editor_tab): Check that
settings is not null before using.
* qterminal-module.mk (qterminal_libqterminal_la_SOURCES): Add
QTerminal.cc to the list.
author | Daniel J Sebald <daniel.sebald@ieee.org> |
---|---|
date | Wed, 03 Apr 2013 00:10:56 -0400 |
parents | 7fa90eb41240 |
children | 919796a440c6 |
line wrap: on
line diff
--- a/libgui/src/m-editor/file-editor-tab.cc +++ b/libgui/src/m-editor/file-editor-tab.cc @@ -116,7 +116,9 @@ connect (&_file_system_watcher, SIGNAL (fileChanged (QString)), this, SLOT (file_has_changed (QString))); - notice_settings (); + QSettings *settings = resource_manager::get_settings (); + if (settings) + notice_settings (settings); } file_editor_tab::~file_editor_tab () @@ -242,7 +244,8 @@ } QSettings *settings = resource_manager::get_settings (); - lexer->readSettings (*settings); + if (settings) + lexer->readSettings (*settings); _edit_area->setLexer (lexer); } @@ -1003,14 +1006,12 @@ } void -file_editor_tab::notice_settings () +file_editor_tab::notice_settings (const QSettings *settings) { + // QSettings pointer is checked before emitting. + update_lexer (); QFontMetrics lexer_font_metrics (_edit_area->lexer ()->defaultFont (0)); - QSettings *settings = resource_manager::get_settings (); - - if (settings==NULL) - return; // this shouldn't happen! _edit_area->setCaretLineVisible(settings->value ("editor/highlightCurrentLine",true).toBool ());