Mercurial > hg > octave-nkf
diff libgui/src/m-editor/file-editor.cc @ 17627:811019b9ef57
Add help and documentation on actual keyword to the editor menu
* octave-qscintilla.cc(context_help_doc): new function for editor menu action;
(get_global_textcursor_pos): new function for calculationg the cursor pos;
(contextMenuEvent): uses get_global_textcursor_pos now, added context menu
entry for documentation;
(contextmenu_help,contextmenu_doc): slots for context menu;
(contextmenu_help_doc): new common function used from context_help_doc and the
context menu slots
* octave-qscintilla.h: new functions context_help_doc, contextmenu_doc,
contextmenu_help_doc, get_global_textcursor_pos
* file-editor-tab.cc(context_help): new slot for editor menu action
* file-editor-tab.h: new slot context_help
* file-editor.cc(request_context_help,request_context_doc): new slots for
help menu entries;
(construct): new help menu with keyword help and documentation;
(add_file_editor_tab): connect new signal fetab_context_help to the new
slot context_help in file_editor_tab;
(set_shortcuts): enable/disable new shortcuts when editor focus changes
(check_actions): enable/disable new actions depending on existing tabs
* file-editor.h: new signal fetab_context_help, new slots request_context_help
and request_contest_doc, new help and doc actions
author | Torsten <ttl@justmail.de> |
---|---|
date | Fri, 11 Oct 2013 13:05:06 +0200 |
parents | adf06e03fbdd |
children | 99ffa521ecec |
line wrap: on
line diff
--- a/libgui/src/m-editor/file-editor.cc +++ b/libgui/src/m-editor/file-editor.cc @@ -467,6 +467,17 @@ } void +file_editor::request_context_help (bool) +{ + emit fetab_context_help (_tab_widget->currentWidget (), false); +} +void +file_editor::request_context_doc (bool) +{ + emit fetab_context_help (_tab_widget->currentWidget (), true); +} + +void file_editor::request_save_file (void) { emit fetab_save_file (_tab_widget->currentWidget ()); @@ -927,6 +938,15 @@ _run_menu->addAction (_run_action); _menu_bar->addMenu (_run_menu); + QMenu *_help_menu = new QMenu (tr ("&Help"), _menu_bar); + _context_help_action = + _help_menu->addAction (QIcon (), tr ("&Help on Keyword"), + this, SLOT (request_context_help (bool))); + _context_doc_action = + _help_menu->addAction (QIcon (), tr ("&Documentation on Keyword"), + this, SLOT (request_context_doc (bool))); + _menu_bar->addMenu (_help_menu); + // shortcuts set_shortcuts (true); @@ -1107,6 +1127,9 @@ connect (this, SIGNAL (fetab_paste (const QWidget*)), f, SLOT (paste (const QWidget*))); + connect (this, SIGNAL (fetab_context_help (const QWidget*, bool)), + f, SLOT (context_help (const QWidget*, bool))); + connect (this, SIGNAL (fetab_save_file (const QWidget*)), f, SLOT (save_file (const QWidget*))); @@ -1205,6 +1228,8 @@ _copy_action->setShortcut (QKeySequence::Copy); _cut_action->setShortcut (QKeySequence::Cut); _paste_action->setShortcut (QKeySequence::Paste); + _context_help_action->setShortcut (QKeySequence::HelpContents); + _context_doc_action->setShortcut (Qt::SHIFT + Qt::Key_F1); _find_action->setShortcut (QKeySequence::Find); _goto_line_action->setShortcut (Qt::ControlModifier+ Qt::Key_G); @@ -1233,6 +1258,7 @@ _copy_action->setShortcut (no_key); _cut_action->setShortcut (no_key); _paste_action->setShortcut (no_key); + _context_help_action->setShortcut (no_key); _find_action->setShortcut (no_key); _goto_line_action->setShortcut (no_key); @@ -1264,6 +1290,8 @@ _copy_action->setEnabled (have_tabs); _cut_action->setEnabled (have_tabs); _paste_action->setEnabled (have_tabs); + _context_help_action->setEnabled (have_tabs); + _context_doc_action->setEnabled (have_tabs); _find_action->setEnabled (have_tabs); _goto_line_action->setEnabled (have_tabs);