gimp/app/paint
Michael Natterer b53aa45a76 Changed GimpViewable preview rendering to have a context to get
2006-08-29  Michael Natterer  <mitch@gimp.org>

	Changed GimpViewable preview rendering to have a context to get
	FG/BG/whatever from. Use the context to enable dynamic FG/BG
	colors in gradients. Fixes bug #127676 and bug #352214. Addresses
	bug #128367 (doesn't fix it because there's no loading/saving and
	no GUI yet).

	* app/core/core-enums.[ch]: added enum GimpGradientColor to enable
	specifying gradient colors in terms of foreground and background.

	* app/core/gimpgradient.[ch]: added color_type members to the
	GimpGradientSegment struct and honor them in
	gimp_gradient_get_color_at(). Added GimpContext parameters to all
	functions which finally call get_color_at().

	* app/core/gimp-gradients.c: use the new method to implement the
	builtin gradients.

	* app/core/gimpviewable.[ch]: added GimpContext parameters to all
	get_preview() and get_pixbuf() functions.

	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpgradient.c
	* app/core/gimpimage-preview.[ch]
	* app/core/gimpimagefile.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/text/gimpfont.c
	* app/vectors/gimpvectors-preview.[ch]: changed ::get_preview()
	and ::get_pixbuf() implementations accordingly.

	* app/core/gimpdrawable-blend.c
	* app/core/gimppalette-import.[ch]
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/resize-dialog.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimptexttool.c
	* app/actions/gradient-editor-commands.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpbrusheditor.[ch]
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcellrendererviewable.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpclipboard.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainercombobox.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerentry.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpdnd.[ch]
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimppropwidgets.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpthumbbox.[ch]
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptooloptionseditor.c
	* app/widgets/gimpundoeditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpview-popup.[ch]
	* app/widgets/gimpview.[ch]
	* app/widgets/gimpviewablebutton.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpviewrenderer.[ch]
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrendererbrush.c
	* app/widgets/gimpviewrendererbuffer.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimage.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb: added tons of GimpContext members
	and parameters, implement GimpDocked::set_context() in many
	widgets. Pass these locally remembered contexts to GimpViewable
	functions. Did some minor cleanups on the way. There are still
	some minor FIXMEs around where the code uses a NULL context (which
	is allowed by the APIs)

	* app/pdb/drawable_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/image_cmds.c: regenerated.
