Commit Graph

99 Commits

Author SHA1 Message Date
Andy Williams 35866daf6a elm_code selection: test and implement single line
Multi line selection still to come
2015-03-25 21:55:00 +00:00
Andy Williams 7ffa533392 Merge branch 'master' into elm_code 2015-03-25 20:52:14 +00:00
Andy Williams 7eede66db6 elm_code: Remove accidental dep on efl-git 2015-03-25 14:05:47 +00:00
Andy Williams e2718aac97 elm_code: add text search functions.
Update the search and replace UI to work with the new elm_ode UI.
2015-03-22 22:36:04 +00:00
Andy Williams ef4e5ee686 elm_code selection: move cursor to selection 2015-03-22 22:28:07 +00:00
Andy Williams 036622efd2 elm_code widget: fire user change events
This does not yet have a "change" attached so does not
support undo/redo yet
2015-03-21 20:04:12 +00:00
Andy Williams 015b2cfa97 elm_code file: add save method to write out lines
use a temporary file as we may have mapped the data directly.
2015-03-21 19:25:25 +00:00
Andy Williams c335a5b921 elm_code file: get line ending chars
Quickly add support for the line end character sequence.
Just windows and Unix now, as per the enum defined.
2015-03-21 13:58:30 +00:00
Andy Williams 6509d5c1d6 elm_code selection: Input selecttion from mouse
When editable allow dragging the cursor with a mouse button
down then set up a selecttion.
2015-03-18 22:24:56 +00:00
Andy Williams 4398dd38f8 elm_code whitespace: only display actual newlines
No newlines at the end of a file if there is no other line
2015-03-18 22:18:34 +00:00
Andy Williams e4cf9ed41a elm_code: selection highlighting
Adding initial support for displaying selection within the widget
2015-03-17 22:42:03 +00:00
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 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 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 384a12282e Add a temporary fix for some scroll/append/refresh issue with layout 2015-02-17 23:56:20 +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