Des composants qui génèrent du HTML
Chaque widget est une classe — TsgcHTMLComponent_Chart, TsgcHTMLComponent_Grid, TsgcHTMLComponent_Form et 60 autres. Définis ses propriétés, puis lis sa propriété HTML pour obtenir un balisage Bootstrap 5 propre, prêt à servir.
Servi par ton propre serveur
Pose un TsgcHTMLEngine_Server (ou relie le HTML à un TsgcWebSocketHTTPServer existant). Les requêtes arrivent dans ton gestionnaire OnCommandGet ; tu réponds avec une page construite à partir de composants. Aucune pile web externe.
Interactif grâce à htmx
Ajoute un TsgcHTMX_Engine_Server et les clics, les envois de formulaires et les mises à jour en direct font l'aller-retour vers tes gestionnaires d'événements Pascal/C#. Le serveur remplace les fragments HTML sur place — la sensation d'une SPA, sans la chaîne de build JavaScript.
Temps réel via WebSockets
Comme htmx fonctionne sur le serveur sgcWebSockets, tu peux pousser du HTML en direct vers chaque navigateur connecté. Tableaux de bord, moniteurs et fenêtres de chat se mettent à jour à l'instant où tes données changent — piloté par le serveur, sans interrogation.
Thèmes & modèles
TsgcHTMLTemplate_Bootstrap enveloppe ton contenu dans un document responsive complet ; TsgcHTMLThemeController et TsgcHTMLThemeBuilder fournissent des thèmes clair/sombre et une feuille de style partagée. Bootstrap 5.3 et htmx sont embarqués — aucun CDN à l'exécution.
Liaison directe à la base de données
Grid, DataTable, Chart, Select, TreeView, Scheduler, Timeline et Form se lient directement à un TDataSet via LoadFromDataSet / DataSource. Pointe un composant vers une requête et il affiche les lignes.
Interface localisée, 17 langues
sgcHTML fournit des textes d'interface intégrés (boutons, libellés, messages de validation) en 17 langues : anglais, espagnol, français, allemand, portugais, italien, néerlandais, suédois, norvégien, polonais, tchèque, turc, russe, chinois, japonais, coréen et arabe. Choisis-en une avec sgcHTMLSetLanguage et les composants s'affichent dans la langue du visiteur avec les écritures natives correctes, y compris le CJK, le cyrillique et l'arabe.
Sortie sécurisée par défaut
Chaque composant fait passer son texte dynamique, ses attributs, son JavaScript en ligne et ses URL par un encodage automatique HTML, d'attributs, JavaScript et d'URL ainsi qu'un assainissement des URL (sgcHTMLEncode, sgcHTMLAttrEncode, sgcJSEncode, sgcHTMLSanitizeURL), de sorte que les données utilisateur ne peuvent pas sortir de leur contexte pour injecter du script. La protection contre le XSS et les injections est active sans travail supplémentaire.