Change the way the clipboard is fetched, so as to preserve the
Poincare/Python translation feature, and remove the cap on the length of
text being imported into the simulator.
Change-Id: I0f3e83c0c8aa4b64eb08d882aa6891b31f191e22
Add methods to interface Epsilon's clipboard with the system's when
running a simulator.
Note that the clipboard still uses a buffer located in the
Escher::Clipboard class, as some features require a buffer to execute
computations on the clipboard's content.
Change-Id: I14c19615805d38735e64d481c617863db22db9bc
Some nodes of the ToolboxMessageTree can be marked as "forks",
dispatching one branch or the other depending on preferences.
They are used in the Unit menu to provide a different toolbox depending
on the unit system.
Change-Id: I591f7abc3d24e682e827a540a9defac1877871b5
The children of a ToolboxMessageTree object can be stored as a simple
pointer, representing an array of all the children stored consecutively,
or as a double pointer, representing an array storing the addresses of
all children.
Change-Id: I10134684963aaafc635aaf9a2374d0f3c32d3d0c
Do not display the regular view when the main view takes up all the
frame.
This fixes a bug causing the language menu to be briefly visible before
the logo on start-up.
Change-Id: Ia2de44de52ac6f852e0eca05101587042f02913b
Fixed issues due to copy/paste of empty formulas. When pasted, empty
formulas are now recognized by the parser and apear with the
correct layout
Without this process, copying an empty integral then pasting it gives :
int((), x, (), ()) instead of drawing an empty integral
Change-Id: I680aaf4eea953149e2d57efa8153ab4d3f93e2a7
When a formula is pasted in a script or in the shell, some symbols are
replaced by their equivalent in python :
x turns into *
^ turns into **
√ turns into sqrt
etc
Change-Id: If6f2a22d4f3c148c2655e0892023b0e28058a9a6
Added a list of supported countries to I18n, and created messages for
each country's names in each language.
Change-Id: I1b887d75da980d99e21f89cc151249e42c78de88
Some code to prevent the input field from scrolling when switching to
the history in layout mode causes problems :
- With a calculation in the history, type an empty matrix or fraction.
Then with the cursor on an empty square, go to the history. The
square will appear shifted to the right.
Change-Id: I72ebee675215dc3c3a3f8432890f6fee820ef5c9
Changed dumpLayout's name to moveCursorAndDumpContent, as the name
suggested the method was only usable on layouts (while it also works on
text). The method is also no longer marked const, and the previous name
could imply that it had no side effects.
Likewise, renamed restoreLayout to restoreContent.
Change-Id: I46b320e74c07b48e256dc2146f9ecc15af38a8e6
When closing and reopening Calculation, if the cursor was on an
EmptyLayout, this layout would be invisible, instead of being denoted by
its usual yellow square.
This also fixes a bug that would leave the grey squares in matrices when
leaving and reopening the app, causing a failed assertion on the simulator.
Change-Id: Ib723797c079f1441f5cde174aa5c492ad4226335
Closing the Calculation app because of a full pool would crash the
device, by attempting to dump a layout with no node.
Change-Id: Ic926da61ae93f47eb576848788e1de5e3f94f5bb
Added some methods to manipulate the layout of a LayoutField from an
ExpressionField, like storing into and restoring from a buffer.
Change-Id: I7b7b5b53626f19237a5215bd196e897a518e9577
LayoutField does no redraw its content on every occasion anymore. This
allows the input window in Calculation to not scroll to the beginning
when writing an overly long formula.
Change-Id: I14276828884035463b0a6438bfca4dd76c7f5057
tableViewDidChangeSelectionAndDidScroll method and implement it for
Calculation::HistoryController
This fixes the following bug: In the calculation application, input 1,
OK, 1/2/3/4/5/6/7/8, OK, up, up, left, down, up. The selection failed.
So it does not overflow the scrolled view. Fixed for the language
controllers (on boarding app and settings), one value was changed from a
magic 14 to Metric::CommonTopMargin = 15, it did not seem to break
anything.