Modifications effectuees pour la version xradar 2b1 =================================================== Voici ci-dessous la liste chronologique des corrections qui ont ete apportees au widget radar entre la version 2a1 et 2b1. Ces modifications sont decrites module par module et sont volontairement plus detaillees que necessaire pour un simple utilisateur afin de fournir une base pour les gens travaillant a partir des sources. Actions : --------- * 1996/11/26 10:43:13 Corrige une erreur de conception (ou d'implementation c'est selon) : lorsque l'on entre dans un objet par une partie qui n'est pas sensible il ne faut pas generer d'enter dans l'objet. Il faut le generer quand l'on transite dans une partie sensible. Le pendant est vrai pour la sortie. Dans AddToPickedItems, change le type de distance en double pour ameliorer la precision. * 1996/11/20 15:16:18 Remplace dans RubberHandler et DragHandler la structure xbutton par xmotion, puisque seul des MotionEvents peuvent etre traites. Test dans les memes fonctions si l'evenement vient du meme screen que celui hebergeant la fenetre. Dans le cas present pusqu'un grab actif du pointeur est effectue on peut avoir des evenements en provenance d'un autre screen avec des coordonnees incorrectes. * 1996/10/23 11:06:59 Remplace un Cardinal par un int dans une specification de partie d'item. Le type a ete change en int et tout n'a pas suivi. Arc : ----- * 1996/10/23 11:48:58 Corrige un probleme dans Pick Si le rayon de l'arc est nul. Hypot degage puisque le denominateur est nul. Draw : ------ * 1996/11/20 10:56:59 Creation d'un cache de bitmap de gris pour les reliefs. L'absence de bitmaps pour chaque display/screen provoquait une erreur X lors de l'utilisation des reliefs dans un contexte multi-display. Correction de l'ajout d'un relief au cache : on alloue un cache d'objets et on ajoute un pointeur sur l'objet. d'un bug dans la gestion du cache Suppression d'une perte de memoire lors de l'ajout au cache de reliefs. En fait cette correction est rendue necessaire par la correction precedante. Geo : ----- * 1996/10/25 13:35:47 Remplacement de fmod par une macro fbound de maniere a ne plus exploser sur les grands facteurs d'echelle. Le fmod corrigeait mal le probleme puisqu'il ramenait a zero au lieu de maintenir la coordonnee au max. Item : ------ * 1996/11/26 10:44:35 Change le type de distance dans AddToPickedItems en double. * 1996/11/20 12:42:39 Destruction du tableau de fields quand on detruit un item. Ce bug cause potentiellement une enorme perte de memoire. Mise en concordance de la methode Clone avec Item. La representation des objets utilisee par Init repond au nouveau schema et celle de Clone a l'ancien. Resultat les champs crees par Clone ne sont pas correctement initialises et vont provoquer un gros probleme lors de la destruction de l'objet (maintenant que l'on desalloue correctment le tableau de champs). * 1996/10/23 09:26:39 Supprime un test sur le nombre de points de connexions dans DisconnectDependentItems (Item.c) qui empechait la desallocation des macros. Elles n'ont pas de points de connexion malgre le fait qu'elles sont attachables. Makefile : ---------- * 1996/11/07 14:31:14 Ajout de la possiblite de faire une bibliotheque dynamique. * 1996/09/20 13:03:30 Suppression de Gesture.c et Gesture.h Map : ----- * 1996/10/23 11:14:30 Modification de type dans ComputeCoordinates, radius_w devient unsigned int pour correspondre au proto de MapInfoGetArc. * 1996/10/23 08:47:18 Modifie en profondeur la gestion interne des MapInfos. Le redimensionnement des listes locales est maintenant realise a chaque ComputeCoordinates ce qui ote toute possibilite de difference entre elles et le MapInfo. Le prix a payer est un (petit) ralentissement de cette fonction. Le benefice est qu'il est maintenant optionnel de Faire un RadarConfigureItem sur l'attribut RadarMapInfo quand le MapInfo a ete modifie (il est toujours obligatoire si on change de MapInfo, bien sur). * 1996/09/20 10:01:56 Corrige un bug dans l'elimination des arcs invisibles on n'utilisait pas la bbox d'intersection calculee mais la bbox de l'arc. Il n'etait donc jamais rejete. MiniStrip : ----------- * 1996/11/20 14:49:12 Correction de l'incoherence de traitement des LabelFormats dans MiniStrip, Macro, Track, WayPoint. Ils n'etaient pas dupliques a la creation, entrainant la destruction du LabelFormat par defaut pour la classe des la premiere configuration sur le LabelFormat. Ils n'etaient pas dupliques au clonage. Ils n'etaient pas liberes a la destruction de l'item. * 1996/10/25 09:21:56 Ajoute une liberation du LabelFormat avant reconfiguration du LabelFormat. Mosaic : -------- * 1996/11/07 14:33:15 Correction d'un bug provoquant des lectures hors limites. Amelioration substantielle de la performance de dessin. * 1996/10/24 13:37:52 Ooops! Supprime une trace parasite. * 1996/10/24 13:04:56 Corrige un bug dans la copie de la palette lors de sa configuration. Durci le traitement des tailles de palette et du tableau de couleurs. Il sera maintenant plus difficile (mais pas impossible) de tromper l'item sur les tailles. Optimisation du dessin par detection des couleurs reellement utilisees et compression des rectangles similaires adjacents sur une meme rangee. * 1996/10/23 11:18:06 Ajout d'un cast sur parametre de XtFree dans Configure. Correction des headers CVS pour Imagine. Radar : ------- * 1996/10/23 08:59:43 Modifie les entetes CVS pour les mettre en conformite avec la gestion CVS dans Imagine. * 1996/08/07 12:51:10 suppression de la compression des motions par la toolkit. suppressiom de la reception des evenements GraphicsExpose et NoExpose. Rectangle : ----------- * 1996/11/26 10:44:36 Change le type de distance dans AddToPickedItems en double. Track : ------- * 1996/11/26 10:46:17 Corrige le code du picking pour le guideur. Change le type du parametre distance de AddToPickedItems en double. * 1996/11/20 14:49:13 Correction de l'incoherence de traitement des LabelFormats dans MiniStrip, Macro, Track, WayPoint. Ils n'etaient pas dupliques a la creation, entrainant la destruction du LabelFormat par defaut pour la classe des la premiere configuration sur le LabelFormat. Ils n'etaient pas dupliques au clonage. Ils n'etaient pas liberes a la destruction de l'item. * 1996/10/25 09:25:45 Desalloue le LabelFormat lors d'une reconfiguration de l'attribut. * 1996/10/23 09:15:40 Corrige un bug sur l'attachement a gauche du guideur sur l'etiquette un && a la place d'un || empechait l'attachement.