GNU Octave 7.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
octave::base_qobject Class Reference

Base class for Octave interfaces that use Qt. More...

#include "octave-qobject.h"

Inheritance diagram for octave::base_qobject:
Collaboration diagram for octave::base_qobject:

Public Slots

void close_gui (void)
 
void copy_image_to_clipboard (const QString &file, bool remove_file)
 
void execute_command (const QString &command)
 
void handle_variable_editor_update (void)
 
void interpreter_event (const fcn_callback &fcn)
 
void interpreter_event (const meth_callback &meth)
 
void interpreter_interrupt (void)
 
void interpreter_pause (void)
 
void interpreter_ready (void)
 
void interpreter_resume (void)
 
void interpreter_stop (void)
 
void show_command_history_window (void)
 
void show_community_news (int serial)
 
void show_documentation_window (const QString &file)
 
void show_file_browser_window (void)
 
void show_release_notes (void)
 
void show_terminal_window (void)
 
void show_variable_editor_window (const QString &name, const octave_value &value)
 
void show_workspace_window (void)
 
void start_gui (bool gui_app)
 

Public Member Functions

 base_qobject (qt_application &app_context, bool gui_app=false)
 
 ~base_qobject (void)
 
qt_applicationapp_context (void)
 
QPointer< community_newscommunity_news_widget (int serial=-1)
 
void config_translators (void)
 
virtual bool confirm_shutdown (void)
 
template<typename T >
void connect_interpreter_events (T *widget)
 
QPointer< documentation_dock_widgetdocumentation_widget (main_window *mw=nullptr)
 
QPointer< file_editor_interfaceeditor_widget (main_window *mw=nullptr)
 
int exec (void)
 
bool experimental_terminal_widget (void) const
 
QPointer< files_dock_widgetfile_browser_widget (main_window *mw=nullptr)
 
main_windowget_main_window (void)
 
std::shared_ptr< qt_interpreter_eventsget_qt_interpreter_events (void)
 
resource_managerget_resource_manager (void)
 
shortcut_managerget_shortcut_manager (void)
 
workspace_modelget_workspace_model (void)
 
bool gui_running (void) const
 
bool have_terminal_window (void) const
 
QPointer< history_dock_widgethistory_widget (main_window *mw=nullptr)
 
interpreter_qobjectinterpreter_qobj (void)
 
bool is_gui_app (void) const
 
QThreadmain_thread (void)
 
QApplicationqapplication (void)
 
qt_interpreter_eventsqt_link (void)
 
QPointer< release_notesrelease_notes_widget (void)
 
void start_main_thread (void)
 
QPointer< terminal_dock_widgetterminal_widget (main_window *mw=nullptr)
 
QPointer< variable_editorvariable_editor_widget (main_window *mw=nullptr)
 
QPointer< workspace_viewworkspace_widget (main_window *mw=nullptr)
 

Protected Attributes

qt_applicationm_app_context
 
int m_argc
 
char ** m_argv
 
QPointer< community_newsm_community_news
 
QPointer< documentation_dock_widgetm_documentation_widget
 
QPointer< file_editor_interfacem_editor_widget
 
QPointer< files_dock_widgetm_file_browser_widget
 
bool m_gui_app
 
QTranslator * m_gui_tr
 
QPointer< history_dock_widgetm_history_widget
 
interpreter_qobjectm_interpreter_qobj
 
bool m_interpreter_ready
 
QThreadm_main_thread
 
main_windowm_main_window
 
octave_qapplicationm_qapplication
 
QTranslator * m_qsci_tr
 
std::shared_ptr< qt_interpreter_eventsm_qt_interpreter_events
 
QTranslator * m_qt_tr
 
QPointer< release_notesm_release_notes
 
resource_manager m_resource_manager
 
shortcut_manager m_shortcut_manager
 
QPointer< terminal_dock_widgetm_terminal_widget
 
bool m_translators_installed
 
QPointer< variable_editorm_variable_editor_widget
 
workspace_modelm_workspace_model
 
QPointer< workspace_viewm_workspace_widget
 

Detailed Description

Base class for Octave interfaces that use Qt.

There are two classes derived from this one. One provides a command-line interface that may use Qt graphics and another provides the full GUI experience.

Definition at line 98 of file octave-qobject.h.

Constructor & Destructor Documentation

◆ base_qobject()

octave::base_qobject::base_qobject ( qt_application app_context,
bool  gui_app = false 
)

Definition at line 170 of file octave-qobject.cc.

