-std::ostream & operator<<(std::ostream &, LyXFont::FONT_MISC_STATE);
-
-
-inline
-LyXFont::LyXFont()
-{
- bits = sane;
- lang = default_language;
-}
-
-
-inline
-LyXFont::LyXFont(LyXFont const & x)
-{
- bits = x.bits;
- lang = x.lang;
-}
-
-
-inline
-LyXFont::LyXFont(LyXFont::FONT_INIT1)
-{
- bits = inherit;
- lang = default_language;
-}
-
-
-inline
-LyXFont::LyXFont(LyXFont::FONT_INIT2)
-{
- bits = ignore;
- lang = ignore_language;
-}
-
-
-inline
-LyXFont::LyXFont(LyXFont::FONT_INIT3)
-{
- bits = sane;
- lang = default_language;
-}
-inline
-LyXFont::LyXFont(LyXFont::FONT_INIT1, Language const * l)
-{
- bits = inherit;
- lang = l;
-}
-
-
-inline
-LyXFont::LyXFont(LyXFont::FONT_INIT2, Language const * l)
-{
- bits = ignore;
- lang = l;
-}
-
-
-inline
-LyXFont::LyXFont(LyXFont::FONT_INIT3, Language const * l)
-{
- bits = sane;
- lang = l;
-}
-
-inline
-LyXFont & LyXFont::operator=(LyXFont const & x)
-{
- bits = x.bits;
- lang = x.lang;
- return *this;
-}
-
-
-inline
-LyXFont::FONT_FAMILY LyXFont::family() const
-{
- return bits.family;
-}
-
-
-inline
-LyXFont::FONT_SERIES LyXFont::series() const
-{
- return bits.series;
-}
-
-
-inline
-LyXFont::FONT_SHAPE LyXFont::shape() const
-{
- return bits.shape;
-}
-
-
-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::underbar() const
-{
- return bits.underbar;
-}
-
-
-inline
-LyXFont::FONT_MISC_STATE LyXFont::noun() const
-{
- return bits.noun;
-}
-
-
-inline
-LyXFont::FONT_MISC_STATE LyXFont::latex() const
-{
- return bits.latex;
-}
-
-
-inline
-LColor::color LyXFont::color() const
-{
- return bits.color;
-}
-
-
-inline
-Language const * LyXFont::language() const
-{
- return lang;
-}
-
-
-inline
-bool LyXFont::isRightToLeft() const
-{
- return lang->RightToLeft;
-}
-
-
-inline
-bool LyXFont::isVisibleRightToLeft() const
-{
- return (lang->RightToLeft && latex() != ON);
-}
-
-
-inline
-LyXFont & LyXFont::setFamily(LyXFont::FONT_FAMILY f)
-{
- bits.family = f;
- return *this;
-}
-
-
-inline
-LyXFont & LyXFont::setSeries(LyXFont::FONT_SERIES s)
-{
- bits.series = s;
- return *this;
-}
-
-
-inline
-LyXFont & LyXFont::setShape(LyXFont::FONT_SHAPE s)
-{
- bits.shape = s;
- return *this;
-}
-
+/** \c LyXFont_size is a wrapper for LyXFont::FONT_SIZE.
+ * It can be forward-declared and passed as a function argument without
+ * having to expose lyxfont.h.
+ */
+class LyXFont_size {
+public:
+ ///
+ LyXFont_size(LyXFont::FONT_SIZE val) : val_(val) {}
+ ///
+ operator LyXFont::FONT_SIZE() const { return val_; }
+private:
+ ///
+ LyXFont::FONT_SIZE val_;
+};