Commit Graph

99 Commits

Author SHA1 Message Date
Andy Williams 06fa3d494b elm_code: remove selections if moving cursor
The selection remaining after cursor move was getting confusing
2015-06-07 23:13:26 +01:00
Andy Williams 24d3a01e56 elm_code: indent lines to match whitespace above
We can look at more complex scope based indenting later
2015-06-07 23:11:25 +01:00
Andy Williams 74b3905885 elm_code: consistently use 0 based text index
This means it's more familiar as regular string work when
using the elm_code_line APIs. It's also more distinct from
the elm_code_widget layout which is still 1 based columns.
To support unicode we must convert correctly.
Now FIXED!
2015-06-03 21:29:31 +01:00
Andy Williams ac21aac0e1 elm_code: add legacy API.
Refactor eo API in line with elm_obj_* elsewhere
2015-06-02 08:22:36 +01:00
Andy Williams 72c3cc924a Fixing make dist 2015-06-01 23:17:10 +01:00
Andy Williams 782957e6ae Fix header location 2015-06-01 00:26:24 +01:00
Andy Williams fc68e6c198 Fix many warnings.
Make the font face const char * and use eina_stringshare
2015-05-31 21:18:18 +01:00
Andy Williams b07cc34de6 performance: Fix issue where EDI would slow down
a bad circular problem where an error with tooltips causes more
tooltips to be spawned...
2015-05-30 22:48:35 +01:00
Andy Williams 906cfc9a2c fix crash when deleting over a line ending 2015-05-30 20:46:34 +01:00
Andy Williams 704cec0ae7 setting: Add a font picker
Monospace only so we get a deccent looking result.
Mostly from the terminology project - thanks guys
2015-05-30 10:32:37 +01:00
Andy Williams fe89f7fbde editor: trigger saves if selection cut or pasted 2015-05-30 10:31:46 +01:00
Andy Williams 642bb0ba85 elm_code: support setting custom fonts
For EDI create the config that would allow this to be altered.
Actual setting widget to follow...
2015-05-30 10:31:46 +01:00
Andy Williams fcce45fc82 Fix deletion inserting random data.
Off by one error (doubled). Classic.
Lesson: Run the tests you write!
2015-05-29 13:10:25 +01:00
Andy Williams de37470730 selection: fix crash when deleting large selection
snprintf is not the tool for simple string copy
- especially if not null terminated
2015-05-24 12:58:39 +01:00
Andy Williams 4c00c9e1fc Update to latest eolian (getting stable we hope).
Also mark code as a construction property
2015-05-20 14:18:20 +01:00
Andy Williams 8d9f952958 Fixup tests
Fixing compile errors and out of date tests. oops.
2015-05-18 19:40:06 +01:00
Andy Williams c84b148670 Update to latest .eo file type 2015-05-18 19:24:01 +01:00
Andy Williams 1c5717ffb1 editor: fix nulls being appended to lines
Should resolve issues with nulls being inserted
and also crashes on pasting into a selection
2015-05-18 15:49:24 +01:00
Andy Williams 7a8b0c8b93 editor: add pageup/down support
Page up or down by 85% of the visible window height
2015-05-12 23:15:25 +01:00
Andy Williams 703c63f426 eolian_gen fixes to inheritance 2015-05-11 23:17:44 +01:00
Andy Williams a44f55cf69 Update elm_code widget .eo doc for EFL master 2015-05-11 23:11:28 +01:00
Andy Williams c8d23dc720 editor: wrap left and right cursor moves around
when there is a line to move to we should wrap cursor movements
2015-05-05 22:38:02 +01:00
Andy Williams 246132b4ea editor: bind home and end keys 2015-05-05 21:49:21 +01:00
Andy Williams a5e1f82382 editor: correctly paste multiline windows text 2015-05-05 21:41:29 +01:00
Andy Williams ee9cec7ddd editor: Fix crash when pasting multi line
Not tracking length correctly so depending on what else is
in memory we could overrun the buffer
2015-05-05 21:40:22 +01:00
Andy Williams d2f14a82b7 elm_code: add a TODO/FIXME standard parser
Corret some callback code and re-parse each time the file is saved.
Use this to clean up save/parse code in EDI too
2015-04-20 01:21:03 +01:00
Andy Williams 4e7cae76dc elm_code: add multiline paste support.
Creating and breaking out a few helper text methods at the same time.
Test all that we can for this reasonably complex operation
2015-04-19 15:00:10 +01:00
Andy Williams 137dbed20b elm_code: retain line formatting on file callback
We don't need to reset all the lines in file load - just clear
2015-04-13 00:15:21 +01:00
Andy Williams 9cfe41ee00 syntax: reset status and hints when we reset token
re-use elm_code methods when we do this in edi
2015-04-12 23:04:46 +01:00
Andy Williams 462a60d85d syntax: don't slow down by repeating tokens
Clear out the token list before each parse callback loops
2015-04-12 17:25:20 +01:00
Andy Williams 8c0f74628b search: Fix issue when text is at end of line
Tests were wrong, fix and add more
2015-04-12 16:56:17 +01:00
Andy Williams 5e72e7e71e elm_code: Correctly delete tabs when mid-tab
Delete at least 1 char and move cursor to the beginning of the tab
2015-04-07 23:09:16 +01:00
Andy Williams 58c1e5bc82 elm_code: Fix position calculations at line end
Addresses random NULLs in content after newline
2015-04-07 23:05:47 +01:00
Andy Williams b6d0ced5ec elm_code: bring widget_text into widget object 2015-04-04 19:01:05 +01:00
Andy Williams 4cf18aed40 elm_code: refactor widget to seperate space.
Keeping the private files for elm_code cleaner
2015-04-04 18:17:01 +01:00
Andy Williams f50bff8e99 editor: Add a tooltip popup if you hover over a line with a warning attached 2015-04-04 17:51:39 +01:00
Andy Williams 151956ea93 editor: Fix performance of loading large files 2015-04-02 22:48:23 +01:00
Andy Williams 5a1629e7a4 editor: Fix performance of adding deleting lines
removed the numerous callbacks that were not needed
2015-04-02 00:32:16 +01:00
Andy Williams 7942fa8710 elm_code editor: Fix bug with newlines
Badness introduced with the tab work was padding lines with NULL
2015-03-30 23:36:28 +01:00
Andy Williams 3ce607322b elm_code editor: handle tabs when deleting
Make sure we're at the right position when we delete, backspace
or split lines with tabs in them
2015-03-30 20:07:45 +01:00
Andy Williams a5fbc90b14 elm_code: Fix minor mistakes with tab commit 2015-03-29 20:39:26 +01:00
Andy Williams ba44ecf1fa elm_code editor: display cursor over selection
If they overlap it's good to know where text will appear
2015-03-29 20:13:30 +01:00
Andy Williams e0e0eaa32c elm_code: Support rendering tabs
Add a tabstop configurable value so the view can be adjusted.
shuffle all content and tokens along when a tab is encountered.
2015-03-29 20:12:28 +01:00
Andy Williams 08daaed1f5 elm_code: Cut, copy and paste working
Current limitations that paste is into a single line
2015-03-28 17:57:47 +00:00
Andy Williams eee6e3c411 search: Update replace for elm_code selection code
That should be search and replace completely ported now
2015-03-28 16:05:36 +00:00
Andy Williams 94642cac2d elm_code selection: Support selection deletion
In the widget we always delete the selection if typing begins.
If delete or backspace was pressed don't execute the keystroke after.
2015-03-28 15:17:08 +00:00
Andy Williams 71233e8a30 clang: save errors and display if clicked
Using a gutter click in elm_code to print to console for now
2015-03-27 23:54:28 +00:00
Andy Williams c509a2ba98 Note that a fix is now temporary 2015-03-27 23:45:23 +00:00
Andy Williams 71b80a1547 elm_code selection: complete multiline text get
ready for copy and cut functions
2015-03-25 22:55:32 +00:00
Andy Williams fabfa95d06 elm_code selection: support two line selection 2015-03-25 22:17:41 +00:00