Skip to content

RickDialogPro 0.1.0 — Initial Release (Lançamento Inicial)

Choose a tag to compare

@ricksolucoes ricksolucoes released this 15 Sep 01:36
· 2 commits to main since this release

🚀 RickDialogPro 0.1.0

RickDialogPro 0.1.0 is the initial release of a lightweight and extensible dialog library for Delphi FireMonkey applications.

The library provides a consistent API for displaying modal dialogs while keeping the public contract separated from the FMX rendering implementation.

✨ Highlights

  • ❌ Error dialogs
  • ⚠️ Warning dialogs
  • ℹ️ Information dialogs
  • ✅ Success dialogs
  • 🧩 Clean public facade through Rick.Dialog.Pro
  • 🔌 Interface-based API
  • ⚙️ Configurable behavior through TRickDialogProConfig
  • 📝 Customizable captions and dialog content
  • 🖱️ Primary and secondary actions
  • 🖼️ Optional background behavior
  • 🎨 Theme support through IRickDialogProTheme
  • 🌑 Built-in default theme
  • 🧪 Support for injecting custom themes
  • ☀️ Light theme example in the sample application
  • 🌿 Green theme example in the sample application
  • 🧱 FireMonkey runtime rendering isolated from the public API

🏗️ Architecture

The project is organized around clearly separated responsibilities:

  • Rick.Dialog.Pro — public facade
  • Rick.Dialog.Pro.Interf — main public contracts
  • Rick.Dialog.Pro.Types — shared public types and configuration
  • Rick.Dialog.Pro.Theme.Interf — theme contract
  • Rick.Dialog.Pro.Theme.Default — default theme implementation
  • Rick.Dialog.Pro.Impl.FMX — FireMonkey implementation
  • Rick.Dialog.Pro.Impl.FMX.Runtime.Form — runtime dialog rendering

Implementation-specific FMX units are kept outside the public facade, reducing coupling between consumers and the internal rendering layer.

🎨 Themes

RickDialogPro provides a default theme and supports custom themes through:

IRickDialogProTheme

A custom theme can be supplied when creating the dialog service:

LDialog := TRickDialogPro.New(ACustomTheme);

The sample application includes three selectable themes:

  • 🌑 Default
  • ☀️ Light
  • 🌿 Green

The Light and Green themes are examples of custom IRickDialogProTheme implementations and are not required dependencies of the core library.

💻 Example

uses
  Rick.Dialog.Pro;

var
  LDialog: IRickDialogPro;
begin
  LDialog := TRickDialogPro.New;

  LDialog.Information(
    'Operation completed successfully.',
    'Information'
  );
end;

✅ Quality and validation

This release includes:

  • 🔍 Structural and dependency review
  • 🧱 Separation of FMX runtime rendering responsibilities
  • 🛡️ API and contract preservation review
  • 📚 XMLDoc review
  • 📝 Developer documentation review
  • 🌐 English and Brazilian Portuguese documentation
  • 🧪 DUnitX automated test suite
  • 🖥️ Sample application for integration and theme demonstration

🧭 Compatibility

RickDialogPro targets modern Delphi versions using FireMonkey.

Refer to the project documentation for the currently validated compiler and platform configurations.

📚 Documentation

The repository includes:

  • README.md
  • README.pt-BR.md
  • docs/GUIDE.md
  • docs/GUIDE.pt-BR.md

These documents cover installation, usage, architecture, configuration, themes, examples, and project organization.


🔗 Full Changelog: https://github.com/ricksolucoes/RickDialogPro/commits/0.1.0

Versão pt-BR:

🚀 RickDialogPro 0.1.0

RickDialogPro 0.1.0 é a primeira versão publicada da biblioteca de diálogos leve e extensível para aplicações Delphi FireMonkey.

A biblioteca fornece uma API consistente para exibição de diálogos modais, mantendo o contrato público separado da implementação responsável pela renderização FMX.

✨ Destaques

  • ❌ Diálogos de erro
  • ⚠️ Diálogos de aviso
  • ℹ️ Diálogos de informação
  • ✅ Diálogos de sucesso
  • 🧩 Fachada pública centralizada em Rick.Dialog.Pro
  • 🔌 API orientada a interfaces
  • ⚙️ Configuração através de TRickDialogProConfig
  • 📝 Títulos e conteúdos personalizáveis
  • 🖱️ Ações primária e secundária
  • 🖼️ Comportamento opcional de background
  • 🎨 Suporte a temas através de IRickDialogProTheme
  • 🌑 Tema padrão integrado
  • 🧪 Suporte à injeção de temas personalizados
  • ☀️ Exemplo de tema Light na aplicação de demonstração
  • 🌿 Exemplo de tema Green na aplicação de demonstração
  • 🧱 Renderização FireMonkey isolada da API pública

🏗️ Arquitetura

O projeto está organizado com responsabilidades claramente separadas:

  • Rick.Dialog.Pro — fachada pública
  • Rick.Dialog.Pro.Interf — contratos públicos principais
  • Rick.Dialog.Pro.Types — tipos e configurações compartilhadas
  • Rick.Dialog.Pro.Theme.Interf — contrato de temas
  • Rick.Dialog.Pro.Theme.Default — implementação do tema padrão
  • Rick.Dialog.Pro.Impl.FMX — implementação FireMonkey
  • Rick.Dialog.Pro.Impl.FMX.Runtime.Form — renderização do diálogo em runtime

As units específicas da implementação FMX permanecem fora da fachada pública, reduzindo o acoplamento entre os consumidores e a camada interna de renderização.

🎨 Temas

O RickDialogPro fornece um tema padrão e permite a criação de temas personalizados através de:

IRickDialogProTheme

Um tema personalizado pode ser informado durante a criação do serviço:

LDialog := TRickDialogPro.New(ACustomTheme);

A aplicação de exemplo disponibiliza três temas selecionáveis:

  • 🌑 Default
  • ☀️ Light
  • 🌿 Green

Os temas Light e Green são exemplos de implementação de IRickDialogProTheme e não constituem dependências obrigatórias da biblioteca principal.

💻 Exemplo

uses
  Rick.Dialog.Pro;

var
  LDialog: IRickDialogPro;
begin
  LDialog := TRickDialogPro.New;

  LDialog.Information(
    'Operação concluída com sucesso.',
    'Informação'
  );
end;

✅ Qualidade e validação

Esta versão inclui:

  • 🔍 Revisão estrutural e de dependências
  • 🧱 Separação das responsabilidades de renderização FMX em runtime
  • 🛡️ Revisão de preservação da API e dos contratos
  • 📚 Revisão de XMLDoc
  • 📝 Revisão da documentação para desenvolvedores
  • 🌐 Documentação em inglês e português brasileiro
  • 🧪 Suíte automatizada de testes DUnitX
  • 🖥️ Aplicação de exemplo para integração e demonstração de temas

🧭 Compatibilidade

O RickDialogPro é destinado a versões modernas do Delphi utilizando FireMonkey.

Consulte a documentação do projeto para as configurações de compilador e plataformas atualmente validadas.

📚 Documentação

O repositório inclui:

  • README.md
  • README.pt-BR.md
  • docs/GUIDE.md
  • docs/GUIDE.pt-BR.md

Esses documentos apresentam instalação, utilização, arquitetura, configuração, temas, exemplos e organização do projeto.


🔗 Changelog completo: https://github.com/ricksolucoes/RickDialogPro/commits/0.1.0