Package uno.anahata.ai.swing.render
package uno.anahata.ai.swing.render
Provides a framework of specialized renderers for displaying different types of message parts.
This package is the core of the UI's ability to display a rich, interactive conversation history.
It follows a strategy pattern where the main ContentRenderer
delegates the task of rendering each Part to a specific
PartRenderer implementation based on the part's type.
Key Components:
ContentRenderer: The main orchestrator that builds the JComponent for a completeChatMessage.PartRenderer: The interface that all specific renderers must implement.TextPartRenderer: Renders Markdown-formatted text, including support for tables and code blocks.FunctionCallPartRenderer: Renders a visually distinct representation of a tool call requested by the model.BlobPartRenderer: Renders binary data, displaying a thumbnail for images.CodeBlockRenderer: A utility for creating syntax-highlighted code snippets, which can be configured with IDE-specific editor kits.
Subpackages:
uno.anahata.ai.swing.render.editorkit: Provides an abstraction for supplying syntax highlighting engines (EditorKits) to the UI.
-
ClassDescriptionA utility class responsible for creating syntax-highlighted code block components.Renders the content of a CodeExecutionResult part as plain text.Renders the content of an ExecutableCode part, which is a request from the model to execute a block of code.An interface for rendering a specific
Partof a model's response into a JComponent.
