[apps/reg] Factorize the model layouts fonts

This commit is contained in:
Léa Saviot
2019-03-26 11:54:03 +01:00
committed by Émilie Feral
parent 93388a0248
commit 7cfeac8387
10 changed files with 69 additions and 68 deletions

View File

@@ -21,27 +21,27 @@ Layout CubicModel::layout() {
if (m_layout.isUninitialized()) {
constexpr int size = 15;
Layout layoutChildren[size] = {
CodePointLayout::Builder('a', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('a', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
VerticalOffsetLayout::Builder(
CodePointLayout::Builder('3', KDFont::SmallFont),
CodePointLayout::Builder('3', k_layoutFont),
VerticalOffsetLayoutNode::Type::Superscript
),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('b', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('b', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
VerticalOffsetLayout::Builder(
CodePointLayout::Builder('2', KDFont::SmallFont),
CodePointLayout::Builder('2', k_layoutFont),
VerticalOffsetLayoutNode::Type::Superscript
),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('c', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('d', KDFont::SmallFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('c', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('d', k_layoutFont),
};
m_layout = HorizontalLayout::Builder(layoutChildren, size);
}

View File

@@ -13,14 +13,14 @@ Layout ExponentialModel::layout() {
if (m_layout.isUninitialized()) {
constexpr int size = 4;
Layout layoutChildren[size] = {
CodePointLayout::Builder('a', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('e', KDFont::SmallFont),
CodePointLayout::Builder('a', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('e', k_layoutFont),
VerticalOffsetLayout::Builder(
HorizontalLayout::Builder(
CodePointLayout::Builder('b', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont)
CodePointLayout::Builder('b', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont)
),
VerticalOffsetLayoutNode::Type::Superscript
)

View File

@@ -11,7 +11,7 @@ namespace Regression {
Layout LinearModel::layout() {
if (m_layout.isUninitialized()) {
const char * s = "a·X+b";
m_layout = LayoutHelper::String(s, strlen(s), KDFont::SmallFont);
m_layout = LayoutHelper::String(s, strlen(s), k_layoutFont);
}
return m_layout;
}

View File

@@ -11,7 +11,7 @@ namespace Regression {
Layout LogarithmicModel::layout() {
if (m_layout.isUninitialized()) {
const char * s = "a·ln(X)+b";
m_layout = LayoutHelper::String(s, strlen(s), KDFont::SmallFont);
m_layout = LayoutHelper::String(s, strlen(s), k_layoutFont);
}
return m_layout;
}

View File

@@ -14,25 +14,25 @@ Layout LogisticModel::layout() {
if (m_layout.isUninitialized()) {
constexpr int exponentSize = 4;
Layout exponentLayoutChildren[exponentSize] = {
CodePointLayout::Builder('-', KDFont::SmallFont),
CodePointLayout::Builder('b', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont)
CodePointLayout::Builder('-', k_layoutFont),
CodePointLayout::Builder('b', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont)
};
constexpr int denominatorSize = 6;
Layout layoutChildren[denominatorSize] = {
CodePointLayout::Builder('1', KDFont::SmallFont),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('a', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('e', KDFont::SmallFont),
CodePointLayout::Builder('1', k_layoutFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('a', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('e', k_layoutFont),
VerticalOffsetLayout::Builder(
HorizontalLayout::Builder(exponentLayoutChildren, exponentSize),
VerticalOffsetLayoutNode::Type::Superscript
)
};
m_layout = FractionLayout::Builder(
CodePointLayout::Builder('c', KDFont::SmallFont),
CodePointLayout::Builder('c', k_layoutFont),
HorizontalLayout::Builder(layoutChildren, denominatorSize)
);
}

View File

@@ -41,6 +41,7 @@ public:
protected:
// Fit
virtual bool dataSuitableForFit(Store * store, int series) const;
constexpr static const KDFont * k_layoutFont = KDFont::SmallFont;
Poincare::Layout m_layout;
private:
// Model attributes

View File

@@ -14,11 +14,11 @@ Layout PowerModel::layout() {
if (m_layout.isUninitialized()) {
constexpr int size = 4;
Layout layoutChildren[size] = {
CodePointLayout::Builder('a', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('a', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
VerticalOffsetLayout::Builder(
CodePointLayout::Builder('b', KDFont::SmallFont),
CodePointLayout::Builder('b', k_layoutFont),
VerticalOffsetLayoutNode::Type::Superscript
),
};

View File

@@ -21,19 +21,19 @@ Layout QuadraticModel::layout() {
if (m_layout.isUninitialized()) {
constexpr int size = 10;
Layout layoutChildren[size] = {
CodePointLayout::Builder('a', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('a', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
VerticalOffsetLayout::Builder(
CodePointLayout::Builder('2', KDFont::SmallFont),
CodePointLayout::Builder('2', k_layoutFont),
VerticalOffsetLayoutNode::Type::Superscript
),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('b', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('c', KDFont::SmallFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('b', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('c', k_layoutFont),
};
m_layout = HorizontalLayout::Builder(layoutChildren, size);
}

View File

@@ -21,35 +21,35 @@ Layout QuarticModel::layout() {
if (m_layout.isUninitialized()) {
constexpr int size = 20;
Layout layoutChildren[size] = {
CodePointLayout::Builder('a', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('a', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
VerticalOffsetLayout::Builder(
CodePointLayout::Builder('4', KDFont::SmallFont),
CodePointLayout::Builder('4', k_layoutFont),
VerticalOffsetLayoutNode::Type::Superscript
),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('b', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('b', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
VerticalOffsetLayout::Builder(
CodePointLayout::Builder('3', KDFont::SmallFont),
CodePointLayout::Builder('3', k_layoutFont),
VerticalOffsetLayoutNode::Type::Superscript
),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('c', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('c', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
VerticalOffsetLayout::Builder(
CodePointLayout::Builder('2', KDFont::SmallFont),
CodePointLayout::Builder('2', k_layoutFont),
VerticalOffsetLayoutNode::Type::Superscript
),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('d', KDFont::SmallFont),
CodePointLayout::Builder(UCodePointMiddleDot, KDFont::SmallFont),
CodePointLayout::Builder('X', KDFont::SmallFont),
CodePointLayout::Builder('+', KDFont::SmallFont),
CodePointLayout::Builder('e', KDFont::SmallFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('d', k_layoutFont),
CodePointLayout::Builder(UCodePointMiddleDot, k_layoutFont),
CodePointLayout::Builder('X', k_layoutFont),
CodePointLayout::Builder('+', k_layoutFont),
CodePointLayout::Builder('e', k_layoutFont),
};
m_layout = HorizontalLayout::Builder(layoutChildren, size);
}

View File

@@ -19,7 +19,7 @@ namespace Regression {
Layout TrigonometricModel::layout() {
if (m_layout.isUninitialized()) {
const char * s = "a·sin(b·X+c)+d";
m_layout = LayoutHelper::String(s, strlen(s), KDFont::SmallFont);
m_layout = LayoutHelper::String(s, strlen(s), k_layoutFont);
}
return m_layout;
}