References config_translators(), copy_image_to_clipboard(), octave::qt_interpreter_events::copy_image_to_clipboard_signal(), octave::qt_interpreter_events::edit_variable_signal(), application::experimental_terminal_widget(), octave::main_window::focus_window(), octave::qt_interpreter_events::focus_window_signal(), octave::sys::env::getenv(), octave::qt_application::gui_running(), octave::main_window::handle_octave_ready(), octave::shortcut_manager::init_data(), octave::octave_qapplication::interpreter_event(), interpreter_event(), interpreter_ready(), m_app_context, m_interpreter_qobj, m_interpreter_ready, m_main_thread, m_main_window, m_qapplication, m_resource_manager, m_shortcut_manager, octave::message_handler(), OCTAVE_VERSION, qt_link(), octave::interpreter_qobject::ready(), octave::resource_manager::reload_settings(), octave::qt_interpreter_events::show_command_history_signal(), show_command_history_window(), show_community_news(), octave::main_window::show_community_news_signal(), octave::qt_interpreter_events::show_community_news_signal(), octave::qt_interpreter_events::show_documentation_signal(), show_documentation_window(), octave::qt_interpreter_events::show_file_browser_signal(), show_file_browser_window(), show_release_notes(), octave::main_window::show_release_notes_signal(), octave::qt_interpreter_events::show_release_notes_signal(), show_terminal_window(), octave::qt_interpreter_events::show_terminal_window_signal(), show_variable_editor_window(), octave::qt_interpreter_events::show_workspace_signal(), show_workspace_window(), octave::interpreter_qobject::shutdown_finished(), start_gui(), octave::qt_interpreter_events::start_gui_signal(), and start_main_thread().

◆ ~base_qobject()

Member Function Documentation

◆ app_context()

qt_application & octave::base_qobject::app_context ( void  )
inline

Definition at line 117 of file octave-qobject.h.

References m_app_context.

Referenced by octave::interpreter_qobject::execute().

◆ close_gui

◆ community_news_widget()

QPointer< community_news > octave::base_qobject::community_news_widget ( int  serial = -1)

Definition at line 722 of file octave-qobject.cc.

References m_community_news.

Referenced by show_community_news().

◆ config_translators()

void octave::base_qobject::config_translators ( void  )

◆ confirm_shutdown()

bool octave::base_qobject::confirm_shutdown ( void  )
virtual

Definition at line 739 of file octave-qobject.cc.

References octave::main_window::confirm_shutdown(), and m_main_window.

◆ connect_interpreter_events()

template<typename T >
void octave::base_qobject::connect_interpreter_events ( T *  widget)
inline

Definition at line 206 of file octave-qobject.h.

References interpreter_event().

Referenced by octave::main_window::adopt_editor_widget(), and terminal_widget().

◆ copy_image_to_clipboard

void octave::base_qobject::copy_image_to_clipboard ( const QString &  file,
bool  remove_file 
)
slot

Definition at line 1016 of file octave-qobject.cc.

Referenced by base_qobject().

◆ documentation_widget()

◆ editor_widget()

QPointer< file_editor_interface > octave::base_qobject::editor_widget ( main_window mw = nullptr)

Definition at line 678 of file octave-qobject.cc.

References m_editor_widget.

◆ exec()

int octave::base_qobject::exec ( void  )

Definition at line 422 of file octave-qobject.cc.

References m_main_thread, and m_qapplication.

Referenced by octave::qt_application::execute().

◆ execute_command

void octave::base_qobject::execute_command ( const QString &  command)
slot

Definition at line 909 of file octave-qobject.cc.

References interpreter::eval(), and interpreter_event().

Referenced by variable_editor_widget().

◆ experimental_terminal_widget()

◆ file_browser_widget()

◆ get_main_window()

main_window * octave::base_qobject::get_main_window ( void  )
inline

Definition at line 134 of file octave-qobject.h.

References m_main_window.

◆ get_qt_interpreter_events()

std::shared_ptr< qt_interpreter_events > octave::base_qobject::get_qt_interpreter_events ( void  )
inline

Definition at line 149 of file octave-qobject.h.

References m_qt_interpreter_events.

Referenced by octave::interpreter_qobject::execute().

◆ get_resource_manager()

resource_manager & octave::base_qobject::get_resource_manager ( void  )
inline

Definition at line 139 of file octave-qobject.h.

References m_resource_manager.

