WPF (Windows Presentation Foundation) est un ensemble graphique (de la spécification jusqu’aux éléments visuels tels les boutons, fenêtres, etc.) de Microsoft. Certains disent que c’est dépassé mais pour mon projet c’est un pas en avant. La documentation en ligne est assez abondante et je peux trouver plein de réponses à mes questions. Je suis passé de WinForm à WPF lorsque je me suis rendu compte que certaines fonctionnalités seront plus facile à implémenter pour mon application. J’en ai profité, comme je l’ai mentionné dans un post précédent, pour pouvoir utiliser C++ à même l’application, ceci dans le but d’augmenter la rapidité de traitement des effets de pinceaux et de surfaces.

Mais la transition n’est pas automatique. Plusieurs segments du vieux code ne fonctionne tout simplement pas avec WPF, entre autres changements dans les unités de mesure et du threading. Ça me permet de reprendre le vieux code, petit bout par petit bout, ne conservant que ce qui fonctionne bien et simplifier l’ensemble de traitement. Est-ce que c’est recommencer à zéro ? Non, puisque déjà je peux identifier des éléments plus performants et réduire la quantité de code.

J’utilisais déjà Paintual pour effectuer certains traitements dans ma création d’images. Le vieux code existe toujours, au besoin. Mais j’aime tellement ce qui est nouveau. C’est toujours la prochaine chose, la prochaine oeuvre qui me stimule.

On m’a demandé récemment si je pensais un jour rendre ce programme accessible à tous. J’y pense mais il y a vraiment beaucoup de travail avant que ça soit un tant soit peu utilisable par qui ne connaît pas tous les rouages internes.

* * *

WPF (Windows Presentation Foundation) is a graphical subsystem (from the specification to visual elements such as buttons, windows, etc.) from Microsoft. Some say it’s outdated but for my project it’s a step forward. The online documentation is quite abundant and I can find many answers to my questions. I went from WinForm to WPF when I realized that some features will be easier to implement for my application. I took advantage of this move, as I mentioned in a previous post, to be able to use C ++ within the application, in order to increase the speed of treatment of brush and surface effects.

But the transition is not automatic. Several portions of the old code simply do not work with WPF, among others there are changes in measurement units and threading management. It allows me to take the old code, bits by bits, keeping only what works well and simplify the treatment package. Is it starting from scratch? No, because I already can identify more performant elements and reduce the amount of code, discarding what’s awkward or redundant.

I was already using Paintual as an actual tool for some effects in my image creation. The old code still exists, if necessary. But I love what’s new. It’s always the next thing, the next project that I find stimulating.

I was recently asked if I thought I would ever make this program accessible to everyone. I do think about it but there is really a lot of work before it becomes bit usable by anyone who does not know all the inner workings.

At 0:27 the note on the video says “Less processing power is required from the CPU when it comes to refresh the drawing on screen”.