2002-01-09 09:36:35 +00:00
|
|
|
// -*- C++ -*-
|
2003-08-23 00:17:00 +00:00
|
|
|
/**
|
|
|
|
* \file FuncStatus.h
|
|
|
|
* This file is part of LyX, the document processor.
|
|
|
|
* Licence details can be found in the file COPYING.
|
|
|
|
*
|
|
|
|
* \author Jean-Marc Lasgouttes
|
|
|
|
*
|
|
|
|
* Full author contact details are available in file CREDITS.
|
|
|
|
*/
|
|
|
|
|
2002-01-09 09:36:35 +00:00
|
|
|
#ifndef FUNC_STATUS_H
|
|
|
|
#define FUNC_STATUS_H
|
|
|
|
|
|
|
|
/// The status of a function.
|
|
|
|
|
|
|
|
class FuncStatus
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
|
|
|
|
enum StatusCodes {
|
|
|
|
///
|
|
|
|
OK = 0,
|
|
|
|
///
|
|
|
|
UNKNOWN = 1,
|
|
|
|
///
|
|
|
|
DISABLED = 2, // Command cannot be executed
|
|
|
|
///
|
|
|
|
ON = 4,
|
|
|
|
///
|
|
|
|
OFF = 8
|
|
|
|
};
|
|
|
|
|
|
|
|
unsigned int v_;
|
|
|
|
|
|
|
|
public:
|
|
|
|
///
|
|
|
|
FuncStatus();
|
|
|
|
//
|
2003-10-21 16:15:14 +00:00
|
|
|
void clear();
|
2002-01-09 09:36:35 +00:00
|
|
|
///
|
2003-10-21 16:15:14 +00:00
|
|
|
void operator|=(FuncStatus const & f);
|
2002-01-09 09:36:35 +00:00
|
|
|
///
|
2003-10-21 16:15:14 +00:00
|
|
|
void unknown(bool b);
|
2002-01-09 09:36:35 +00:00
|
|
|
///
|
|
|
|
bool unknown() const;
|
2002-03-21 17:27:08 +00:00
|
|
|
|
2002-01-09 09:36:35 +00:00
|
|
|
///
|
2004-03-18 13:57:20 +00:00
|
|
|
void enabled(bool b);
|
2002-01-09 09:36:35 +00:00
|
|
|
///
|
2004-03-18 13:57:20 +00:00
|
|
|
bool enabled() const;
|
2002-01-09 09:36:35 +00:00
|
|
|
|
|
|
|
///
|
2003-10-21 16:15:14 +00:00
|
|
|
void setOnOff(bool b);
|
2002-01-09 09:36:35 +00:00
|
|
|
///
|
2003-10-21 16:15:14 +00:00
|
|
|
bool onoff(bool b) const;
|
2002-01-09 09:36:35 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|