À propos du projet
ktsu.ImGui.App est une suite de bibliothèques .NET pour créer des applications de bureau avec Dear ImGui. Elle fournit une structure d'application, des widgets personnalisés, des boîtes de dialogue modales, des thèmes, l'édition de graphes de nœuds, le rendu markdown et la coloration syntaxique. Construite sur les bindings Hexa.NET.ImGui et Silk.NET pour la gestion de fenêtres multiplateforme, elle prend en charge .NET 10, 9 et 8.
Les bibliothèques principales incluent :
- **ImGui.App** : Fondation d'application avec gestion de fenêtres, rendu OpenGL, gestion des polices, mise en cache des textures, décodage d'images (PNG/JPEG/BMP/TGA), prise en charge du DPI et limitation de fréquence contrôlée par PID.
- **ImGui.Widgets** : Environ soixante composants d'interface utilisateur, notamment des contrôles (Switch, SegmentedControl, Stepper, RangeSlider, XYPad, ColorWheels, Knob, Rating, Chip, PinInput, SearchBox), des éléments de mise en page (DividerContainer, Grid, TabPanel, Card, Tree, ImageCanvas, AssetBrowser, PropertyGrid, Toolbar), des retours visuels (RadialProgressBar, spinners, badges), des vues de signal (Histogram, FlameGraph, DbMeter, oscilloscope, waveform, spectrum analyzer), le réglage d'image (LevelsControl, GradientEditor, SwatchPalette, ImageCompare, CropOverlay, PixelLoupe), la revue de code (DiffView), le mouvement (tweens, springs, défilement inertiel) et des éditeurs pilotés par rappels (Sequencer, CurveEditor, BezierEditor).
- **ImGui.Popups** : Boîtes de dialogue modales incluant MessageOK, Prompt, InputString/Int/Float, FilesystemBrowser et SearchableList.
- **ImGui.Styler** : Système de thèmes avec plus de 50 thèmes intégrés (Catppuccin, Tokyo Night, Gruvbox, Dracula), styles à portée limitée, couleurs de texte sémantiques et un navigateur de thèmes interactif.
- **NodeGraph** : Déclaration de métadonnées de nœuds basée sur des attributs, indépendante de l'interface utilisateur.
- **ImGui.NodeEditor** : Éditeur visuel de nœuds construit sur ImNodes avec une disposition basée sur la physique.
- **ImGui.Markdown** : Rendu markdown CommonMark construit sur Markdig.
- **SyntaxHighlighting** : Tokenizer indépendant de l'interface utilisateur pour 15 langages avec détection de langage intégrée.
- **ImGui.SyntaxHighlighting** : Rendu de code thématisé avec numéros de ligne.
- **ForceDirectedLayout** : Disposition de graphe dirigée par forces, indépendante du moteur de rendu.
- **ImGui.Probes** : Enregistrement d'éléments pour les tests.
- **ImGui.App.Testing** : Harnais de test sans interface graphique avec rastériseur CPU.
Installation via les packages NuGet. Les exemples d'utilisation montrent le démarrage de base d'une application, le mode superposition pour les HUD, l'utilisation des widgets, les popups, les thèmes, la déclaration de graphes de nœuds et le rendu markdown.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.