Thu, 28 Jul 2005

Fading Memories

Time for a little break

I'm not made for marathon coding... Casper and Thomas downed tools at 02:30 this morning, and got up around nine-is. Casper was having a fun time working on a levels widget, one loosely based on Digikam's widget, but with a more Photoshop like way of working. And Thomas has been really busy working around Qt bugs in layout management to get Krita's toolbox maximally pretty and useful. It turns out that you really shouldn't drag a toolbar that contains widgets with layout managers from docked position to docked position -- although using the context menu is fine. This morning I fixed one little bug in his code, and now it's not just pretty; it doesn't crash Krita on closing either...

(Not that there aren't problems... The tablet doesn't work, and somehow my code to lock tools and activate a dummy tool when a locked layer is entered doesn't work either. But with hackathons, I notice, the thing is to a) get agreement on direction and features, b) get the foundation for great new features done (bugfixing as a more lonely activity) and c) discuss usability. Thomas was just as surprised as Alan Horkan was that I actually listen to usability experts and may even remove features...)

Meanwhile, Michael has ported added another filter to Krita and is very busy, at this very moment, to make our crop tool really sane: all corner grabbers are now used for resizing, there are grabbers on the sides of the crop rectangle, too. Click inside the crop rectangle and move the mouse; that moves the crop rectangle. And finally, he's going to add ratio-controlled resizing of the crop rectangle. Given that a relatively large proportions of the post-release bug reports where usability requests on the crop tool, this is significant progress.

Tomorrow we're going to go through the filters and other paint device actions, trying to make sure we're completely colorspace independent.

We also discussed feature plans and direction, and came to some very cool decisions. For instance, selections and masks are very close in Krita, and if we allow to save a selection as a mask on a layer and edit it as if it were a selection we've got a significantly usability edge on anything out there. Our layer editing is very cool -- it's modeless. A selection is a mask, and a mask is a selection and you can paint a selection, but still paint on a layer with a selection... It's very intuitive. We've even got a paint can fill selection tool. (It's a plain magic wand, but now it's clear what it actually does.)

Adjustment layers have been decided up; add a selection layer to an image layer, associate it with a filter, and the selected pixels will get filtered on display. Or probably beforehand, caching may become important with this feature.

And yesterday I blogged about our separation feature, which inadvertently appears to be becoming extreme professional grade stuff.

Right! Callgrind has loaded Krita -- let's get working again!

/hacking/krita | permanent link | |


Your Comment


Name:
URL/Email: [http://... or mailto:you@wherever] (optional)
Title: (optional)
Comment:
Save my Name and URL/Email for next time
Captcha: To prevent comment spam, please retype the characters in this image:

Enter the text here: