Commit Graph

182 Commits

Author SHA1 Message Date
Émilie Feral
d0665d8558 [shared] Clean class names containing storage 2019-04-12 15:16:52 +02:00
Émilie Feral
de41064a47 [apps/shared] Change names:
Sequence::DefinitionHandle --> Sequence::DefinitionModel
Sequence::FirstInitialConditionHandle -->
Sequence::FirstInitialConditionModel
Equation::Handle--> Equation::Model
2019-04-12 15:16:52 +02:00
Émilie Feral
3c1e35ec04 [shared] Rename classes:
ExpressionModelHandle --> ExpressionModel
SingleExpressionModelHandle --> ExpressionModelHandle
StorageFunction --> Function
StorageCartesianFunction --> CartesianFunction
StorageFunctionApp --> FunctionApp
2019-04-12 15:16:52 +02:00
Émilie Feral
58f9a59d6e [ion] Move Storage extensions declaration in Storage class 2019-04-12 15:16:52 +02:00
Émilie Feral
a7192df59c [apps/shared] Split ExpressionModelHandle into ExpressionModelHandle and
SingleExpressionModelHandle (in perspective of Sequence model who will
be composed of 3 ExpressionModelHandle)
2019-04-12 15:16:52 +02:00
Émilie Feral
d4565442d9 [solver] Fix tests with new Equation API 2019-04-12 15:16:52 +02:00
Émilie Feral
2ba077af28 [solver] Make Solver::ListController inherits from
StorageExpressionModelListController instead of
ExpressionModelListController
2019-04-12 15:16:52 +02:00
Émilie Feral
83153dd511 [solver] EquationListView: clean setBraceStyle to always re-layout 2019-04-12 15:16:52 +02:00
Émilie Feral
0f37ee25f7 [solver] Make EquationStore inherits from StorageExpressionModelStore 2019-04-12 15:16:52 +02:00
Émilie Feral
53ee0607a1 [solver] Make Equation inherits from ExpressionModelHandle instead of
ExpressionModel
2019-04-12 15:16:52 +02:00
Léa Saviot
06269d5349 [unicode] Fix portuguese literals 2019-04-12 15:16:52 +02:00
Léo Solé
e4526124f9 [unicode] Fix Spanish literals 2019-04-12 15:16:52 +02:00
Léo Solé
387cf996c0 [unicode] Add accents in french litterals 2019-04-12 15:16:52 +02:00
Léa Saviot
a214bbdc5a [unicode] Use unicode when dealing with chars - Part 2 2019-04-12 15:16:51 +02:00
Léa Saviot
aac78ca32a [escher/ion] Standard methods in UTF8Helper used in text_area
String manipulations need to be done using an UTF8 decoder, but some
manipulations can be optimized if the code points we manipulate are only
one char long. These optimizations are done inside UTF8Helper methods.
2019-04-12 15:16:51 +02:00
Léa Saviot
43031928c3 Remove max/min inline from KDCoordinate header 2019-04-12 15:16:51 +02:00
Léa Saviot
b6eb663f53 [ion/kandinsky] Move unicode to ion 2019-04-12 15:16:51 +02:00
Léa Saviot
519e12fd26 [tests] Fix unicode for tests 2019-04-12 15:16:51 +02:00
Léa Saviot
8d759c0b3b [unicode] Use the UTF8Decoder to scan const char * 2019-04-12 15:16:51 +02:00
Léa Saviot
63d7155376 Remove Ion::Charset 2019-04-12 15:16:50 +02:00
Léa Saviot
db54c5bd27 [apps/poincare] Replace CharLayouts with CodePointLayouts 2019-04-12 15:16:50 +02:00
Romain Goyet
4f2c7a3763 [build] Update the i18n processing to fit the out-of-tree build 2019-03-06 15:00:59 +01:00
Romain Goyet
4f1d74f44b [build] Use an out-of-tree build 2019-03-06 15:00:59 +01:00
Émilie Feral
7b5f3c570d [poincare] Change the way Expression are built 2019-02-21 11:29:35 +01:00
Émilie Feral
ac6f23684d [poincare] Clean Expression and Layout builders
Before: Opposite(Opposite(Rational(1))) misleadingly created the
expression "-1"; now, Opposite::Builder(Opposite::Builder(Rational(1)))
creates "--1"
2019-02-21 11:29:35 +01:00
Ruben Dashyan
0943406263 Fix HistoryViewCell and ScrollableExactApproximateExxpressionsCell margins issue
Remove all margins from those cells.
Rather add margins to their respective subviews:
 - ScrollableExpressionView
 - ScrollableExactApproximateExpressionsView.

