Commit Graph

948 Commits

Author SHA1 Message Date
Léa Saviot
8597f47c36 [apps/POSTAndHWTest] In LCDDataOK iterate on Text and Tiling tests 2019-05-29 14:06:42 +02:00
Léa Saviot
1980b1a9d1 [apps/POSTAndHWTest] LCDTest: Remove invalid pixels count limit 2019-05-28 16:50:58 +02:00
Léa Saviot
ad85f01c1e [apps/POSTAndHWTest] POST does Text tests, not full LCD tests 2019-05-28 16:50:58 +02:00
Léa Saviot
9f5ade8210 [apps/POSTAndHWTest] Remove WhiteTilingLCDTestOK 2019-05-28 16:50:58 +02:00
Léa Saviot
859064e9fb [apps/POSTandHWtest] LCD test displaying characters 2019-05-28 16:50:58 +02:00
Léa Saviot
7a9a1cdbe5 [POST/HardwareTest] LCD ad hoc white tiling test 2019-05-28 16:50:58 +02:00
Léa Saviot
680fd5086a [apps/POST/HWtest] VBlank test failure doesn't freeze the calculator 2019-05-22 16:49:15 +02:00
Léa Saviot
c85358967b [POST/HardwareTest] Change pattern in LCDDataTest
The pattern is a tiling of checkers of colors 2**k with k between 0 and
15 and their contraries.
This fixed a problem of failing LCD screens not detected.
2019-05-22 16:49:15 +02:00
Émilie Feral
927b69067c Merge branch 'version-11' into f7 2019-05-03 17:25:53 +02:00
Émilie Feral
8b926612a2 Revert "[ion] Namespace Ion::UTF8Helper and Ion::UTF8Decoder"
This reverts commit 23da0d3f2c.
2019-05-03 16:29:28 +02:00
Léa Saviot
f5cdf95bc5 [apps/banner_view] Replace assert with escape case 2019-05-03 15:54:22 +02:00
Léa Saviot
28133f378e [apps] Remove wrong withinTemporarySelection escape cases
Scenario:
Sequence app, add new sequence, go on its name, backspace: the cell on
the left of Add new sequence is selected, but it should not
2019-05-03 15:54:22 +02:00
Léa Saviot
a6cf1498da [apps/text_field_delegate_app] default XNT() is 'x' 2019-05-03 15:54:22 +02:00
Léa Saviot
d97d5d40f5 [apps/cartesian_function] Fix derivative name display
Scenario: f(x) = x, go to the Values tab of the Graph app, display the
derivative, there is a roblem with UTF8
2019-05-03 15:54:22 +02:00
Ruben Dashyan
e53b0e6bba [apps/shared] Clean CurveViewCursor coordinate getters 2019-05-03 15:54:22 +02:00
Ruben Dashyan
0e1c1a017d [apps] Implement TextFieldDelegate methods in GraphControllers 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
339258a29d [apps/shared] Add LineSpacing to BannerView 2019-05-03 15:54:21 +02:00
Ruben Dashyan
26d59bbd74 [apps/shared] Simplify BannerView 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
a8650f7191 [apps/shared] SimpleInteractiveCurveViewController inherits from TextFieldDelegate 2019-05-03 15:54:21 +02:00
Ruben Dashyan
7b5c891f44 [apps/shared] Clean InteractiveCurveViewController::handleEvent 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
8658538938 [apps/shared] Clarify InteractiveCurveViewController::k_viewHeight constexpr 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
e32419ce63 [apps/shared/interactive_curve_view_controller] InteractiveCurveViewRangeDelegate methods made private 2019-05-03 15:54:21 +02:00
Ruben Dashyan
0b2ab14ced [apps/shared] Fix a typo in FunctionGraphController
Introduced in commit
[shared] Factorize GraphController::initCursorParameters of Graph and Sequence
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
51bd3312f5 [apps/shared] Clean FunctionGraphController::initRangeParameters()
The method is exactly called once, by
InteractiveCurveViewController::viewWillAppear, which also calls
initCursorParameters afterwards, which in turn calls
selectFunctionWithCursor. Hence the removed lines were redundant.
2019-05-03 15:54:21 +02:00
Ruben Dashyan
e7add02912 [apps] Remove FunctionGraphController::cursorView() virtual method
It was implemented by the Graph and Sequence GraphController derived
classes and was used
  1) in FunctionGraphController::viewWillAppear to set the cursorView
specific to each derived class,
  2) in FunctionGraphController::cursor/displayBottomMarginRatio()
methods.

Instead
  1) the viewWillAppear method of each derived classes sets its
cursorView itself
  2) one may already get the cursorView through curveView().
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
fe977bdc07 [apps/graph/graph] CalculationGraphController inherits from SimpleInteractiveCurveViewController 2019-05-03 15:54:21 +02:00
Ruben Dashyan
ce712eac53 [apps/shared] Clean SimpleInteractiveCurveViewController constructor 2019-05-03 15:54:21 +02:00
Ruben Dashyan
82a0f72d42 [apps/shared] Clean FunctionCurveParameterController constructor 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
Ruben Dashyan
82685cb371 [apps] Factorize portions checking whether text approximates to double 2019-05-03 15:54:21 +02:00
Ruben Dashyan
5e5e07e963 [apps/shared] Factorize Store/ValuesController::textFieldDidFinishEditing 2019-05-03 15:54:21 +02:00
Ruben Dashyan
a400a5024b [apps/shared] Implement SumGraphController::reloadBannerView 2019-05-03 15:54:21 +02:00
Ruben Dashyan
e47ab69e53 [apps/shared] Implement SumGraphController::handleLeftRightEvent 2019-05-03 15:54:21 +02:00
Ruben Dashyan
211ae05667 [apps/shared] Clean SumGraphController 2019-05-03 15:54:21 +02:00
Ruben Dashyan
355e42734d [apps] Replace BannerView::set(Legend|Message)AtIndex by getters 2019-05-03 15:54:21 +02:00
Ruben Dashyan
205ae8fec5 [apps] Remove BannerView::messageTextViewAtIndex method 2019-05-03 15:54:21 +02:00
Ruben Dashyan
51c36c8f86 [apps/shared] FunctionBannerDelegate::bannerView() returns a XYBannerView * 2019-05-03 15:54:21 +02:00
Ruben Dashyan
0d34923dd1 [apps] Graph/Regression/Sequence::BannerView inherit from new Shared::XYBannerView 2019-05-03 15:54:21 +02:00