2008-02-04 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpdrawable-brightness-contrast.[ch]
* app/core/gimpdrawable-color-balance.[ch]
* app/core/gimpdrawable-colorize.[ch]
* app/core/gimpdrawable-curves.[ch]
* app/core/gimpdrawable-hue-saturation.[ch]
* app/core/gimpdrawable-posterize.[ch]
* app/core/gimpdrawable-threshold.[ch]: new files containing all
the code that was in pdb/color_cmds.c. Cleaned up and GEGL-enabled
everyting.
* tools/pdbgen/pdb/color.pdb: remove almost all code and simply call
the new functions.
* app/pdb/color_cmds.c: regenerated.
svn path=/trunk/; revision=24784
2008-01-02 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpdrawable-operation.[ch]: new files containing
gimp_drawable_apply_operation() which applies a gegl operation
to a drawable's selected pixels using shadow tiles. Will soon
be used in more places than just invert.
* app/core/gimpdrawable-invert.c: use it here, makes
gimp_drawable_invert() a 3-liner.
svn path=/trunk/; revision=24506
* app/core/Makefile.am: added GEGL_CFLAGS.
* app/core/gimpdrawable-invert.c: added an alternate GEGL code path
that can be enabled by uncommenting ENABLE_GEGL in the file.
svn path=/trunk/; revision=24483
* app/core/Makefile.am: added GEGL_CFLAGS.
* app/core/gimpdrawable-invert.c: added an alternate GEGL code path
that can be enabled by uncommenting ENABLE_GEGL in the file.
svn path=/trunk/; revision=24482
2007-11-02 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpcurve-save.[ch]
* app/core/gimpcurve-load.[ch]
* app/core/gimpcurve.[ch]: new GimpData subclass which keeps a
curve as known from the curves tool. Pretty much unfinished, but
can do everything that used to be done by base/curves.c and more.
* app/base/curves.[ch]: stripped down to plain arrays of
uchar (the actual curve) and the LUT setup function. All the rest
is done by GimpCurve now.
* app/tools/gimpcurvestool.[ch]: use an array of GimpCurves
instead of the old Curves cruft. Use Curves only for the last step
of creating the LUT. Pretty much unfinished migration here too.
* tools/pdbgen/pdb/color.pdb: use a GimpCurve here too.
* app/pdb/color_cmds.c: regenerated.
svn path=/trunk/; revision=24041
2007-06-25 Sven Neumann <sven@gimp.org>
* configure.in: removed extra check for gthread and fold it into
the GLIB and GTK checks.
* */Makefile.am: changed accordingly.
* app/main.c (main): always call g_thread_init().
svn path=/trunk/; revision=22832
2007-06-07 Sven Neumann <sven@gimp.org>
* app/text/Makefile.am
* app/core/Makefile.am
* app/tools/Makefile.am
* app/display/Makefile.am
* app/widgets/Makefile.am
* app/base/Makefile.am
* app/paint/Makefile.am
* app/plug-in/Makefile.am
* libgimp/Makefile.am
* libgimpthumb/Makefile.am
* tools/pdbgen/Makefile.am
* libgimpwidgets/Makefile.am: applied the remaining parts of the
patch from Daniel Richard G. to fix out-of-source-tree builds
(bug #444960).
svn path=/trunk/; revision=22735
2007-04-01 Michael Natterer <mitch@gimp.org>
* app/base/Makefile.am
* app/base/brush-scale.[ch]: removed these files.
* app/core/Makefile.am
* app/core/gimpbrush-scale.[ch]: added the functions here as
static utility functions. Also move the default implementations of
GimpBrush::scale_size(), ::scale_mask() and ::scale_pixmap() here,
including their utility functions.
* app/core/gimpbrush.c: remove all scale stuff and
include "gimpbrush-scale.h" instead.
(gimp_brush_get_new_preview): use GimpBrush's scale functions
instead of the now private ones. Cleanup.
(gimp_brush_scale_mask)
(gimp_brush_scale_pixmap): return a copy of the buf for
scale == 1.0.
svn path=/trunk/; revision=22213
2007-02-27 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpsubprogress.[ch]: added GimpSubProgress, an
object
that implements the GimpProgress interface and maps progress
information to a sub-range of the parent progress.
* app/core/gimpimage-scale.c (gimp_image_scale): use the new
object.
svn path=/trunk/; revision=22009
2007-01-31 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpfloatingselundo.[ch]: new undo class for
GIMP_UNDO_FS_RIGOR and GIMP_UNDO_FS_RELAX.
* app/core/gimpimage-undo-push.c: use it here.
* app/core/gimpimageundo.c
* app/core/gimpdrawableundo.c: implement GimpObject::get_memsize()
instead of fiddling with undo->size.
svn path=/trunk/; revision=21826
2007-01-31 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpdrawablemodundo.[ch]: new undo class for
GIMP_UNDO_DRAWABLE_MOD.
* app/core/gimpimage-undo-push.c: use it here.
svn path=/trunk/; revision=21824
2007-01-31 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimplayermaskpropundo.[ch]: new undo class for
GIMP_UNDO_LAYER_MASK_APPLY and GIMP_UNDO_LAYER_MASK_SHOW.
* app/core/gimpimage-undo-push.c: use it here.
svn path=/trunk/; revision=21823
2007-01-30 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpguideundo.[ch]
* app/core/gimpsamplepointundo.[ch]: new classes implementing
guide and sample point undos.
* app/core/gimpimage-undo-push.c: use them and remove all guide
and sample point code.
svn path=/trunk/; revision=21815
2007-01-29 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpchannelpropundo.[ch]: new undo class which handles
CHANNEL_REPOSITION and CHANNEL_COLOR.
* app/core/gimpimage-undo-push.c: use the new undo class and
remove the resp. code here.
svn path=/trunk/; revision=21799
2007-01-28 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimplayerpropundo.[ch]: new undo class which handles
LAYER_REPOSITION, LAYER_MODE, LAYER_OPACITY and LAYER_LOCK_ALPHA.
* app/core/gimpimage-undo-push.c: use the new undo class and
remove the resp. code here.
svn path=/trunk/; revision=21791
2007-01-28 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpitempropundo.[ch]: new undo class which handles
ITEM_RENAME, ITEM_DISPLACE, ITEM_VISIBILITY and ITEM_LINKED undos.
* app/core/gimpimage-undo-push.c: use the new undo class and
remove the resp. code here.
svn path=/trunk/; revision=21790
2007-01-28 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpimageundo.[ch]: new undo class which handles
GIMP_UNDO_IMAGE_TYPE, GIMP_UNDO_IMAGE_SIZE and
GIMP_UNDO_IMAGE_RESOLUTION.
* app/core/gimpimage-undo-push.c: use the new undo class and
remove the resp. code here.
* app/core/gimpimage-undo.h: changed include guards to not
conflict with gimpimageundo.h
svn path=/trunk/; revision=21789
2007-01-28 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpchannelundo.[ch]: new GimpItemUndo subclass which
handles all the channel undo stuff itself.
* app/core/gimpimage-undo-push.c: removed all channel undo code
here and simply create a GimpChannelUndo instance.
svn path=/trunk/; revision=21786
2006-12-10 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimptoolpresets.[ch]: added GimpToolPresets, derived
from GimpList.
* app/core/gimptoolinfo.[ch]: use the new type, renamed
member "options_presets" to "presets".
* app/actions/tool-options-actions.c
* app/actions/tool-options-commands.c
* app/core/gimptooloptions.[ch]
* app/menus/tool-options-menu.c
* app/widgets/gimptooloptionseditor.c: changed accordingly.
* app/tools/gimp-tools.c: let the GimpToolPresets object deal
with
loading and saving the presets from ${gimpdir}/tool-options.
* app/core/gimpcontainer-filter.c
* app/core/gimpdocumentlist.c
* app/core/gimplist.c
* app/text/gimpfontlist.c: use canonical property names.
2006-10-26 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimp-transform-region.[ch]: new files containing
gimp_transform_region() and all its voodoo utility functions.
* app/core/gimpdrawable-transform.c: removed the stuff here.
2006-10-20 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpdrawableundo.[ch]: new undo class for drawable undos.
This was lurking on my disk too long...
* app/core/gimpimage-undo-push.c (gimp_image_undo_push_drawable):
use it instead of implementing it manually.
* app/core/gimpimage-arrange.[ch]: added, utility function for
aligning and arranging things in an image.
* app/core/gimpitem-align.[ch}: removed, no longer needed.
* app/core/gimpimage-item-list.[ch] (gimp_image_item_list_align):
removed this function, no longer used.
* app/core/Makefile.am: changes described above.
* app/core/gimpguide.c: remove bit of cruft left accidentally.
* app/tools/gimpalignoptions.[ch]: remove "alignment type"
option, not needed at this point.
* app/tools/gimpaligntool.[ch]: numerous changes, most
importantly ability to align guides, and use them for
alignment. More work coming on this tool.
* app/core/gimpguide.c
* app/core/gimpguide.h: new files, implementing GuideGimp as a GimpObject
* app/core/Makefile.am: add new files as sources
* app/core/gimpimage-guides.h
* app/core/gimpimage-guides.c: use the new object instead of defining
GimpGuide here as a struct.
* app/core/gimpimage-crop.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-flip.c
* app/core/gimpimage-resize.c
* app/core/gimpimage-rotate.c
* app/core/gimpimage-scale.c
* app/core/gimpimage-snap.c
* app/core/gimpimage-undo-push.c
* app/core/gimpimage.c
* app/display/gimpdisplayshell-draw.c
* app/display/gimpdisplayshell.c
* app/pdb/guides_cmds.c
* app/tools/gimpmovetool.c
* app/xcf/xcf-save.c
* tools/pdbgen/pdb/guides.pdb: include "core/gimpguide.h", and use
g_object_ref/unref instead of gimp_image_guide_ref/unref.
2006-05-21 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpimage-item-list.[ch]: new files with functions to
translate, flip, rotate, transform and align a list of items
inside an undo group.
(gimp_image_item_list_get_list): returns a list of items matching
any combination of GimpItemTypeMask and GimpItemSet.
* app/core/gimpitem.[ch]: added new function gimp_item_is_in_set().
* app/core/gimpitem-linked.[ch]: use the new functions. Removed
gimp_item_linked_get_list().
* app/tools/gimpeditselectiontool.c: use
gimp_image_item_list_get_list() instead of
gimp_item_linked_get_list().
* app/core/gimpimage-resize.c
* app/tools/gimpaligntool.c: use the new functions instead of
creating and iterating the lists manually.
2006-05-18 Sven Neumann <sven@gimp.org>
* tools/pdbgen/app.pl
* tools/pdbgen/lib.pl: removed code that used to fiddles with
the
argument descriptions.
* tools/pdbgen/pdb/*.pdb: removed %%desc%% placeholder, added
some
missing argument descriptions.
* app/pdb/*_cmds.c
* libgimp/gimpdrawabletransform_pdb.c
* libgimp/gimpfloatingsel_pdb.c
* libgimp/gimpgradient_pdb.c
* libgimp/gimppainttools_pdb.c: regenerated.
* app/core/Makefile.am
* app/core/gimpparamspecs-desc.[ch] (gimp_param_spec_get_desc):
new function that creates a parameter description for the PDB.
* app/pdb/gimppdb-query.c
* app/pdb/procedural_db_cmds.c: use the new function to create
the
descriptions on the fly.
2006-05-16 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimppatternclipboard.[ch]: new GimpPattern subclass
that auto-updates its contents from gimp->global_buffer.
* app/core/gimp.c (gimp_real_initialize): add a clipboard pattern
to the pattern factory.
* app/widgets/gimpaction.c (gimp_action_set_proxy): replace the
GimpView by a new one if the viewable type changes, instead of
running into a warning (didn't happen before because this is only
used for imagefiles and patterns, which didn't have subclasses).
2006-05-16 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.[ch]: implement copy_color() and
copy_color_pixels() which copy only the color bytes into a dest
that has one byte less than src. Renamed component_pixels() to
copy_component_pixels().
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpbrushclipboard.[ch]: new GimpBrush subclass that
auto-updates its contents from gimp->global_buffer.
* app/core/gimp.c (gimp_real_initialize): add a clipboard brush to
the brush factory. Fixes bug #111082.
2006-04-29 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am (AM_CPP_FLAGS): define GIMP_APP_VERSION.
* app/core/gimp-user-install.c: use GIMP_APP_VERSION instead of
hardcoding it.
2006-03-27 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpparamspecs.[ch]: new unused files. Checked in so
they can be easily reviewed.
2005-09-04 Michael Natterer <mitch@gimp.org>
Cleaned up and fixed the order in which default tool options and
user context values are initialized, and added loading / saving of
the global user context. Fixes bug #165078.
* app/core/Makefile.am
* app/core/gimp-contexts.[ch]: new files which manage the global
contexts. Contains gimp_contexts_init/exit/load/save/clear().
* app/core/gimp.c: use the new init/exit functions instead of
implementing the stuff here.
* app/tools/gimp-tools.c: load/save/clear the user context from
here so it follows the same logic as the tool options. Reset all
tool options before loading the user context and copy the user
context's property to all tool options before loading tool
options.
* app/core/gimptoolinfo.c (gimp_tool_info_new): don't initialize
the tool options with the users context's properties. It's way too
early here and they will be overwritten later.
* app/widgets/gimpdevices.c (gimp_devices_restore): initialize all
device contexts with the user context's properties before loading
the devices and copying the active one back to the user context.
2005-07-28 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am
* app/core/cpercep.[ch]: moved cpercep from here ...
* app/base/Makefile.am
* app/base/cpercep.[ch]: ... to here.
* app/base/siox.[ch]: use the cpercep routines for RGB->LAB
conversion, gives a 20% speedup. Removed normalization which seems
redundant. Make it work for grayscale and indexed, not only RGB.
* app/core/gimpdrawable-foreground-extract.c
* app/core/gimpimage-convert.c: changed accordingly.
2005-07-10 Sven Neumann <sven@gimp.org>
* app/base/segmentator.[ch]: ported to GIMP data structures. There
are still some TODOs, smooth_mask() isn't implemented yet.
* app/core/Makefile.am
* app/core/gimpdrawable-foreground-extract.[ch]: thin wrapper around
the new segmentation algorithm.
* tools/pdbgen/pdb/drawable.pdb: added a first draft of a PDB API
for foreground extraction.
* app/pdb/drawable_cmds.c
* app/pdb/internal_procs.c
* libgimp/gimpdrawable_pdb.[ch]: regenerated.
* app/core/gimpitem-align.[ch]: newly created to
hold code for gimp_item_align().
* app/core/Makefile.am: add new files
* app/core/gimpitem.[ch]: remove code from here.
* app/tools/gimpaligntool.c: fix includes and remove
unneeded includes.
2005-05-19 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am
* app/core/gimpdashpattern.[ch]: new files with coode split out of
gimpstrokeoptions.c.
* app/core/gimpstrokeoptions.c: use gimp_dash_pattern_from_preset().
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.
2005-02-20 Manish Singh <yosh@gimp.org>
Support for custom plug-in interpreters, independent of OS support.
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpinterpreterdb.[ch]: implemented GimpInterpreterDB,
which handles registering and resolving custom plug-in interpreters.
* app/core/gimp.[ch]: keep a GimpInterpreterDB around.
* app/config/gimpcoreconfig.[ch]
* app/config/gimprc-blurbs.h
* app/dialogs/preferences-dialog.c
* app/dialogs/user-install-dialog.c
* app/widgets/gimphelp-ids.h: interpreter-path config stuff.
* app/plug-in/plug-in.c: use registered interpreters when running
plug-ins.
* themes/Default/images/preferences/Makefile.am
* themes/Default/images/preferences/folders-interp.png: just copied
folders-plug-ins.png here, need a better one.
* data/interpreters/Makefile.am: creates system interpreter directory.
* data/interpreters/default.interp: sample interpreter file info.
* data/Makefile.am
* configure.in: add data/interpreters directory.
* plug-ins/pygimp/Makefile.am: install pygimp.interp, which configures
the python interpreter to point to the python we were built with. Also
register the .py extension.
* etc/gimprc
* docs/gimprc.5.in: regenerated
2005-02-18 Sven Neumann <sven@gimp.org>
* app/core/Makefile.am
* app/core/gimpdrawable-convert.[ch]: new files holding
gimp_drawable_convert_rgb() and gimp_drawable_convert_grayscale()
moved out of gimpimage-convert.[ch].
* app/core/gimpchannel.c
* app/core/gimpimage-convert.[ch]
* app/core/gimplayer.c: changed accordingly.