Commit Graph

3557 Commits

Author SHA1 Message Date
Émilie Feral
d52d6d61ff [poincare] Fix bug in printing float to test: 999999.9 -> 1E7 instead of
0100000

Change-Id: I87d8659cf559901162bc83e8146c144526de782c
2017-12-04 17:57:24 +01:00
Émilie Feral
9efba84ba9 [poincare] Avoid infinite loop in binomial/permute coefficients
Change-Id: I528bf2a4fcfb269511aa9128990807524e9c3945
2017-12-04 17:57:24 +01:00
Émilie Feral
1edd7ac095 [poincare] Fix bug in Integer subtraction!
Change-Id: I2404d5d3b32e282c42cefb34e10d52ea44ba8931
2017-12-04 17:57:24 +01:00
Émilie Feral
57d4f239a2 [apps] In statistics, forbid min value that makes the number of bars
explode

Change-Id: Ia8c97a1c0f7099750ac17faaea7bf47fa5530966
2017-12-04 17:57:24 +01:00
Émilie Feral
4318588779 [apps] In toolbox, update the logarithm message with the right parameter
order (log(x, base))

Change-Id: Ice757a044eaf2f1f0efbfba302f3ea27d3892913
2017-12-04 17:57:24 +01:00
Émilie Feral
4cbe8fbf52 [poincare] Stopping the process inside a SimplificationOrfer call is not
always enable

Change-Id: Iad4cc54d4f9b139e967ead8ee6f8e9635cc39351
2017-12-04 17:57:19 +01:00
Émilie Feral
527b67c183 [poincare] Optimization: Avoid double evaluation of the order
Change-Id: I6564cf0194ff0f80daafa7bd7dc2e707660204ff
2017-12-04 17:54:39 +01:00
Émilie Feral
7138a48a52 [poincare] In Logarithm: when looking for expressions of type e^ln(x),
look also for expression of type e^(ln(x))

Change-Id: Ifeec5fbdd3866269903d63fd7ce55f46815449f3
2017-12-04 11:13:38 +01:00
Émilie Feral
d726d582c9 [poincare] Correct assert
Change-Id: I00e71eedd63e0c7d81250bedeca4813e7eaba671
2017-12-01 17:56:50 +01:00
Émilie Feral
db35fc1d72 Merge branch 'cas_with_python' into python_console
Change-Id: I06e3e07b9fd8d52818d90110ed7517777b35b9f1
2017-12-01 17:29:55 +01:00
Émilie Feral
b3f2f245b0 [poincare] Fix leak when accepting ill-formed matrices-> do not accept
ill-formed matrices

Change-Id: I11a47c832287ac631838b9673174db5fff909f94
2017-12-01 17:22:05 +01:00
Émilie Feral
504bd41664 [apps] In calculation: Avoid to parse twice instead of once when checking the input
string

Change-Id: I653ae54b554c05735c7f9502a6ca44076aed5d7e
2017-12-01 17:22:05 +01:00
Émilie Feral
99ddde28d5 [poincare] Fix leak in Power::computeOnMatrixAndComplex
Change-Id: I009947c02053ceef967fb7d68524c7cf61db9c90
2017-12-01 17:22:05 +01:00
Émilie Feral
439c46d736 [poincare] Enable to interrupt Integral evaluation
Change-Id: I4c4f03beb1801cb9a9c568067356dac3c6a95820
2017-12-01 17:22:05 +01:00
Émilie Feral
15717e4349 [poincare] Fix leak in multiplication::distributeOnOperandAtIndex
Change-Id: Iba88f1c80a68b5b5c34d8448717e9b492f94c451
2017-12-01 17:22:05 +01:00
Émilie Feral
a20e6ee2ed [poincare] Enable interrupting some methods in Simplify that are called
recursively

