brushes and brush engines
C. Boemann
cbr at boemann.dk
Tue Mar 18 21:00:08 CET 2008
from a quick look i think i sounds like a good plan
I suggest KisStamp and KisTipEngine
best regards
Casper
----- Original Message -----
From: "Boudewijn Rempt" <boud at valdyas.org>
To: <kimageshop at kde.org>
Sent: Tuesday, March 18, 2008 2:03 PM
Subject: brushes and brush engines
> Ok... This started because I wanted to clean up the tablet settings
> for the brush/smudge paintop a biti and started coding an extensible
> paintop settings dropdown to replace the current size/opacity/darken
> toolbar. Then we discussed confusing naming on irc and I suddenly hit
> by a flash of lightning.
>
> Current situation:
>
> * KisBrush and friends: determine the "tip", "stamp", "footprint" or
> "dab" for some paintops. There is always one active KisBrush, even
> though the paintop may not use it at all. Brushes are selected from
> a tabbed drop-down from a toolbar.
>
> * KisPaintop: these are the actual brush engines. Krita can have many
> different brush engines. Some use brushes, others are procedural.
> Paintops can have settings that can be saved and loaded, kind of
> presets, but that are currently not visualized in the gui. Paintops are
> selected from a combobox and the settings are visualized in a toolbar.
>
> Proposal:
>
> * Rename KisBrush to KisStamp, KisTip or KisBrushTip. All derived classes
> follow suit.
>
> * Rename KisPaintop to KisBrushEngine. All derived classes follow suit.
>
> * Extend KisBrushEngineSettings (former KisPaintopSettings) with the name
> of the associated paintop and parameters like the KisBrushTip instance.
>
> * Remove the current brush button from the toolbar
>
> * Replace it with a toolbar showing five active "presets" -- a preset is a
> KisBrushopSettings instance.
>
> * For applicable KisBrushEngines, the settings include a particular
> KisBrushTip. KisBrushTip is no longer an independent canvas resource.
>
> * Add a dropdown that can be used to manage presets for a KisBrushEngine
>
> * Include a nice selection of default presets.
>
> * Instead of an active paintop, use an active preset. Add a secondary
> and tertiary active preset that can be selected using ctrl+freehand and
> shift-freehand (or something like that) Which preset from the
> selection-of-five is primary, secondary and tertiary can be determined
> by click+modifier on the toolbar.
>
> * The presets can be saved and will be loaded on startup again
>
> * additionally, the preset selection buttons will allow on-the-fly
> changing of the current preset through a drop-down button that shows the
> same page as the preset manager/designer
>
> Advantages:
>
> * our code becomes less confusing: I'm getting tired of having to explain
> the different between KisBrush and KisPaintop.
>
> * the ui becomes less confusing when using paintops that don't use brushes
>
> * it becomes easier to quickly switch between paintops while working.
>
> Difficulties:
>
> * a unique graphical representation of a preset for the toolbox:
> perhaps brush engine icon + a small stroke? That would make the present
> buttons
> fairly wide. And I think it's essential to show more than one brush
> preset at one time in the toolbar.
>
> * We want to have only one collection of brush tips shared by all
> brush engines that use brush tips. Besides, the autobrush brush tip is
> used outside
> the brush engines, too.
>
> * We'll look more like Photoshop than like Corel Painter after this
> change.
>
> Implementation:
>
> I'll have to make some changes in the canvas resource provider,
> the control box and add gui classes to implement the preset
> designer/manager. I've got already some code for that.
>
> By the way:
>
> It looks like the "hang" when using darken and the tablet is caused by
> the darken color transform somehow being really, really slow
>
>
> Boudewijn
>
> _______________________________________________
> kimageshop mailing list
> kimageshop at kde.org
> https://mail.kde.org/mailman/listinfo/kimageshop
>
More information about the kimageshop
mailing list