Le positionnement des différentes fenêtres de Paintual, comme par exemple les outils et paramètres, devrait être de sorte qu’on n’ait pas à les faire apparaître et les disposer à chaque fois qu’on lance le programme (comme ça fonctionnait dans la version sous WinForms). J’ai donc changé le code de l’interface des fenêtres pour celui de Synergy de MixMode (voir : https://www.codeproject.com/Articles/140209/Building-a-Docking-Window-Management-Solution-in-W). J’achève quelques changements mineurs et je l’intègre à Paintual. Une option très utile que je n’avais pas dans le code actuel est l’effet tiroir (voir encerclé dans la vidéo).

Pour que Paintual se souvienne de la position des différentes fenêtres d’une session de travail à l’autre, il faut que l’interface des fenêtres puisse sauvegarder chacune des portions (image, outil, paramètres, etc.) et les reconstruire au prochain lancement de l’application. Le code de Synergy de MixMode possède une base de sérialisation/désérialisation (prendre des objets en mémoire et les transformer en fichiers, et l’inverse) qu’il me reste à étudier et intégrer à mon projet.

J’espère que c’est la dernière fois pour un petit bout de temps que je jouerai uniquement dans la portion interface pour me consacrer aux fonctionnalités.

En parallèle j’ai visionné cette série vidéo sur le “machine learning”. Des vidéos en anglais mais extrêmement bien expliqués, démystifiant les bases de cette branche de l’informatique devenue extrêmement populaire ces derniers temps.

* * *

The positioning of the different windows in Paintual, such as tools and parameters, should be automated so that we do not have to make them appear and place them every time we run the program (as it worked in the version under WinForms). So I changed the window mamagement interface code to that of MixMode’s Synergy (see: https://www.codeproject.com/Articles/140209/Building-a-Docking-Window-Management-Solution-in- W). I’m finishing a few minor changes and I’m adding it to Paintual. A very useful option that I did not have in the current code is the collapsible window effect (see circled region in the video).

For Paintual to remember the position of the different windows from one work session to the next, the window interface must be able to save each portion (image, tool, parameters, etc.) and rebuild them at the next launch of the application. The code of Synergy of MixMode offers the serialization / deserialization functionality (meaning the ability to take objects in memory and transform them into files, and the other way around) that I have to study and integrate in my project.

I hope this is the last time for some time that I play only in the interface portion of my application to focus on the features.

In parallel I watched this video series on “machine learning,” an extremely well explained series, demystifying the foundations of this branch of computing science that has lately become extremely popular.