Saturday, February 28, 2015

Graphos bitmap image display

Graphos is the vector-drawing application for GNUstep (and MacOS) of the GNUstep Application Project.

While it is centered on drawing bezier paths and derived shapes, I added support for copy&pasting images. While these images cannot be saved (the format doesn't support it yet) they still can be useful: since they are layered as any other object (and transparency alpha channel is honoured too), one can do interesting things as in this example:

We paste in the original image for LaternaMagica's icon. We start tracing it with simple shapes, here shown in black.


One can easily fit curves over the image, essentially doing a hand-trace. Very important is the usage of cusps and symmetric handles in bezier-paths, which will be the new feature of the upcoming Graphos release.

After a quick work, this is the first rough result:

I still need to fix some details: the display at zoom rates different than 100% doesn't work correctly with images.

Wednesday, February 25, 2015

GNUMail and TalkSoup getting back to MacOS

In the effort of peppin up and removing bitrot from TalkSoup, the GNUstep IRC client, I am doing  a native build of it on MacOS.
Apparently there was a port in the past, but it was not an Xcode build and it uses may tricks.
I have already ported the application the core and the main bundles: this pointed out many weak parts of the code and many more warnings than I was getting on GNUstep.

Soon I will be able to make a new, updated release!

The application works now much better! x86 and PPC... so I can enjoy a chat on my iBook:



Also GNUMail has progress: before running only on ppc and 10.4, now the application runs fine also on x86!
During this process I am also trying to modernize GNUMail's code gradually: the application was written for GNUstep, but the Macintosh port was port with a lot of conditional code, 10  and years ago GNUstep was less complete. A lot of these exception can now be removed. I am going to investigate each of them and remove as many of them.