X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FToolbarBackend.cpp;h=c6f78f61edfd64092842ba87298ff25eea640d8f;hb=6a8b25ba5110a1d4e19206f9f42d3b04312e6728;hp=a4da7dfd559a5703ab62cf37895036943a525e74;hpb=39e79d8602920eefe36e898c9f415afb979521b2;p=lyx.git diff --git a/src/ToolbarBackend.cpp b/src/ToolbarBackend.cpp index a4da7dfd55..c6f78f61ed 100644 --- a/src/ToolbarBackend.cpp +++ b/src/ToolbarBackend.cpp @@ -92,7 +92,7 @@ ToolbarInfo & ToolbarInfo::read(Lexer & lex) TO_ICONPALETTE, TO_LAST }; - + struct keyword_item toolTags[TO_LAST - 1] = { { "end", TO_ENDTOOLBAR }, { "iconpalette", TO_ICONPALETTE }, @@ -165,7 +165,7 @@ ToolbarInfo & ToolbarInfo::read(Lexer & lex) add(ToolbarItem(ToolbarItem::POPUPMENU, name, label)); } break; - + case TO_ICONPALETTE: if (lex.next(true)) { string const name = lex.getString(); @@ -174,17 +174,20 @@ ToolbarInfo & ToolbarInfo::read(Lexer & lex) add(ToolbarItem(ToolbarItem::ICONPALETTE, name, label)); } break; - + case TO_LAYOUTS: add(ToolbarItem(ToolbarItem::LAYOUTS, FuncRequest(kb_action(ToolbarItem::LAYOUTS)))); break; - + case TO_TABLEINSERT: - add(ToolbarItem(ToolbarItem::TABLEINSERT, - FuncRequest(kb_action(ToolbarItem::TABLEINSERT)))); + if (lex.next(true)) { + docstring const tooltip = lex.getDocString(); + add(ToolbarItem(ToolbarItem::TABLEINSERT, + FuncRequest(kb_action(ToolbarItem::TABLEINSERT)), tooltip)); + } break; - + case TO_ENDTOOLBAR: quit = true; break; @@ -215,7 +218,7 @@ void ToolbarBackend::readToolbars(Lexer & lex) TO_ENDTOOLBARSET, TO_LAST }; - + struct keyword_item toolTags[TO_LAST - 1] = { { "end", TO_ENDTOOLBARSET }, { "toolbar", TO_TOOLBAR } @@ -325,24 +328,21 @@ void ToolbarBackend::readToolbarSettings(Lexer & lex) } -ToolbarInfo const & ToolbarBackend::getToolbar(string const & name) const +ToolbarInfo const * ToolbarBackend::getDefinedToolbarInfo(string const & name) const { - Toolbars::const_iterator cit = find_if(toolbars.begin(), toolbars.end(), ToolbarNamesEqual(name)); - if (cit == toolbars.end()) - lyxerr << "No toolbar named " << name << endl; - BOOST_ASSERT(cit != toolbars.end()); - return (*cit); + Toolbars::const_iterator it = find_if(toolbars.begin(), toolbars.end(), ToolbarNamesEqual(name)); + if (it == toolbars.end()) + return 0; + return &(*it); } -ToolbarInfo & ToolbarBackend::getToolbar(string const & name) +ToolbarInfo * ToolbarBackend::getUsedToolbarInfo(string const &name) { - Toolbars::iterator it = find_if(toolbars.begin(), toolbars.end(), ToolbarNamesEqual(name)); - if (it == toolbars.end()) - lyxerr << "No toolbar named " << name << endl; - BOOST_ASSERT(it != toolbars.end()); - return (*it); + Toolbars::iterator it = find_if(usedtoolbars.begin(), usedtoolbars.end(), ToolbarNamesEqual(name)); + if (it == usedtoolbars.end()) + return 0; + return &(*it); } - } // namespace lyx