Commit Graph

56 Commits

Author SHA1 Message Date
Hugo Saint-Vignes
479f34502f [apps/shared] Rename methods and Factorize comparison logic 2020-12-16 16:16:26 +01:00
Hugo Saint-Vignes
10c296e671 [apps/shared] Add comment for isCursorHanging method 2020-12-16 16:16:26 +01:00
Hugo Saint-Vignes
2f97dab6d1 [apps/shared] Add toggle buttons in Graph view
Change-Id: I7548d11fb114b2605ce34d3bda0776277b79ff9d
2020-11-04 15:58:25 +01:00
Gabriel Ozouf
3a87e47de5 [interactive_curve_view_controller] Zoom button
Renamed zoom button

Change-Id: I476c0991d5ab88c6642b793fbe10debbcca4e014
2020-11-04 15:58:24 +01:00
Gabriel Ozouf
0e4de43b8f [shared] Rename ZoomParameterController
Change-Id: I64a6500b66db4455217920a1e73efd5848216411
2020-11-04 15:58:24 +01:00
Gabriel Ozouf
190568ea84 [interactive_curve_view_controller] Fix Cursor
Restore the permanence of the cursor between accesses to the graph
window.
The cursor used to be reset when the models had been modified. As there
is no longer a system in place to track these modifications, we manually
check if there is a curve beneath the cursor before reseting it.

Change-Id: I6f71fc17744b5bf1ee552c82126bb4a08b823629
2020-11-04 15:58:19 +01:00
Gabriel Ozouf
bf76b56f90 [apps/shared] Change Zoom button in curves
Zoom is now called navigate, and its button is placed before the Axes
button.

Change-Id: Ied194c20438e573a237ce36f221b9be87cfd4bab
2020-11-04 15:58:11 +01:00
Gabriel Ozouf
43d21180bc [apps/shared] Deactivate zoomAuto on pan and zoom
The Auto mode for curve ranges must be deactivated when moving the
cursor outside the screen and when activating navigation (formerly
Zoom).

Change-Id: I281a1d069c2ebcc30e7ead469c4f48438054d7c2
2020-11-04 15:58:11 +01:00
Gabriel Ozouf
5c67f92d18 [apps/interactive_curve_view_controller] Buttons
Add two new buttons to toggle Auto and Normalized modes for curves.

Change-Id: Ib583d087ce5ae779d24f6a8bbc72ab7140752dd5
2020-11-04 15:58:10 +01:00
Gabriel Ozouf
8970e294aa [apps] Remove modelVersion from curves apps
The graph range used to be reset to default whenever all functions were
modified. As we no longer want to reset the range without the user's
input, we do not need to track whether the functions changed at all.

/!\ As of this commit, there is no longer a way to restore the default
zoom, until a new automatic zoom button is added.

Change-Id: Ie74e8fd61e13055fa6ce2b2d1e883182d4ecffce
2020-11-04 15:58:09 +01:00
Gabriel Ozouf
5a07db3452 [apps] Remove "Preadjustments" menu for curves
Change-Id: I1a30efd502c5db36325d87fa0f1dffacc37a4f1c
2020-11-04 15:58:08 +01:00
Hugo Saint-Vignes
61792058d3 [apps/shared] Fix typos for Interval and curve view temporary params
Change-Id: I610726ed5966d353397be923b76dd003297940a7
2020-07-29 10:07:07 +02:00
Joachim LF
d37bf9e344 [Apps/Shared] Fixed interval and curve view exit 2020-07-29 10:07:07 +02:00
Émilie Feral
e1d7b6bb04 [apps] Avoid unsigned/signed comparison: storeChecksumAtIndex takes an
int as parameter
2020-04-07 09:51:39 +02:00
Léa Saviot
53705fb333 [apps/graph_ctrlr] Reload range if no previous model is present
We memoize the checksum of the x first models, and we check that one of
these models is still present when the graph view appears. If so, we do
not reload the range, other wise we reload it.

