RTEdit has received a major update with version 1.5 (Github link at the bottom of the post)
I will use this thread from now on to post updates. Thanx for all the feedback and inspiring to see how many are using the control.
Screenshot above : RTEdit in use by our main commercial application
Your ChatBot companion (Video Demonstration : ChatBot using RTEdit.AppendText )
The newest release focuses on AppendText
which allows the user to stream chunks of texts into the control which styles the content on the fly using it’s built-in parser. Perfect for ChatBot functionality and I have added a new demo feature, showcasing the use of RTEdit with OpenAI backend.
The control scrolls downward automatically as new content is added, provided the scroll position is already at the bottom of the document. You can use the new ScrollToBottom
method to ensure the document continues to scroll as content is appended. This feature is disabled if the user manually scrolls during the stream, allowing for expected behavior.
Special shoutout to my medical colleague Dr. @GarryPettet who recently launched his open source module AIKit
which I use to showcase the ChatBot feature. I highly recommend this module as well as more of Garry’s work found on his GitHub. So, thanx a mill Garry!. (More on AIKit can be found here AIKit
You need to enter your own API key. The demo will prompt you for the key at runtime and store it in a file within your application (project) folder, so you won’t need to enter it again.
New Demo showcases the use of AppendText to feed the control a continuous stream of data.
Save/Load Tags
We had the need to store various data alongside each document loaded into / from RTEdit, such as MetaData, permissions, database id’s and more. Instead of maintaining those outside the control in dictionaries / properties, you can feed any data and any number of them, using SaveTag
/ LoadTag
, using the control to maintain those, allowing for a cleaner code.
You can export / import all Tags in an instance by using
ExportDocumentAsJSON
ImportDocumentFromJSON
Both have the same Parameters (below) and by setting IncludeTags = True
you can import / use / export your tags with a breeze.
Optional IncludeTags as boolean = True,
Optional IncludeMentions as Boolean = True,
Optional IncludeColorScheme as Boolean = False,
Optional IncludeSettings as Boolean = False,
Optional includeProperties as boolean = False,
Optional IncludeCustomCSS as Boolean = False
A complete list of updates:
New Properties
- ColorBlockQuoteLine
- ColorMentionBackground
- ColorMentionPopupBackground
- ColorMentionPopupBackgroundSelected
- ColorMentionPopupText
- ColorMentionPopupTextHover
- DocumentTitle
- MentionsEnabled
New Methods
- AppendText
- LoadTag
- SaveTag
- ScrollToBottom
New Events
- ClipboardPaste
- Closing
Demo project now includes an OpenAI ChatBot (File/ChatBox Example…)
Download
In progress
- Support Links and Images using AppendText method
- Support Image Insert via toolbar on MacOs