Commit Graph

95 Commits

Author SHA1 Message Date
Émilie Feral
79e7fb2183 [calculation] Use ParseAndSimplifyForComplexFormat instead of
ParseAndSimplify
2019-01-10 11:42:03 +01:00
Léa Saviot
fb44f8617c [apps/calculation] Fix display exact and approx results
If the results are equal but their layouts not, because of the number of
significant digits for instance, display both the equal and approximate
results.
2018-12-03 12:32:51 +00:00
Émilie Feral
cf92eb8506 [poincare] Discard useless argument 'replaceSymbols' from simplification
routine
2018-11-30 09:53:31 +01:00
Léa Saviot
53e4a290f7 [poincare] Rename Expression:parse in Parse 2018-11-23 12:04:09 +01:00
Léa Saviot
33676e915a [apps] Check that serialized expression is not too long in Graph 2018-11-23 12:04:09 +01:00
Léa Saviot
a289d77425 [apps/calculation] Fix non returning method 2018-11-23 12:04:08 +01:00
Léa Saviot
63e83c246b [poincare] Undefined::Name() gives "undef" 2018-11-23 12:04:08 +01:00
Léa Saviot
1cb9d5445c [apps/calculation] Do not display approximate output if it is undef 2018-11-23 12:04:08 +01:00
Léa Saviot
789d17189e [apps/calculation] Comment why shouldOnlyDisplayExactOutput is needed 2018-11-23 12:04:07 +01:00
Léa Saviot
5d6db930fd [apps/calc] Fix display glitch when doing 1.2->a (cell not high enough) 2018-11-23 12:04:07 +01:00
Léa Saviot
d411ff292e [poincare] Do not parse 1>ans 2018-11-23 12:04:07 +01:00
Émilie Feral
4f2985e6fb [calculation] Replace symbols when simplifying 2018-11-23 12:04:03 +01:00
Léa Saviot
4d71a3a4c6 [apps/poincare] Do not replace symbols in result of 3+c->f(x) 2018-11-23 12:04:03 +01:00
Léa Saviot
d083d05609 [apps/calculation] Display the exact layout only when the exp is Store 2018-11-23 12:04:03 +01:00
Léa Saviot
a7a719df4a [poincare] Handle functions in replaceSymbolWithExp and similar methods 2018-11-23 12:03:59 +01:00
Léa Saviot
2e2bf96bca [apps/poincare] use Symbol::k_ans constexpr char * 2018-11-23 12:03:58 +01:00
Émilie Feral
7f72f820a0 [poincare] Get rid of SpecialSymbols::Ans 2018-11-23 12:03:58 +01:00
Léa Saviot
f6edf05708 [calculation] Compare simplified exact and approx outputs to determine = 2018-11-19 18:02:55 +01:00
Léa Saviot
ed5a6d4a03 [apps/calculation] Remove unneeded arguments 2018-11-19 18:02:55 +01:00
Lionel Debroux
70a8d06cfe [apps, poincare] Optimize the preferences singletons' usage by removing superfluous checks in the setters, and performing manual CSE in the callers.
Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr>
2018-10-23 11:49:09 +02:00
Lionel Debroux
1a8c6b6ae9 [poincare, escher, ion, apps] Split the huge umbrella header poincare.h, to reduce build time.
This should be a NFC, but surprisingly, it also reduces size... so what does it change ?
2018-10-23 11:49:09 +02:00
Émilie Feral
3e99b07adb [calculation] Calculation: output display
When reducing an input, Float expression can appear (to avoid Infinity
(2.1234567^201).
Consequently, we only the approximate output if the
exact output contains a Float.
2018-09-26 16:18:56 +02:00
Émilie Feral
8604e73e97 [calculation] No Expression memoization in Calculation: delay the
overflow of the TreePool
2018-09-25 16:55:50 +02:00
Léa Saviot
8b75802746 [calculation] Don't recompute HistoryViewCell layout if same calculation 2018-09-20 17:21:34 +02:00
Émilie Feral
365b145cf3 [poincare] Change names: LayoutReference-->Layout 2018-09-18 16:29:44 +02:00
Émilie Feral
d17b0f1afb [poincare] Get rid of char table of variable size 2018-09-17 17:14:43 +02:00
Émilie Feral
616e4c0bcc [poincare] Change name: LayoutRef --> LayoutReference 2018-09-14 16:57:12 +02:00
Émilie Feral
2cc01dc2a5 [calculation] Calculation model does not need to override copy
constructor
2018-09-06 16:37:36 +02:00
Émilie Feral
367f628b5c [calculation] Free the pool of expressions when tidying the application 2018-09-06 14:07:41 +02:00
Léa Saviot
e3a09286ac [poincare] Remove AllocationFailures 2018-09-05 16:19:11 +02:00
Léa Saviot
71c807b565 [poincare] Node->isDefined becomes !Node->isUninitialized 2018-08-14 16:40:12 +02:00
Émilie Feral
b5f66171fc [calculation] Fix all reference to Poincare 2018-08-10 13:18:46 +02:00
Émilie Feral
e9c42e221b [calculation] Fix Calculation 2018-08-10 10:14:59 +02:00
Émilie Feral
7c1649670a [shared] Fix PoincareHelpers 2018-08-10 10:13:25 +02:00
Léa Saviot
5a5f2403da [poincare] Fix calculation height allocation failure handling 2018-07-30 15:36:45 +02:00
Léa Saviot
2d4e36b98c [apps/calc] Handle alloc failure when computing calculation height 2018-07-30 14:47:41 +02:00
Émilie Feral
48f890ef93 [poincare] AngleUnit, FormatComplex and PrintFloatMode are now
enumeration of Preferences class
2018-07-30 13:48:04 +02:00
Léa Saviot
a3032e5ec3 Merge branch Tree into master 2018-07-19 14:01:02 +02:00
Émilie Feral
e61a408a0a [poincare] Get rid of AngleUnit::Default 2018-07-18 17:09:07 +02:00
Émilie Feral
2e7c08241a [poincare] Change writeTextInBuffer signature (parameters are float
display mode and number of significant digits)
2018-07-18 16:32:50 +02:00
Émilie Feral
b8af15f1ab [poincare] change createLayout signature
- CreateLayout depends on the float display mode and the number of
significant digits
- Float display mode does not have a default value anymore
2018-07-18 16:32:50 +02:00
Émilie Feral
dd0bc491f6 [poincare] Replace Poincare::Complex by std::complex 2018-07-18 16:32:49 +02:00
Léa Saviot
f579e95815 [poincare] Start removing ExpressionLayout 2018-07-03 17:33:06 +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
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
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
É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