mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-03-29 03:29:58 +02:00
[poincare] Added margins to ConjugateLayout.
Change-Id: I27b3788c87d36390fcea63c6a70b89aa36a2e9f3
This commit is contained in:
@@ -25,6 +25,8 @@ public:
|
||||
constexpr static KDCoordinate ExamPopUpBottomMargin = 55;
|
||||
constexpr static KDCoordinate StoreRowHeight = 50;
|
||||
constexpr static KDCoordinate ToolboxRowHeight = 40;
|
||||
constexpr static KDCoordinate FractionAndConjugateHorizontalOverflow = 2;
|
||||
constexpr static KDCoordinate FractionAndConjugateHorizontalMargin = 2;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "conjugate_layout.h"
|
||||
#include <escher/metric.h>
|
||||
#include <poincare/expression_layout_cursor.h>
|
||||
extern "C" {
|
||||
#include <assert.h>
|
||||
@@ -10,7 +11,7 @@ namespace Poincare {
|
||||
ConjugateLayout::ConjugateLayout(ExpressionLayout * operand, bool cloneOperands) :
|
||||
StaticLayoutHierarchy<1>(operand, cloneOperands)
|
||||
{
|
||||
m_baseline = operandLayout()->baseline()+k_overlineWidth+k_overlineMargin;
|
||||
m_baseline = operandLayout()->baseline()+k_overlineWidth+k_overlineVerticalMargin;
|
||||
}
|
||||
|
||||
ExpressionLayout * ConjugateLayout::clone() const {
|
||||
@@ -79,16 +80,16 @@ bool ConjugateLayout::moveRight(ExpressionLayoutCursor * cursor) {
|
||||
}
|
||||
|
||||
void ConjugateLayout::render(KDContext * ctx, KDPoint p, KDColor expressionColor, KDColor backgroundColor) {
|
||||
ctx->fillRect(KDRect(p.x(), p.y(), operandLayout()->size().width(), k_overlineWidth), expressionColor);
|
||||
ctx->fillRect(KDRect(p.x()+Metric::FractionAndConjugateHorizontalMargin, p.y(), operandLayout()->size().width()+2*Metric::FractionAndConjugateHorizontalOverflow, k_overlineWidth), expressionColor);
|
||||
}
|
||||
|
||||
KDSize ConjugateLayout::computeSize() {
|
||||
KDSize operandSize = operandLayout()->size();
|
||||
return KDSize(operandSize.width(), operandSize.height()+k_overlineWidth+k_overlineMargin);
|
||||
return KDSize(Metric::FractionAndConjugateHorizontalMargin+Metric::FractionAndConjugateHorizontalOverflow+operandSize.width()+Metric::FractionAndConjugateHorizontalOverflow+Metric::FractionAndConjugateHorizontalMargin, operandSize.height()+k_overlineWidth+k_overlineVerticalMargin);
|
||||
}
|
||||
|
||||
KDPoint ConjugateLayout::positionOfChild(ExpressionLayout * child) {
|
||||
return KDPoint(0, k_overlineWidth+k_overlineMargin);
|
||||
return KDPoint(Metric::FractionAndConjugateHorizontalMargin+Metric::FractionAndConjugateHorizontalOverflow, k_overlineWidth+k_overlineVerticalMargin);
|
||||
}
|
||||
|
||||
ExpressionLayout * ConjugateLayout::operandLayout() {
|
||||
|
||||
@@ -17,7 +17,7 @@ protected:
|
||||
KDPoint positionOfChild(ExpressionLayout * child) override;
|
||||
private:
|
||||
constexpr static KDCoordinate k_overlineWidth = 1;
|
||||
constexpr static KDCoordinate k_overlineMargin = 3;
|
||||
constexpr static KDCoordinate k_overlineVerticalMargin = 1;
|
||||
ExpressionLayout * operandLayout();
|
||||
};
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "fraction_layout.h"
|
||||
#include <escher/metric.h>
|
||||
#include <poincare/expression_layout_cursor.h>
|
||||
#include <string.h>
|
||||
#include <assert.h>
|
||||
@@ -101,12 +102,12 @@ bool FractionLayout::moveDown(ExpressionLayoutCursor * cursor, ExpressionLayout
|
||||
|
||||
void FractionLayout::render(KDContext * ctx, KDPoint p, KDColor expressionColor, KDColor backgroundColor) {
|
||||
KDCoordinate fractionLineY = p.y() + numeratorLayout()->size().height() + k_fractionLineMargin;
|
||||
ctx->fillRect(KDRect(p.x()+k_fractionBorderMargin, fractionLineY, size().width()-2*k_fractionBorderMargin, 1), expressionColor);
|
||||
ctx->fillRect(KDRect(p.x()+Metric::FractionAndConjugateHorizontalMargin, fractionLineY, size().width()-2*Metric::FractionAndConjugateHorizontalMargin, 1), expressionColor);
|
||||
}
|
||||
|
||||
KDSize FractionLayout::computeSize() {
|
||||
KDCoordinate width = max(numeratorLayout()->size().width(), denominatorLayout()->size().width())
|
||||
+ 2*k_fractionBorderLength+2*k_fractionBorderMargin;
|
||||
+ 2*Metric::FractionAndConjugateHorizontalOverflow+2*Metric::FractionAndConjugateHorizontalMargin;
|
||||
KDCoordinate height = numeratorLayout()->size().height()
|
||||
+ k_fractionLineMargin + k_fractionLineHeight + k_fractionLineMargin
|
||||
+ denominatorLayout()->size().height();
|
||||
|
||||
@@ -18,8 +18,6 @@ protected:
|
||||
KDSize computeSize() override;
|
||||
KDPoint positionOfChild(ExpressionLayout * child) override;
|
||||
private:
|
||||
constexpr static KDCoordinate k_fractionBorderLength = 2;
|
||||
constexpr static KDCoordinate k_fractionBorderMargin = 2;
|
||||
constexpr static KDCoordinate k_fractionLineMargin = 2;
|
||||
constexpr static KDCoordinate k_fractionLineHeight = 2;
|
||||
ExpressionLayout * numeratorLayout();
|
||||
|
||||
Reference in New Issue
Block a user