[1.16.0] You can now change the multiplication sign

This commit is contained in:
Quentin Guidée
2019-11-17 14:17:38 +01:00
parent aa9854b330
commit c31d3e3712
5 changed files with 11 additions and 30 deletions

View File

@@ -18,30 +18,26 @@ SymbolController::SymbolController(Responder * parentResponder) :
bool SymbolController::handleEvent(Ion::Events::Event event) {
Preferences * preferences = Preferences::sharedPreferences();
Poincare::Preferences::SymbolMultiplication symbolofMultiplication = preferences->symbolofMultiplication();
bool autoSymbol = (int)preferences->autoSymbol();
if (event == Ion::Events::OK || event == Ion::Events::EXE){
switch(selectedRow()){
case 0:
{
symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::Cross;
autoSymbol = false;
break;
}
case 1:
{
symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::MiddleDot;
autoSymbol = false;
break;
}
case 2:
{
symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::Star;
autoSymbol = false;
break;
}
case 3:
{
autoSymbol = !autoSymbol;
symbolofMultiplication = Poincare::Preferences::SymbolMultiplication::Auto;
break;
}
default:
@@ -50,7 +46,6 @@ bool SymbolController::handleEvent(Ion::Events::Event event) {
}
}
preferences->setSymbolMultiplication(symbolofMultiplication);
autoSymbol ? preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::True) : preferences->SetAutoSymbol(Poincare::Preferences::AutoSymbol::False);
m_selectableTableView.reloadData();
return true;
} else {
@@ -82,13 +77,10 @@ void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index)
Preferences * preferences = Preferences::sharedPreferences();
Poincare::Preferences::SymbolMultiplication symbolofMultiplication = preferences->symbolofMultiplication();
bool autoSymbol = (int)preferences->autoSymbol();
if (index == 0) {
SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView();
if(autoSymbol == true){
mySwitch->setState(false);
} else if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::Cross){
if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::Cross){
mySwitch->setState(true);
} else {
mySwitch->setState(false);
@@ -96,9 +88,7 @@ void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index)
}
else if (index == 1) {
SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView();
if(autoSymbol == true){
mySwitch->setState(false);
} else if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::MiddleDot){
if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::MiddleDot){
mySwitch->setState(true);
} else {
mySwitch->setState(false);
@@ -106,9 +96,7 @@ void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index)
}
else if (index == 2) {
SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView();
if(autoSymbol == true){
mySwitch->setState(false);
} else if (symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::Star){
if (symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::Star){
mySwitch->setState(true);
} else {
mySwitch->setState(false);
@@ -116,7 +104,7 @@ void SymbolController::willDisplayCellForIndex(HighlightCell * cell, int index)
}
else if (index == 3){
SwitchView * mySwitch = (SwitchView *)mySwitchCell->accessoryView();
if(autoSymbol == true){
if(symbolofMultiplication == Poincare::Preferences::SymbolMultiplication::Auto){
mySwitch->setState(true);
} else {
mySwitch->setState(false);

View File

@@ -4,7 +4,7 @@ PLATFORM ?= device
DEBUG ?= 0
EPSILON_VERSION ?= 12.0.0
EPSILON_CUSTOM_VERSION ?= 1.15.6-0
EPSILON_CUSTOM_VERSION ?= 1.16.0-0
# USERNAME ?= N/A
# Valid values are "none", "update", "beta"
EPSILON_APPS ?= calculation rpn graph code statistics probability solver atom sequence regression settings

View File

@@ -45,11 +45,8 @@ public:
enum class SymbolMultiplication {
Cross = 0,
MiddleDot = 1,
Star = 2
};
enum class AutoSymbol{
False = 0,
True = 1
Star = 2,
Auto = 3
};
Preferences();
static Preferences * sharedPreferences();
@@ -67,8 +64,6 @@ public:
void setColorOfLED(LEDColor color) { m_colorOfLED = color; }
SymbolMultiplication symbolofMultiplication() const {return m_symbolMultiplication;}
void setSymbolMultiplication(SymbolMultiplication symbolofMultiplication) {m_symbolMultiplication = symbolofMultiplication;}
AutoSymbol autoSymbol() const {return m_autoSymbol;}
void SetAutoSymbol(AutoSymbol autoSymbol) {m_autoSymbol = autoSymbol;}
private:
AngleUnit m_angleUnit;
PrintFloatMode m_displayMode;
@@ -76,8 +71,7 @@ private:
ComplexFormat m_complexFormat;
uint8_t m_numberOfSignificantDigits;
LEDColor m_colorOfLED;
SymbolMultiplication m_symbolMultiplication;
AutoSymbol m_autoSymbol;
SymbolMultiplication m_symbolMultiplication;
};
}

View File

@@ -166,7 +166,7 @@ CodePoint MultiplicationNode::operatorSymbol() const {
* × --> 2
* * --> 3 */
int sign = -1;
if(preferences->autoSymbol() == Poincare::Preferences::AutoSymbol::True){
if(preferences->symbolofMultiplication() == Poincare::Preferences::SymbolMultiplication::Auto){
for (int i = 0; i < numberOfChildren() - 1; i++) {
/* The operator symbol must be the same for all operands of the multiplication.
* If one operator has to be '×', they will all be '×'. Idem for '·'. */

View File

@@ -14,8 +14,7 @@ Preferences::Preferences() :
m_complexFormat(Preferences::ComplexFormat::Real),
m_numberOfSignificantDigits(PrintFloat::k_numberOfPrintedSignificantDigits),
m_colorOfLED(Preferences::LEDColor::White),
m_symbolMultiplication(Preferences::SymbolMultiplication::Cross),
m_autoSymbol(Preferences::AutoSymbol::True)
m_symbolMultiplication(Preferences::SymbolMultiplication::Cross)
{}
Preferences * Preferences::sharedPreferences() {