2006-08-29 21:44:51 +00:00
..
.cvsignore Core/UI separation for the paint tools: 2002-02-14 19:31:16 +00:00
Makefile.am check for gthread-2.0 unless the --disable-mp option is given. 2005-02-13 15:08:08 +00:00
gimp-paint.c app/actions/tool-options-commands.c app/core/gimp.c 2006-04-07 10:51:22 +00:00
gimp-paint.h app/paint/Makefile.am removed... ...and added. 2003-09-18 13:51:10 +00:00
gimpairbrush.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpairbrush.h took the fade options out of GimpGradientOptions and added them to the new 2003-07-15 15:38:24 +00:00
gimpairbrushoptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpairbrushoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpbrushcore-kernels.h fixed rounding so that all brush kernels are created with a constant sum 2004-12-31 16:20:51 +00:00
gimpbrushcore.c minor cleanup. 2006-08-29 20:19:28 +00:00
gimpbrushcore.h app/*.[ch] converted tabs to spaces. 2006-04-12 12:49:29 +00:00
gimpclone.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpclone.h use doubles for src coordinates. Added properties for "src-drawable", 2006-03-30 14:04:53 +00:00
gimpcloneoptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpcloneoptions.h Immplement "Sample Merged" for the clone tool. Fixes bug #123627. 2005-08-28 19:17:44 +00:00
gimpconvolve.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpconvolve.h app/paint/Makefile.am app/paint/gimpbrushcore-kernels.h new GimpPaintCore 2004-05-25 20:41:09 +00:00
gimpconvolveoptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpconvolveoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpdodgeburn.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpdodgeburn.h app/paint/Makefile.am app/paint/gimpbrushcore-kernels.h new GimpPaintCore 2004-05-25 20:41:09 +00:00
gimpdodgeburnoptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpdodgeburnoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimperaser.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimperaser.h app/paint/Makefile.am app/paint/gimpbrushcore-kernels.h new GimpPaintCore 2004-05-25 20:41:09 +00:00
gimperaseroptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimperaseroptions.h removed "gboolean hard" member/property... 2003-07-14 14:50:41 +00:00
gimpheal.c Partially implemented sample-merged healing. 2006-08-15 21:15:59 +00:00
gimpheal.h Partially implemented sample-merged healing. 2006-08-15 21:15:59 +00:00
gimphealoptions.c Partially implemented sample-merged healing. 2006-08-15 21:15:59 +00:00
gimphealoptions.h Partially implemented sample-merged healing. 2006-08-15 21:15:59 +00:00
gimpink-blob.c app/*.[ch] converted tabs to spaces. 2006-04-12 12:49:29 +00:00
gimpink-blob.h added GIMP_UNDO_INK. 2005-01-14 20:13:54 +00:00
gimpink-undo.c did a global gimage -> image substitution. 2006-03-28 17:08:36 +00:00
gimpink-undo.h did a global gimage -> image substitution. 2006-03-28 17:08:36 +00:00
gimpink.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpink.h added GIMP_UNDO_INK. 2005-01-14 20:13:54 +00:00
gimpinkoptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpinkoptions.h app/paint/Makefile.am app/paint/gimpink-blob.[ch] app/paint/gimpink.[ch] 2004-05-26 15:34:45 +00:00
gimppaintbrush.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimppaintbrush.h app/paint/Makefile.am app/paint/gimpbrushcore-kernels.h new GimpPaintCore 2004-05-25 20:41:09 +00:00
gimppaintcore-stroke.c app/*.[ch] converted tabs to spaces. 2006-04-12 12:49:29 +00:00
gimppaintcore-stroke.h Fixed & cleaned up paint function registration to work without GUI. 2003-08-30 13:22:20 +00:00
gimppaintcore-undo.c did a global gimage -> image substitution. 2006-03-28 17:08:36 +00:00
gimppaintcore-undo.h did a global gimage -> image substitution. 2006-03-28 17:08:36 +00:00
gimppaintcore.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimppaintcore.h app/*.[ch] converted tabs to spaces. 2006-04-12 12:49:29 +00:00
gimppaintoptions.c Changed GimpViewable preview rendering to have a context to get 2006-08-29 21:44:51 +00:00
gimppaintoptions.h did a global gimage -> image substitution. 2006-03-28 17:08:36 +00:00
gimppencil.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimppencil.h use G_DEFINE_TYPE(). 2005-12-07 21:11:53 +00:00
gimppenciloptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimppenciloptions.h app/paint/gimppencil.h app/paint/gimppenciloptions.h 2005-08-21 17:28:18 +00:00
gimpsmudge.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpsmudge.h app/paint/Makefile.am app/paint/gimpbrushcore-kernels.h new GimpPaintCore 2004-05-25 20:41:09 +00:00
gimpsmudgeoptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpsmudgeoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpsourcecore.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpsourcecore.h use doubles for src coordinates. Added properties for "src-drawable", 2006-03-30 14:04:53 +00:00
gimpsourceoptions.c removed erroneous semicolon after G_DEFINE_TYPE macros. 2006-05-15 09:46:31 +00:00
gimpsourceoptions.h Immplement "Sample Merged" for the clone tool. Fixes bug #123627. 2005-08-28 19:17:44 +00:00
makefile.msc TILE_WIDTH is used unconditionally so always include "tile.h" WIN32 needs 2005-02-19 00:50:36 +00:00
paint-enums.c register GimpBrushApplicationMode. 2006-03-27 15:14:36 +00:00
paint-enums.h register GimpBrushApplicationMode. 2006-03-27 15:14:36 +00:00
paint-types.h Fixed incomplete core/ui separation of paint tools and paint methods: 2005-12-27 18:57:01 +00:00