Change-Id: I5b8c0de51617a3a36b3c8bc673de66dc60e74483
2017-12-01 17:22:05 +01:00
Léa Saviot
ac42d910f5 [code] Fixed minimalSizeForOptimalDisplay in ScriptNodeCell.
Change-Id: I6c5b9d5ec0e1973112a56086123c92c6dedf8456
2017-12-01 17:07:52 +01:00
Léa Saviot
32953c10d8 [code] VarBoxController::ContentViewController is a SimpleListView.
Change-Id: I3a5d9e0803e33b4a75bffe4a2d05d74492d50a9b
2017-12-01 16:18:36 +01:00
Léa Saviot
85a039c524 [code] Fixed long console line storing.
Change-Id: I33785d2766bb59a6324c850d5ac915a48a9fda35
2017-12-01 16:18:36 +01:00
Léa Saviot
09d6e3da53 [code] Changed the base scripts: polynomial.py instead of fibonacci.py.
Change-Id: If80b20681dc04c5556c9b90bda230c7c3bee58a5
2017-12-01 16:18:36 +01:00
Léa Saviot
d05ca726b6 [code] Delete specific lines in the console history with backspace.
Change-Id: I9ed4709937f35c67aea0b958fabbad145b8c0c80
2017-12-01 16:18:34 +01:00
Léa Saviot
62fe441b7a [code] Add parentheses after function names in Var.
Change-Id: I7e3e993d07139c40c6bd59fd5879b3ee091f5127
2017-12-01 16:11:31 +01:00
Léa Saviot
9805f7570e [code] "Functions and variables" translation.
Change-Id: I8f368a0c5e7e6bbb0aebc6a1112d3bdb2d76d34d
2017-12-01 16:11:31 +01:00
Léa Saviot
7c4e5ec583 [code] Color the console history in grey when unloading Python.
Change-Id: I7f802ee5858e6a9944fd3f2455fac58106e2adeb
2017-12-01 16:11:31 +01:00
Léa Saviot
ed2a17ad31 [code] The console history can be colored in grey.
Change-Id: If3da306140d4f80d1abd014c5bf0e1989e3a252d
2017-12-01 16:11:29 +01:00
Léa Saviot
1de30cbe06 [code] Fixed loop condition bug in ConsoleStore.
Change-Id: Ia6a46fe04614afcdace4ab3396282b3c5a6c308c
2017-12-01 13:46:31 +01:00
Léa Saviot
d732bce90f [code] The user can clear the console history.
Change-Id: Ice8143f9c424764f6729feab0d73d39d91f896fd
2017-12-01 13:46:31 +01:00
Léa Saviot
38ec9429aa [code] User defined functions and variables are in the same menu.
Change-Id: I420df64cac76407f8d964db680e753f01e20e78c
2017-12-01 13:46:29 +01:00
Léa Saviot
99411838bd [code] Fixed buffer length bug in Code::PythonToolbox.
Change-Id: I50432b210936fce0aa0817e3598f4cea38b62bbd
2017-12-01 13:19:30 +01:00
Léa Saviot
53d2ae2c46 [code] Rename Code::Toolbox in Code::PythonToolbox for more clarity.
Change-Id: I3729fedd8a26531edcd17105ed5fc177c06a8fcb
2017-12-01 13:19:30 +01:00
Léa Saviot
dd1fe77832 [code] Fixed Execute Script bug.
When disabling a script auto-import parameter, it would not import
itself when executing it from its script parameters menu.

Change-Id: If58f6fe1be4792b551ad3b462f1f43e8b82e8148
2017-12-01 13:19:30 +01:00
Léa Saviot
6ab9a36472 [code] The console history is not emptied when reloading Python.
Change-Id: I5dedcfc8279f5f4fe9846419f6861c7d7cb3f973
2017-12-01 13:19:30 +01:00
Léa Saviot
e43bbd38f2 [escher] Fixed TextField bug.
The Statistics apps crashed when navigating the Data table.
 -> Check that the textfield is editing before calling
textFieldShouldFinishEditing.
 -> Changed textLength() to draftTextLength().

Change-Id: Id373a7cd50438303f470abc5bcee7a795c33926a
2017-12-01 13:19:30 +01:00
Léa Saviot
4659d27c80 [code] Added spaces after some Toolbox commands.
Change-Id: I15c0a9b593e39123694c38ad3d6201e0319f24f4
2017-12-01 13:19:30 +01:00
Léa Saviot
1ce6f36651 [code] Fixed the wait for user input after drawing using Python.
A SandboxController is now pushed on the StackViewController and sets the
KDIonContext::sharedContext before drawing, sets a white background and handles
user input after the Python computation to dismiss the drawing screen.

