X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FMenus.cpp;h=8de4f83257d98e75c7508b816216b44b04262085;hb=425d092204118ea6c24c28e85fdf03fcf2bb51a4;hp=1d4660281588ff38e436e6dba04ca725f2a3f030;hpb=5d40a42f6017db96fd1250da475c08301f92b3c8;p=lyx.git diff --git a/src/frontends/qt4/Menus.cpp b/src/frontends/qt4/Menus.cpp index 1d46602815..8de4f83257 100644 --- a/src/frontends/qt4/Menus.cpp +++ b/src/frontends/qt4/Menus.cpp @@ -727,8 +727,8 @@ void MenuDefinition::expandSpellingSuggestions(BufferView const * bv) return; LYXERR(Debug::GUI, "Misspelled Word! Suggested Words = "); size_t i = 0; - MenuItem item(MenuItem::Submenu, qt_("more spelling suggestions")); - item.setSubmenu(MenuDefinition(qt_("more spelling suggestions"))); + MenuItem item(MenuItem::Submenu, qt_("More Spelling Suggestions")); + item.setSubmenu(MenuDefinition(qt_("More Spelling Suggestions"))); for (; i != suggestions.size(); ++i) { docstring const & suggestion = suggestions[i]; LYXERR(Debug::GUI, suggestion); @@ -741,6 +741,16 @@ void MenuDefinition::expandSpellingSuggestions(BufferView const * bv) } if (i >= 10) add(item); + if (i > 0) + add(MenuItem(MenuItem::Separator)); + docstring arg = wl.word() + " " + from_ascii(wl.lang_code()); + if (!wl.lang_variety().empty()) + arg += from_ascii("-") + from_ascii(wl.lang_variety()); + add(MenuItem(MenuItem::Command, qt_("Add to personal dictionary|c"), + FuncRequest(LFUN_SPELLING_ADD, arg))); + add(MenuItem(MenuItem::Command, qt_("Ignore all|I"), + FuncRequest(LFUN_SPELLING_IGNORE, arg))); + } @@ -781,7 +791,8 @@ void MenuDefinition::expandDocuments() QString label = toqstr(b->fileName().displayName(20)); if (!b->isClean()) label += "*"; - bool const shown = guiApp->currentView()->workArea(*b); + bool const shown = guiApp->currentView() + ? guiApp->currentView()->workArea(*b) : false; int ii = shown ? vis : invis; if (ii < 10) label = QString::number(ii) + ". " + label + '|' + QString::number(ii); @@ -799,7 +810,7 @@ void MenuDefinition::expandDocuments() if (!item.submenu().empty()) add(item); } else - add(MenuItem(MenuItem::Info, qt_(""))); + add(MenuItem(MenuItem::Info, qt_(""))); } @@ -819,7 +830,7 @@ void MenuDefinition::expandBookmarks() } } if (empty) - add(MenuItem(MenuItem::Info, qt_(""))); + add(MenuItem(MenuItem::Info, qt_(""))); } @@ -851,6 +862,17 @@ void MenuDefinition::expandFormats(MenuItem::Kind kind, Buffer const * buf) } sort(formats.begin(), formats.end(), &compareFormat); + bool const view_update = (kind == MenuItem::ViewFormats + || kind == MenuItem::UpdateFormats); + + QString smenue; + if (view_update) + smenue = (kind == MenuItem::ViewFormats ? + qt_("View (Other Formats)|F") + : qt_("Update (Other Formats)|p")); + MenuItem item(MenuItem::Submenu, smenue); + item.setSubmenu(MenuDefinition(smenue)); + Formats::const_iterator fit = formats.begin(); Formats::const_iterator end = formats.end(); for (; fit != end ; ++fit) { @@ -878,8 +900,15 @@ void MenuDefinition::expandFormats(MenuItem::Kind kind, Buffer const * buf) break; case MenuItem::ViewFormats: case MenuItem::UpdateFormats: - if ((*fit)->name() == buf->getDefaultOutputFormat()) + if ((*fit)->name() == buf->getDefaultOutputFormat()) { + docstring lbl = (kind == MenuItem::ViewFormats ? + bformat(_("View [%1$s]|V"), qstring_to_ucs4(label)) + : bformat(_("Update [%1$s]|U"), qstring_to_ucs4(label))); + MenuItem w(MenuItem::Command, toqstr(lbl), + FuncRequest(action, (*fit)->name())); + add(w); continue; + } case MenuItem::ExportFormats: if (!(*fit)->documentFormat()) continue; @@ -891,13 +920,24 @@ void MenuDefinition::expandFormats(MenuItem::Kind kind, Buffer const * buf) if (!shortcut.isEmpty()) label += '|' + shortcut; - if (buf) - addWithStatusCheck(MenuItem(MenuItem::Command, label, - FuncRequest(action, (*fit)->name()))); - else - add(MenuItem(MenuItem::Command, label, - FuncRequest(action, (*fit)->name()))); + if (view_update) { + if (buf) + item.submenu().addWithStatusCheck(MenuItem(MenuItem::Command, label, + FuncRequest(action, (*fit)->name()))); + else + item.submenu().add(MenuItem(MenuItem::Command, label, + FuncRequest(action, (*fit)->name()))); + } else { + if (buf) + addWithStatusCheck(MenuItem(MenuItem::Command, label, + FuncRequest(action, (*fit)->name()))); + else + add(MenuItem(MenuItem::Command, label, + FuncRequest(action, (*fit)->name()))); + } } + if (view_update) + add(item); } @@ -956,7 +996,7 @@ void MenuDefinition::expandFlexInsert( } // FIXME This is a little clunky. if (items_.empty() && type == InsetLayout::CUSTOM) - add(MenuItem(MenuItem::Help, qt_("No custom insets defined!"))); + add(MenuItem(MenuItem::Help, qt_("No Custom Insets Defined!"))); } @@ -1024,7 +1064,7 @@ void MenuDefinition::expandToc(Buffer const * buf) // OK, so we avoid this unnecessary overhead (JMarc) if (!buf) { - add(MenuItem(MenuItem::Info, qt_(""))); + add(MenuItem(MenuItem::Info, qt_(""))); return; } @@ -1085,7 +1125,7 @@ void MenuDefinition::expandToc(Buffer const * buf) if (cit->second.size() > 0 ) expandToc2(cit->second, 0, cit->second.size(), 0); else - add(MenuItem(MenuItem::Info, qt_(""))); + add(MenuItem(MenuItem::Info, qt_(""))); } } @@ -1135,7 +1175,7 @@ void MenuDefinition::expandBranches(Buffer const * buf) BufferParams const & master_params = buf->masterBuffer()->params(); BufferParams const & params = buf->params(); if (params.branchlist().empty() && master_params.branchlist().empty() ) { - add(MenuItem(MenuItem::Help, qt_("No branches set for document!"))); + add(MenuItem(MenuItem::Help, qt_("No Branches Set for Document!"))); return; } @@ -1241,12 +1281,12 @@ void MenuDefinition::expandIndicesContext(Buffer const * buf, bool listof) p["type"] = cit->shortcut(); string const data = InsetCommand::params2string("index_print", p); addWithStatusCheck(MenuItem(MenuItem::Command, toqstr(cit->index()), - FuncRequest(LFUN_NEXT_INSET_MODIFY, data))); + FuncRequest(LFUN_INSET_MODIFY, data))); } else { docstring label = _("Index Entry"); label += " (" + cit->index() + ")"; addWithStatusCheck(MenuItem(MenuItem::Command, toqstr(label), - FuncRequest(LFUN_NEXT_INSET_MODIFY, + FuncRequest(LFUN_INSET_MODIFY, from_ascii("changetype ") + cit->shortcut()))); } } @@ -1287,7 +1327,7 @@ void MenuDefinition::expandCiteStyles(BufferView const * bv) CiteStyle cst = citeStyleList[ii - 1]; cs.style = cst; addWithStatusCheck(MenuItem(MenuItem::Command, toqstr(label), - FuncRequest(LFUN_NEXT_INSET_MODIFY, + FuncRequest(LFUN_INSET_MODIFY, "changetype " + from_utf8(citationStyleToString(cs))))); } } @@ -1781,7 +1821,7 @@ void Menus::fillMenuBar(QMenuBar * qmb, GuiView * view, bool initial) MenuDefinition menu; BufferView * bv = 0; if (view) - bv = view->view(); + bv = view->currentBufferView(); d->expand(d->menubar_, menu, bv); MenuDefinition::const_iterator m = menu.begin(); @@ -1821,11 +1861,8 @@ void Menus::updateMenu(Menu * qmenu) if (qmenu->d->name.isEmpty()) return; - // Here, We make sure that theLyXFunc points to the correct LyXView. - theLyXFunc().setLyXView(qmenu->d->view); - if (!d->hasMenu(qmenu->d->name)) { - qmenu->addAction(qt_("No action defined!")); + qmenu->addAction(qt_("No Action Defined!")); LYXERR(Debug::GUI, "\tWARNING: non existing menu: " << qmenu->d->name); return; @@ -1834,7 +1871,7 @@ void Menus::updateMenu(Menu * qmenu) MenuDefinition const & fromLyxMenu = d->getMenu(qmenu->d->name); BufferView * bv = 0; if (qmenu->d->view) - bv = qmenu->d->view->view(); + bv = qmenu->d->view->currentBufferView(); d->expand(fromLyxMenu, *qmenu->d->top_level_menu, bv); qmenu->d->populate(*qmenu, *qmenu->d->top_level_menu); }