X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FFont.h;h=8a5942864bf24f47b6b42c08685a17eeba3c7661;hb=5791b8bff8650be1ce0a3ee142e131fbc8de8587;hp=e044fc4fd926e29fd32c3f05a759a1d50c242ce6;hpb=5ddc612b735317d5b22553a63aad7879503e3950;p=features.git diff --git a/src/Font.h b/src/Font.h index e044fc4fd9..8a5942864b 100644 --- a/src/Font.h +++ b/src/Font.h @@ -4,7 +4,7 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * - * \author Lars Gullik Bjønnes + * \author Lars Gullik Bjønnes * \author Jean-Marc Lasgouttes * \author Angus Leeming * \author Dekel Tsur @@ -15,30 +15,25 @@ #ifndef FONT_H #define FONT_H -#ifdef TEX2LYX -#include "tex2lyx/Font.h" -#else - -#include "ColorCode.h" #include "FontInfo.h" -#include "support/docstream.h" +#include "support/strfwd.h" namespace lyx { -class Lexer; class BufferParams; class Language; class LaTeXFeatures; class OutputParams; +class otexstream; /// class Font { public: /// - Font(FontInfo = sane_font, Language const * l = 0); + explicit Font(FontInfo = sane_font, Language const * l = nullptr); /// FontInfo & fontInfo() { return bits_; } @@ -52,10 +47,8 @@ public: bool isVisibleRightToLeft() const; /// void setLanguage(Language const * l); - - /// Returns misc flag after LyX text format - FontState setLyXMisc(std::string const &); - + /// + void setProperties(FontInfo const & f); /// Returns size of font in LaTeX text notation std::string const latexSize() const; @@ -81,24 +74,28 @@ public: to this font. Returns number of chars written. Base is the font state active now. */ - int latexWriteStartChanges(odocstream &, BufferParams const & bparams, + int latexWriteStartChanges(otexstream &, BufferParams const & bparams, OutputParams const & runparams, Font const & base, - Font const & prev) const; + Font const & prev, + bool const & non_inherit_inset = false, + bool const & needs_cprotection = false) const; /** Writes the tail of the LaTeX needed to change to this font. Returns number of chars written. Base is the font state we want to achieve. */ - int latexWriteEndChanges(odocstream &, BufferParams const & bparams, + int latexWriteEndChanges(otexstream &, BufferParams const & bparams, OutputParams const & runparams, Font const & base, Font const & next, - bool const & closeLanguage = true) const; + bool & needPar, + bool const & closeLanguage = true, + bool const & multipar_inset = false) const; /// Build GUI description of font state - docstring const stateText(BufferParams * params) const; + docstring const stateText(BufferParams * params = nullptr, bool const terse = false) const; /// void validate(LaTeXFeatures & features) const; @@ -121,7 +118,6 @@ private: FontInfo bits_; /// Language const * lang_; - /// Did latexWriteStartChanges open an encoding environment? mutable bool open_encoding_; }; @@ -141,31 +137,6 @@ bool operator!=(Font const & font1, Font const & font2) return !(font1 == font2); } -/** Returns the current freefont, encoded as a std::string to be passed to the - * frontends. Implemented in Text3.cpp. - */ -std::string const freefont2string(); - - -/// Set family after LyX text format -void setLyXFamily(std::string const &, FontInfo &); - -/// Set series after LyX text format -void setLyXSeries(std::string const &, FontInfo &); - -/// Set shape after LyX text format -void setLyXShape(std::string const &, FontInfo &); - -/// Set size after LyX text format -void setLyXSize(std::string const &, FontInfo &); - -/// Sets color after LyX text format -void setLyXColor(std::string const &, FontInfo &); - -/// Read a font specification from Lexer. Used for layout files. -FontInfo lyxRead(Lexer &); - } // namespace lyx -#endif // TEX2LYX #endif