[apps][escher] Delete magic numbers

Change-Id: If7a589d9f02895fc1b2e8b496133ab11381e733c
This commit is contained in:
Émilie Feral
2017-04-14 18:30:58 +02:00
parent 38a1048bc1
commit 024e55abeb
17 changed files with 23 additions and 21 deletions

View File

@@ -2,6 +2,7 @@
#define CALCULATION_CALCULATION_H
#include <poincare.h>
#include <escher.h>
namespace Calculation {
@@ -24,10 +25,9 @@ public:
Poincare::ExpressionLayout * outputLayout();
void setContent(const char * c, Poincare::Context * context);
bool isEmpty();
constexpr static int k_maximalExpressionTextLength = 255;
private:
char m_inputText[k_maximalExpressionTextLength];
char m_outputText[k_maximalExpressionTextLength];
char m_inputText[::TextField::maxBufferSize()];
char m_outputText[::TextField::maxBufferSize()];
Poincare::Expression * m_input;
Poincare::ExpressionLayout * m_inputLayout;
Poincare::Expression * m_output;

View File

@@ -10,7 +10,7 @@ namespace Calculation {
EditExpressionController::ContentView::ContentView(Responder * parentResponder, TableView * subview, TextFieldDelegate * textFieldDelegate) :
View(),
m_mainView(subview),
m_textField(parentResponder, m_textBody, 255, textFieldDelegate)
m_textField(parentResponder, m_textBody, 100, textFieldDelegate)
{
m_textBody[0] = 0;
}

View File

@@ -35,7 +35,7 @@ private:
constexpr static int k_separatorThickness = 1;
TableView * m_mainView;
TextField m_textField;
char m_textBody[255];
char m_textBody[TextField::maxBufferSize()];
};
Shared::TextFieldDelegateApp * textFieldDelegateApp() override;
ContentView m_contentView;

View File

@@ -40,7 +40,7 @@ KDCoordinate ListController::rowHeight(int j) {
void ListController::editExpression(Function * function, Ion::Events::Event event) {
char * initialText = nullptr;
char initialTextContent[255];
char initialTextContent[TextField::maxBufferSize()];
if (event == Ion::Events::OK) {
strlcpy(initialTextContent, function->text(), sizeof(initialTextContent));
initialText = initialTextContent;

View File

@@ -48,7 +48,7 @@ private:
LawCurveView m_lawCurveView;
ImageTableView m_imageTableView;
MessageTextView m_text[k_maxNumberOfEditableFields];
char m_draftTextBuffer[EditableTextCell::k_bufferLength];
char m_draftTextBuffer[TextField::maxBufferSize()];
EditableTextCell m_calculationCell[k_maxNumberOfEditableFields];
Calculation * m_calculation;
};

View File

@@ -85,7 +85,7 @@ void ListController::selectPreviousNewSequenceCell() {
void ListController::editExpression(Sequence * sequence, int sequenceDefinition, Ion::Events::Event event) {
char * initialText = nullptr;
char initialTextContent[255];
char initialTextContent[TextField::maxBufferSize()];
if (event == Ion::Events::OK) {
switch (sequenceDefinition) {
case 0:

View File

@@ -37,8 +37,8 @@ private:
constexpr static int k_maxRecurrentRank = 10000;
char symbol() const override;
Type m_type;
char m_firstInitialConditionText[Shared::Function::k_bodyLength];
char m_secondInitialConditionText[Shared::Function::k_bodyLength];
char m_firstInitialConditionText[TextField::maxBufferSize()];
char m_secondInitialConditionText[TextField::maxBufferSize()];
Poincare::Expression * m_firstInitialConditionExpression;
Poincare::Expression * m_secondInitialConditionExpression;
Poincare::ExpressionLayout * m_firstInitialConditionLayout;

View File

@@ -3,6 +3,7 @@
#include <poincare.h>
#include <kandinsky.h>
#include <escher.h>
namespace Shared {
@@ -22,11 +23,10 @@ public:
void setColor(KDColor m_color);
virtual float evaluateAtAbscissa(float x, Poincare::Context * context) const;
protected:
constexpr static int k_bodyLength = 255;
Poincare::Expression * m_expression;
private:
virtual char symbol() const = 0;
char m_text[k_bodyLength];
char m_text[TextField::maxBufferSize()];
const char * m_name;
KDColor m_color;
Poincare::ExpressionLayout * m_layout;

View File

@@ -33,7 +33,7 @@ protected:
int numberOfElements() override;
int maxNumberOfElements() const override;
virtual HighlightCell * titleCells(int index) = 0;
char m_draftTextBuffer[EditableTextCell::k_bufferLength];
char m_draftTextBuffer[TextField::maxBufferSize()];
EvenOddEditableTextCell m_editableCells[k_maxNumberOfEditableCells];
FloatPairStore * m_store;
StoreParameterController m_storeParameterController;

View File

@@ -60,7 +60,7 @@ private:
EvenOddMessageTextCell m_abscissaTitleCell;
virtual FunctionTitleCell * functionTitleCells(int j) = 0;
virtual EvenOddBufferTextCell * floatCells(int j) = 0;
char m_draftTextBuffer[EditableTextCell::k_bufferLength];
char m_draftTextBuffer[TextField::maxBufferSize()];
EvenOddEditableTextCell m_abscissaCells[k_maxNumberOfAbscissaCells];
virtual FunctionStore * functionStore() const = 0;
virtual ValuesFunctionParameterController * functionParameterController() = 0;

View File

@@ -21,11 +21,10 @@ public:
bool isEditing();
void setEditing(bool isEditing);
KDSize minimalSizeForOptimalDisplay() const override;
constexpr static int k_bufferLength = 255;
private:
constexpr static KDCoordinate k_separatorThickness = 1;
TextField m_textField;
char m_textBody[k_bufferLength];
char m_textBody[TextField::maxBufferSize()];
};
#endif

View File

@@ -37,7 +37,7 @@ private:
constexpr static int k_inputHeight = 37;
constexpr static int k_separatorThickness = 1;
TextField m_textField;
char m_textBody[255];
char m_textBody[TextField::maxBufferSize()];
};
ContentView m_view;
};

View File

@@ -16,7 +16,7 @@ public:
void setHighlighted(bool highlight) override;
void setAccessoryText(const char * text);
void setTextColor(KDColor color) override;
constexpr static int k_bufferLength = 255;
constexpr static int k_bufferLength = TextField::maxBufferSize();
private:
constexpr static int k_maxNumberOfEditableCharacters = 14;
TextField m_textField;

View File

@@ -29,6 +29,9 @@ public:
KDSize minimalSizeForOptimalDisplay() const override;
void setTextFieldDelegate(TextFieldDelegate * delegate);
bool handleEvent(Ion::Events::Event event) override;
constexpr static int maxBufferSize() {
return ContentView::k_maxBufferSize;
}
protected:
class ContentView : public View {
public:

View File

@@ -7,7 +7,7 @@ EditableTextCell::EditableTextCell(Responder * parentResponder, TextFieldDelegat
KDText::FontSize size, float horizontalAlignment, float verticalAlignment, KDColor textColor, KDColor backgroundColor) :
HighlightCell(),
Responder(parentResponder),
m_textField(TextField(this, m_textBody, draftTextBuffer, 255, delegate, true, size, horizontalAlignment, verticalAlignment, textColor, backgroundColor))
m_textField(TextField(this, m_textBody, draftTextBuffer, TextField::maxBufferSize(), delegate, true, size, horizontalAlignment, verticalAlignment, textColor, backgroundColor))
{
}

View File

@@ -6,7 +6,7 @@
InputViewController::TextFieldController::ContentView::ContentView(Responder * parentResponder, TextFieldDelegate * textFieldDelegate) :
Responder(parentResponder),
View(),
m_textField(this, m_textBody, m_textBody, 255, textFieldDelegate, false)
m_textField(this, m_textBody, m_textBody, TextField::maxBufferSize(), textFieldDelegate, false)
{
m_textBody[0] = 0;
}

View File

@@ -5,7 +5,7 @@
MessageTableCellWithEditableText::MessageTableCellWithEditableText(Responder * parentResponder, TextFieldDelegate * textFieldDelegate, char * draftTextBuffer, I18n::Message message) :
Responder(parentResponder),
MessageTableCell(message),
m_textField(TextField(this, m_textBody, draftTextBuffer, 255, textFieldDelegate, true, KDText::FontSize::Large, 1.0f, 0.5f))
m_textField(TextField(this, m_textBody, draftTextBuffer, TextField::maxBufferSize(), textFieldDelegate, true, KDText::FontSize::Large, 1.0f, 0.5f))
{
}