- 06 Jul, 2018 2 commits
-
-
Michael Natterer authored
and use it in the brush file plug-ins. (cherry picked from commit 8195a562)
-
Michael Natterer authored
Namespace the header structs, s/GBRUSH/GIMP_BRUSH/, s/GPATTERN/GIMP_PATTERN/. (cherry picked from commit e759ce35)
-
- 22 Dec, 2017 1 commit
-
-
Ell authored
Add support for reflecting brushes as part of their transformation. The reflection is performed as the last step of the transformation, across the vertical axis. The option to reflect the brush is not exposed in the UI, or through the PDB, but is intended to be used for linking the brush transformation to the view transformation, in the next commit.
-
- 26 Nov, 2016 1 commit
-
-
Alexia Death authored
-
- 19 May, 2016 1 commit
-
-
Michael Natterer authored
They are unreliable because every type checking cast discards them, they are useless anyway, visual clutter, added inconsistently, and generally suck. Wanted to do this a long time ago, it was a bad idea in the first place.
-
- 02 Feb, 2016 1 commit
-
-
Jehan authored
You can now set any paint tool to mirror painting relatively horizontal/vertical axis or a central point (any combination of these 3 symmetries). This has been implemented as a new multi-stroke core, where every stroke is actually handled as a multi-stroke (default of size 1). This is also the first usage of custom guides for symmetry guiding. Current version has to be activated in the playground.
-
- 16 Nov, 2014 1 commit
-
-
Alexia Death authored
-
- 15 Nov, 2014 2 commits
-
-
Alexia Death authored
This reverts commit 5a22fb57.
-
Alexia Death authored
-
- 11 Oct, 2014 1 commit
-
-
Michael Natterer authored
Add and use accessors for width, height, x_axis and y_axis.
-
- 02 May, 2012 1 commit
-
-
Michael Natterer authored
-
- 10 Sep, 2011 1 commit
-
-
Alexia Death authored
It's likely that the removed call and function were causing random drawing artefacts, but as this was once in a blue moon bug, I have just a guess to go by however, testing revealed no regressions, so pushing.
-
- 17 Apr, 2011 1 commit
-
-
Michael Natterer authored
It's types are generally known because it's already included in core-types.h.
-
- 12 Apr, 2011 2 commits
-
-
Michael Natterer authored
-
Michael Natterer authored
-
- 05 Apr, 2011 3 commits
-
-
Michael Natterer authored
such as masks and outlines. The cache is currently very stupid and only cacheds the last transformed object. Add caches to GimpBrush for its mask, its pixmap and its boundary, and remove the same caches and a ton of members from GimpBrushCore. This involves adding lots of const qualifiers because GimpBrush returns const pointers now for trasnformed stuff.
-
Michael Natterer authored
and use them in GimpBrushCore when setting/unsetting a brush. They will be used for managing some caches inside GimpBrush.
-
Michael Natterer authored
-
- 04 Apr, 2011 3 commits
-
-
Michael Natterer authored
There is infinite room for optimization, but the API and pixel-perfect functionality is there, which is step one.
-
Michael Natterer authored
as a separate commit because it reindents the entire header.
-
Michael Natterer authored
-
- 17 Jan, 2011 1 commit
-
-
Michael Natterer authored
-
- 10 Apr, 2010 1 commit
-
-
Michael Natterer authored
-
- 05 Apr, 2010 1 commit
-
-
Michael Natterer authored
and pass a context whereever needed. Fix up gimp_tool_preset_new() to actually make a copy of the context's active tool's options.
-
- 01 Jan, 2010 1 commit
-
-
Alexia Death authored
For generated brushes, dynamic input is applied on top of the set hardness as a factor. For pixmaps, it influences the amount of blur applied to the stamp. Be warned, process is slow for large pixmaps. The odd feature previously advertised as hardness is left in but disabled. If I figure out what it should be exposed as, it might be made available again.
-
- 19 May, 2009 1 commit
-
-
Michael Natterer authored
Add const to GimpCoords* params in GimpBrush::select_brush() and want_null_motio().
-
- 14 Feb, 2009 1 commit
-
-
Sven Neumann authored
2009-02-14 Sven Neumann <sven@gimp.org> Bug 99457 – Support for dynamics on tilt * app/core/gimpbrush.[ch] * app/core/gimpbrushgenerated.c * app/core/gimpbrush-transform.[ch] * app/paint/gimpbrushcore.c * app/paint/gimpsmudge.c: applied patch from Alexia Death, separates brush scaling for x and y. svn path=/trunk/; revision=28036
-
- 05 Feb, 2009 1 commit
-
-
Sven Neumann authored
2009-02-05 Sven Neumann <sven@gimp.org> Bug 520078 – Rotate brushes Applied patch from Alexia Death: * app/core/gimpbrush.[ch] * app/core/gimpbrushgenerated.c * app/core/gimpbrush-transform.[ch]: affine transformations for brushes. So far only scaling and rotation is supported. The transformation is done using nearest-neighbour. This is a regression and we need to add back interpolation before the next release. * app/paint/gimpsmudge.c * app/paint/gimppaintoptions.[ch] * app/paint/gimpbrushcore.[ch]: allow to control the brush rotation angle. * app/tools/gimppaintoptions-gui.c * app/tools/gimpbrushtool.c: added UI for controlling the brush rotation angle. * app/actions/tools-actions.c * app/actions/tools-commands.[ch]: add actions for controlling the brush rotation angle. svn path=/trunk/; revision=27987
-
- 01 Feb, 2009 1 commit
-
-
Martin Nordholts authored
Applied patch from Alexia Death that prepares brushes for arbitrary transforms by renaming stuff with 'scale' to 'transform'. Takes us one step closer to fixing bug #520078. * app/core/gimpbrush.[ch] * app/core/gimpbrushgenerated.c * app/paint/gimpbrushcore.[ch] * app/paint/gimpsmudge.c * app/core/gimpbrush-transform.[ch]: New names of * app/core/gimpbrush-scale.[ch] * app/core/Makefile.am: Update. svn path=/trunk/; revision=27975
-
- 17 Jan, 2009 1 commit
-
-
Michael Natterer authored
2009-01-17 Michael Natterer <mitch@gimp.org> * all files with a GPL header and all COPYING files: Change licence to GPLv3 (and to LGPLv3 for libgimp). Cleaned up some copyright headers and regenerated the parsers in the ImageMap plugin. svn path=/trunk/; revision=27913
-
- 14 Mar, 2007 1 commit
-
-
Martin Nordholts authored
2007-03-14 Martin Nordholts <martinn@svn.gnome.org> Made brushes upscalable by using scale_region. Downscaling still uses functions in app/base/brush-scale.c (because of better performance). Parametric brushes of course recalculates masks instead of using bitmap scaling. Fixes bug #65030. * app/core/gimpbrush.[ch]: Added a private scale_buf method which uses scale_region (with GIMP_INTERPOLATION_LINEAR) to scale its masks and pixmaps. Also added public virtual method scale_size to GimpBrush (overridden by GimpBrushGenerated) which calculates the buffer sizes for a given brush scaled with a given scale. * app/core/gimpbrushgenerated.c: Implemented the new scale_size method inherited from GimpBrush, and modified gimp_brush_generated_calc to use this helper function. * app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): Made the brush Scale-slider logarithmic. * app/paint/gimppaintoptions.c (gimp_paint_options_class_init): Changed Scale scale to [0.0, 10.0]. * app/paint/gimpbrushcore.c: (gimp_brush_core_calc_brush_size): Refactored 'get brush size' code to where it belongs, in GimpBrush-classes, and allowed scales larger than 1.0. svn path=/trunk/; revision=22113
-
- 12 Mar, 2007 1 commit
-
-
Michael Natterer authored
2007-03-12 Michael Natterer <mitch@gimp.org> * app/core/gimpbrush.[ch] * app/core/gimpbrushgenerated.c * app/tools/gimppaintoptions-gui.c * app/base/brush-scale.[ch] * app/base/temp-buf.[ch] * app/paint/gimppaintoptions.c * app/paint/gimpbrushcore.c: revert last commit. The patch needs more review and it's easier to start from quare one than have patches on top of patches. svn path=/trunk/; revision=22101
-
- 11 Mar, 2007 1 commit
-
-
Michael Schumacher authored
2007-03-11 Michael Schumacher <schumaml@cvs.gnome.org> Made brushes scalable (both up and down) by using existing scaling routines, and also refactored some brush-code. Patch by Martin Nordholts. Fixes bug #65030. * app/paint/gimpbrushcore.c: (gimp_brush_core_calc_brush_length_scale) Refactored 'get brush size' code to where it belongs, in GimpBrush-classes, and renamed gimp_brush_core_calc_brush_size to gimp_brush_core_calc_brush_length_scale. * app/paint/gimppaintoptions.c (gimp_paint_options_class_init): Changed Scale scale to [0.0, 100.0]. * app/base/temp-buf.[ch] (mask_buf_new): Change signature to also take a bpp parameter. * app/base/brush-scale.[ch]: Changed brush_scale_(mask|pixmap) to the new brush_scale_buf, which uses existing scaling routines (scale_region) instead of dedicated down-scaling only routines. * app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): Made the brush Scale-slider logarithmic. * app/core/gimpbrushgenerated.c: Implemented the new get_scaled_size method inherited from GimpBrush, and modified gimp_brush_generated_calc to use this helper function. * app/core/gimpbrush.[ch]: Added public virtual method get_scaled_size to GimpBrush, overridden by GimpBrushGenerated, which calculates the buffer sizes for a given brush scaled with a given scale. Also changed calls to brush_scale_(mask|pixmap) to the new brush_scale_buf. svn path=/trunk/; revision=22099
-
- 09 Mar, 2007 1 commit
-
-
Michael Natterer authored
2007-03-09 Michael Natterer <mitch@gimp.org> * app/core/core-types.h: include "libgimpmath/gimpmathtypes.h" instead of "libgimpmath/gimpmath.h". * app/core/gimpbrush.h * app/paint/gimppaintcore.h * app/paint/gimpperspectiveclone.h * app/text/gimptext.h * app/tools/gimptransformtool.h: include gimpvector.h and gimpmatrix.h explicitely where they are needed in public structs. * app/*/*.c * tools/pdbgen/pdb/paths.pdb: include "libgimpmath/gimpmath.h" where needed. * app/pdb/paths_cmds.c: regenerated. svn path=/trunk/; revision=22084
-
- 09 Dec, 2006 1 commit
-
-
Sven Neumann authored
2006-12-09 Sven Neumann <sven@gimp.org> * In all files, changed the standard copyright notice to say "GIMP - The GNU Image Manipulation Program".
-
- 09 Nov, 2006 1 commit
-
-
Michael Natterer authored
2006-11-09 Michael Natterer <mitch@gimp.org> Properly abstract brush scaling: * app/core/gimpbrush.[ch]: added virtual functions GimpBrush::scale_mask() and ::scale_pixmap() and default implementations which call the functions in base/brush-scale.c. * app/core/gimpbrushgenerated.c: factored out brush calculation to an internal utility function and call that function from ::dirty() and from the new ::scale_mask(). * app/core/gimpbrushcore.c: use gimp_brush_scale_mask/pixmap() instead of using the lowlevel scale functions directly. Fixes the uglyness that we were scaling generated brushes instead of simply recalculating them in the right size.
-
- 08 Jun, 2005 1 commit
-
-
Sven Neumann authored
2005-06-08 Sven Neumann <sven@gimp.org> Removed "stingy-memory-use" all over the place. This feature was really not that useful anymore. The GUI for the preference option was already removed for GIMP 2.2. Fixes bug #306617. * app/config/gimpbaseconfig.[ch]: set IGNORE flag on "stingy-memory-use". * app/config/gimpcoreconfig.h: added a comment that the font_path_writable variable is unused. * app/base/temp-buf.[ch]: removed code that used to deal with swapping temp-bufs to disk. * app/base/base.c: made base_config a static variable. * app/core/gimpdata.[ch] * app/core/gimpdatafactory.[ch]: removed stingy_memory_use parameter from data construction methods. * app/core/gimp-gradients.c * app/core/gimpbrush-load.[ch] * app/core/gimpbrush.[ch] * app/core/gimpbrushgenerated.[ch] * app/core/gimpbrushpipe.[ch] * app/core/gimpcontext.c * app/core/gimpgradient-load.[ch] * app/core/gimpgradient.[ch] * app/core/gimppalette-import.c * app/core/gimppalette.[ch] * app/core/gimppattern.[ch]: changed accordingly.
-
- 15 Apr, 2005 1 commit
-
-
Michael Natterer authored
2005-04-15 Michael Natterer <mitch@gimp.org> Added loading of Photoshop brushes. Fixes bug #163047: * app/core/Makefile.am * app/core/gimpbrush-load.[ch]: new files holding all brush loading code. Added .abr loader based on a patch by Adrian Likins. Didn't add a new brush subclass as in the original patch, but only a loading function which loads the brushes into standard GimpBrush objects. Did misc fixes to the code, needs further cleanup. * app/core/gimpbrush.[ch]: removed brush loading code here. * app/core/gimpbrushpipe.c: changed #includes accordingly. * app/core/gimp.c (gimp_real_initialize): register the new load functions and their extensions with the brush factory.
-
- 26 Jul, 2004 1 commit
-
-
Michael Natterer authored
2004-07-26 Michael Natterer <mitch@gimp.org> * app/core/gimpdatafactory.h: added "gboolean writable" to the GimpDataFactoryLoaderEntry struct. Return a GList* instead of GimpData* from GimpDataLoadFunc so it's possible to load more than one data object from one file. * app/core/gimpdatafactory.c (gimp_data_factory_load_data): changed accordingly: add all items of the returned lists to the data factory. Make the data object writable only if it's in the writable path *and* its loader entry says it's a writable format *and* the returned list contains exactly one element. * app/core/gimp.c (gimp_real_initialize): declare all loader entries as writable where we have code to read and write exactly one object per file; all others are not writable. * app/core/gimpbrush.[ch] * app/core/gimpbrushgenerated.[ch] * app/core/gimpbrushpipe.[ch] * app/core/gimpgradient-load.[ch] * app/core/gimppalette.[ch] * app/core/gimppattern.[ch] (all load functions): return a list containing the loaded object instead of the object itself.
-
- 02 Dec, 2002 1 commit
-
-
Michael Natterer authored
2002-12-02 Michael Natterer <mitch@gimp.org> * app/core/gimpdata.[ch]: use GError for reporting load/save errors. Added gimp_data_error_quark() and a GimpDataError enum. Made simple virtual functions out of save(), get_extension() and duplicate() because they don't need to be signals. * app/core/gimpbrush.[ch] * app/core/gimpbrushgenerated.[ch] * app/core/gimpbrushpipe.[ch] * app/core/gimpgradient.[ch] * app/core/gimppalette.[ch] * app/core/gimppattern.[ch]: changed accordingly. Set data->dirty to FALSE in each _load() function. * app/core/gimpdatafactory.[ch]: report GError messages here. Changed the ugly factory->path pointer location hack to factory->path_property_name and get the path from factory->gimp->config. Added gimp_data_factory_data_duplicate() implementation which was already declared in the header. * app/core/gimp.c: pass the path property name to gimp_data_factory_new(). * app/widgets/gimpdatafactoryview.c: removed the duplicate implementation and call gimp_data_factory_data_duplicate(). * app/core/gimpgradient.[ch]: added gimp_gradient_save_as_pov(). * app/gui/gradients-commands.c: removed save_as_pov implementation and call gimp_gradient_save_as_pov().
-