Commit Graph

67 Commits

Author SHA1 Message Date
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
Émilie Feral
578c65d5dd [shared] Clean class names containing storage 2019-05-03 15:53:20 +02:00
Émilie Feral
57da4ea618 [shared] Rename classes:
ExpressionModelHandle --> ExpressionModel
SingleExpressionModelHandle --> ExpressionModelHandle
StorageFunction --> Function
StorageCartesianFunction --> CartesianFunction
StorageFunctionApp --> FunctionApp
2019-05-03 15:53:20 +02:00
Émilie Feral
7fdc8a7c1b [shared] Factorize 'storageDidChangeForRecord' in StorageFunctionApp 2019-05-03 15:53:20 +02:00
Romain Goyet
4f2c7a3763 [build] Update the i18n processing to fit the out-of-tree build 2019-03-06 15:00:59 +01:00
Léa Saviot
e04c8bd005 [apps/graph] Fix Graph::Snapshot::reset()
m_graphRange.setDefault called the delegate's interestingXRange, which
uses expressions that might have been deleted before the call to reset
if there had been an exception (the pool is emptied).
2018-11-26 13:20:30 +01:00
Émilie Feral
916493a4d2 [apps] Reset (exam mode) delete all records at once 2018-11-23 12:04:10 +01:00
Léa Saviot
9bfaed583d [apps/escher/ion] Remove Graph memoized models on storage change 2018-11-23 12:04:03 +01:00
Émilie Feral
4b44dd701d [graph] Unable to delete functions from function app 2018-11-23 12:04:03 +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
c70278941a [graph] Do not keep a function pointer as member variable but a record.
Indeed, function pointers can become invalid at any point...
2018-11-23 12:04:02 +01:00
Léa Saviot
c0e4eaa56b [apps/graph] Use storage controllers in Values 2018-11-23 12:04:01 +01:00
Léa Saviot
912e7f8acf [apps] Graph app displays first letter of storage functions 2018-11-23 12:04:00 +01:00
Émilie Feral
cf68a9ed18 [shared] Change TextFieldDelegateApp::XNT() signature 2018-11-23 12:03:59 +01:00
Émilie Feral
86b3d366ca [apps] All apps are allocated in the same union 2018-09-11 11:32:29 +02:00
Léa Saviot
c4b5d4cf40 Merge branch 'SaisieJolieRebase1201' into SaisieJolieMerge10Apr
Change-Id: I802dbb9f7c0eebf75a1b6cd21ddd194e89b53752
2018-04-10 17:21:54 +02:00
Émilie Feral
95f0efaf9f [apps] Graph/Sequence: the function selected by the cursor has to be
save in the Snapshot to avoid weird selection when rebulding the app
2018-01-30 18:53:28 +01:00
Émilie Feral
5c64f76735 [apps] Graph: redesign TangentGraphController implementation: use
different controller with common parent class
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
Léa Saviot
4d778b5d9f [apps/escher/poincare] Use 2D Edition in Sequence and Graph apps.
EditableExpressionView is renamed ScrollableViewWithCursor.
EditableExpressionView is now a View that displays either a TextField or
a ScrollableViewWithCursor, depending on Poincare::Preferences.

Change-Id: Id44ddcd9a83f5fd17d65753ca4c94c5c7cda9b8a
2018-01-23 10:28:02 +01:00
Émilie Feral
a0ec589e47 [apps] Graph: all contexts parse x now so no need for a specific one in
graph
2017-12-14 10:52:14 +01:00
Jacob Young
dcbc860b6d Fallback to X in non-graphing apps since x and n are not usable. 2017-09-20 11:08:07 +02:00
Émilie Feral
eea1928ac9 [apps/sequence][apps/graph] Keep the angle unit version in snapshot
Change-Id: Ib907531c78feae6ba8155ae3be3b8fb13fdebea2
2017-08-25 14:02:03 +02:00
Émilie Feral
bf11591e3e [apps/shared] In values controller, update the number of columns when
layout is done

Change-Id: I29bc776623ff2e5056c9f2cc1d995b4440996116
2017-06-08 18:30:45 +02:00
Émilie Feral
d2c55eb7d0 [apps/graph][apps/sequence] In values controller, memoize the number of
columns to improve performance

