Unfinished work for now

Boudewijn Rempt boud at valdyas.org
Thu Jul 8 21:16:53 CEST 2004

If, while hacking Krita you come across a bit that's obviously unfinished, 
then there are three possibilities: either John Califf started working on it, 
and didn't finish because he disappeared, or Patrick Julien started 
refactoring the feature, but didn't finish it before handing over Krita to 
me, or I've started the thing, and am still working on it. This is what I'm 
working on, the issues I'm having, and the order in which I want to finish:

* Selections. I started selections by making an 8-bit mask over the image, 
then decided that a QImage was a ready-made 8-bit mask, and now I've come to 
the conclusion, aided by judicious investigation of the Gimp, that I should 
use a paint device with a special color strategy (based on Cyrille's 
grayscale) for rendering. I'm still in the QImage stage, but the API in 
KisLayer to determine whether there is a selection, and wether a point is 
selected is stable. But if selections are paint devices, then our future 
iterators should work on them, too. I also need to finish the selection 
tools. The scheme I had in mind was to more or less duplicate the paint 
tools, but then let them work on selection layers, instead of the quick mask 
of Photoshop or the Gimp which I, even after reading manuals, don't 
understand at all. When selections are done, I can do the select-by-color 

* Histograms. The basic KisHistogram class is done, I only need to do some 
math, and port to the new iterators when done. When that's done, it's time to 
do code for the bar graph and the gradient bar. This is the basis for things 
like thresholding, which need the new iterators.

* Plugins. I've started moving colour spaces and tools to plugins, only from
a discussion with David Faure, I understand that I should use KTrader for 
these core services. I don't understand KTrader, but at the moment plugins 
are loaded twice for every view, which is not nice. Also, the new image box 
needs to be dynamic dependent on which colour strategy plugins are loaded.

* Variations. This is basically a fancy view on the existing color adjustment 
plugins. Need to hook up code when the new iterators are done, and to 
determine what the various photoshop options actually do.

* Full screen. This is silly: I did exactly what David Faure said, and Krita 
sill won't full-screen and back. I am baffled. Baffled as a bathroom geyser.

* CMYK. What's white in CMYK? The CMYK colour strategy doesn't work as it 
should at all. I am reading the relevant literature, but I haven't got a clue 
as to what I should do here.

* ChannelInfo. This should be extended with the bit-depth of the color 
strategy, but that can wait a bit.

Boudewijn Rempt | http://www.valdyas.org/fading/index.cgi

More information about the kimageshop mailing list