[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice-devel
Subject:    Re: Krita features
From:       dirk.schoenberger () sz-online ! de
Date:       2004-01-14 14:31:17
Message-ID: 57412.212.185.245.5.1074090677.squirrel () mail ! sz-online ! de
[Download RAW message or body]

> On Wed, 14 Jan 2004 dirk.schoenberger@sz-online.de wrote:
>
>>
>> The problem I see is that your engine is both foreign (as in not known
>> to
>> e.g. a Qt developer) and over exposed (e.g. KisPainter provides access
>> to
>> the tiles, which IMHO are an implementation detail)
>
> It does? Are you really sure?

*blush* ;)
Seems I overlooked a private: statement for
         void tileBlt(QUANTUM *dst, KisTileSP dsttile, QUANTUM *src,
                     KisTileSP srctile, Q_INT32 rows, Q_INT32 cols,
                     CompositeOp op);
        void tileBlt(QUANTUM *dst, KisTileSP dsttile, QUANTUM *src,
                     KisTileSP srctile, QUANTUM opacity, Q_INT32 rows,
Q_INT32 cols,
                     CompositeOp op);
>
>> If you want to implement tools in your application which need access to
>> the lower details (say, more than 4 colour components), fine, provide
>> subclasses which expose these features. But make your base classes
>> compatible to the common API (QPainter, QPaintDevice), so that the tools
>> may be ported.
>
> On the other hand, interfaces are designed for a purpose, and QPainter
> isn't designed for the purpose of allowing full featured paint
> applications,
> and it would be quite hard to, for instance, shoe-horn real patterns into
> QBrush's.

Agreed. But that's what classes like KPainter are there for, additional
functionality
which is not expressable by standard QPainter.
OTOH KPainter is still QPainter source compatible, i.e. if you call things
like drawRectangle, it still compiles if you exchange QPainter by
KPainter.

Regards
Dirk




_______________________________________________
koffice-devel mailing list
koffice-devel@mail.kde.org
https://mail.kde.org/mailman/listinfo/koffice-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic