Commit Graph

404 Commits

Author SHA1 Message Date
Ruben Dashyan
4d4adc5873 [apps/sequence/graph] Replace negative cursor abscissa by 0 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
4d640e2916 [apps] XYBannerView: prepare constructor so the class may contain TextField 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
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
82a0f72d42 [apps/shared] Clean FunctionCurveParameterController constructor 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
0d34923dd1 [apps] Graph/Regression/Sequence::BannerView inherit from new Shared::XYBannerView 2019-05-03 15:54:21 +02:00
Ruben Dashyan
236b752f4f [apps] replace BannerView::textViewAtIndex by subviewAtIndex 2019-05-03 15:54:21 +02:00
Ruben Dashyan
513a4cf852 [apps] BannerView::numberOfSubviews
Shared::BannerView::numberOfSubviews made pure virtual.
Define constexpr attributes instead of magic numbers.
Move numberOfSubviews to header file.
2019-05-03 15:54:21 +02:00
Émilie Feral
2217eebaec [escher] SelectableTableView: when reloading data, we temporary deselect
the table. We warn the SelectableTableViewDelegate that the selection
change is 'within a temporary selection change' when notifying it of the
change.
2019-05-03 15:54:21 +02:00
Émilie Feral
da1ee21fd5 [poincare] VerticalOffsetLayout: change name of 'Type' to 'Position' 2019-05-03 15:54:21 +02:00
Émilie Feral
a839c88883 [sequence] Fix isDefined 2019-05-03 15:54:20 +02:00
Émilie Feral
32f4140637 [sequence] Cache context does not need to be a variable context
Fix crash: u(n) = n(n-1) would crash at evaluation
2019-05-03 15:54:20 +02:00
Léa Saviot
a337bd260d [unicode] Use Poincare::SerializationHelper::CodePoint 2019-05-03 15:53:21 +02:00
Léa Saviot
1d26e6da73 [ion/unicode] Clean special code points 2019-05-03 15:53:21 +02:00
Émilie Feral
238d0ca63d [sequence] Fix Sequence::isDefined 2019-05-03 15:53:20 +02:00
Émilie Feral
2651e911d5 [sequence] Fix bug: number of curves in graph is the number of active
functions
2019-05-03 15:53:20 +02:00
Émilie Feral
96ba100e16 [sequence] Sequence: factorize InitialConditionModels 2019-05-03 15:53:20 +02:00
Émilie Feral
4e823e67b6 [sequence] Fix Toolbox: sequence fullName is for example "u.seq" which
cannot be compare to "u"
2019-05-03 15:53:20 +02:00
Émilie Feral
336c1c8d73 [apps/graph][apps/sequence] ListParameterController is a
ListViewDataSource instead of a SimpleListViewDataSource (indeed, each
cell has a specific type)
2019-05-03 15:53:20 +02:00
Émilie Feral
a891fff930 [shared] Change name of classes:
FunctionRecordData --> FunctionRecordDataBuffer
CartesianFunctionRecordData --> CartesianFunctionRecordDataBuffer
SequenceRecordData --> SequenceRecordDataBuffer
2019-05-03 15:53:20 +02:00
Émilie Feral
578c65d5dd [shared] Clean class names containing storage 2019-05-03 15:53:20 +02:00
Émilie Feral
5a5a181086 [apps/shared] Change names:
Sequence::DefinitionHandle --> Sequence::DefinitionModel
Sequence::FirstInitialConditionHandle -->
Sequence::FirstInitialConditionModel
Equation::Handle--> Equation::Model
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
15a4072fdc [ion] Move Storage extensions declaration in Storage class 2019-05-03 15:53:20 +02:00
Émilie Feral
be76784bb4 [sequence] Add Poincare::Symbol::SpecialSymbols::UnknownN used in
Sequence
2019-05-03 15:53:20 +02:00
Émilie Feral
dad5fc7f95 [sequence] Make tests build 2019-05-03 15:53:20 +02:00
Émilie Feral
4c1e4cd8f4 [sequence] Optimize size of Sequence meta data 2019-05-03 15:53:20 +02:00
Émilie Feral
c085ab5f1e [sequence] Implement specific setExpressionContent for Sequence model 2019-05-03 15:53:20 +02:00
Émilie Feral
cff3d56f22 [sequence] SequenceStore returns Sequence * instead of
ExpiringPointer<Sequence>

SequenceStore keep all its Sequences in an array which fix Sequence
addresses
2019-05-03 15:53:20 +02:00
Émilie Feral
2bc2506b60 [apps/sequence] Make controllers inherit from StorageFunction controllers when required 2019-05-03 15:53:20 +02:00
Émilie Feral
4a56e8c127 [sequence] Make SequenceStore inherit from StorageFunctionStore 2019-05-03 15:53:20 +02:00
Émilie Feral
3c3ddec0db [sequence] Make Sequence inherit from StorageFunction 2019-05-03 15:53:20 +02:00
Léa Saviot
4f63b16e0a [unicode] Fix portuguese literals 2019-05-03 15:53:20 +02:00
Léo Solé
e74c5f8039 [unicode] Fix Spanish literals 2019-05-03 15:53:19 +02:00
Léo Solé
3038073d3b [unicode] Add accents in french litterals 2019-05-03 15:53:19 +02:00
Léa Saviot
496d346049 Remove max/min inline from KDCoordinate header 2019-05-03 15:53:19 +02:00
Léa Saviot
bbb10f1993 [ion/kandinsky] Move unicode to ion 2019-05-03 15:53:19 +02:00
Léa Saviot
65e5adafac Remove Ion::Charset 2019-05-03 15:53:19 +02:00
Léa Saviot
f576e31ff1 [apps/poincare] Replace CharLayouts with CodePointLayouts 2019-05-03 15:53:19 +02:00
Romain Goyet
4f1d74f44b [build] Use an out-of-tree build 2019-03-06 15:00:59 +01:00
Émilie Feral
7b5f3c570d [poincare] Change the way Expression are built 2019-02-21 11:29:35 +01:00
Émilie Feral
ac6f23684d [poincare] Clean Expression and Layout builders
Before: Opposite(Opposite(Rational(1))) misleadingly created the
expression "-1"; now, Opposite::Builder(Opposite::Builder(Rational(1)))
creates "--1"
2019-02-21 11:29:35 +01:00
Ruben Dashyan
faae55eb51 [escher/scroll_view] Replace setShowsIndicators by setDecoratorType 2019-02-18 16:49:58 +01:00
Léa Saviot
869e534b4b [apps] MAke some InteractiveCurveViewRangeDelegate methods const 2019-01-10 11:42:05 +01:00
Léa Saviot
5d1ef0f3f0 [apps/sequence] Use first ranks when computing graph range
Put two sequences u(n+1)=u(n) and v(n+1) = v(n), u(100) = 50, v(50) = 8.
Basic settings computed the x range as [0,10] before, now it is
[50,110].
2019-01-10 11:42:05 +01:00
Léa Saviot
6720ad7b38 [apps] Rename interestingXRange as interestingXHalfRange 2019-01-10 11:42:05 +01:00
Léa Saviot
17a9388623 [apps/sequence] Clean GraphController 2019-01-10 11:42:05 +01:00