Referenced by octave::documentation::documentation(), octave::documentation_bookmarks::documentation_bookmarks(), octave::dw_main_window::dw_main_window(), octave::file_editor_tab::file_editor_tab(), octave::FileDialog::FileDialog(), octave::files_dock_widget::files_dock_widget(), octave::find_files_dialog::find_files_dialog(), octave::initial_page::initial_page(), octave::main_window::main_window(), octave::octave_dock_widget::octave_dock_widget(), octave::set_path_dialog::set_path_dialog(), octave::settings_dialog::settings_dialog(), octave::terminal_dock_widget::terminal_dock_widget(), octave::variable_dock_widget::variable_dock_widget(), octave::workspace_view::workspace_view(), octave::welcome_wizard::accept(), octave::variable_editor_view::add_edit_actions(), octave::find_files_dialog::browse_folders(), octave::main_window::browse_for_directory(), annotation_dialog::button_clicked(), octave::file_editor::call_custom_editor(), octave::variable_dock_widget::change_floating(), octave::variable_dock_widget::change_fullscreen(), octave::file_editor::closeEvent(), octave::octave_qscintilla::comment_string(), octave::main_window::confirm_shutdown(), octave::community_news::construct(), QTerminal::construct(), octave::history_dock_widget::construct(), octave::file_editor::construct(), octave::main_window::construct_debug_menu_item(), octave::main_window::construct_edit_menu(), octave::main_window::construct_file_menu(), octave::main_window::construct_new_menu(), octave::documentation::construct_tool_bar(), octave::main_window::construct_tool_bar(), octave::variable_editor::construct_tool_bar(), octave::files_dock_widget::contextmenu_requested(), octave::octave_qscintilla::contextmenu_run(), octave::documentation_bookmarks::ctx_menu(), octave::octave_qscintilla::ctx_menu_run_finished(), octave::history_dock_widget::ctxMenu(), octave::file_editor_tab::detect_eol_mode(), octave::files_dock_widget::display_directory(), octave::file_editor_tab::do_comment_selected_text(), octave::main_window::do_reset_windows(), octave::variable_editor_stack::do_save(), octave::variable_editor::edit_variable(), octave::file_editor::empty_script(), octave::external_editor_interface::external_editor(), octave::main_window::focus_console_after_command(), octave::settings_dialog::get_dir(), octave::settings_dialog::get_lexer_settings(), octave::file_editor_tab::handle_decode_warning_answer(), octave::file_editor::handle_enter_debug_mode(), octave::file_editor::handle_file_name_changed(), octave::main_window::handle_load_workspace_request(), octave::main_window::handle_octave_ready(), octave::main_window::handle_save_workspace_request(), octave::file_editor::handle_visibility(), octave::workspace_view::header_contextmenu_requested(), octave::files_dock_widget::headercontextmenu_requested(), octave::shortcut_manager::import_export(), annotation_dialog::init(), octave::shortcut_manager::init(), octave::shortcut_manager::init_data(), octave::file_editor_tab::load_file(), octave::Canvas::make_cursor(), octave::octave_dock_widget::make_widget(), octave::file_editor::mru_menu_update(), octave::file_editor_tab::new_file(), octave::main_window::notice_settings(), octave::files_dock_widget::popdownmenu_search_dir(), octave::news_reader::process(), octave::main_window::read_settings(), octave::main_window::request_new_function(), octave::file_editor::request_open_file(), octave::main_window::request_open_file(), octave::main_window::request_reload_settings(), octave::main_window::restore_create_file_setting(), octave::find_dialog::restore_settings(), octave::file_editor::save_session(), octave::find_dialog::save_settings(), octave::documentation::save_settings(), octave::files_dock_widget::save_settings(), octave::find_files_dialog::save_settings(), octave::history_dock_widget::save_settings(), octave::octave_dock_widget::save_settings(), octave::set_path_dialog::save_settings(), octave::workspace_view::save_settings(), octave::octave_dock_widget::set_focus_predecessor(), octave::shortcut_manager::set_shortcut(), octave::workspace_view::setModel(), octave::shortcut_manager::shortcut(), octave::settings_dialog::show_tab(), octave::files_dock_widget::toggle_header(), octave::workspace_view::toggle_header(), octave::file_editor::toggle_preference(), octave::settings_dialog::update_editor_lexers(), octave::settings_dialog::update_lexer(), octave::file_editor_tab::update_lexer_settings(), octave::settings_dialog::update_terminal_colors(), octave::settings_dialog::update_varedit_colors(), octave::settings_dialog::update_workspace_colors(), octave::settings_dialog::write_changed_settings(), octave::settings_dialog::write_lexer_settings(), and octave::main_window::write_settings().

