Commit Graph

32 Commits

Author SHA1 Message Date
8701ebbba7 Tweaked code to avoid warnings from latest rustc compiler. 2015-01-29 21:03:56 -08:00
c6cfebdb75 Commented out the GUI modules until I can figure out how to get it working again.
The rust SDL2 bindings have changed in a way that makes the lifetimes
very strict.  This is probably a good thing from a safety standpoint,
but means I'll likely need to re-architect the GUI drawing code.

For now I'm going to leave that on the back-burner and focus on getting
the console version working.
2015-01-29 20:35:19 -08:00
109e46a027 WIP: moving GUI code over to use LineFormatter. 2015-01-25 14:00:45 -08:00
8d83fe77d2 Re-enabled the GUI code. 2015-01-25 13:30:15 -08:00
0557f5f6ce Reorganized the code a bit, and started updating unit tests. 2015-01-25 13:20:16 -08:00
c69ebc240f WIP: making Buffers so they can be given LineFormatters.
A LineFormatter determines how a line of text is visually displayed in
2d space.  This allows both the Console and GUI version of the editor
to share the same buffer code whilst still handling the differing ways
in which both handle visual display.
2015-01-24 14:35:49 -08:00
463911e5b3 Beginnings of a GUI. 2015-01-18 22:52:35 -08:00
30ad0c2ea4 Added SDL2 and Freetype as dependencies, in preparation for a GUI.
Also wrapped Freetype functionality in a Font struct.
2015-01-18 13:12:01 -08:00
d6e28b02a3 Fixed some warnings. 2015-01-11 01:16:21 -08:00
0fb338f05b Updated code to compile with Rust 1.0 alpha. 2015-01-09 18:50:27 -08:00
2785c3821b Updated code to compile with the most recent Rust nightly. 2015-01-04 16:29:19 -08:00
f760d6078d Added jump-to-line functionality and fixed some display bugs. 2015-01-03 13:09:12 -08:00
02fdbcf027 Files loading/saving is working again. 2014-12-31 20:36:23 -08:00
49b34e78d5 Got basic editing functionality up and running again after the refactor. 2014-12-31 18:39:01 -08:00
c88ba48b6d WIP refactor: change text buffer to use the Line struct for storing text.
Most of the UI and editor code is either commented out or not included
in the compile right now.  This is temporary while I get the basic
text code working again.
2014-12-29 16:17:53 -08:00
833e92c5a0 Added a some text manipulation methods, and made backspace work properly. 2014-12-26 21:03:13 -08:00
16945f4183 Updated code to work with new versions of libraries.
Also added backspace support.
2014-12-26 17:15:20 -08:00
a56ff95221 WIP: building a proper UI for editing a file.
Some things don't quite work properly yet...
2014-12-20 17:23:47 -08:00
421b5288a4 Split buffer.rs into various sub-modules for better organization. 2014-12-19 23:22:30 -08:00
a31a0a2c41 Basic file loading/saving. 2014-12-19 22:43:31 -08:00
fec361ad29 Refactored event loop.
This allows large numbers of events to be handled in bulk, but without
the program eating up CPU when idle.
2014-12-19 21:10:03 -08:00
ef64bd8f1c Fixed bug in tree balancing. Text rope is now fully self-balancing. 2014-12-19 00:23:08 -08:00
4f987ffa16 First attempt at self-balancing rope. Totally broken, though. 2014-12-16 23:40:28 -08:00
3154d626ff Escape quits, return inserts a new line. 2014-12-14 23:11:13 -08:00
b78501f983 Super simple text editing interface!
No cursor yet, just always appends to the end of the current buffer.
But still!
2014-12-14 21:06:48 -08:00
9c4e11bc9c Created an iterator for TextBuffers.
In the process, I've also changed all of the text interfaces to work in
term of unicode code-points instead of bytes.  This ensures that editing
operations never corrupt utf8 data.
2014-12-14 16:43:17 -08:00
8b62f01222 Better node splitting for large text insertions. 2014-12-13 19:16:28 -08:00
f85dd9c1db Text removal now works on text ropes. 2014-12-13 18:54:56 -08:00
65c900a237 Beginnings of a rope text buffer implementation. 2014-12-13 15:27:47 -08:00
b1dd62f8db Fleshing out TextBlock's APIs. 2014-12-13 11:51:12 -08:00
05a9016714 Beginnings of a text buffer. 2014-12-13 02:02:51 -08:00
8ce0631155 Getting dependencies and such setup properly. 2014-12-12 23:33:13 -08:00