mirror of
https://git.lyx.org/repos/lyx.git
synced 2025-01-03 08:28:25 +00:00
Introducing Font::validate().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21070 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
3372738c6d
commit
85cae8965e
44
src/Font.cpp
44
src/Font.cpp
@ -17,11 +17,12 @@
|
|||||||
#include "Font.h"
|
#include "Font.h"
|
||||||
|
|
||||||
#include "BufferParams.h" // stateText
|
#include "BufferParams.h" // stateText
|
||||||
|
#include "Color.h"
|
||||||
#include "debug.h"
|
#include "debug.h"
|
||||||
#include "Encoding.h"
|
#include "Encoding.h"
|
||||||
#include "gettext.h"
|
#include "gettext.h"
|
||||||
#include "Language.h"
|
#include "Language.h"
|
||||||
#include "Color.h"
|
#include "LaTeXFeatures.h"
|
||||||
#include "Lexer.h"
|
#include "Lexer.h"
|
||||||
#include "LyXRC.h"
|
#include "LyXRC.h"
|
||||||
#include "output_latex.h"
|
#include "output_latex.h"
|
||||||
@ -1070,6 +1071,47 @@ bool Font::fromString(string const & data, bool & toggle)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Font::validate(LaTeXFeatures & features) const
|
||||||
|
{
|
||||||
|
BufferParams const & bparams = features.bufferParams();
|
||||||
|
Language const * doc_language = bparams.language;
|
||||||
|
|
||||||
|
if (noun() == Font::ON) {
|
||||||
|
LYXERR(Debug::LATEX) << "font.noun: "
|
||||||
|
<< noun()
|
||||||
|
<< endl;
|
||||||
|
features.require("noun");
|
||||||
|
LYXERR(Debug::LATEX) << "Noun enabled. Font: "
|
||||||
|
<< to_utf8(stateText(0))
|
||||||
|
<< endl;
|
||||||
|
}
|
||||||
|
switch (color()) {
|
||||||
|
case Color::none:
|
||||||
|
case Color::inherit:
|
||||||
|
case Color::ignore:
|
||||||
|
// probably we should put here all interface colors used for
|
||||||
|
// font displaying! For now I just add this ones I know of (Jug)
|
||||||
|
case Color::latex:
|
||||||
|
case Color::note:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
features.require("color");
|
||||||
|
LYXERR(Debug::LATEX) << "Color enabled. Font: "
|
||||||
|
<< to_utf8(stateText(0))
|
||||||
|
<< endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (lang->babel() != doc_language->babel() &&
|
||||||
|
lang != ignore_language &&
|
||||||
|
lang != latex_language)
|
||||||
|
{
|
||||||
|
features.useLanguage(lang);
|
||||||
|
LYXERR(Debug::LATEX) << "Found language "
|
||||||
|
<< lang->lang() << endl;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
ostream & operator<<(ostream & os, Font::FONT_MISC_STATE fms)
|
ostream & operator<<(ostream & os, Font::FONT_MISC_STATE fms)
|
||||||
{
|
{
|
||||||
return os << int(fms);
|
return os << int(fms);
|
||||||
|
@ -28,6 +28,7 @@ namespace lyx {
|
|||||||
class Lexer;
|
class Lexer;
|
||||||
class BufferParams;
|
class BufferParams;
|
||||||
class Language;
|
class Language;
|
||||||
|
class LaTeXFeatures;
|
||||||
class OutputParams;
|
class OutputParams;
|
||||||
|
|
||||||
///
|
///
|
||||||
@ -321,6 +322,9 @@ public:
|
|||||||
///
|
///
|
||||||
Color_color realColor() const;
|
Color_color realColor() const;
|
||||||
|
|
||||||
|
///
|
||||||
|
void validate(LaTeXFeatures & features) const;
|
||||||
|
|
||||||
///
|
///
|
||||||
friend
|
friend
|
||||||
bool operator==(Font const & font1, Font const & font2);
|
bool operator==(Font const & font1, Font const & font2);
|
||||||
|
@ -20,11 +20,6 @@
|
|||||||
|
|
||||||
#include "FontList.h"
|
#include "FontList.h"
|
||||||
|
|
||||||
#include "BufferParams.h"
|
|
||||||
#include "debug.h"
|
|
||||||
#include "Language.h"
|
|
||||||
#include "LaTeXFeatures.h"
|
|
||||||
|
|
||||||
#include <boost/next_prior.hpp>
|
#include <boost/next_prior.hpp>
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
@ -235,47 +230,10 @@ bool FontList::hasChangeInRange(pos_type pos, int len) const
|
|||||||
|
|
||||||
void FontList::validate(LaTeXFeatures & features) const
|
void FontList::validate(LaTeXFeatures & features) const
|
||||||
{
|
{
|
||||||
BufferParams const & bparams = features.bufferParams();
|
|
||||||
Language const * doc_language = bparams.language;
|
|
||||||
|
|
||||||
const_iterator fcit = list_.begin();
|
const_iterator fcit = list_.begin();
|
||||||
const_iterator fend = list_.end();
|
const_iterator fend = list_.end();
|
||||||
for (; fcit != fend; ++fcit) {
|
for (; fcit != fend; ++fcit)
|
||||||
if (fcit->font().noun() == Font::ON) {
|
fcit->font().validate(features);
|
||||||
LYXERR(Debug::LATEX) << "font.noun: "
|
|
||||||
<< fcit->font().noun()
|
|
||||||
<< endl;
|
|
||||||
features.require("noun");
|
|
||||||
LYXERR(Debug::LATEX) << "Noun enabled. Font: "
|
|
||||||
<< to_utf8(fcit->font().stateText(0))
|
|
||||||
<< endl;
|
|
||||||
}
|
|
||||||
switch (fcit->font().color()) {
|
|
||||||
case Color::none:
|
|
||||||
case Color::inherit:
|
|
||||||
case Color::ignore:
|
|
||||||
// probably we should put here all interface colors used for
|
|
||||||
// font displaying! For now I just add this ones I know of (Jug)
|
|
||||||
case Color::latex:
|
|
||||||
case Color::note:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
features.require("color");
|
|
||||||
LYXERR(Debug::LATEX) << "Color enabled. Font: "
|
|
||||||
<< to_utf8(fcit->font().stateText(0))
|
|
||||||
<< endl;
|
|
||||||
}
|
|
||||||
|
|
||||||
Language const * language = fcit->font().language();
|
|
||||||
if (language->babel() != doc_language->babel() &&
|
|
||||||
language != ignore_language &&
|
|
||||||
language != latex_language)
|
|
||||||
{
|
|
||||||
features.useLanguage(language);
|
|
||||||
LYXERR(Debug::LATEX) << "Found language "
|
|
||||||
<< language->lang() << endl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace lyx
|
} // namespace lyx
|
||||||
|
Loading…
Reference in New Issue
Block a user