U.G.D.I. historique


Version 0.85 : 03/10/03


- FenetrePrincipale est maintenant appellée par FenetreFond, une fenêtre invisible qui est en fait la racine de tous les objets.
- Nouveaux objets Texte et Menu.
- ajouteObjetGDI centre les fenêtres par défaut.
- Les noms de skins sont changés pour être plus parlant. Plein de nouveaux types de boutons (que je remets lors du portage pour U.M.A.X. en fait :)
- Ajout de DecalageEnfonce dans SkinBouton, et des arguments decalBMPSurvol, decalBMPEnfonce, decalEnfonce au dernier constructeur de Bouton.
- Séparation de la procédure CreeTexture, pour enlever la redondance entre Graphiques.cpp et AffichageTexte.cpp. Cette procédure peut aussi créer des textures vides.
- Possibilité d'utiliser plusieurs polices.
- Quelques changements de noms pour augmenter la cohérence et le français : Affichage pour Affiche, Dessine pour Draw, les balises pseudo-html, etc.
- Quelques arguments de plus ont des valeurs par défaut.
- Les touches dans les FenetreMessage font comme un clic sur les boutons.
- Les ObjetGDI ont une propriété TransparentAuxEvenements, par exemple pour permettre à un clic de souris de les "traverser". On peut par exemple maintenant déplacer une FenetreMessage en la prenant par son texte.
- La propriété Visible des ObjetGDI fonctionne.
- Correction du calcul de largeur d'un texte avec des caractères en gras.
- Quelques autres modifications et corrections apportées lors de la ré-importation de U.G.D.I. dans U.M.A.X. (je peux enfin me remettre à mon projet d'origine !!)

Version 0.8 : 01/09/03


- Programmation d'un éditeur pour générer le code-source des fenêtres automatiquement ! C'est en plus une véritable démonstration de U.G.D.I., vu que c'est un programme indépendant et complet qui utilise sans le modifier le code de U.G.D.I., en rajoutant simplement des classes pour les différentes fenêtres. Enfin, ce programme aide au mûrissement de U.G.D.I., vu qu'il me permet de vérifier la puissance et la simplicité d'utilisation du framework : la quasi-totalité des mises à jour de U.G.D.I. ont en fait été apportées lors du développement de l'éditeur.

- Correction des bugs quand une fenêtre ne contenait aucun objet.
- Ajout des procédures DrawLigne, DrawPoint, GetTailleTexture, et des arguments facultatifs pour DrawRect et DrawCercle.
- Plus besoin de passer en paramètre le Container parent, c'est mis automatiquement par ajouteObjetGDI maintenant.
- Meilleure skinnisation des curseurs.
- Ajout de la propriété Texture à toutes les skins.
- Ajout de la propriété TroncagePleinEcran dans SSkinContainer, quelques autres corrections pour l'affichage de fenêtres en plein écran.
- Container gère maintenant les RelacheDehors comme il se doit.
- Rajout des méthodes ajouteDebutAffichageHandler et videHandlers à ObjetGDI.
- ObjetGDI.setLimites est maintenant virtual pour pouvoir contrôler les dimensions des objets, utile pour l'éditeur.
- Les boutons peuvent maintenant être créés simplement à partir d'une image quelconque, sans créer de skin correspondante.
- Correction du retour à la ligne de l'affichage de texte.
- Rajout de la procédure centre à Fenetre.

Version 0.78 : 26/08/03


- Possibilité de skinner complètement mais simplement les fenêtres, les boutons, les cases à cocher et les barres de progression, quelques exemples pour en faire la démonstration.
- Gestion avancée du multi-fenêtres.
- Possibilité d'ajouter un décalage et une zone de clip à l'affichage en cours (le clip garde les caractères de texte entiers pour l'affichage, trop compliqué sinon).
- Rajout de la classe gérant le temps et les timers, affichage du temps et du fps en version DEBUG.
- Correction de la libération des ressources.
- Correction du déplacement des fenêtres.
- Les ObjetGDI ont maintenant une propriété ADetruire pour éviter qu'une destruction au cours d'une procédure interne de l'objet (typiquement une fenêtre qui se ferme) n'entraîne un plantage, cette propriété est vérifiée dans la procédure attente() des Containers.
- Séparation des procédures Relache en Relache et RechaleEtSelectionne. Pas mal de petits remaniements dans la gestion des événements, par exemple ne pas traiter un clic droit quand le gauche est en cours, etc.
- La majorité des méthodes de Fenetre ont été déplacées vers Container.
- Affichage est maintenant une liste de handlers.

- Allez voir le Lisez-moi pour voir les problèmes qu'il reste encore.

Version 0.7 : 27/07/03



- Première version, commencée à partir du moteur GDI de U.M.A.X. 0.36.

- Les Callback de GLUT sont maintenant gérés dans un fichier à part qui les transmet à la Fenêtre principale.
- Le moteur de gestion des événements est au point, merci à François Ferrand pour m'avoir aidée avec les listes template de pointeurs de méthodes !
- Les classes Liste et Iterator sont maintenant bien ce qu'elles veulent dire, et utilisent des template.
- Les fenêtres sont maintenant des dérivées de la classe Container, elle-même dérivée de ObjetGDI. On ne peut les déplacer qu'en cliquand dans une zone définie.
- Toutes les fonctionnalités déjà présentes dans U.M.A.X. (chargement de textures et dessin 2D, affichage de texte, les objet Bouton-Image-Texte-Défilement) sont bien sûr présentes.



Copyright FL 2003