Commit Graph

127 Commits

Author SHA1 Message Date
Andy Williams 433bac2c1b elm_code file: detect line endings
Check for Windows otherwise default to unix for now.
2015-03-15 23:07:31 +00:00
Andy Williams 7c5d0e3873 elm_code unicode: highlight tokens correctly
When encountering unicode characters make sure we highlight
in the correct columns rather than at the byte locations.
2015-03-14 16:42:56 +00:00
Andy Williams ec58b84e3e elm_code editor: fix crash backspacing last line
fill an empty line if we're deleting the last line
2015-03-08 12:07:29 +01:00
Andy Williams 6457da6482 elm_code edit: split content on newline.
Tokens also need to be split so this is text only for now
2015-03-08 11:52:12 +01:00
Andy Williams 7f787e8cae elm_code widget: backspace or delete merges lines
This is text only for now but serves as editor foundation.
2015-03-08 11:33:07 +01:00
Andy Williams e951c13e91 elm_code line: move freeing to the line file 2015-03-08 11:15:31 +01:00
Andy Williams ed521af168 elm_code line: unsigned int for length 2015-03-08 11:14:02 +01:00
Andy Williams f96c0345ff elm_code edit: support backspace and delete.
don't propogate backspace as other widgets use it to navigate
adjust tokens left when we remove content and remove if 0 width token.
2015-03-08 09:44:26 +01:00
Andy Williams 4e14c1a069 elm_code unicode: update when editing
issues here with inserting unicode which I need to get to
2015-03-07 22:35:59 +01:00
Andy Williams a2026576a2 Add initial unicode support for elm_code
Note the number of utf8 characters when we load the data.
Make sure the widget is referencing unicode_length
for all our metrics.
2015-03-07 20:48:02 +01:00
Andy Williams 2e5d0e7e02 elm_code editor: adjust tokens when we insert text 2015-02-28 22:50:18 +00:00
Andy Williams 9e184f6270 elm_code demo: Show multiple widgets for one code.
Illustrates that we can display a single elm_code in many widgets
2015-02-27 15:33:06 +00:00
Andy Williams 8517f47124 Merge branch 'master' into devs/ajwillia-ms/elm_code 2015-02-27 15:13:06 +00:00
Andy Williams ec9c327ce1 editor: update to latest elm_code and show whitespace 2015-02-28 16:28:22 +00:00
Andy Williams 3800160732 Merge branch 'master' into elm_code
Conflicts:
	elm_code/src/lib/elm_code_diff_widget.c
2015-02-28 15:31:57 +00:00
Andy Williams dec03ca188 elm_code widget: add show_whitespace option
display items for space, tab and newline if requested
2015-02-28 14:59:42 +00:00
Andy Williams c4f97f2f3e elm_code: support line insertion
in our widget call a line insertion on enter pressed
2015-02-28 14:20:32 +00:00
Andy Williams f4a760f4a5 elm_code: require an elm_code for each widget
In our finalizer we ensure that an elm_code is set.
No longer allow code_set to be called after construction.
2015-02-28 13:22:38 +00:00
Andy Williams 20c108ea32 elm_code tests: fix test path 2015-02-28 13:14:18 +00:00
Andy Williams df310e14f4 elm_code: Fix finalized check macro 2015-02-27 15:07:38 +00:00
Andy Williams a7adf4f1f6 elm_code edit: Support insert of any single char.
broadens from alphanumeric to include punctionation
and various symbols.
2015-02-26 23:56:10 +00:00
Andy Williams bc1cfc7b87 elm_code parse: Add standard parsers starting with diff.
Allow code instances to have provided parsers added easily.
These can be chained to have multiple passes.
2015-02-26 23:19:09 +00:00
Andy Williams a79c01f1da merge changes from master 2015-02-26 13:56:50 +00:00
Andy Williams b89e88accc elm_code: Move parser callbacks to private.
Don't expose the internal callback mechanics, just the addition of parsers
2015-02-26 13:54:46 +00:00
Andy Williams 627adf8d2a syntax: Actually use the elm_code parser api.
Improve the API to allow passing of user data to the calls.
Yes, I forgot about this, it works well so remove the STYLE_SET callback
2015-02-24 00:32:40 +00:00
Andy Williams 67eb529aa3 elm_code: Add missing status icons from new states 2015-02-24 00:26:58 +00:00
Andy Williams ca9b64e3c8 elm_code: display a line-width marker if requested 2015-02-23 21:52:49 +00:00
Andy Williams b08274d8b1 Merge branch master
conflicts in elm_code_widget.c resolved
2015-02-22 23:38:54 +00:00
Andy Williams e329755283 elm_code: Fill the widget and gutter to the end
This helps with refreshing too so we blank removed lines
2015-02-22 22:13:33 +00:00
Andy Williams d9a94200cc elm_code: don't run resize code more than needed
Our cells are now always the size of the widget so
we can avoid the safety checks...
2015-02-22 21:50:34 +00:00
Andy Williams c3e0883808 elm_code: Support text insertion for simple edits.
Hook into the widget for elm_code_test and edi editors.
Only alphanumeric and space, but it's a start.
2015-02-22 20:07:08 +00:00
Andy Williams cb83e9e912 elm_code: Support multi-line tokens
Adding a new token to each line it covers.
Each token references the end line so newline behaviour can be set
2015-02-21 18:24:17 +00:00
Andy Williams 685abd7054 syntax: Update clang to output elm_code tokens
Addition of a refresh line command to say we're done.
We no longer need an active window for highlighting
as it's so much faster!
2015-02-21 17:30:17 +00:00
Andy Williams 2b64f2fd1b Merge branch 'master' into elm_code
Conflicts:
	elm_code/src/lib/elm_code_widget.c
	elm_code/src/lib/elm_code_widget.eo.c
	elm_code/src/lib/elm_code_widget.eo.h
