33 Commits

Author SHA1 Message Date
Luke I. Wilson
95e4db4d3e PanelContainer: SwapNeighborsSelected() to split left and split top 2021-04-05 17:31:16 -05:00
Luke I. Wilson
cf5803c464 Splitting Panels 2021-04-05 17:15:57 -05:00
Luke I. Wilson
25b416da3d Injected new PanelContainer into mainloop to replace TabContainer 2021-04-05 16:55:16 -05:00
Luke I. Wilson
ccb096a3f6 Add GotoLineDialog and Search->Go to line functionality 2021-04-04 20:00:47 -05:00
Luke I. Wilson
3982628653 Ran go fmt *.go on all sources 2021-04-04 13:15:31 -05:00
Luke I. Wilson
0c44bd0312 Fix nil ptr bug
Something weird was happening with keeping a global interface
tcell.Screen. Instead, decided to keep a global pointer to interface
*tcell.Screen. I suspect the Go compiler did not see that screen
was supposed to escape to the heap, and so it was kept as a main()
function-scope variable.
2021-04-04 10:34:55 -05:00
Luke I. Wilson
0e0f4b9339 Replaced background style 2021-04-04 08:33:42 -05:00
Luke I. Wilson
1b50aff0c6 Main: fix cut selection deleting selection before copying. 2021-04-02 15:05:59 -05:00
Luke I. Wilson
d1dd389dba Main: more robust error handling.
Previously, the editor would panic at any error. After I recently
implemented dialogs, I changed all panics to create error dialogs,
instead. This will make the editor more stable.
2021-04-02 14:30:38 -05:00
Luke I. Wilson
9192d35b3c Implement Save As and have Save redirect to Save As when the file is unnamed 2021-04-01 21:07:28 -05:00
Luke I. Wilson
7ce5096952 Add menu entries to Search menu 2021-04-01 20:42:22 -05:00
Luke I. Wilson
f829b37d0c TextEdit & Highlighting: performance improvements & changes to architecture
I ran pprof to find what was causing stuttering, and found it to be the
getTabCountInLineAtCol function in TextEdit, because it was iterating
many bytes of the buffer, for each rune rendered. Replaced it with a more
optimal system. Also changed the architecture of the highlighting system
to use a single RegexpRange structure for all regular expressions. This
allows for optimizations and multiline matches in the future.
2021-04-01 12:05:17 -05:00
Luke I. Wilson
1161888660 Made quick chars use an index 2021-03-25 11:27:43 -05:00
Luke I. Wilson
8d532fd9b7 Renamed diesel to qedit 2021-03-24 18:37:12 -05:00
Luke I. Wilson
d47e407063 Fixed bug in saving files: was missing os.O_TRUNC bit flag 2021-03-24 17:47:13 -05:00
Luke I. Wilson
3be12bdff1 Use Buffer.WriteTo method for writing buffer to file 2021-03-23 18:13:55 -05:00
Luke I. Wilson
40e1b40672 Add and replace []string buffer with ropes 2021-03-23 15:14:23 -05:00
Luke I. Wilson
817b2c66c4 Complete revamp of shortcut system in Menu 2021-03-20 23:10:23 -05:00
Luke I. Wilson
3cf168355a Remove barFocused boolean from main loop 2021-03-20 21:56:25 -05:00
Luke I. Wilson
8db551ceae Bug fix with focusing wrong component after using menu item 2021-03-20 21:51:34 -05:00
Luke I. Wilson
119aac195e Bug fixes for previous features 2021-03-20 18:03:38 -05:00
Luke I. Wilson
ce66bc4bc6 Added shortcut keys possibility to Menus 2021-03-20 16:22:06 -05:00
Luke I. Wilson
fefa34c2b6 Add ItemSelectedCallback to MenuBar & make Menus field private 2021-03-20 14:53:41 -05:00
Luke I. Wilson
bc08505fa8 Show dirty TextEdit tabs 2021-03-20 13:46:44 -05:00
Luke I. Wilson
ca4a847547 Allow non-existant files in command-line args 2021-03-20 13:36:26 -05:00
Luke I. Wilson
6e97e8345a Add status bar 2021-03-19 21:57:49 -05:00
Luke I. Wilson
ffaad36c78 Added quick chars to MenuBar and Menus 2021-03-19 19:58:59 -05:00
Luke I. Wilson
83567c1341 Menu & MenuBar experience improvements 2021-03-18 23:37:42 -05:00
Luke I. Wilson
1d77aae277 go fmt 2021-03-18 19:52:34 -05:00
Luke I. Wilson
e1ebc29ac1 Cut/copy/paste 2021-03-18 19:47:01 -05:00
Luke I. Wilson
d7a5309e80 Fixed some TabContainer and TextEdit bugs 2021-03-11 16:57:28 -06:00
Luke I. Wilson
443070f077 go fmt sources & add command-line file loading 2021-03-11 14:11:43 -06:00
Luke I. Wilson
d0bb43cc8f Did a lot of work off-repo, basically init 2021-03-11 13:27:35 -06:00