Jean-Marc Lasgouttes c293be56bd Rename frontend qt4 to qt
In particular, the directory frontends/qt4 is renamed to frontends/qt.

Many configurations file have to be updated. All mentions of qt4 in
the source have been audited, and changed to qt if necessary.

The only part that has not been updated is the CMake build system.
2019-07-20 23:39:40 +02:00

65 lines
1.2 KiB
C++

// -*- C++ -*-
/**
* \file Action.h
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* \author Abdelrazak Younes
*
* Full author contact details are available in file CREDITS.
*/
#ifndef ACTION_H
#define ACTION_H
#include <QAction>
#include <memory>
class QIcon;
namespace lyx {
class FuncRequest;
namespace frontend {
/**
* Action - Qt interface with LyX' FuncRequest.
*
* Action can be used in LyX menubar and/or toolbars.
*/
class Action : public QAction
{
Q_OBJECT
public:
// Makes a copy of func
Action(FuncRequest func, QIcon const & icon, QString const & text,
QString const & tooltip, QObject * parent);
// Takes shared ownership of func.
// Use for perf-sensitive code such as populating menus.
Action(std::shared_ptr<FuncRequest const> func,
QIcon const & icon, QString const & text,
QString const & tooltip, QObject * parent);
void update();
Q_SIGNALS:
/// the current action is triggered
void triggered(QAction *);
private Q_SLOTS:
void action();
private:
void init(QIcon const & icon, QString const & text, QString const & tooltip);
std::shared_ptr<FuncRequest const> func_;
};
} // namespace frontend
} // namespace lyx
#endif // ACTION_H