mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-13 14:32:04 +00:00
eaa33dca6d
* src/LyXAction.C: LFUN_TOOLBAR_TOGGLE_STATE * src/session.h/C: add ToolbarSection class * src/lyxfunc.C: handle LFUN_TOOLBAR_TOGGLE_STATE * src/frontends/LyXView.h/C: toggleToolbarState(name) * src/frontends/Toolbars.h/C: initFlags, toogle and save toolbar, changed update logic * src/frontends/qt4/QLToolbar.h/C: saveInfo. Surprisingly little is asked from frontend. * src/frontends/qt4/GuiView.C: save toolbar when lyx exits * src/MenuBackend.h/C: add Toolbars submenu * src/lfuns.h: add LFUN_TOOLBAR_TOGGLE_STATE * src/ToolbarBackend.h: add AUTO flag * lib/ui/stdmenus.ui: add view->Toolbar menu git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15691 a592a061-630c-0410-9148-cb99ea01b6c8
92 lines
1.6 KiB
C++
92 lines
1.6 KiB
C++
// -*- C++ -*-
|
|
/**
|
|
* \file QLToolbar.h
|
|
* This file is part of LyX, the document processor.
|
|
* Licence details can be found in the file COPYING.
|
|
*
|
|
* \author Lars Gullik Bjønnes
|
|
* \author John Levon
|
|
* \author Jean-Marc Lasgouttes
|
|
* \author Angus Leeming
|
|
* \author Abdelrazak Younes
|
|
*
|
|
* Full author contact details are available in file CREDITS.
|
|
*/
|
|
|
|
#ifndef QLTOOLBAR_H
|
|
#define QLTOOLBAR_H
|
|
|
|
#include "frontends/Toolbars.h"
|
|
#include <boost/scoped_ptr.hpp>
|
|
|
|
#include <QToolBar>
|
|
#include <vector>
|
|
#include "session.h"
|
|
|
|
class QComboBox;
|
|
|
|
namespace lyx {
|
|
namespace frontend {
|
|
|
|
class QLayoutBox;
|
|
class GuiView;
|
|
class Action;
|
|
|
|
|
|
class QLayoutBox : public QObject, public LayoutBox {
|
|
Q_OBJECT
|
|
public:
|
|
QLayoutBox(QToolBar *, GuiView &);
|
|
|
|
/// select the right layout in the combox.
|
|
void set(std::string const & layout);
|
|
/// Populate the layout combox.
|
|
void update();
|
|
/// Erase the layout list.
|
|
void clear();
|
|
/// Display the layout list.
|
|
void open();
|
|
///
|
|
void setEnabled(bool);
|
|
|
|
private Q_SLOTS:
|
|
void selected(const QString & str);
|
|
|
|
private:
|
|
QComboBox * combo_;
|
|
GuiView & owner_;
|
|
};
|
|
|
|
|
|
class QLToolbar : public QToolBar, public Toolbar {
|
|
Q_OBJECT
|
|
public:
|
|
QLToolbar(ToolbarBackend::Toolbar const &, GuiView &);
|
|
|
|
//~QLToolbar();
|
|
|
|
void add(FuncRequest const & func, lyx::docstring const & tooltip);
|
|
void hide(bool);
|
|
void show(bool);
|
|
void saveInfo(ToolbarSection::ToolbarInfo & info);
|
|
void update();
|
|
LayoutBox * layout() const { return layout_.get(); }
|
|
|
|
|
|
|
|
Q_SIGNALS:
|
|
void updated();
|
|
|
|
private:
|
|
|
|
std::vector<Action *> ActionVector;
|
|
GuiView & owner_;
|
|
|
|
boost::scoped_ptr<QLayoutBox> layout_;
|
|
};
|
|
|
|
} // namespace frontend
|
|
} // namespace lyx
|
|
|
|
#endif // NOT QLTOOLBAR_H
|