]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/Toolbar.C
Joao latest bits
[lyx.git] / src / frontends / Toolbar.C
index 836e40ce83fde0ff15a67d0087f5393405d25c60..d83e149af13fbee401f9b90bcfdd485c05906196 100644 (file)
@@ -5,50 +5,60 @@
  *
  * \author Lars Gullik Bjønnes
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 #include <config.h>
 
-
 #include "Toolbar.h"
-#include "ToolbarBackend.h"
-#include "Toolbar_pimpl.h"
+
 #include "debug.h"
 #include "LyXAction.h"
+#include "ToolbarBackend.h"
 
-using std::endl;
 
-Toolbar::Toolbar(LyXView * o, int x, int y, ToolbarBackend const & backend)
+Toolbar::Toolbar()
        : last_textclass_(-1)
 {
-       pimpl_ = new Pimpl(o, x, y);
-
-       // extracts the toolbars from the backend
-       ToolbarBackend::Toolbars::const_iterator cit = backend.begin();
-       ToolbarBackend::Toolbars::const_iterator end = backend.end();
-
-       for (; cit != end; ++cit)
-               pimpl_->add(*cit);
 }
 
 
 Toolbar::~Toolbar()
 {
-       delete pimpl_;
 }
 
 
-void Toolbar::update()
+void Toolbar::init()
 {
-       pimpl_->update();
+       // extracts the toolbars from the backend
+       ToolbarBackend::Toolbars::const_iterator cit = toolbarbackend.begin();
+       ToolbarBackend::Toolbars::const_iterator end = toolbarbackend.end();
+
+       for (; cit != end; ++cit)
+               add(*cit);
 }
 
 
+void Toolbar::update(bool in_math, bool in_table)
+{
+       update();
+
+       // extracts the toolbars from the backend
+       ToolbarBackend::Toolbars::const_iterator cit = toolbarbackend.begin();
+       ToolbarBackend::Toolbars::const_iterator end = toolbarbackend.end();
+
+       for (; cit != end; ++cit) {
+               if (cit->flags & ToolbarBackend::MATH)
+                       displayToolbar(*cit, in_math);
+               else if (cit->flags & ToolbarBackend::TABLE)
+                       displayToolbar(*cit, in_table);
+       }
+}
+
 
-void Toolbar::setLayout(string const & layout)
+void Toolbar::clearLayoutList()
 {
-       pimpl_->setLayout(layout);
+       last_textclass_ = -1;
 }
 
 
@@ -56,23 +66,9 @@ bool Toolbar::updateLayoutList(int textclass)
 {
        // update the layout display
        if (last_textclass_ != textclass) {
-               pimpl_->updateLayoutList(true);
+               updateLayoutList();
                last_textclass_ = textclass;
                return true;
-       } else {
-               pimpl_->updateLayoutList(false);
+       } else
                return false;
-       }
-}
-
-
-void Toolbar::openLayoutList()
-{
-       pimpl_->openLayoutList();
-}
-
-
-void Toolbar::clearLayoutList()
-{
-       pimpl_->clearLayoutList();
 }