Mercurial > hg > octave-lyh
view libgui/src/m-editor/lexer-octave-gui.h @ 16457:10edb6f1ae98
improve encapsulation of file editor window object
* file-editor-interface.h
(file_editor_interface::connect_visibility_changed): New function.
* file-editor.h, file-editor.cc (file_editor::handle_visibility,
file_editor::focus, file_editor::connect_visibility_changed):
New functions.
(file_editor::construct): Connect main_window::new_file_signal to
file_editor::new_file.
* main-window.cc (main_window::editor_window): Rename from
_file_editor. Change all uses.
(create_default_editor): New static function.
(main_window::main_window): Use it to initialize editor_window.
(main_window::new_file_signal, main_window::open_file_signal):
New signals.
(main_window::new_file, main_window::open_file): Emit signals instead
of calling file_editor functions directly.
(main_window::focus_editor, main_window::handle_editor_visible):
Delete.
(main_window::connect_visibility_changed): Call
editor_window->connect_visibility_changed.
(main_window::construct): Don't create _file_editor.
(main_window::construct_file_menu): Connect _open_action::triggered to
editor_window::request_open_file instead of main_window::open_file.
Connect _new_script_action::triggered to
editor_window::request_new_file instead of main_window::new_file.
(main_window::construct_new_menu): Connect editor_action::triggered to
editor_window::focus instead of main_window::focus_editor.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Sun, 07 Apr 2013 05:45:23 -0400 |
parents | 7fa90eb41240 |
children | 3781abc74540 |
line wrap: on
line source
/* Copyright (C) 2011-2012 Jacob Dawid This file is part of Octave. Octave is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. Octave is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Octave; see the file COPYING. If not, see <http://www.gnu.org/licenses/>. */ #ifndef LEXEROCTAVE_H #define LEXEROCTAVE_H #include "resource-manager.h" #include <QObject> #include <Qsci/qsciglobal.h> #include <Qsci/qscilexeroctave.h> #include <Qsci/qsciapis.h> class lexer_octave_gui : public QsciLexerOctave { Q_OBJECT public: lexer_octave_gui (QObject *parent = 0); ~lexer_octave_gui (); virtual const char *keywords (int set) const; private: lexer_octave_gui (const lexer_octave_gui &); lexer_octave_gui &operator= (const lexer_octave_gui &); QsciAPIs *lexer_api; }; #endif