|
|
0f78a25382
|
add z-index parameter to cursors, and refactor code to use them
|
2025-09-11 01:53:13 +01:00 |
|
|
|
2e0f749229
|
adjust imperative shell to use xyz coordinates for position, instead of simply xy; need to ensure the functional core code outputs a vector in this format too
|
2025-09-11 01:43:23 +01:00 |
|
|
|
3f7009bf09
|
prefix search string with a / in NORMAL_SEARCH_MODE, just like in Vim
|
2025-09-01 02:39:16 +01:00 |
|
|
|
561e45c556
|
extract reusable function which can be used when a search string is changed, in NORMAL_SEARCH_MODE
|
2025-09-01 02:18:23 +01:00 |
|
|
|
9bae969511
|
add function to build a Real32.real vector list for a single line from a string, in text-builder.sml. To be used for building search string area in NORMAL_SEARCH_MODE.
|
2025-09-01 01:24:56 +01:00 |
|
|
|
634bc6f577
|
add additional constant/unchanging parameters to env record, in text-builder.sml
|
2025-09-01 01:07:26 +01:00 |
|
|
|
95c6af3ec7
|
in 'TextBuilder.buildWithExisting' function, allow the user to pass a floatWindowWidth and floatWindowHeight which may differ from windowWidth and windowHeight parameters. This enables us to draw text only in a specified area.
|
2025-09-01 00:52:27 +01:00 |
|
|
|
a9fda7d88b
|
change text building function in text-builder.sml to use the 'startX' and 'startY' fields added to the environment type
|
2025-08-31 01:38:42 +01:00 |
|
|
|
648346e5ba
|
fix regression caused by 'TextBuilder.advanceSearchPos' function. We were previously checking if the absIdx is in the search range and advancing based on whether that is true or false, but we should only advance if absIdx is after the search range
|
2025-08-31 01:33:20 +01:00 |
|
|
|
5ba82ea7e1
|
if we can fit at least 80 chars in a single line on the screen, centre all visible text on the screen
|
2025-08-31 01:15:29 +01:00 |
|
|
|
83e062eb60
|
fix visual bug resulting from 'TextBuilder.buildTextStringSearch' function. When we have a search string 'abc' and a file 'abcabc', there are two matches and it should also look like there are two matches, but it did not look like there were two matches prior to this commit. This commit fixes that by advancing the search position before adding to the text accumulator.
|
2025-08-31 00:05:48 +01:00 |
|
|
|
41153c32a1
|
create new rect which is adapted to new text, and use it in text-builder.sml
|
2025-08-18 02:39:56 +01:00 |
|
|
|
af15b97400
|
pull in new version of cozette-ascii library, and fix resulting compile errors (which all occurred in text-builder.sml)
|
2025-08-18 02:17:13 +01:00 |
|
|
|
704854c80f
|
use concurrency for rebuilding search list after deletion so we don't block main thread on very, very large files
|
2025-08-07 12:20:57 +01:00 |
|
|
|
fab8cfcf20
|
change representation of search list to be a plain int vector and not a zipper (I am not using it for incremental purposes anyway so no point using a zipper)
|
2025-08-06 00:42:24 +01:00 |
|
|
|
7dbd37a65b
|
refactor text builder a bit (I should probably functorise buffer/lineGap iteration code out at some point)
|
2025-08-04 12:57:22 +01:00 |
|
|
|
c28dc429b7
|
address todo in text-builder.sml by adding prerequisite: always call SearchList.goToNum before calling TextBuilder.build
|
2024-11-25 04:37:47 +00:00 |
|
|
|
d6c59e140e
|
replace text-builder.sml's 'buildCursor' function with a new 'Rect.lerp' function (which is in fcore/rect.sml)
|
2024-11-15 21:14:43 +00:00 |
|
|
|
2a2f64f00c
|
add bgVertexBuffer and bgProgram to imperative shell, so we can draw bg and cursor without overlap, and without z-index
|
2024-11-15 10:26:22 +00:00 |
|
|
|
d5eb19f8d9
|
progress drawing spaces within search string, and drawing behind background of search string
|
2024-11-15 09:50:35 +00:00 |
|
|
|
c0c1a7c885
|
refactor app-update.sml to pass additional parameters to TextBuilder.build
|
2024-11-15 08:24:48 +00:00 |
|
|
|
35de4582e9
|
refactor TextBuilder and inner functions to handle highlighting searched characters
|
2024-11-15 08:13:32 +00:00 |
|
|
|
91688441cf
|
refactor fcore/text-builder.sml to take non-changing parameters as records, for brevity
|
2024-11-15 06:43:14 +00:00 |
|
|
|
bff4c006ed
|
have functionality for cursor to scroll down a line when cursor moves down one line working, but it only seems to work perfectly when there are no visual line breaks
|
2024-10-28 21:56:07 +00:00 |
|
|
|
4b1ee33954
|
begin moving text window when cursor goes off screen (currently, we only move the window when cursor goes backwards but this works fine and as expected)
|
2024-10-28 09:34:55 +00:00 |
|
|
|
19073cb56c
|
improve code to move rightwards in cursor.sml (making it clearer with comments), and improve code to draw cursor at newline in text=builder.sml
|
2024-10-17 08:40:28 +01:00 |
|
|
|
0299a9e6b2
|
draw cursor at newline linebreaks (only \n though and not \r\n)
|
2024-10-17 06:25:43 +01:00 |
|
|
|
8fb362ba8b
|
handle \r\n pair in 'viL' function
|
2024-10-17 04:03:45 +01:00 |
|
|
|
21652a5381
|
in TextBuilder, forgot to build cursor when cursorIdx is over space, so now we build cursor when cursorIdx is over space
|
2024-10-17 02:14:09 +01:00 |
|
|
|
6344dca6cb
|
done fiddling with cursor; looks fine now
|
2024-10-09 12:42:07 +01:00 |
|
|
|
306d693877
|
have cursor drawn now, but it is not appropriate size for character so have to fix that next
|
2024-10-09 12:05:40 +01:00 |
|
|
|
5cc4357cc7
|
progress drawing cursor
|
2024-10-09 11:59:41 +01:00 |
|
|
|
2afc54abc5
|
additional preparation for drawing cursor (next, just need to send cursor vector)
|
2024-10-09 11:36:05 +01:00 |
|
|
|
9d7d00e8d1
|
add cursor buffer and cursor program to imperative shell
|
2024-10-09 11:22:39 +01:00 |
|
|
|
cfaa66bc0b
|
begin preparation for drawing cursor
|
2024-10-09 10:53:00 +01:00 |
|
|
|
bfc5a3914c
|
hardcode more pleasant (in my opinion) colour scheme for the moment
|
2024-10-09 01:23:26 +01:00 |
|
|
|
1ae15e5585
|
expand comment to reflect a bit of planning
|
2024-10-09 00:02:12 +01:00 |
|
|
|
6e4cc9acff
|
a bit of refactoring
|
2024-10-08 08:53:43 +01:00 |
|
|
|
b95fc48252
|
scaffolding for concurrent ml
|
2024-10-06 09:32:56 +01:00 |
|
|
|
6766fd1485
|
a bit of scaffolding to prepare for adding resize callback + message types
|
2024-10-06 08:18:24 +01:00 |
|