2015-02-19 22:39:11 +00:00
Andy Williams d59ce760ca eo: remove generated files from git 2015-02-19 22:35:01 +00:00
Andy Williams 4e1af4b488 elm_code: Update FIXME to be realisic - the textgrid size_set does not append 2015-02-19 21:52:41 +00:00
Andy Williams 5d0224efa5 elm_code: get / set the cursor position
When the cursor is updated make sure we have scrolled
so it's visible. Also adjust focus next points too.
2015-02-19 21:16:18 +00:00
Andy Williams 9dea8c488d elm_code: Actually use it as our main editor window!
Need to hook in the clang highlighting and undo stack to the elm_code_widget
2015-02-19 00:22:07 +00:00
Andy Williams 384a12282e Add a temporary fix for some scroll/append/refresh issue with layout 2015-02-17 23:56:20 +00:00
Andy Williams f9709f915c An update to get closer to make check passing for windows.
Thanks (and credit) to Vincent Torri again
2015-02-15 20:35:41 +00:00
Andy Williams 9a0f269e92 elm_code: Tidying our callbacks and line manipulation.
Now the line_done callback allows styling to be set during the load process.
2015-02-14 23:14:06 +00:00
Andy Williams 4f49e230bd elm_code: focus: block focus leaving text area when editable.
As well as setting when we should not have focus leave us a theme has been added.
This allows us to extend from elm_entry which is better suited to us.
2015-02-14 18:49:51 +00:00
Andy Williams a1d9eae33c Improving focus control a little 2015-02-11 22:01:37 +00:00
Andy Williams aa741e4898 Fixing some warnings on Windows.
Thanks, Vincent Torri
2015-02-11 21:25:09 +00:00
Andy Williams 32e73da189 Use public types as far as possible 2015-02-11 19:13:48 +00:00
Andy Williams 486a50986c elm_code: Update demo to split various functions. Adding more pages as use cases emerge 2015-02-10 23:03:18 +00:00
Andy Williams 2c3c4f504d elm_code: Tidy up some unused code and fix up some focus management 2015-02-10 23:02:45 +00:00
Andy Williams 9f6f9a52ff Fix a few warnings and possible build issues 2015-02-08 00:55:51 +00:00
Andy Williams d8bdb6b892 Finally fix make distcheck - clean up Makefiles properly 2015-02-07 16:05:42 +00:00
Andy Williams e146890b40 Fix issues with distcheck.
Only remaining is a permissions problem with skeleton - will be fixed soon.
2015-02-06 23:45:50 +00:00