Scenario:
f(t) = [t^2  t+1] in parametric
Display the graph
f(x) = 1 on ]-inf;0]
g(x) = 2 on [0;inf[
Display the graph -> the range did not change
2020-03-11 11:43:36 +01:00
Léa Saviot
aab8974934 [apps] Memoize five model checksums 2020-03-11 11:43:36 +01:00
Romain Goyet
5dee4a8166 [apps] Add screen telemetry identification 2020-02-17 10:31:24 -05:00
Léa Saviot
ebfa251db8 [apps/grah} closestCurveIndexVertically renamed as next... 2019-09-23 17:31:35 +02:00
Léa Saviot
274795fcab [apps/graph] setDefault when changing models if non cartesian functions 2019-09-12 09:54:02 +02:00
Léa Saviot
a4099c4c3e [apps/graph] xAuto and YAuto for polar/param 2019-09-03 14:21:14 +02:00
Émilie Feral
0f43a04225 [apps/graph] Implement move cursor vertically on graph with
parametric/polar curves
2019-08-30 17:15:12 +02:00
Léa Saviot
28a721e96e [apps] Start fixing apps as cursor has new member variable 2019-08-29 11:07: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
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
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
e13651f6fb [apps] Remove Shared::InteractiveCurveViewController::initRangeParameters virtual method 2019-05-03 15:54:21 +02:00
Léa Saviot
531b555949 [apps/sequence] Fix method that should be virtual pure
The following scenaro crashed in DEBUG=1 and did not resize the window
correctly in DEBUG=0.
Got to sequence
u(n)=n
Go to sequence/graph
Remove yAuto
Go to sequence/list
v(n) = cos(n)
remove u(n)
Go to sequence/graph
2019-01-10 11:42:02 +01:00
Léa Saviot
e3935fd9c0 [apps] Factorize closestCurveIndexVertically from Regression and Graph 2018-11-23 12:04:08 +01:00
Émilie Feral
698332c355 [escher] InputTextDelegate and LayoutFieldDelegate don't inherit from
InputTextDelegate to avoid diamond inheritance
2018-11-23 12:04:03 +01:00
Émilie Feral
4dda66e58d [escher] AlternateEmptyViewController: give the delegate the opportunity
to choose the view to display when empty
2018-11-23 12:04:01 +01:00
Léa Saviot
68d915fb3e [apps/reg] Fix window sizing: cursor appears even with big bannerview 2018-07-18 10:32:46 +02:00
Émilie Feral
9cd50d8d9a [apps] Graph/Sequence: set different cursors for Sequence and Graph 2018-01-30 18:53:28 +01:00
Émilie Feral
1c49dab2b7 [apps] Graph: Handle enter on tangent graph controller 2018-01-30 18:19:27 +01:00
Émilie Feral
85abdbcafb [apps] Shared: Break function_graph_controller into 2 classes: function_banner_delegate and function_graph_controller 2018-01-30 18:19:27 +01:00
Émilie Feral
323ecc72c5 [apps] Shared: break InteractiveCurveViewController into 2 classes (to
shared the implementation of Zoom in/out and MoveCursorHorizontally)
2018-01-30 18:19:27 +01:00
Émilie Feral
0dec52a708 [apps] Graph: enable to specialize GraphController in different types
(Default, Tangent ...)
2018-01-30 18:19:27 +01:00
Émilie Feral
e18cc37941 [apps/shared] In function graph controller, never center the cursor
vertically

Change-Id: Icfad198a4f368f298d57df774d59fc4300d59b35
2017-06-05 11:42:37 +02:00
Émilie Feral
39f422a95a [apps/shared] In interactive curve view controller, repaire bugs due to
wrong initialisation of the range

Change-Id: I2222e27df19b8130ddb3926eba584f7e6d90b7ba
2017-06-05 11:17:17 +02:00
Émilie Feral
bbd1bf9a7f [apps] Change selection in tab children with button row controller
Change-Id: Id45fd599c76d758715afc6622abd419e04d6dd5b
2017-05-29 10:39:34 +02:00
Émilie Feral
e702c1f61b [apps/graph][apps/regression][app/sequence] Move model and range
versions to the snapshot

Change-Id: I6ec56ab59d734c0c43a5df32462173c611cc68b3
2017-05-18 14:16:41 +02:00
Émilie Feral
6b2ae04a13 [apps/sequence][apps/regression][apps/graph] Move ranges and cursor in
snapshot

Change-Id: I3e5a163ae4b3a6860969ef12d939513cffed7710
2017-05-18 14:16:41 +02:00
Émilie Feral
d411cf176b [apps] In curve views, reselect the view when entering responder chain
Change-Id: I4453b7f646f29ab3ea15a572ef7bf883d739cba2
2017-05-09 14:34:00 +02:00
Émilie Feral
adc80cd71b [apps][escher] I18n
Change-Id: I4d6f40155a8a182184af9ef2a583d0469196ffd5
2017-03-16 15:12:12 +01:00
Émilie Feral
9478fb2f26 [escher] Select tab when clicking on back: implement
willExitResponderChain for tab root controllers

Change-Id: Ie0399d24708e326d2284013a925792b36e6b629b
2017-03-07 14:34:12 +01:00
Émilie Feral
b36e5dc67c [escher] Generelize header view controller to button row controller and
use it to add two buttons: "tracer" "afficher valeurs"

Change-Id: I8ee9afec9e381de367133e6b3f5ceb738b9790ab
2017-03-07 13:28:26 +01:00