Commit Graph

593 Commits

Author SHA1 Message Date
Ruben Dashyan
43d72e082f [apps] Move sumBetweenBounds from Shared::Function to Shared::SumGraphController 2019-08-29 11:07:22 +02:00
Ruben Dashyan
4fef87ddb5 [apps/sequence/sequence] Replace sumBetweenBounds explicit definition by Poincare machinery 2019-08-29 11:07:22 +02:00
Ruben Dashyan
e03e7717e9 [apps/shared/expression_model] Mark updateNewDataWithExpression's Expression parameter as const 2019-08-29 11:07:22 +02:00
Ruben Dashyan
d20d0becc4 [apps/*/expression_model(_handle)] Remove unknownSymbol() 2019-08-29 11:07:21 +02:00
Ruben Dashyan
a8810ef066 Use UCodePointUnknownX instead of UCodePointUnknownN 2019-08-29 11:07:21 +02:00
Ruben Dashyan
ae21a592a1 [apps/*/expression_model_handle] Remove Symbol static method 2019-08-29 11:07:21 +02:00
Ruben Dashyan
07af06aaad [apps/*/expression_model_store] Remove virtual symbol and unknownSymbol methods 2019-08-29 11:07:21 +02:00
Ruben Dashyan
b1b309c0c4 [apps/*expression_model*] unknownSymbol is replaced in ExpressionModel 2019-08-29 11:07:21 +02:00
Ruben Dashyan
7859308053 [apps/*/expression_model_handle] setContent uses virtual symbol() and unknownSymbol()
ExpressionModelHandle::setContent() does not need to be virtual anymore.
2019-08-29 11:07:21 +02:00
Ruben Dashyan
8b96901c06 [apps/*/expression_model_handle] Define virtual symbol and unknownSymbol methods 2019-08-29 11:07:21 +02:00
Léa Saviot
dcb5a061e9 [apps/poincare] Clearer method names 2019-08-27 17:24:57 +02:00
Émilie Feral
503e07fe5a [apps/sequence] Fix SequenceStore: sequences are not memoized but all
kept in the store (because we need all of them to evaluate one
sequence). setMemoizedModelAtIndex now store u, v and w sequences in
this order to avoid requiring expiring pointers.
2019-08-13 09:44:00 +02:00
Émilie Feral
12060e2ae7 [escher] TextField: all text fields use the same draft text buffer 2019-08-13 09:44:00 +02:00
Émilie Feral
c1cd0302b8 [poincare] Fix typo: explicite --> explicit, implicite --> implicit 2019-08-08 17:22:04 +02:00
Émilie Feral
00d86adf3d [apps/sequence] Add tests on third sequence 2019-08-08 17:22:02 +02:00
Émilie Feral
bcac947b05 [apps/sequence] defaultCursorAbscissa is forced positive 2019-08-08 17:22:01 +02:00
Émilie Feral
869ab35c54 Makefile: build only necessary files for test target 2019-08-08 17:22:01 +02:00
Émilie Feral
4c4d420b1f [app/sequence] Fix Sequence toolbox with the third sequence 2019-08-08 17:22:01 +02:00
Émilie Feral
2e7fb601c8 [app/sequence] Add a third sequence 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
Émilie Feral
518903c390 Clean warnings 2019-08-08 17:22:01 +02:00
Léa Saviot
61cf762eef [poincare] Expression::ReductionContext 2019-08-08 16:29:37 +02:00
Ruben Dashyan
292493ba36 [apps/*curve_view] Substitute resolution by pixelWidth 2019-07-30 14:15:08 +02:00
Ruben Dashyan
c80baae1e9 [apps/*/curve_view] Remove samplingRatio()
The resolution() method is useful to get a horizontal step equivalent to
the width of a pixel. A higher sampling ratio (or resolution) had been
introduced in the following commit.
[apps] In curve view, avoid white vertical lines in integral curves due to pixel rounding
2019-07-30 14:15:08 +02:00
Ruben Dashyan
c22754fa63 [apps/shared/curve_view] Make curveViewRange() method const 2019-07-30 14:15:08 +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
Ruben Dashyan
3e992a3560 [apps] Replace app() by textFieldDelegateApp() in TextFieldDelegates 2019-07-19 15:06:25 +02:00
Ruben Dashyan
ff887ec4a0 [apps/shared] Define static app() accessor in FunctionApp class 2019-07-19 15:06:25 +02:00
Ruben Dashyan
055d601854 [apps] Define TextFieldDelegate::textFieldDelegateApp() directly from ::app() 2019-07-19 15:06:25 +02:00
Ruben Dashyan
5058f64163 [apps] Define LayoutFieldDelegate::expressionFieldDelegateApp() directly from ::app() 2019-07-19 15:06:25 +02:00
Ruben Dashyan
0490e3ab81 [apps] Define InputEventHandlerDelegate::inputEventHandlerDelegateApp() directly from ::app() 2019-07-19 15:06:25 +02:00
Ruben Dashyan
4111927bae [apps] Access *DelegateApp() through app() 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
Émilie Feral
fb80cd3271 [apps] Object contained in the Storage might be unaligned. Make sure to
use emscripten unaligned type to avoid producing an alignment error on
emscripten platform.
2019-06-19 09:54:57 +02:00
Émilie Feral
cd688ab9cf [apps] Force packing classes of objects contained in the Storage
If these classes are padded, we lose space in the Storage and the
Storage::checksum is computed on uninitialized values (corresponding to
the padding memory spaces)
2019-06-19 09:54:57 +02:00
critor
ec40cdd347 Fixed german special characters
Now that special unicode characters are supported, when appropriate, replaced occurrences of the 'ae', 'oe', 'ue', and 'ss' digrams with the proper character.
2019-05-31 08:00:15 -04:00
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