As a notable consequence, the distance in HistoryViewCell between its
subviews becomes 10 instead of 5.

In passing, replace
 - Metric::HistoryHorizontalMargin = 10
 - ScrollableExactApproximateExpressionsView::k_digitHorizontalMargin = 10
 - HistoryViewCell::k_digitVerticalMargin = 5
 - ScrollableExactApproximateExpressionsCell::k_margin = 5
by
 - Metric::CommonSmallMargin = 5
 - Metric::CommonLargeMargin = 10.
2019-02-18 16:49:58 +01:00
Ruben Dashyan
faae55eb51 [escher/scroll_view] Replace setShowsIndicators by setDecoratorType 2019-02-18 16:49:58 +01:00
Émilie Feral
b3a8441289 [solver] Fix tests on EquationStore: delta discriminant is counted as a
solution
2019-01-10 11:42:05 +01:00
Émilie Feral
c3b335212c [solver] Add a warning message when a polynomial has no real root 2019-01-10 11:42:05 +01:00
Émilie Feral
8cf6006a58 [solver] I18n: add messages "The polynomial has no real root" 2019-01-10 11:42:05 +01:00
Émilie Feral
4ccf1f08a9 [solver] Delta discriminant is counted as a solution to clear the code 2019-01-10 11:42:05 +01:00
Léa Saviot
d6e7f78705 [apps/solver] Clean comments 2019-01-10 11:42:04 +01:00
Léa Saviot
014b481a9b [apps/solver] Fix iteration max index 2019-01-10 11:42:04 +01:00
Émilie Feral
95248edde0 [poincare] Fix tests with new beautify order 2019-01-10 11:42:04 +01:00
Émilie Feral
fe8825df35 [shared] PoincareHelpers: update the complexFormat (force it to
Cartesian with complex input).
2019-01-10 11:42:04 +01:00
Émilie Feral
ab555888aa [solver] Clean and add tests on non-real equations 2019-01-10 11:42:04 +01:00
Émilie Feral
d66d71a152 [solver] Fix tests on unreal equations 2019-01-10 11:42:04 +01:00
Émilie Feral
8ac623be08 [solver] ListController: display a pop up when an equation is 'unreal' 2019-01-10 11:42:04 +01:00
Émilie Feral
64d6450728 [solver] Handle unreal equations and equations whose solutions are
unreal
2019-01-10 11:42:04 +01:00
Émilie Feral
fc6793233f [solver] I18n: add message 'unreal equation' 2019-01-10 11:42:04 +01:00
Émilie Feral
2052ee43ae [apps][poincare] An expression is undefined if it is of type 'unreal' or
'undefined'
2019-01-10 11:42:04 +01:00
Émilie Feral
05ef7008dc [solver] Fix bug: when the number of solutions is infinite, do not try
to find the solution layouts
2019-01-10 11:42:04 +01:00
Émilie Feral
ecf3f2ea0f [poincare] Create a a flag on Expression that is set when the
approximation encouters a complex value

All approximation methods take the complex format into account.
2019-01-10 11:42:04 +01:00
Émilie Feral
26e2e9be0d [poincare] Add complex format as an argument of simplification 2019-01-10 11:42:04 +01:00
Émilie Feral
aa80710f4d [solver] Take into account the complexFormat Real 2019-01-10 11:42:04 +01:00
Émilie Feral
df2f6e3b6e [poincare] Fix tests with complex cas 2019-01-10 11:42:03 +01:00
Émilie Feral
42aad48ec4 [solver] Fix EquationStore::oneDimensialPolynomialSolve 2019-01-10 11:42:03 +01:00
Émilie Feral
c6039423a9 [poincare] When simplifying an expression, also compute the approximation from the reduced
expression to avoid loss of precision.

If an expression is reduced to a ComplexCartesian(a, b), we compute the
approximation from ComplexCartesian(a,b) instead of going through the
potentially complicated expression resulting from beautifying
(sqrt(a^2+b^2)*exp(i*(arctan(b/a) -Pi/2*sign(b)) for example)
2019-01-10 11:42:03 +01:00
Émilie Feral
383ac004cf [poincare] Take into account complex format in simplify 2019-01-10 11:42:03 +01:00
Léa Saviot
29ef8c6d23 [apps/solver] Solutions are indexed from 1, not 0 2019-01-10 11:42:02 +01:00