* LyX, The Document Processor
*
* Copyright 1995 Matthias Ettrich
- * Copyright 1995-2000 The LyX Team.
+ * Copyright 1995-2001 The LyX Team.
*
* ====================================================== */
#include <iosfwd>
#include "LString.h"
-#include "language.h"
#include "LColor.h"
-
-// It might happen that locale.h defines ON and OFF. This is not good
-// for us, since we use these names below. But of course this is due
-// to some old compilers. Than is broken when it comes to C++ scoping.
-#include "gettext.h" // so that we are sure tht it won't be included
-// later.
-#ifdef ON
-#undef ON
-#endif
-
-#ifdef OFF
-#undef OFF
-#endif
+#include "language.h"
class LyXLex;
class BufferParams;
+
///
class LyXFont {
public:
///
FONT_MISC_STATE noun() const;
- ///
- FONT_MISC_STATE latex() const;
-
///
FONT_MISC_STATE number() const;
///
LyXFont & setNoun(LyXFont::FONT_MISC_STATE n);
///
- LyXFont & setLatex(LyXFont::FONT_MISC_STATE l);
- ///
LyXFont & setNumber(LyXFont::FONT_MISC_STATE n);
///
LyXFont & setColor(LColor::color c);
a INHERIT_FAMILY was asked for. This is necessary for the
toggle-user-defined-style button on the toolbar.
*/
- void update(LyXFont const & newfont,
- Language const * default_lang,
- bool toggleall = false);
+ void update(LyXFont const & newfont, bool toggleall = false);
/** Reduce font to fall back to template where possible.
Equal fields are reduced to INHERIT */
void reduce(LyXFont const & tmplt);
/// Realize font from a template (INHERIT are realized)
- LyXFont & realize(LyXFont const & tmplt);
+ LyXFont & realize(LyXFont const & tmplt, Language const * language);
/// Is a given font fully resolved?
bool resolved() const;
LyXFont & lyxRead(LyXLex &);
/// Writes the changes from this font to orgfont in .lyx format in file
- void lyxWriteChanges(LyXFont const & orgfont, std::ostream &) const;
+ void lyxWriteChanges(LyXFont const & orgfont, Language const * doclang,
+ std::ostream &) const;
/** Writes the head of the LaTeX needed to change to this font.
Writes to string, the head of the LaTeX needed to change
friend
bool operator==(LyXFont const & font1, LyXFont const & font2);
- /// compares two fonts, ignoring the setting of the Latex part.
- bool equalExceptLatex(LyXFont const &) const;
-
/// Converts logical attributes to concrete shape attribute
LyXFont::FONT_SHAPE realShape() const;
private:
///
FONT_MISC_STATE noun;
///
- FONT_MISC_STATE latex;
- ///
FONT_MISC_STATE number;
};
LyXFont::FONT_MISC_STATE org);
};
+
+inline
+LyXFont::FONT_SHAPE LyXFont::shape() const
+{
+ return bits.shape;
+}
+
+
+inline
+LyXFont::LyXFont()
+ : bits(sane), lang(default_language)
+{}
+
+
+inline
+LyXFont::FONT_FAMILY LyXFont::family() const
+{
+ return bits.family;
+}
+
+
+inline
+LyXFont::FONT_SERIES LyXFont::series() const
+{
+ return bits.series;
+}
+
+
+inline
+LyXFont::FONT_SIZE LyXFont::size() const
+{
+ return bits.size;
+}
+
+
+inline
+LyXFont::FONT_MISC_STATE LyXFont::emph() const
+{
+ return bits.emph;
+}
+
+
+inline
+LyXFont::FONT_MISC_STATE LyXFont::noun() const
+{
+ return bits.noun;
+}
+
+
///
std::ostream & operator<<(std::ostream &, LyXFont::FONT_MISC_STATE);