Show or hide menuTRichView.com
English | Deutsch | Español

  TRichView Chat

TRichView includes a component TRVChat, designed for creating modern chat interfaces based on the TRichView rich text engine. It allows you to display conversations in a style similar to popular messengers (such as Telegram, WhatsApp, or Viber) directly inside your Delphi or Lazarus applications.

Message Display

Messages are shown in speech bubbles (callouts) grouped by sender and date. Each message can contain text with hyperlinks, images, or attached files. Successive messages from the same user are visually grouped to reduce repetition and improve readability.

TRichView chat window

User Profiles

Each message is linked to a user object that defines:

  • the user’s name and avatar,
  • the alignment of their messages (left or right),
  • colors used for bubbles, quotes, and file icons.

Interaction

TRVChat provides built-in logic for:

  • editing and deleting messages,
  • replying with or without quotes,
  • showing message status (sent, read, failed),
  • highlighting the selected message for further actions (edit, delete, quote, etc.),
  • searching for text within chat history.

Attachments and Quotes

Messages can include attached images or files.

TRichView chat window: quote and attached image TRichView chat window: quote and attached image

You can either attach a ready-to-display image, or insert a placeholder image that can later be replaced – for example, after downloading it from a server.

Icons for file attachments can be automatically generated or replaced with custom images.

Quotes can display either an excerpt or the full text of a referenced message, updating automatically if the original message changes.

Customization

You can configure every visual aspect:

  • bubble shape, corner radius, arrow style, and shadow,
  • spacing between messages and user groups,
  • fonts, colors, and layout of date separators and status lines,
  • background picture.

Cross-Platform Support

TRVChat is available for VCL, FireMonkey (all platforms), and Lazarus (Windows).

Integration

TRVChat works as a non-visual controller linked to a TRichView component.

It manages the content and rendering, so you can focus on handling message flow, network communication, and user interactions.

Networking itself is not part of TRVChat – it can be implemented with any suitable library, for example RVMedia.