Commit Graph

107 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
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
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
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
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
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
É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
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
Léa Saviot
f2310a8814 [apps] Change CurveViewRange::computeGridUnit parameters 2019-01-10 11:42:02 +01:00
Léa Saviot
cea413e91d [apps] Fix Orthonormal setting in graphs
It was not perfectly orthormal.
2019-01-10 11:42:02 +01: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
É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
Lionel Debroux
1a8c6b6ae9 [poincare, escher, ion, apps] Split the huge umbrella header poincare.h, to reduce build time.
This should be a NFC, but surprisingly, it also reduces size... so what does it change ?
2018-10-23 11:49:09 +02:00
Romain Goyet
f8beae3b86 [kandinsky] Move to KDFont 2018-10-11 16:44:02 +02:00
Émilie Feral
365b145cf3 [poincare] Change names: LayoutReference-->Layout 2018-09-18 16:29:44 +02:00
Émilie Feral
616e4c0bcc [poincare] Change name: LayoutRef --> LayoutReference 2018-09-14 16:57:12 +02:00
Émilie Feral
b6f977f894 [sequence] Fix TermSumController with new Poincare API 2018-09-06 15:56:31 +02:00
Émilie Feral
48f890ef93 [poincare] AngleUnit, FormatComplex and PrintFloatMode are now
enumeration of Preferences class
2018-07-30 13:48:04 +02:00
Émilie Feral
66d920a280 [shared] Factorize GraphController::initCursorParameters of Graph and
Sequence
2018-07-06 14:00:32 +02:00
Émilie Feral
2d580faf51 [solver] Ignore empty equation when resolving systems 2018-06-07 14:46:14 +02:00
Léa Saviot
678a0db4e4 Merge with current GitHub master branch
Change-Id: Ie1b83cfabdee1369eb66f53c01314324d5d88a74
2018-05-14 17:03:12 +02:00
Émilie Feral
71b972ceb1 [sequence] Decrease sequence graph resolution (2 dots per pixel instead
of 5)
2018-05-08 14:45:23 +02:00
Léa Saviot
e90b3fd1cd Merge branch 'SaisieJolieMerge10Apr' into SaisieJolieMerge11Apr (master)
Change-Id: I06732115ee37ffd9a037a8412e1c57751dfb3e0f
2018-04-12 09:58:09 +02:00
Léa Saviot
6d3c67e9db [apps] Merge apps/sequence/graph/term_sum_controller.cpp
Change-Id: I9cbcbb73f4f475590762e29ab98999bd42906e74
2018-04-11 10:21:25 +02:00
Léa Saviot
c4b5d4cf40 Merge branch 'SaisieJolieRebase1201' into SaisieJolieMerge10Apr
Change-Id: I802dbb9f7c0eebf75a1b6cd21ddd194e89b53752
2018-04-10 17:21:54 +02:00
Léa Saviot
b67e04214f [apps] Coding style.
Change-Id: I020cc98f87999b69e9c0d969126e9c1ae2f811f2
2018-04-06 14:31:48 +02:00
Zhaofeng Li
6679cb0a20 [apps] Fix exam mode 2018-04-04 13:42:00 +02:00
Émilie Feral
05055c387f [apps] Graph: when setting default range of a function, take
into account the potential periodicity
2018-03-22 10:48:06 +01:00
Émilie Feral
9cd50d8d9a [apps] Graph/Sequence: set different cursors for Sequence and Graph 2018-01-30 18:53:28 +01: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
ac6c8379ed [apps] Enable to specialize the sum layout in Sum Graph Controller 2018-01-30 18:19:27 +01:00
Émilie Feral
cdfbc02499 [apps] Add a function "sumBetweenBounds()" on Function (sum of terms on
Sequence, Integral on CartesianFunction)
2018-01-30 18:19:27 +01:00
Émilie Feral
7ea0dbeb56 [apps] Shared: Move part of the implementation of TermSumController to
shared (Integral Graph Controller) and improve bound edition in
TermSumController.
2018-01-30 18:19:27 +01:00