Commit Graph

242 Commits

Author SHA1 Message Date
Émilie Feral
c24e2726fa [escher][apps] Get rid of duplicate overriden methods:
cumulatedHeightFromIndex, indexFromCumulatedHeight
2018-06-12 10:27:23 +02:00
Émilie Feral
e9c4485eeb Merge branch 'solver' into upgrade-1.6.0 2018-06-12 09:47:41 +02:00
Émilie Feral
52065c26ed [calculation] When the output text overflowed the buffer, parsing the
text returns nullptr. Handle this case here
2018-06-12 09:43:25 +02:00
Émilie Feral
9407a86f5f [calculation] Avoid getting sqrt(2)/2 = 0.999906 (wrong) instead of cos(pi/4) =
0.999906: do not re-simplify exact output
2018-06-08 17:23:11 +02:00
Émilie Feral
07d568030d [calculation] When replacing 'ans' symbol, use approximate result to
avoid weird unparsable expresion as 'ans=3' --> '2=2=3'
2018-06-08 15:15:25 +02:00
Émilie Feral
ac9da8d559 [escher] Handle copy/cut event on Expression in selectable table view 2018-06-07 14:46:14 +02:00
Émilie Feral
24c9549866 [escher] Handle copy/cut event on selectable table view 2018-06-07 14:46:14 +02:00
Émilie Feral
4b007ef32c [poincare] Add a method on expression to know if the expression is equal
to its approximation
2018-06-07 13:46:19 +02:00
Émilie Feral
1f57d0a242 [solver] Fix an even odd bug: make colors consistent between even odd
cells and inheriting even odd cells
(scrollable_exact_approximate_expressions_cell)
2018-06-07 13:46:18 +02:00
Émilie Feral
cfb891d7bd [shared] Move OutputExpressionView & ScrollableOuputExpression view to shared/ with new name:
ScrollableExactApproximateExpressionsView (for future implementation of solver
solution page)
2018-06-07 13:46:18 +02:00
Émilie Feral
5dcfbf83e9 [escher] ExpressionLayoutFieldDelegate should not take a text as
parameter but a layout
Warning: in ExpressionField: the serialized layout is not guaranteed to
be small enough to fill in the text buffer
2018-05-17 13:53:10 +02:00
Léa Saviot
3953ca1c67 [escher] Remove duplicate method
Change-Id: Iac03f002cb6928831a8d640f1bcdeba116f71d06
2018-05-17 13:42:20 +02:00
Émilie Feral
8b0225ec0e [calculation] Fix bug: update strlcpy with real size of buffer 2018-05-16 19:19:48 +02:00
Émilie Feral
0c93a50018 [calculation] Increase the cache buffer to accept serialized layout
which would fit in calculation
2018-05-16 18:45:44 +02:00
Émilie Feral
1108ef21db [calculation] Do not memoize the expression layouts but the expressions
final height to avoid overflowing the heap. The expression layouts are
kept in the cell which are fewer then the number of calculations
2018-05-16 18:36:45 +02:00
Léa Saviot
a2226eb5f8 [apps/calculation] Expression buffer max length: k_printedExpressionSize
Change-Id: I41603624f7f7a4d3213ec6ea43297b75b204ed03
2018-05-16 15:56:13 +02:00
Émilie Feral
bb8ab2a42e Merge branch 'saisie-jolie' into master-merge-saisie-jolie 2018-05-16 11:28:07 +02:00
Émilie Feral
c6ec8310b2 [apps] Do not display exact result if equals to undef 2018-05-15 11:33:28 +02:00
Émilie Feral
1d7bd2b70a [calculation] Change method name: shouldDisplayApproximateOutput --> shouldOnlyDisplayApproximateOutput 2018-05-15 11:33:28 +02:00
Émilie Feral
b84972da6a [apps] Calculation: Memoization of the equal sign type (approximate or
equal) in the model
2018-05-15 11:33:28 +02:00
Émilie Feral
98be622218 [apps] Calculation: display the exact output even if identical to input 2018-05-15 11:33:28 +02:00
Émilie Feral
8276e99b1e [calculation] Conditional jump on uninitialized boolean 2018-05-11 14:12:40 +02:00
Léa Saviot
4de2ae5353 [poincare] Fix virtualty of ScrollView::setBackgroundColor and TopMargin
Change-Id: Id15d2b233b0a0f11435ab8f41a142eeca4fcec05
2018-05-08 17:52:54 +02:00
Léa Saviot
3b582a2e46 Merge branch 'SaisieJolie30Apr' into SaisieJolie8May
Change-Id: Ia4196119fc56c5bc3423aea752b49f3f7ba39499
2018-05-08 15:17:51 +02:00
Léa Saviot
ce81481922 [apps/calculation] Do not reload if the ELView is already maximal
Change-Id: Id21cc71de7d5d83a30c6b7beea3c71108bed7197
2018-04-25 18:08:35 +02:00
Léa Saviot
6dd2057593 [apps/calculation] Re-arrange private attributes.
Change-Id: I024e17fac84d8e3025745267ad488db83eeeb928
2018-04-25 13:58:42 +02:00
Léa Saviot
ad65ce2617 [apps/calculation] Removed overrided ExpressionField constructor.
Change-Id: Id893bb89c9f1282b7fc9e94acc0324a66c749a0c
2018-04-23 11:34:01 +02:00
Léa Saviot
5205d35973 [apps/calculation] Remove asserts that use obsolete functions
Change-Id: I27252b48abb71755335e97d0903453e135247903
2018-04-23 11:34:01 +02:00
Léa Saviot
c3433da2e2 [apps/calculation] Factorize some code.
Change-Id: Id217a1d898c7100172a70cd1fedcf3573c2f68b9
2018-04-23 11:34:01 +02:00
Léa Saviot
6d7464707d [apps/calculation] Fix member initialization order.
Change-Id: I16788edf23b9c2d70a781db5ad90ebfd67b926e7
2018-04-23 11:34:01 +02:00
Léa Saviot
5c2322a5a4 [apps/calculation] Rule of 5 in EditExpressionController::ContentView
Change-Id: I92ee8ee934c66674bb983780a5d8084a1562accf
2018-04-23 11:34:00 +02:00
Léa Saviot
117a6d460a [poincare] Stop exposing text/expressionlayout fields in ExpressionField
Change-Id: Ic1afb3f7c1f6bff5ea3bedc6f96bef986b74f6a8
2018-04-23 11:33:53 +02:00
Léa Saviot
894080f1ab [apps/escher] EVWithCursor becomes ELField::ContentView
Change-Id: I719218e4d1d360800e0f1ef3eebeea774c8d5660
2018-04-23 09:41:20 +02:00
Léa Saviot
22ab94209f [apps/escher] Rename EditableExpressionView -> ExpressionField
Change-Id: Iadfb220ee94e68762305060215f1ead0cac951fb
2018-04-23 09:41:20 +02:00
Léa Saviot
31face58a2 [apps/escher] ScrollableEVWithCursor renamed ExpressionLayoutField
Change-Id: Id0e4610fb677d8ad36721eef1a85f1c424d1743e
2018-04-23 09:41:20 +02:00
Léa Saviot
3e5b3457c1 [apps/coding style] Better code nesting.
Change-Id: I26485d4b9917f67b3a73e73721b4f6f2f49c4aa1
2018-04-19 16:45:50 +02:00
Romain Goyet
84561a929f [escher] Clean the ScrollView, TableView and SelectableTableView constructors 2018-04-18 18:08:07 +02:00
Léa Saviot
2146dd6422 [apps] Fix wrong method call
Change-Id: I2695d7c659f18edb1839cdf7c8282cc69862a4e5
2018-04-11 10:40:06 +02:00
Léa Saviot
c4b5d4cf40 Merge branch 'SaisieJolieRebase1201' into SaisieJolieMerge10Apr
Change-Id: I802dbb9f7c0eebf75a1b6cd21ddd194e89b53752
2018-04-10 17:21:54 +02:00
Émilie Feral
576caa039f [apps][escher] Add methods 'handleEventWithText' in TextField and
TextArea to fix bug in probability (adding a toolbox text from the
calculations controller)
2018-03-22 13:12:12 +01:00
Émilie Feral
6de71ae145 [poincare] Clean: convertFloatToText should be in PrintFloat instead of
Complex
2018-03-21 15:57:19 +01:00
Émilie Feral
a8fe8dc22e [apps] Calculation: input text stores in cache have to be checked again
when used as its length context dependent (because of 'ans' symbol)
2018-02-01 11:49:39 +01:00
Émilie Feral
53393524ef [apps] Calculation: do not display a syntax error when the textfield is
empty
2018-02-01 11:49:39 +01:00
Émilie Feral
470767340a [apps] Calculation: OK on an empty textfield re-do the last user input
kept in cache
2018-02-01 11:49:39 +01:00
Émilie Feral
f2db9f2065 [apps] Calculation: exact and approximate output can be equal even if
the exact output is not a rational: 1/2+i = 0.5+i
2018-01-30 19:14:42 +01:00
Émilie Feral
ed59909531 [apps] Calculation: avoid 1/400000 = 0.000003
Re-serialise the calculation approximate output with the right number of
significant digits before comparing the parsed expression with the exact
one
2018-01-30 19:14:42 +01:00
Émilie Feral
03c8b373f7 [apps] Calculation: update the equal sign view according to the
calculation outputs
2018-01-30 19:14:42 +01:00
Émilie Feral
9d6b2e3cad [apps] Calculation: add a method to test if the exact output and the
approximate output are equal
2018-01-30 19:14:42 +01:00
Émilie Feral
541d0809f3 [apps] Calculation: avoid replacing 'ans' with a store expression (to
avoid bug like '(2->A)->B')
2018-01-30 16:17:03 +01:00
Émilie Feral
e4cb6d9aad [apps] Calculation: when checking the length of the input calculation,
first replace "ans" symbol
2018-01-30 16:17:03 +01:00