Change-Id: I51b0474365a85e845227379a16d090541fa8ded7
2017-12-01 13:19:28 +01:00
Léa Saviot
9a9ccc7a8c [python] Fixed MicroPython emscripten bug.
Micropython did not work because of two problems:
 - the stack in ascending order on emscripten
 - if optimized, some variables may be stored in local JavaScript
variables, which breaks garbage collection.

Change-Id: Ib454e0c4d995e9f5f85370eea758526119b35773
2017-12-01 12:06:05 +01:00
Léa Saviot
a78bd0db88 [apps/escher] Harmonize Toolbox and VariableBoxController row heights.
Change-Id: I8e6c5543d46480a1129f3812ca40c29e4407eac1
2017-12-01 12:06:05 +01:00
Léa Saviot
e6b4d07cb6 [code] Dynamic toolbox that displays script functions and variables.
Change-Id: Id1494580b3832540633d3aefaf04710d21e0a44c
2017-12-01 12:06:05 +01:00
Léa Saviot
2015bcce89 [code] Created DoubleBufferTextView for functions/variables toolbox.
Change-Id: I8fb8d12463de44f244230eca36d4b0404343f57d
2017-12-01 12:06:05 +01:00
Léa Saviot
bc4d2768d0 [escher/code] Cleaned Toolbox rowHeight().
Now it is set in escher/toolbox.h, with value 40 and no differentiation Node/Leaf.

Change-Id: I0809d87a5df5b8bffe201c9faf72ff901430cbe5
2017-12-01 12:06:05 +01:00
Léa Saviot
805bdd1381 [python] Fixed infinite recursion bug.
When running a script with infinite recursion, micropython now throws an
error instead of aborting and rebooting the device.

Change-Id: Icd409e56de58a48b25b6bdb30eea1e70b344cc14
2017-12-01 12:06:05 +01:00
Léa Saviot
1c25848139 [code] Modified mandelbrot script template.
Change-Id: Iee1ad23bf37f71564cdf5f23203c12149ed7fda8
2017-12-01 12:06:05 +01:00
Léa Saviot
37a2def2f1 [code] The maximal number of scripts is stored in the ScriptStore.
It was in the MenuController before.

Change-Id: I5f48465d92b53079dc358feec7a4b713875c7e2d
2017-12-01 12:06:05 +01:00
Léa Saviot
9d82804ff3 [code/emscripten] On emscripten, fixed waiting after a Python drawing.
The user can now push OK or Back to remove a Python drawing.

Change-Id: I293064a9458f8c0c6d0da5351500600fd9e82706
2017-12-01 12:06:05 +01:00
Léa Saviot
8dfeaa1f63 [code] Fixed bug in Accordion.
The last edited buffer was not properly computed.

Change-Id: I7aadbc6e3ea41b3b0e344276933dca14c505ee71
2017-12-01 12:06:03 +01:00
Émilie Feral
bd26c499e4 [poincare] In Multiplication::addMissingFactors: fix bug due to creating
a multiplication nested inside a multiplication without reducing it

Change-Id: I2e8174a3714e90e6ecc4edbed0e17e434921e269
2017-12-01 11:54:00 +01:00
Émilie Feral
abb1e04b13 [poincare] Fix bug: when looking for the common multiple, the factor can
have the same base without being a power!

Change-Id: I8a3af89165ed2117a39d19968138fb3a1e1169f0
2017-12-01 11:54:00 +01:00
Émilie Feral
95ce07dfc7 [poincare] In Integer::approximate, exclude special case 0 first to
avoid breaking assertions

Change-Id: I7dea2e05a485a581251b43be1814f00615f17594
2017-12-01 11:54:00 +01:00
Émilie Feral
b5cd6c76ca [poincare] Increase the maximal length of decimal number before
switching to scientific printing

Change-Id: I31c404cc7f89babd279689a48c1adcb33a46da7a
2017-12-01 11:53:59 +01:00
Émilie Feral
3dbe526a92 [apps] In settings, add a row in display mode menu to choose the number
of significant digits

Change-Id: I5ff19740e0ee7258a6d77054df547f916d9b04c4
2017-12-01 11:53:59 +01:00