◆ get_shortcut_manager()

◆ get_workspace_model()

workspace_model * octave::base_qobject::get_workspace_model ( void  )
inline

Definition at line 164 of file octave-qobject.h.

References m_workspace_model.

Referenced by octave::octave_qscintilla::event().

◆ gui_running()

bool octave::base_qobject::gui_running ( void  ) const

Definition at line 444 of file octave-qobject.cc.

References octave::qt_application::gui_running(), and m_app_context.

◆ handle_variable_editor_update

void octave::base_qobject::handle_variable_editor_update ( void  )
slot

◆ have_terminal_window()

bool octave::base_qobject::have_terminal_window ( void  ) const
inline

Definition at line 129 of file octave-qobject.h.

References m_terminal_widget.

◆ history_widget()

◆ interpreter_event [1/2]

◆ interpreter_event [2/2]

void octave::base_qobject::interpreter_event ( const meth_callback meth)
slot

◆ interpreter_interrupt

void octave::base_qobject::interpreter_interrupt ( void  )
slot

Definition at line 990 of file octave-qobject.cc.

References octave::interpreter_qobject::interrupt(), and m_interpreter_qobj.

Referenced by terminal_widget().

◆ interpreter_pause

void octave::base_qobject::interpreter_pause ( void  )
slot

◆ interpreter_qobj()

◆ interpreter_ready

void octave::base_qobject::interpreter_ready ( void  )
slot

Definition at line 961 of file octave-qobject.cc.

References m_interpreter_ready.

Referenced by base_qobject().

◆ interpreter_resume

void octave::base_qobject::interpreter_resume ( void  )
slot

◆ interpreter_stop

void octave::base_qobject::interpreter_stop ( void  )
slot

◆ is_gui_app()

bool octave::base_qobject::is_gui_app ( void  ) const
inline

Definition at line 204 of file octave-qobject.h.

References m_gui_app.

Referenced by octave::main_window::closeEvent().

◆ main_thread()

QThread * octave::base_qobject::main_thread ( void  )
inline

Definition at line 197 of file octave-qobject.h.

References m_main_thread.

◆ qapplication()

QApplication * octave::base_qobject::qapplication ( void  )
inline

◆ qt_link()

◆ release_notes_widget()

QPointer< release_notes > octave::base_qobject::release_notes_widget ( void  )

Definition at line 731 of file octave-qobject.cc.

References m_release_notes.

Referenced by show_release_notes().

◆ show_command_history_window

void octave::base_qobject::show_command_history_window ( void  )
slot

Definition at line 832 of file octave-qobject.cc.

References history_widget(), and m_history_widget.

Referenced by base_qobject().

◆ show_community_news

void octave::base_qobject::show_community_news ( int  serial)
slot

Definition at line 893 of file octave-qobject.cc.

References community_news_widget(), and m_community_news.

Referenced by base_qobject(), and start_gui().

◆ show_documentation_window

void octave::base_qobject::show_documentation_window ( const QString &  file)
slot

◆ show_file_browser_window

void octave::base_qobject::show_file_browser_window ( void  )
slot

Definition at line 820 of file octave-qobject.cc.

References file_browser_widget(), and m_file_browser_widget.

Referenced by base_qobject().

◆ show_release_notes

void octave::base_qobject::show_release_notes ( void  )
slot

Definition at line 901 of file octave-qobject.cc.

References m_release_notes, and release_notes_widget().

Referenced by base_qobject(), and start_gui().

◆ show_terminal_window

void octave::base_qobject::show_terminal_window ( void  )
slot

Definition at line 792 of file octave-qobject.cc.

References m_terminal_widget, and terminal_widget().

Referenced by base_qobject().

◆ show_variable_editor_window

void octave::base_qobject::show_variable_editor_window ( const QString &  name,
const octave_value value 
)
slot

◆ show_workspace_window

void octave::base_qobject::show_workspace_window ( void  )
slot

Definition at line 844 of file octave-qobject.cc.

References m_workspace_widget, and workspace_widget().

Referenced by base_qobject().

◆ start_gui

◆ start_main_thread()

void octave::base_qobject::start_main_thread ( void  )

Definition at line 405 of file octave-qobject.cc.

References m_interpreter_qobj, and m_main_thread.

Referenced by base_qobject().

◆ terminal_widget()

◆ variable_editor_widget()

◆ workspace_widget()

Member Data Documentation

◆ m_app_context

◆ m_argc

