Commit Graph

420 Commits

Author SHA1 Message Date
Ruben Dashyan
04fcc0eac4 [apps/*/editable_cell_table_view_controller] Use typeAtLocation 2019-08-29 13:51:49 +02:00
Léa Saviot
24d1594255 [apps] Draw curves according to their definition domain 2019-08-29 11:07:22 +02:00
Léa Saviot
c71ef7ff79 [apps/graph] Evaluation methods renaming 2019-08-29 11:07:22 +02:00
Léa Saviot
28a721e96e [apps] Start fixing apps as cursor has new member variable 2019-08-29 11:07:22 +02:00
Léa Saviot
7ea7ecd3c2 [poincare/coordinate2D] Rename member values to x and y 2019-08-29 11:07:22 +02:00
Ruben Dashyan
0f3fc46ad1 [escher/message_table_cell_with_chevron_and_expression] subAccessoryView has margin by default 2019-08-29 11:07:22 +02:00
Ruben Dashyan
fbee2d81e4 [apps/*/curve_view] Use drawCartesianCurve specifically for drawing Cartesian curves 2019-08-29 11:07:22 +02:00
Léa Saviot
dcb5a061e9 [apps/poincare] Clearer method names 2019-08-27 17:24:57 +02:00
Léa Saviot
0840ca7a1e [apps/poincare] Move NormalDistribution to Poincare 2019-08-23 13:47:52 +02:00
Léa Saviot
fbec61db47 Merge branch 'feature/Gradians' of https://github.com/boricj/epsilon 2019-08-22 11:25:25 +02:00
Léa Saviot
1e483d60ce [poincare] Coordinate2D out of the Expression class 2019-08-13 18:00:15 +02:00
Léa Saviot
c2b4d2b760 [strlcpy] Assertions on len parameter 2019-08-08 17:22:06 +02:00
Léa Saviot
b0b10f184e [poincare/print_float] convertFloatToText -> ConvertFloatToText 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
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
61cf762eef [poincare] Expression::ReductionContext 2019-08-08 16:29:37 +02:00
Léa Saviot
5a79d26191 [apps/regression] Factorize Model::simplifiedExpression 2019-08-08 16:22:28 +02:00
Léa Saviot
040a5cfb15 [apps/regression] Fix typo in the logistic regression formula 2019-07-24 14:51:43 +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
Romain Goyet
21907fb89a [apps] Get rid of App casts 2019-07-19 15:06:25 +02:00
Ruben Dashyan
62cec10b46 [apps] Clean unnecessary AppsContainer class declarations and header inclusions 2019-07-19 15:06:25 +02:00
Ruben Dashyan
1f06819974 [apps] Remove Container * parameter from all App constructors 2019-07-19 15:06:25 +02:00
Ruben Dashyan
3489a1a644 [apps/regression] The GraphView does not need a pointer to the GraphController anymore 2019-07-19 15:06:25 +02:00
Ruben Dashyan
eb3da7f395 [apps] Substitute "app()->container()" by "AppsContainer::sharedAppsContainer()" 2019-07-19 15:06:25 +02:00
Jean-Baptiste Boric
1c40194ac1 [regression] Add gradians support 2019-06-24 22:32:55 +02:00
Émilie Feral
0222509850 [regression] GraphController: add missing banner view reload 2019-06-17 15:33:10 -04:00
Léa Saviot
bedc09f9f1 [apps/graph_controller] Clean code 2019-06-14 09:31:46 -04:00
Léa Saviot
3de7e4daab [apps/regression] Fix bannerView
For data
0 0
1 2
2 6
3 12
4 20
5 30
6 42
7 56
and square regression, the coefficient c is not fully displayed
2019-06-14 09:31:46 -04:00
Ruben Dashyan
a36ea6d1e3 [apps/regression] Use a new helper to compute linear regression coefficients 2019-05-29 11:27:30 +02:00
Ruben Dashyan
2c21055a0f [apps/regression/model/exponential_model] Explicit fit 2019-05-29 11:27:30 +02:00
Ruben Dashyan
5672853511 [apps/regression] Add tests about exponential regression 2019-05-29 11:27:30 +02:00
Émilie Feral
a0a93a1287 [regression] GraphController: reinitialize the selected series when
displaying graph if the current selected series has been removed
2019-05-09 16:28:36 +02:00
Émilie Feral
c1c280762f [regression] Add an assertion on the number of entries of matrices used
in models
2019-05-03 15:54:22 +02:00
Ruben Dashyan
0f98face6a [apps] Define InteractiveCurveViewController::selectedCurveIndex 2019-05-03 15:54:22 +02:00
Ruben Dashyan
3d71397949 [apps/shared] XYBannerView contains a TextField 2019-05-03 15:54:22 +02:00
Ruben Dashyan
5ff19a2506 [apps] Define Font, Text/BackgroundColor BannerView static methods 2019-05-03 15:54:21 +02:00
Ruben Dashyan
4d640e2916 [apps] XYBannerView: prepare constructor so the class may contain TextField 2019-05-03 15:54:21 +02:00
Ruben Dashyan
ba6282be45 [apps/shared] Remove InteractiveCurveViewController::didEnterResponderChain
In order to avoid reloading after Ion::Events::Toolbox/Var, but only in
viewWillAppear.
The previous behavior was masking a bug in
Regression::GraphController::viewWillAppear where the cursor could be
moved after reloading the bannerView.
2019-05-03 15:54:21 +02:00
Ruben Dashyan
94cf542ba3 [apps] Factorize InteractiveCurveViewController::moveCursorVertically 2019-05-03 15:54:21 +02:00
Ruben Dashyan
f6ceae3b8b [apps] Factorize SimpleInteractiveCurveView::moveCursorHorizontally 2019-05-03 15:54:21 +02:00
Ruben Dashyan
67f9f79322 [apps] Implement InteractiveCurveViewController::isCursorVisible
It was a pure virtual method implemented in derived classes
  Shared::FunctionGraphController,
  Regression::GraphController.
InteractiveCurveViewRange does not need anymore to hold CurveViewCursor
* m_cursor.
2019-05-03 15:54:21 +02:00
Ruben Dashyan
8629254d9a [apps] Remove Shared::InteractiveCurveViewController::displayTop/BottomMarginRatio
and replace it by the existing cursorTop/BottomMarginRatio.
There was absolutely no reason to use different margin values.
2019-05-03 15:54:21 +02:00
Ruben Dashyan
d8f97d62a4 [apps] Factorize Shared::InteractiveCurveViewController methods
cursorBottomMarginRatio(), displayBottomMarginRatio(),
estimatedBannerHeight() and k_viewHeight moved to
Shared::InteractiveCurveViewController from derived classes.

estimatedBannerNumberOfLines() moved from
Shared::FunctionGraphController to
Shared::InteractiveCurveViewController and implemented in
Regresssion::GraphController.
2019-05-03 15:54:21 +02:00
Ruben Dashyan
e13651f6fb [apps] Remove Shared::InteractiveCurveViewController::initRangeParameters virtual method 2019-05-03 15:54:21 +02:00
Ruben Dashyan
5b6fca8f72 [apps] Replace k_cursorTop/BottomMarginRatio by virtual methods
In SimpleInteractiveCurveViewController subclasses.
2019-05-03 15:54:21 +02:00
Ruben Dashyan
696434d38a [apps] GoToParameterController: remove ForbiddenValue warnings
when the controller tries to move the cursor beyond the limit of 1E8.
2019-05-03 15:54:21 +02:00