Totally a low priority request, is it possible to color cycle selected text in order to make it blink or alter colors at a specific rate?
Adding this feature to QPrompt is possible. I don’t know what the best approach to implement the feature would be. A poor implementation could slow down low end devices if used on too many lines. Updating only the text that is in frame is one way to keep things efficient.
One way to implement blink would be to use a QTimer that on each tick went through a pre-indexed list of the specially formatted text, and updates the text’s formatting to reflect the blink or blink-free state of said text. Keeping said index up to date is the primary challenge in this implementation. Having formatting not conflict pre-existing formatting is another thing to keep in mind.
A more modern approach would be to use a shader to perform the visual changes. I’m still new to shaders, so I’m not sure how one could isolate the text to perform shader operations on. An advantage in the shader approach is that it should not conflict with any pre-existing formatting.
Regardless of whether a shader or traditional formatting is chosen to perform visual changes, the timer logic would likely run from the CPU and it shouldn’t impact performance.
With regards to pre-indexing, this is be needed so we can update without slowing down the prompter. Markers are indexed for several reasons, one of them is to tell when a user scrolls past them. Since markers are already indexed, maybe blinking could simply be a property that is build on top of them.
I am thinking of adding Headings functionality for a future release, which would also be indexed. These headings would be less like those found in word processors and more like the headings found in screenwriting software, which indicate where a scene starts and who is speaking. Maybe both features could be worked on together.