Commit Graph

639 Commits

Author SHA1 Message Date
Émilie Feral
e8b58a2b5b [shared] Create ExpiringPointer: in DEBUG, check that pointers to
memoized functions are not used when invalid
2018-11-23 12:04:03 +01:00
Léa Saviot
196e74297e [apps] Rename exact/approx as left/right in scrollable_exact_approx_exp_view 2018-11-23 12:04:03 +01:00
Émilie Feral
c09056b98a [shared] StorageCartesianFunction: sumBetweenBounds does not work, add a
comment to explain why
2018-11-23 12:04:03 +01:00
Émilie Feral
344351f5c2 [shared] StorageCartesianFunction: fix nextIntersection to avoid taking
2 function pointers (indeed, 2 functions pointers can not live at the
same time. They are soon to be ExpiringPointer)
2018-11-23 12:04:03 +01:00
Émilie Feral
a063b00fb7 [graph] StorageDerivativeParameterController &
StorageValuesFunctionParameterController titles cannot be computed
before being in the responder chain (they need to access
app()->functionStore())
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
0a823da78c [escher] Variable box pop-up is handle as Toolbox pop-up by asking
InputEventHandlerDelegate
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
7778c694d1 [escher] Create an InputEventHandlerDelegate that gives the toolbox to
be used by an InputEventHandler
2018-11-23 12:04:02 +01:00
Léa Saviot
71d8358722 [apps/escher/poincare] Change KDText::FontSize to KDFont 2018-11-23 12:04:02 +01:00
Émilie Feral
01e433a9f2 [escher] Clean Field and Input class hierarchy:
Class hierarchy:
- InputEventHandler
- TextInput
- EditableField derives from InputEventHandler
- LayoutField, TextField and ExpressioField derives from EditableField
- TextArea and TextField derives from TextInput
2018-11-23 12:04:02 +01:00
Léa Saviot
c2adbe28c5 [apps/global_context] Fix Pi evaluation 2018-11-23 12:04:02 +01:00
Léa Saviot
7b98467fa9 [apps/graph] Fix first responder when popup after renaming function 2018-11-23 12:04:02 +01:00
Léa Saviot
9e332b0c2b [apps] Create and use StorageFunction::BaseNameCompliant 2018-11-23 12:04:02 +01:00
Émilie Feral
1205dc50e6 [shared] StorageFunction::nameWithArgument uses
SymbolAbstract::TruncateExtension instead of reimplementing it
2018-11-23 12:04:02 +01:00
Léa Saviot
651a86b8fa [apps] Clean the comments of StorageCartesianFunction 2018-11-23 12:04:02 +01:00
Émilie Feral
3c2cde5529 [shared] StorageFunctionListController: Fix bug wrong casting 2018-11-23 12:04:02 +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
6facfbbf7a [apps/graph] Use TextFieldWithExtension in the list controller 2018-11-23 12:04:02 +01:00
Léa Saviot
f8df2a2fba [apps] Remove unneeded dependency 2018-11-23 12:04:02 +01:00
Léa Saviot
885f953d52 [apps] TextFieldWithExtension blocks cursor on the rightmost text 2018-11-23 12:04:02 +01:00
Léa Saviot
df542f2f84 [apps/graph] Update column width after renaming function 2018-11-23 12:04:02 +01:00
Léa Saviot
976e27331d [apps] Use StorageFunction::k_parenthesedArgumentLength 2018-11-23 12:04:02 +01:00
Léa Saviot
801d7ddeeb [apps] "(x)" is a static char[] of Shared::StorageFunction 2018-11-23 12:04:02 +01:00
Léa Saviot
933838ff5e [apps/graph] Rename functions 2018-11-23 12:04:02 +01:00
Léa Saviot
b7770d087c [apps/graph] Add "Rename" entry in the function parameters 2018-11-23 12:04:02 +01:00
Léa Saviot
00dcffbc69 [apps] Return uninitialized exp if record type does not match exp type
In global context. This fixes the computation of a->a(a) in calculation,
which crashed.
2018-11-23 12:04:02 +01:00
Léa Saviot
17f33b8797 [apps] Coding style 2018-11-23 12:04:02 +01:00
Émilie Feral
14fe52023b [shared] StorageFunctionGraphController: function pointer life expires
when another function is called
2018-11-23 12:04:02 +01:00
Léa Saviot
a9f32932eb [apps] If checksum changes, reset StorageExpModelStore memoized models 2018-11-23 12:04:02 +01:00
Léa Saviot
661903f12e [apps]Fix header guardian 2018-11-23 12:04:02 +01:00
Léa Saviot
4582975661 Remove more compilation warnings 2018-11-23 12:04:02 +01:00
Émilie Feral
81e377d8f2 [shared] StorageExpressionModel: Fix memoization routine 2018-11-23 12:04:02 +01:00
Émilie Feral
7ee5cdde82 [shared] StorageCartesianFunctionStore: fix moveMemoizedModel (confusion
between arguments)
2018-11-23 12:04:02 +01:00
Émilie Feral
3399ad5411 [shared] StorageExpressionModel: fix isEmpty 2018-11-23 12:04:02 +01:00
Léa Saviot
be2e674b57 [apps] remove compilation warnings 2018-11-23 12:04:02 +01:00
Émilie Feral
e4e19b3b74 [sahred] StorageCartesianFunction: iterate on colors 2018-11-23 12:04:02 +01:00
Émilie Feral
27e0d5b117 [shared] StorageCartesianFunction: fix DefaultName 2018-11-23 12:04:02 +01:00
Léa Saviot
ede20db6b9 [apps] OK icon in graphs is in the top right corner
It doesn't move when the banner height changes
2018-11-23 12:04:02 +01:00
Léa Saviot
8bffbf6ae7 [apps/graph] Display all data in banner view 2018-11-23 12:04:02 +01:00
Léa Saviot
b3396e6be0 [apps] Fix StorageFunction::nameWithArgument return value 2018-11-23 12:04:02 +01:00
Léa Saviot
03f5ec3ca1 [apps] Fix strlcpy buffer sizes 2018-11-23 12:04:02 +01:00
Émilie Feral
bdef6cc85a [shared] StorageCartesianFunction: make first default names f, g, h, p 2018-11-23 12:04:02 +01:00
Émilie Feral
1808629c30 [shared] StorageCartesianFunction: DefaultName is base name 2018-11-23 12:04:02 +01:00
Émilie Feral
23e9827524 [shared] GlobalContext: change name RecordBaseNameIsFree -->
SymbolAbstractNameIsFree
2018-11-23 12:04:01 +01:00
Émilie Feral
2180588484 [graph] StorageCartesianFunctionStore: enable to remove all Functions 2018-11-23 12:04:01 +01:00
Léa Saviot
93632fce0e [apps/shared] Use StorageFunction::k_maxNameWithArgumentSize 2018-11-23 12:04:01 +01:00
Léa Saviot
f388099cbc [apps/graph] Display function name in hide/show derivative controllers 2018-11-23 12:04:01 +01:00
Léa Saviot
aa46899af1 [apps] Fix StorageCartesianFunction::derivativeNameWithArgument 2018-11-23 12:04:01 +01:00
Léa Saviot
a9914c8ca1 [apps] By default, StorageCartesianFunction's displayDerivative is false 2018-11-23 12:04:01 +01:00