From kde-kimageshop Wed Sep 30 19:45:06 2009 From: Dmitry Kazakov Date: Wed, 30 Sep 2009 19:45:06 +0000 To: kde-kimageshop Subject: Re: blur & masks Message-Id: X-MARC-Message: https://marc.info/?l=kde-kimageshop&m=125433995701223 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============0930405682==" --===============0930405682== Content-Type: multipart/alternative; boundary=001485f2774e9079400474d0c4f3 --001485f2774e9079400474d0c4f3 Content-Type: text/plain; charset=UTF-8 On Wed, Sep 30, 2009 at 11:17 PM, Boudewijn Rempt wrote: > On Wednesday 30 September 2009, Cyrille Berger wrote: > > On Wednesday 30 September 2009, Boudewijn Rempt wrote: > > > Hi, > > > > > > Dmitry asked me to look at why the blur filter doesn't work with masks, > > > and I think I've at least got a lead: it looks like none of the > > > convolution-based filters work with masks. Saving the src and dst > > > paint devices in the process() method shows that dst _is_ blurred -- > > > but there is something else going on. > > > > the blur filter absolutely need a KisTransaction to be created prior to > > applying the filter, is it the case ? (that said, without the > > kistransaction you would get garbage in the output, not nothing) > > Good point, I'll check that. > It should be placed in KisFilterMask::decorateRect(). Maybe, there are two transactions created at once? In KisMask::apply and in KisFilterMask::decorateRect? I don't have code to check atm. -- Dmitry Kazakov --001485f2774e9079400474d0c4f3 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On Wed, Sep 30, 2009 at 11:17 PM, Boudew= ijn Rempt <boud@va= ldyas.org> wrote:
On Wednesday 30 September 2009, Cyrille Berger wrote:
> On Wednesday 30 September 2009, Boudewijn Rempt wrote:
> > Hi,
> >
> > Dmitry asked me to look at why the blur filter doesn't work w= ith masks,
> > and I think I've at least got a lead: it looks like none of t= he
> > convolution-based filters work with masks. Saving the src and dst=
> > paint devices in the process() method shows that dst _is_ blurred= --
> > but there is something else going on.
>
> the blur filter absolutely need a KisTransaction to be created prior t= o
> applying the filter, is it the case ? (that said, without the
> =C2=A0kistransaction you would get garbage in the output, not nothing)=

Good point, I'll check that.

It should b= e placed in KisFilterMask::decorateRect(). Maybe, there are two transaction= s created at once? In KisMask::apply and in KisFilterMask::decorateRect? I = don't have code to check atm.





--
Dmitry Kaza= kov
--001485f2774e9079400474d0c4f3-- --===============0930405682== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ kimageshop mailing list kimageshop@kde.org https://mail.kde.org/mailman/listinfo/kimageshop --===============0930405682==--