]> git.lyx.org Git - lyx.git/blobdiff - src/lyxfont.h
Added new FINISED states FINISHED_RIGHT, FINISHED_UP, FINISHED_DOWN.
[lyx.git] / src / lyxfont.h
index 906115a887fba693f354de8eb3d49d83e2d2b2bd..034d4e484f42141876b69ef21e297b334f05ebbb 100644 (file)
@@ -5,7 +5,7 @@
  *           LyX, The Document Processor
  *      
  *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-2000 The LyX Team.   
+ *           Copyright 1995-2001 The LyX Team.   
  *
  * ====================================================== */
 
 
 #include "LString.h"
 #include "LColor.h"
+#include "language.h"
 
 class LyXLex;
 class BufferParams;
-class Language;
+
 
 ///
 class LyXFont {
@@ -185,9 +186,6 @@ public:
        ///
        FONT_MISC_STATE noun() const;
 
-       ///
-       FONT_MISC_STATE latex() const;
-
        ///
        FONT_MISC_STATE number() const;
 
@@ -218,8 +216,6 @@ public:
        ///
        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);
@@ -256,7 +252,7 @@ public:
            a INHERIT_FAMILY was asked for.  This is necessary for the
            toggle-user-defined-style button on the toolbar.
        */
-       void update(LyXFont const & newfont, 
+       void update(LyXFont const & newfont,
                    Language const * default_lang,
                    bool toggleall = false);
  
@@ -265,8 +261,11 @@ public:
        void reduce(LyXFont const & tmplt);
  
        /// Realize font from a template (INHERIT are realized)
+#ifndef INHERIT_LANGUAGE
        LyXFont & realize(LyXFont const & tmplt);
-
+#else
+       LyXFont & realize(LyXFont const & tmplt, Language const * language);
+#endif
        /// Is a given font fully resolved?
        bool resolved() const;
  
@@ -274,7 +273,12 @@ public:
        LyXFont & lyxRead(LyXLex &);
  
        /// Writes the changes from this font to orgfont in .lyx format in file
+#ifndef INHERIT_LANGUAGE
        void lyxWriteChanges(LyXFont const & orgfont, std::ostream &) const;
+#else
+       void lyxWriteChanges(LyXFont const & orgfont, Language const * doclang,
+                            std::ostream &) const;
+#endif
 
        /** Writes the head of the LaTeX needed to change to this font.
            Writes to string, the head of the LaTeX needed to change
@@ -301,9 +305,6 @@ public:
        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:
@@ -330,8 +331,6 @@ private:
                ///
                FONT_MISC_STATE noun;
                ///
-               FONT_MISC_STATE latex;
-               ///
                FONT_MISC_STATE number;
        };
 
@@ -363,6 +362,33 @@ LyXFont::FONT_SHAPE LyXFont::shape() const
 }
 
 
+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
 {
@@ -370,6 +396,13 @@ LyXFont::FONT_MISC_STATE LyXFont::emph() const
 }
 
 
+inline
+LyXFont::FONT_MISC_STATE LyXFont::noun() const
+{
+       return bits.noun;
+}
+
+
 ///
 std::ostream & operator<<(std::ostream &, LyXFont::FONT_MISC_STATE);