[Digikam-devel] extragear/graphics/digikam/libs/widgets/imageplugins

Andi Clemens andi.clemens at gmx.net
Tue Jul 14 15:28:15 BST 2009


Hmm ok the cursor seems to work best in 32x32, and max seems to be 64x64 on 
some systems.
I guess we can't do anything... ;-(

Andi

On Tuesday 14 July 2009 10:29:44 Andi Clemens wrote:
> Really? But why is it working in Gimp and Krita?
> Ok Gimp is GTK, but Krita uses KDE / Qt, too, they don't have such
> limitations.
>
> Andi
>
> On Tuesday 14 July 2009 08:55:19 Julien Narboux wrote:
> > Hi andi
> >
> > The limitation of the size of the cursor was made on purpose. When I
> > tried a size bigger than 64 the drawing of the cursor was broken: I
> > had some artefacts. It may depend on the platform, I think 64 is a
> > limitation of x window.
> >
> > Julien
> >
> > Le 13 juil. 2009 à 23:46, Andi Clemens <andi.clemens at gmx.net> a
> >
> > écrit :
> > > SVN commit 996141 by aclemens:
> > >
> > > I would suggest to display the draw cursor all the time, so it is
> > > easier to set the correct size in the panel.
> > > Right now we show the cursor only when pressing the mouse.
> > >
> > > One question: Why do we allow to set a size of 100 in the panel for
> > > the
> > > brush size, but disallow the maximum size in the mouseMoveEvent?
> > > In there we only allow a max size of 64, which looks weird, because
> > > the
> > > mask "blob" we draw is bigger as the cursor.
> > >
> > > Is this some old, "wrong" code?
> > >
> > > Andi
> > >
> > > CCMAIL:digikam-devel at kde.org
> > >
> > > M  +7 -4      imageguidewidget.cpp
> > >
> > >
> > > --- trunk/extragear/graphics/digikam/libs/widgets/imageplugins/
> > > imageguidewidget.cpp #996140:996141
> > > @@ -720,7 +720,7 @@
> > >             d->spot.setX(e->x()-d->rect.x());
> > >             d->spot.setY(e->y()-d->rect.y());
> > >         }
> > > -        else if ((e->buttons() & Qt::LeftButton) && d->drawingMask)
> > > +        else if (d->enableDrawMask)
> > >         {
> > >             int size = d->penWidth;
> > >             if (size>64)
> > > @@ -731,9 +731,12 @@
> > >             p.drawEllipse( 0, 0, size-1, size-1);
> > >             setCursor(QCursor(pix));
> > >
> > > -            QPoint currentPos = QPoint(e->x()-d->rect.x(), e->y()-d-
> > >
> > > >rect.y());
> > >
> > > -            drawLineTo(currentPos);
> > > -            updatePreview();
> > > +            if ((e->buttons() & Qt::LeftButton) && d->drawingMask)
> > > +            {
> > > +                QPoint currentPos = QPoint(e->x()-d->rect.x(), e->y
> > > ()-d->rect.y());
> > > +                drawLineTo(currentPos);
> > > +                updatePreview();
> > > +            }
> > >         }
> > >     }
> > >     else
> > > _______________________________________________
> > > Digikam-devel mailing list
> > > Digikam-devel at kde.org
> > > https://mail.kde.org/mailman/listinfo/digikam-devel
> >
> > _______________________________________________
> > Digikam-devel mailing list
> > Digikam-devel at kde.org
> > https://mail.kde.org/mailman/listinfo/digikam-devel
>
> _______________________________________________
> Digikam-devel mailing list
> Digikam-devel at kde.org
> https://mail.kde.org/mailman/listinfo/digikam-devel




More information about the Digikam-devel mailing list