Topic: Résumé des commits du 17/09 au 22/09

On commence par du nouveau concernant le bug reporté la semaine dernière à Trolltech. Sa correction est prévue pour la version 4.4.0 de Qt. Il reste à espérer que cette dernière sorte rapidement, ce qui n'est pas gagné dans la mesure où la sortie de la version 4.3.2 est prévue avant.

Le gros morceau de la semaine, c'est le nouvel algorithme de modification des conducteurs (= lorsqu'on déplace un élément attaché à un conducteur modifié). Il n'est pas mieux que le précédent en terme de rendu graphique et de cohérence du comportement, mais il présente l'avantage par rapport à son prédécesseur de ne pas être capable de planter le programme ou la machine (du moins, pas à ma connaissance). Pour la petite histoire, l'ancien algorithme était incapable de gérer certains cas, finissait par faire une division par zéro, obtenait un résultat infini (ou très grand), demandait le dessin d'un segment de longueur infinie, ce qui remplissait la mémoire vive de l'ordinateur et empêchait la bonne exécution du programme. La solution était alors de tuer le processus et par la même occasion de perdre tout ou partie de son travail. Le nouvel algorithme est donc là non pas pour être parfait mais pour assurer la stabilité du programme.  Dans un premier temps, il vaut mieux devoir supprimer un conducteur pourri que de planter son PC.

Le reste du travail a consisté à revoir un peu l'organisation de QElectroTech afin de mieux gérer les fenêtres, éditeurs de schémas, éditeurs d'élément, barres d'outils et docks. Désormais :
-cliquer sur l'icône dans le systray réduit toutes les fenêtres de l'application
-il est possible de choisir les fenêtres à réduire dans le systray (clic droit sur l'icône ; cf screenshot) mais aussi d'ouvrir plusieurs éditeurs de schémas
-les fenêtres réduites embarquent leurs barres d'outils et leurs docks flottants avec elles

De plus, un menu permettant de choisir les docks et barres d'outils affichés a été ajouté à l'éditeur d'élément.

Et, comme d'habitude, un screenshot pour la route :
http://qelectrotech.org/screenshots/extras/new_qet_systray.png

Gray's Law of Programming:
'n+1' trivial tasks are expected to be accomplished in the same time as 'n' tasks.

Logg's Rebuttal to Gray's Law:
'n+1' trivial tasks take twice as long as 'n' trivial tasks