Change-Id: Ie3c545d0198a2f23575bd22fdbf56e9c6b8ff2b8
2017-06-02 14:07:40 +02:00
Émilie Feral
71608762aa [escher] Add a data source to tab to be hold by snapshots
Change-Id: I48b242ff433170d6b9618661e613a47669910a79
2017-05-19 11:25:04 +02:00
Émilie Feral
0105a0a450 [apps/sequence|grpah] Fix bug
Change-Id: Ic0d40262dd3ee4e2d393b7bb65e0b3a224ffbccc
2017-05-18 14:16:42 +02:00
Émilie Feral
6317f3a100 [apps] Implement reset when exam mode is set
Change-Id: I54f769c6db42f8c9a2fe1a8f3d2295fed91db6b8
2017-05-18 14:16:42 +02:00
Émilie Feral
bc73fd28b1 [apps/sequence)[apps/graph] Move interval in snapshot
Change-Id: Ib8efea9d57c55fbf7b4fb8cf9188d4211442057d
2017-05-18 14:16:42 +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
71284311bb [escher] [apps] Implement app snapshot
Change-Id: I24d7eed7cef964af8be1c85222e758c297dc0da1
2017-05-18 14:16:41 +02:00
Émilie Feral
06de0dd9db [escher] Only one app is on the heap at one time
Change-Id: I6c77601cb0cc883083a4dd05370ca543fa7951cc
2017-05-18 14:16:41 +02:00
Émilie Feral
96733dbbdc [apps] Rule of 5 (3)
Change-Id: Ia85b23a09e9debd62b4f3590463a4f16454ef4b7
2017-05-09 14:33:53 +02:00
Émilie Feral
0dfbf3ade3 [apps] Rule of 5 (2)
Change-Id: I62eebed201a9f61b3f89233fda4e714f0bab0db7
2017-05-09 14:12:13 +02:00
Émilie Feral
7d66a8792b [apps] Delete reset methods in apps
Change-Id: I667530b118d1534e2f6664f48f1efdbbdb94178c
2017-05-03 14:22:50 +02:00
Émilie Feral
9295a5f107 [apps/sequence][apps/graph] Make list controller a dynamic view
controller

Change-Id: I1c6036861bddcb45169bb6c71f75c90ffd949a44
2017-04-21 10:08:04 +02:00
Émilie Feral
4348bd7bae [apps] Implement a reset in apps (clear memory)
Change-Id: I158d5db92196ccfd5400a95de16ee4804e426e65
2017-04-07 15:36:03 +02:00
Émilie Feral
633b1486f5 [apps/sequence][apps/graph] Define x/n only in list controllers
Change-Id: I9b30bc16c3454a0531ebcd40a5fe5169c0af6f24
2017-03-29 18:36:45 +02:00
Émilie Feral
adc80cd71b [apps][escher] I18n
Change-Id: I4d6f40155a8a182184af9ef2a583d0469196ffd5
2017-03-16 15:12: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
Émilie Feral
6b524737b4 [apps/graph] Change name: function->cartesian_function
Change-Id: I138bd13fec8514144cfde7164ec9aff081454609
2017-02-20 09:39:25 +01:00
Émilie Feral
aec8facd0e [apps] Use viewWillAppear to reload view after preference change
Change-Id: I4fba6bd6d4dee03e86ac5087dbc20ef4d7dd032b
2017-02-20 09:39:17 +01:00
Émilie Feral
23026b6718 [apps/shared] Namespace shared
Change-Id: I6dec7ce900bb4e801a25c567fe5e242cb744cf29
2017-02-13 17:15:06 +01:00
Émilie Feral
69e46f4958 [poincare] Namespace Poincare
Change-Id: I51a84fa7978ba16f128cfe1d32c390970f2037e8
2017-02-13 17:15:06 +01:00
Émilie Feral
47cec5e72b [apps] Put the method preference in container instead of in every app
Change-Id: Ib390952a6559aa847c99e3ca74c4f6995a07e909
2017-02-02 10:29:07 +01:00
Émilie Feral
f20f3518d3 [apps/graph/graph] Adjust display mode in banner view according to
preferences

Change-Id: Id634a6128c7e395a35ba5df40c904a372ae80661
2017-02-02 10:29:07 +01:00
Émilie Feral
ae9117d180 [poincare] Merge XContext and NContext together
Change-Id: Idf99dc291a233a6d34f049031e04311b8fe17816
2017-01-27 12:02:37 +01:00
Émilie Feral
e3e0fb2120 [escher] In app, add an upperName
Change-Id: Iea37749e446c721b5e85af063681e2a98c0e4f37
2017-01-27 11:50:42 +01:00
Émilie Feral
4b49be549d [apps] Add headers in all sub tab view for a better rendering
Change-Id: Id9fc1ffac9cbc4bebc9af7daf410f36279555519
2017-01-27 11:15:58 +01:00