]> git.lyx.org Git - lyx.git/blobdiff - src/ToolbarBackend.cpp
Some more cleanup of LyXView:
[lyx.git] / src / ToolbarBackend.cpp
index a4da7dfd559a5703ab62cf37895036943a525e74..b58f2c7785de03490ccb0e65a583a1a7a39426fa 100644 (file)
@@ -22,8 +22,6 @@
 #include <boost/bind.hpp>
 #include <algorithm>
 
-#include "frontends/controllers/ControlMath.h"
-
 namespace lyx {
 
 using support::compare_ascii_no_case;
@@ -63,7 +61,7 @@ ToolbarItem::ToolbarItem(Type type, FuncRequest const & func, docstring const &
 
 
 ToolbarItem::ToolbarItem(Type type, string const & name, docstring const & label)
-       : type_(type), name_(name), label_(label)
+       : type_(type), label_(label), name_(name)
 {
 }
 
@@ -92,7 +90,7 @@ ToolbarInfo & ToolbarInfo::read(Lexer & lex)
                TO_ICONPALETTE,
                TO_LAST
        };
-       
+
        struct keyword_item toolTags[TO_LAST - 1] = {
                { "end", TO_ENDTOOLBAR },
                { "iconpalette", TO_ICONPALETTE },
@@ -137,9 +135,8 @@ ToolbarInfo & ToolbarInfo::read(Lexer & lex)
                                docstring const tooltip = translateIfPossible(lex.getDocString());
                                lex.next(true);
                                string const func_arg = lex.getString();
-                               LYXERR(Debug::PARSER)
-                                       << "ToolbarInfo::read TO_COMMAND func: `"
-                                       << func_arg << '\'' << endl;
+                               LYXERR(Debug::PARSER, "ToolbarInfo::read TO_COMMAND func: `"
+                                       << func_arg << '\'');
 
                                FuncRequest func =
                                        lyxaction.lookupFunc(func_arg);
@@ -165,7 +162,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 +171,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 +215,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 +325,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