int octave::base_qobject::m_argc
protected

Definition at line 266 of file octave-qobject.h.

◆ m_argv

char** octave::base_qobject::m_argv
protected

Definition at line 267 of file octave-qobject.h.

Referenced by ~base_qobject().

◆ m_community_news

QPointer<community_news> octave::base_qobject::m_community_news
protected

Definition at line 311 of file octave-qobject.h.

Referenced by ~base_qobject(), community_news_widget(), and show_community_news().

◆ m_documentation_widget

QPointer<documentation_dock_widget> octave::base_qobject::m_documentation_widget
protected

◆ m_editor_widget

QPointer<file_editor_interface> octave::base_qobject::m_editor_widget
protected

Definition at line 307 of file octave-qobject.h.

Referenced by ~base_qobject(), and editor_widget().

◆ m_file_browser_widget

QPointer<files_dock_widget> octave::base_qobject::m_file_browser_widget
protected

Definition at line 301 of file octave-qobject.h.

Referenced by ~base_qobject(), file_browser_widget(), and show_file_browser_window().

◆ m_gui_app

bool octave::base_qobject::m_gui_app
protected

Definition at line 287 of file octave-qobject.h.

Referenced by is_gui_app(), and start_gui().

◆ m_gui_tr

QTranslator* octave::base_qobject::m_gui_tr
protected

Definition at line 276 of file octave-qobject.h.

Referenced by ~base_qobject(), and config_translators().

◆ m_history_widget

QPointer<history_dock_widget> octave::base_qobject::m_history_widget
protected

Definition at line 303 of file octave-qobject.h.

Referenced by ~base_qobject(), history_widget(), and show_command_history_window().

◆ m_interpreter_qobj

◆ m_interpreter_ready

bool octave::base_qobject::m_interpreter_ready
protected

Definition at line 289 of file octave-qobject.h.

Referenced by base_qobject(), interpreter_ready(), and start_gui().

◆ m_main_thread

QThread* octave::base_qobject::m_main_thread
protected

Definition at line 285 of file octave-qobject.h.

Referenced by base_qobject(), exec(), main_thread(), and start_main_thread().

◆ m_main_window

main_window* octave::base_qobject::m_main_window
protected

◆ m_qapplication

octave_qapplication* octave::base_qobject::m_qapplication
protected

◆ m_qsci_tr

QTranslator* octave::base_qobject::m_qsci_tr
protected

Definition at line 277 of file octave-qobject.h.

Referenced by ~base_qobject(), and config_translators().

◆ m_qt_interpreter_events

std::shared_ptr<qt_interpreter_events> octave::base_qobject::m_qt_interpreter_events
protected

Definition at line 281 of file octave-qobject.h.

Referenced by get_qt_interpreter_events(), and qt_link().

◆ m_qt_tr

QTranslator* octave::base_qobject::m_qt_tr
protected

Definition at line 275 of file octave-qobject.h.

Referenced by ~base_qobject(), and config_translators().

◆ m_release_notes

QPointer<release_notes> octave::base_qobject::m_release_notes
protected

Definition at line 313 of file octave-qobject.h.

Referenced by release_notes_widget(), and show_release_notes().

◆ m_resource_manager

resource_manager octave::base_qobject::m_resource_manager
protected

Definition at line 271 of file octave-qobject.h.

Referenced by base_qobject(), config_translators(), and get_resource_manager().

◆ m_shortcut_manager

shortcut_manager octave::base_qobject::m_shortcut_manager
protected

Definition at line 273 of file octave-qobject.h.

Referenced by base_qobject(), and get_shortcut_manager().

◆ m_terminal_widget

QPointer<terminal_dock_widget> octave::base_qobject::m_terminal_widget
protected

◆ m_translators_installed

bool octave::base_qobject::m_translators_installed
protected

Definition at line 279 of file octave-qobject.h.

Referenced by config_translators().

◆ m_variable_editor_widget

QPointer<variable_editor> octave::base_qobject::m_variable_editor_widget
protected

◆ m_workspace_model

workspace_model* octave::base_qobject::m_workspace_model
protected

Definition at line 291 of file octave-qobject.h.

Referenced by ~base_qobject(), get_workspace_model(), and workspace_widget().

◆ m_workspace_widget

QPointer<workspace_view> octave::base_qobject::m_workspace_widget
protected

Definition at line 305 of file octave-qobject.h.

Referenced by ~base_qobject(), show_workspace_window(), and workspace_widget().


The documentation for this class was generated from the following files: