Léa Saviot
963edd5c35
[apps/solver] Fix addition of "=0" to equations
...
ShiftRight no longer puts the cursor at the end of the text/layout.
2020-02-12 15:13:24 +01:00
Léa Saviot
c5315189ac
[apps/solver] Fix SolutionsController::k_maxNumberOfVisibleCells
2020-02-12 15:13:24 +01:00
Léa Saviot
3b80b747b2
[test/solver] Add more tests
2020-02-12 15:13:24 +01:00
Léa Saviot
c4beb5ec63
[apps/solver] Fix x10 display in approximate solutions
...
Scenario: Solve the equation cos(x) = 10 between -1000 and 1000, the x10
solution was badly displayed.
2020-02-12 15:13:24 +01:00
Léa Saviot
25ef10a0c5
[tests/solver] Add test on solver + user defined symbols
2020-02-12 15:13:24 +01:00
Léa Saviot
470b713226
[test] Fix tests for new SymbolicComputation parameter
2020-02-12 15:13:24 +01:00
Léa Saviot
72259f359c
[apps/solver] Fix rowHeight for approximated solutions
...
User variables rows were too small
2020-02-12 15:13:24 +01:00
Léa Saviot
248e875192
[apps/solver] Always display used variables
...
Scenario: 3->x, 4->y, equation x+y+c=0 would not display the values of x
and y
2020-02-12 15:13:24 +01:00
Léa Saviot
424ee9fa15
[poincare] Add SymbolicComputation parameter to the reduction context
...
This way, in solver, we can reduce expression without expanding symbols
2020-02-12 15:13:24 +01:00
Léa Saviot
016a68d469
[apps/solver] Do not select "User variables used" row
2020-02-12 15:13:23 +01:00
Léa Saviot
db0e7f0d8b
[apps/solver] Display user variables in the solutions
2020-02-12 15:13:23 +01:00
Léa Saviot
7e7a37bf8e
[apps/solver/solutions_controller] Code cleaning
2020-02-12 15:13:23 +01:00
Léa Saviot
0e64e89496
[apps/solver] Do not use symbol context if no solution found
...
Still replace the functions
2020-02-12 15:13:23 +01:00
Émilie Feral
551e4998f4
[apps/calculation][apps/solver][poincare] Simplify sign =/≈ computation
...
between outputs in Calculation/Solver
2020-02-12 15:13:23 +01:00
Émilie Feral
251db5b60e
[apps/shared][apps/calculation] Change class names:
...
ScrollableInputExactApproximateExpressionsCell -->
ScrollableThreeExpressionsCell
AbstractScrollableExactApproximateExpressionsView -->
AbstractScrollableMultipleExpressionsView
ScrollableExactApproximateExpressionsView -->
ScrollableTwoExpressionsView
ScrollableInputExactApproximateExpressionsView -->
ScrollableTwoExpressionsCell
2020-02-12 15:13:22 +01:00
Émilie Feral
87e4836196
[apps/calculation][apps/shared]
...
AbstractScrollableExactApproximateExpressionsView children classes
reload scroll after reloading the subview selection when entering the
responder chain and when cell becomes first responder. We don't reload
scroll when setting content of cells as this is done every time we
relayout - when scrolling in the table for instance.
2020-02-12 15:13:22 +01:00
Émilie Feral
56319ef275
[apps/shared] AbstractScrollableExactApproximateExpressionsView can hold up to
...
three expressions but no more BurgerMenuView.
ScrollableExactApproximateExpressionsView and
ScrollableInputExactApproximateExpressionsView inherit from it.
2020-02-12 15:13:22 +01:00
Léa Saviot
a3a1f86f8d
[apps] Add context parameter to fix tests
2020-02-12 15:13:21 +01:00
Léa Saviot
756eeeb2d8
[poincare/parser] Add context
2020-02-12 15:13:21 +01:00
Émilie Feral
9312d2bd65
[escher] ExpressionTableCell is composed of a ScrollableExpressionView
...
instead of an ExpressionView
2020-02-12 15:13:19 +01:00
Léa Saviot
9f018eb9d9
[escher/view] setFrame and layoutSubviews can be forced
2020-02-12 15:13:15 +01:00
Ruben Dashyan
9480bcacd5
[apps/*/expression_model] Make expressionAddress private
2020-02-12 15:13:15 +01:00
Émilie Feral
5491dee5ce
[calculation][solver] Do not display exact solutions in Dutch exam mode
2019-12-19 15:52:45 +01:00
Émilie Feral
c659cc7477
[poincare] EquationStore: add tests
2019-11-21 09:47:16 +01:00
Émilie Feral
ccf848a9eb
[poincare] Add test: do not expand multinome when reduction target is
...
System
2019-11-21 09:47:16 +01:00
Émilie Feral
4d593a6149
[poincare] PrintFloat: take into account the distinction between char
...
and glyph length in ConvertFloatToText
2019-09-26 11:26:48 +02:00
Ruben Dashyan
413397652c
[apps/*/expression_model_list_controller] Refactor modelStore()
...
Its return type is covariant. Get the ExpressionModelStore from the App.
2019-09-20 17:11:42 +02:00
Ruben Dashyan
e80aaa649d
[apps/solver/list_controller] Use modelStore()
2019-09-20 17:11:42 +02:00
Ruben Dashyan
a5bff416d1
[apps/*/expression_model_list_controller] Use isAddEmptyRow
2019-09-20 17:11:42 +02:00
Léa Saviot
4caf9f5197
[coding style] Make some methods const
2019-09-09 20:05:14 +02:00
Émilie Feral
6de497c2ed
[apps/shared] Templatize FloatParameterController to handle float/double
...
parameters.
Fix bug: when entering "e^234" as a parameter of a model keeping floats,
the FloatParameterController would accept the number (because e^234 is
defined in double) and store an undefined value in the model (because
e^234 is undefined in float).
2019-09-02 16:55:39 +02:00
Ruben Dashyan
381a92f991
[apps] Remove unnecessary overriding
2019-08-29 11:07:22 +02:00
Léa Saviot
0840ca7a1e
[apps/poincare] Move NormalDistribution to Poincare
2019-08-23 13:47:52 +02:00
Émilie Feral
503e07fe5a
[apps/sequence] Fix SequenceStore: sequences are not memoized but all
...
kept in the store (because we need all of them to evaluate one
sequence). setMemoizedModelAtIndex now store u, v and w sequences in
this order to avoid requiring expiring pointers.
2019-08-13 09:44:00 +02:00
Émilie Feral
12060e2ae7
[escher] TextField: all text fields use the same draft text buffer
2019-08-13 09:44:00 +02:00
Émilie Feral
081462ab5e
[poincare] Fix tests with Multiplication serialization (it always add
...
the × operator
2019-08-08 17:22:06 +02:00
Émilie Feral
9fbec16db4
[poincare] Merge MultiplicationImplicit and MultiplicationExplicit (they
...
were required if we wanted to parse into two distincts expression 2π and
2*π but don't)
2019-08-08 17:22:05 +02:00
Émilie Feral
c1cd0302b8
[poincare] Fix typo: explicite --> explicit, implicite --> implicit
2019-08-08 17:22:04 +02:00
Émilie Feral
cedcab21ec
[poincare] Tidy tests and add TODO for tests that need to be completed
2019-08-08 17:22:04 +02:00
Émilie Feral
f546845279
[apps] Test: fix calculation and equation test with layout and
...
expression seriazlization
2019-08-08 17:22:03 +02:00
Émilie Feral
d0fb30028e
[poincare] Use '×' instead of '·' when pressing multiplication key
2019-08-08 17:22:02 +02:00
Émilie Feral
fd25b678ce
[poincare] Split Multiplication into MultiplicationExplicite and
...
MultiplicationImplicite
2019-08-08 17:22:02 +02:00
Émilie Feral
869ab35c54
Makefile: build only necessary files for test target
2019-08-08 17:22:01 +02:00
Émilie Feral
059c596a80
Makefiles: avoid building all sources for each target; introduce more
...
modularity
2019-08-08 17:22:01 +02:00
Léa Saviot
a6e0471748
[app/solver] Inline code
...
Does not reduce binary size, but cleaner
2019-08-08 16:29:38 +02:00
Léa Saviot
61cf762eef
[poincare] Expression::ReductionContext
2019-08-08 16:29:37 +02:00
Ruben Dashyan
eb6d697927
[apps] Make app accessors static members of App classes
2019-07-19 15:06:25 +02:00
Ruben Dashyan
44809f4b3f
Substitute Escher app() by Container::activeApp()
2019-07-19 15:06:25 +02:00
Ruben Dashyan
3e992a3560
[apps] Replace app() by textFieldDelegateApp() in TextFieldDelegates
2019-07-19 15:06:25 +02:00
Ruben Dashyan
055d601854
[apps] Define TextFieldDelegate::textFieldDelegateApp() directly from ::app()
2019-07-19 15:06:25 +02:00