Review Request: Add Blob Tool to Calligra
Thorsten Zachmann
t.zachmann at zagge.de
Fri Aug 31 04:53:13 BST 2012
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/106283/#review18302
-----------------------------------------------------------
Nice work. I'm impressed with how little code is needed for the stuff you have created.
There seems to be a problem generating the outline when the shape generated contains holes. See http://www.zagge.de/files/blobtool.png for a screenshot. The painting started in the bottom right corner.
When trying to paint a O there is also a problem generating the outline.
plugins/vectortools/KoBlobTool.h
<http://git.reviewboard.kde.org/r/106283/#comment14468>
If it is not needed please remove.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14469>
This is a very very hacky thing to do. The common functionality should be moved to e.g. flake so it can be reused in both parts without such a hack.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14470>
Please move to the initialization list of the constructor. Also the m_bg should be moved there.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14471>
It seems like m_stroke and m_bg are not deleted when the tool is destructed and therefore leeking memory.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14472>
If the include is needed please move it to the beginning of the file.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14473>
qDebug should only be used for your own debugging and not be committed. Either removed or use kDebug here.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14475>
The indention is wrong here.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14476>
these 2 member need to be deleted to not leak memory before asigning 0.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14474>
This leaks memory as you always generate a new KoPathShape without deleting the old one.
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14478>
how about selecting a shape and then when painting it will add to that shape and create one shape when they overlap?
plugins/vectortools/KoBlobTool.cpp
<http://git.reviewboard.kde.org/r/106283/#comment14477>
Please use only one space.
- Thorsten Zachmann
On Aug. 30, 2012, 10:59 p.m., José Luis Vergara wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/106283/
> -----------------------------------------------------------
>
> (Updated Aug. 30, 2012, 10:59 p.m.)
>
>
> Review request for Calligra, Boudewijn Rempt, Inge Wallin, C. Boemann, and Sven Langkamp.
>
>
> Description
> -------
>
> Blob tool is the name for a vector brush that creates a broad stroke that fuses with itself and with other shapes that have the same styling, thus helping to create more organic-looking vector images.
> This patch implements a very basic version of this tool, missing the ability to fuse shapes with other shapes, which I am postponing until we fix bug 297623 (see thread http://mail.kde.org/pipermail/calligra-devel/2012-August/006633.html ).
> Further details and a link to a video in blog http://pentalis.org/kritablog/?p=315
>
> Note: some dependencies (like KarbonCurveFit) need to be moved, I will post a separate review for that, because I need to discuss what directory it belongs to.
>
> I need an easy way to make clear I commit my code in either license, LGPL, GPL, or anything we need for it to fit well in our project; it's not easy to convey since files accumulate more contributors the more time passes by. Suggestions appreciated.
>
>
> Diffs
> -----
>
> plugins/CMakeLists.txt 526499f
> plugins/vectortools/CMakeLists.txt PRE-CREATION
> plugins/vectortools/KoBlobTool.h PRE-CREATION
> plugins/vectortools/KoBlobTool.cpp PRE-CREATION
> plugins/vectortools/KoBlobToolFactory.h PRE-CREATION
> plugins/vectortools/KoBlobToolFactory.cpp PRE-CREATION
> plugins/vectortools/KoVectorToolsPlugin.h PRE-CREATION
> plugins/vectortools/KoVectorToolsPlugin.cpp PRE-CREATION
> plugins/vectortools/calligravectortools.desktop PRE-CREATION
> plugins/vectortools/hi22-action-blob-tool.png PRE-CREATION
>
> Diff: http://git.reviewboard.kde.org/r/106283/diff/
>
>
> Testing
> -------
>
> Tested compilation, loading in applications Karbon and Krita, and basic functioning of the tool. It works (incompletely) as intended for a small group of use cases. Also tested speed, it needs to be faster, but is usable.
>
>
> Thanks,
>
> José Luis Vergara
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20120831/2fff9f88/attachment.htm>
More information about the calligra-devel
mailing list