lyx_mirror/src/LayoutEnums.h
2020-07-08 13:15:05 +02:00

164 lines
2.2 KiB
C++

// -*- C++ -*-
/**
* \file Layout.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 Jean-Marc Lasgouttes
* \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
#ifndef LAYOUTENUMS_H
#define LAYOUTENUMS_H
// Do not include anything here
namespace lyx {
/// The different output types
enum OutputType {
///
LATEX = 1,
///
LITERATE
};
/// The different margin types
enum MarginType {
///
MARGIN_MANUAL = 1,
///
MARGIN_FIRST_DYNAMIC,
///
MARGIN_DYNAMIC,
///
MARGIN_STATIC,
///
MARGIN_RIGHT_ADDRESS_BOX
};
///
enum LyXAlignment {
///
LYX_ALIGN_NONE = 0,
///
LYX_ALIGN_BLOCK = 1,
///
LYX_ALIGN_LEFT = 2,
///
LYX_ALIGN_RIGHT = 4,
///
LYX_ALIGN_CENTER = 8,
///
LYX_ALIGN_LAYOUT = 16,
///
LYX_ALIGN_SPECIAL = 32,
///
LYX_ALIGN_DECIMAL = 64
};
/// Paragraph indendation control
enum ToggleIndentation {
/// Indentation can be toggled if document uses "indent" paragraph style
ITOGGLE_DOCUMENT_DEFAULT = 1,
/// Indentation cannot be toggled
ITOGGLE_NEVER,
/// Indentation can always be toggled
ITOGGLE_ALWAYS
};
///
inline void operator|=(LyXAlignment & la1, LyXAlignment la2)
{
la1 = static_cast<LyXAlignment>(la1 | la2);
}
///
inline LyXAlignment operator|(LyXAlignment la1, LyXAlignment la2)
{
return static_cast<LyXAlignment>(int(la1) | int(la2));
}
/// The different LaTeX-Types
enum LatexType {
///
LATEX_PARAGRAPH = 1,
///
LATEX_COMMAND,
///
LATEX_ENVIRONMENT,
///
LATEX_ITEM_ENVIRONMENT,
///
LATEX_BIB_ENVIRONMENT,
///
LATEX_LIST_ENVIRONMENT
};
/// The different title types
enum TitleLatexType {
///
TITLE_COMMAND_AFTER = 1,
///
TITLE_ENVIRONMENT
};
/// The different label types
enum LabelType {
///
LABEL_NO_LABEL,
///
LABEL_MANUAL,
///
LABEL_BIBLIO,
///
LABEL_ABOVE,
///
LABEL_CENTERED,
///
LABEL_STATIC,
///
LABEL_SENSITIVE,
///
LABEL_ENUMERATE,
///
LABEL_ITEMIZE
};
///
enum EndLabelType {
///
END_LABEL_NO_LABEL,
///
END_LABEL_BOX,
///
END_LABEL_FILLED_BOX,
///
END_LABEL_STATIC
};
///
enum ArgPassThru {
///
PT_INHERITED,
///
PT_FALSE,
///
PT_TRUE
};
} // namespace lyx
#endif