#include "support/lstrings.h"
#include <QSettings>
+#include <QShowEvent>
#include <QString>
#include <QToolBar>
#include <QToolButton>
GuiToolbar::GuiToolbar(ToolbarInfo const & tbinfo, GuiView & owner)
: QToolBar(toqstr(tbinfo.gui_name), &owner), visibility_(0),
- allowauto_(false), owner_(owner), layout_(0), command_buffer_(0),
+ allowauto_(false), owner_(owner), command_buffer_(0),
tbinfo_(tbinfo), filled_(false)
{
setIconSize(owner.iconSize());
setToolTip(label);
setStatusTip(label);
setText(label);
- setIcon(QIcon(getPixmap("images/math/", toqstr(tbitem_.name_), "png")));
+ QString const name = toqstr(tbitem_.name_);
+ FileName const fname = libFileSearch("images/math/", name, "png");
+ if (fname.exists())
+ setIcon(QIcon(getPixmap("images/math/", name, "png")));
+ else
+ setIcon(QIcon(getPixmap("images/", name, "png")));
if (sticky)
connect(this, SIGNAL(triggered(QAction *)),
this, SLOT(actionTriggered(QAction *)));
case ToolbarItem::SEPARATOR:
addSeparator();
break;
- case ToolbarItem::LAYOUTS:
- layout_ = new LayoutBox(this, owner_);
- addWidget(layout_);
+ case ToolbarItem::LAYOUTS: {
+ LayoutBox * layout = owner_.getLayoutDialog();
+ QObject::connect(this, SIGNAL(iconSizeChanged(QSize)),
+ layout, SLOT(setIconSize(QSize)));
+ QAction * action = addWidget(layout);
+ action->setVisible(true);
break;
+ }
case ToolbarItem::MINIBUFFER:
command_buffer_ = new GuiCommandBuffer(&owner_);
addWidget(command_buffer_);
for (int i = 0; i < actions_.size(); ++i)
actions_[i]->update();
- if (layout_)
- layout_->setEnabled(lyx::getStatus(FuncRequest(LFUN_LAYOUT)).enabled());
+ LayoutBox * layout = owner_.getLayoutDialog();
+ if (layout)
+ layout->setEnabled(lyx::getStatus(FuncRequest(LFUN_LAYOUT)).enabled());
// emit signal
updated();