Commit graph

60 commits

Author SHA1 Message Date
Michael Natterer 9c510759c5 Made the paint tool PDB wrappers work again (a bit at least...)
2002-02-21  Michael Natterer  <mitch@gimp.org>

	Made the paint tool PDB wrappers work again (a bit at least...)

	* app/Makefile.am: changed linking order. libtool sucks.

	* app/undo.c: check if active_tool is a GimpPaintTool before
	casting it.

	* app/paint/Makefile.am
	* app/paint/paint-types.h: added new files/types.

	* app/paint/gimppaintoptions.[ch]: new files cut out of
	tools/paint_options.h. Prefixed everything with "Gimp". There is
	still GtkWidget* cruft hanging around in the structs...

	* app/paint/gimppaintcore-stroke.[ch]: utility function
	which paints a stroke array. Needed for the PDB wrappers.

	* app/paint/gimpairbrush.[ch]
	* app/paint/gimpclone.[ch]
	* app/paint/gimpconvolve.[ch]
	* app/paint/gimpdodgeburn.[ch]
	* app/paint/gimperaser.[ch]
	* app/paint/gimppaintbrush.c
	* app/paint/gimppaintcore.[ch]
	* app/paint/gimppencil.c
	* app/paint/gimpsmudge.[ch]: added *_options_new() functions which
	create correctly initialized options structures without widgets.

	* app/tools/paint_options.[ch]: removed the options struct
	definitions and value initialisations.

	* app/tools/gimpairbrushtool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpinktool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpsmudgetool.c: changed all paint_options functions
	accordingly, s/PaintOptions/GimpPaintOptions/g etc., removed all
	#if 0'ed non_gui functions.

	* tools/pdbgen/pdb/paint_tools.pdb: use gimp_paint_core_stroke().
	We currently leak all paint_options structs created by the PDB
	wrappers, more stuff to come...

	* app/pdb/paint_tools_cmds.c: regenerated.
2002-02-21 16:02:30 +00:00
Michael Natterer dca988f74d Core/UI separation for the paint tools:
2002-02-14  Michael Natterer  <mitch@gimp.org>

	Core/UI separation for the paint tools:

	* configure.in
	* app/Makefile.am
	* app/paint/.cvsignore
	* app/paint/Makefile.am: added new directory for the paint methods
	without GUI and tools around them.

	* app/paint/paint-types.h: typedefs for this module.

	* app/paint/gimppaintcore-kernels.h
	* app/paint/gimppaintcore.[ch]: the general paint logic taken
	from GimpPaintTool.

	* app/paint/gimpairbrush.[ch]
	* app/paint/gimpclone.[ch]
	* app/paint/gimpconvolve.[ch]
	* app/paint/gimpdodgeburn.[ch]
	* app/paint/gimperaser.[ch]
	* app/paint/gimppaintbrush.[ch]
	* app/paint/gimppencil.[ch]
	* app/paint/gimpsmudge.[ch]: subclasses of GimpPaintCore,
	implementing their own paint() methods.  Needs more hacking
	to get the GtkWidget pointers out of the options structs.

	* app/tools/gimppainttool_kernels.h: removed.

	* app/tools/tools-types.h: removed the paint tool enums.

	* app/tools/gimpairbrushtool.[ch]
	* app/tools/gimpclonetool.[ch]
	* app/tools/gimpconvolvetool.[ch]
	* app/tools/gimpdodgeburntool.[ch]
	* app/tools/gimperasertool.[ch]
	* app/tools/gimppaintbrushtool.[ch]
	* app/tools/gimppainttool.[ch]
	* app/tools/gimppenciltool.[ch]
	* app/tools/gimpsmudgetool.[ch]: all paint tools are pure GUI
	things now.  PaintOptions and friends still need to be chopped up
	though...

	* app/undo.c: changed PaintUndo to GimpPaintCoreUndo, some minor
	cleanup.

	* tools/kernelgen.c: changed accordingly.

	* tools/pdbgen/Makefile.am: scan paint/paint-types.h for enums.

	* tools/pdbgen/pdb/paint_tools.pdb: hardcode "success = FALSE" for
	all paint PDB wrappers.  The non-gui stuff is completely broken.
	More commits to come...

	* app/pdb/paint_tools_cmds.c
	* tools/pdbgen/enums.pl: regenerated.
2002-02-14 19:31:16 +00:00
Michael Natterer a75c675d03 added GimpToolRegisterFunc, GimpToolRegisterCallback and
2001-11-20  Michael Natterer  <mitch@gimp.org>

	* app/tools/tools-types.h: added GimpToolRegisterFunc,
	GimpToolRegisterCallback and GimpToolOptionsNewFunc typedefs
	which are used to register tools.

	* app/tools/tools.c: put the register funcs in an array of
	GimpToolRegisterFuncs. Pass a Gimp pointer *plus* a
	GimpToolRegisterCallback (which is tool_manager_register_tool())
	to the tools' register functions.

	* app/tools/tool_manager.[ch]: added a GimpToolOptionsNewFunc to
	the parameters of tool_manager_register_tool(). Create the tool
	options here, not in each tool.

	* app/tools/paint_options.[ch]
	* app/tools/selection_options.[ch]
	* app/tools/tool_options.[ch]
	* app/tools/transform_options.[ch]: all _init() and _new()
	functions take a GimpToolInfo pointer now. The _reset() func needs
	to be set manually now.

	* app/tools/[all_tools].[ch]: changed accordingly:

	- pass GimpToolOptionsNewFuncs to the register callback.
	- don't create the tool options in the tools' _init() function.
	- removed all static tool options variables.
	- get the options from the tool system in the cases i missed
	  in my last commit.
	- added minor hacks to get rid of the static options pointer
	  in some pathological cases :) (i.e. the ink tool).
2001-11-20 23:00:47 +00:00
Michael Natterer 6ed7523052 use GimpCoords structs for cur_coords, last_coords and start_coords and
2001-11-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppainttool.[ch]: use GimpCoords structs for
	cur_coords, last_coords and start_coords and the undo struct
	instead of storing separate gdouble values.

	* app/undo.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpsmudgetool.c: changed accordingly.
2001-11-13 16:21:34 +00:00
Michael Natterer f235eabbf1 app/Makefile.am app/disp_callbacks.[ch] app/gdisplay.[ch]
2001-09-26  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/disp_callbacks.[ch]
	* app/gdisplay.[ch]
	* app/gdisplay_ops.[ch]
	* app/gximage.[ch]
	* app/image_render.[ch]
	* app/interface.[ch]
	* app/marching_ants.h
	* app/scale.[ch]
	* app/scroll.[ch]
	* app/selection.[ch]: removed.

	* app/display/Makefile.am
	* app/display/display-types.h
	* app/display/gimpdisplay-callbacks.[ch]
	* app/display/gimpdisplay-marching-ants.h
	* app/display/gimpdisplay-ops.[ch]
	* app/display/gimpdisplay-render.[ch]
	* app/display/gimpdisplay-scale.[ch]
	* app/display/gimpdisplay-scroll.[ch]
	* app/display/gimpdisplay-selection.[ch]
	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell.[ch]
	* app/display/gximage.[ch]: added here.

	* app/[many files]
	* app/gui/[many files]
	* app/tools/*
	* app/widgets/[many files]: changed accordingly. Still very
	incomplete separation of the display stuff but it at least
	compiles.

	* tools/pdbgen/pdb.pl:
	* tools/pdbgen/pdb/display.pdb: s/GDisplay/GimpDisplay/,
	s/"gdisplay.h"/"display/gimpdisplay.h"/.

	* app/pdb/display_cmds.c: regenerated.
2001-09-25 23:23:09 +00:00
Michael Natterer e2daae315b an evil temp_hack which lets GimpContext managing the active display
2001-08-14  Michael Natterer  <mitch@gimp.org>

	* app/gdisplay.h: an evil temp_hack which lets GimpContext managing
	the active display withoug including "gdisplay.h". Will go away as
	soon ad context properties are registered dynamically.

	* app/module_db.c: cleaned up the object code in preparation of
	moving it to core/.

	* app/path.c: connect to GimpImage's

	* app/core/gimpobject.[ch]: derive it from GObject, not from
	GtkObject any more (yeah :-)

	* app/core/*.c: #include <glib-object.h> instead of <gtk/gtk.h>,
	removed some remaining GtkObject-isms.

	(left in a few #include <gtk/gtk.h> where bigger changes are needed
	to get rid of the UI dependency).

	* app/core/core-types.h: #include <gdk-pixbuf/gdk-pixbuf.h> here
	temporarily.

	* app/core/gimp.c (gimp_create_display): unref the image after
	creating it's first display.

	* app/core/gimpbrush.[ch]: disabled the parts of the code which
	depend on GimpPaintTool.

	* app/core/gimpbrushgenerated.c
	* app/core/gimpbrushpipe.c: changed accordingly.

	* app/core/gimpcontext.[ch]: evil hack (see above) to manage the
	active display without including "gdisplay.h"

	* app/core/gimpimage-mask.[ch]: pass a context to
	gimage_mask_stroke() and get the current tool's PDB string from
	there.

	* app/core/gimpedit.c: changed accordingly.

	* app/core/gimpimage.c: use gimp_image_update() instead of
	gdisplays_update_full().

	* app/gui/color-area.c
	* app/gui/colormap-dialog.c
	* app/gui/dialogs-constructors.c
	* app/gui/edit-commands.c
	* app/gui/image-commands.c
	* app/gui/toolbox.c: changed accordingly (don't use Gtk methods on
	GObjects).

	* app/gui/menus.c: fix some const warnings by explicit casting.

	* app/tools/*.[ch]: ported all tools to GObject, some minor
	cleanup while i was on it.

	* app/widgets/gimpdialogfactory.[ch]: ported to GObject.

	* app/widgets/gimplayerlistview.h: added FOO_GET_CLASS() macro.

	* tools/pdbgen/app.pl: added a "widgets_eek" hack like "tools_eek"
	which inserts #include "widgets/widgets-types.h" before ordinary
	includes.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/edit.pdb
	* app/pdb/brush_select_cmds.c
	* app/pdb/edit_cmds.c: changed according to the stuff above.
2001-08-14 14:53:55 +00:00
Michael Natterer 2353c5d3e7 fix compiler warning.
2001-08-10  Michael Natterer  <mitch@convergence.de>

	* app/nav_window.c: fix compiler warning.

	* app/core/gimp.[ch]: added gimp->documents which will be an MRU
	list of GimpImagefile objects.

	* app/core/gimpcontainer.c: added some g_return_if_fail().

	* app/gui/palette-editor.c: use GtkImage instead of GtkPixmap,
	s/gtk_signal_*/g_signal_*/.

	* app/widgets/gimppreview.c: render the checkerboard only for
	channel == -1. In particular, don't render it for channel
	previews.

	* app/module_db.c
	* app/core/*.c
	* app/gui/colormap-dialog.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimperasertool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/tool_manager.c
	* app/widgets/*.c
	* libgimpwidgets/*.c: s/gtk_type_new/g_object_new/
2001-08-10 14:41:39 +00:00
Michael Natterer fdabe08cf0 DIE broken pipe, DIE 2001-08-05 16:08:19 +00:00
Michael Natterer b844c98549 removed path_to_beziersel() so this file can be safely included from
2001-07-17  Michael Natterer  <mitch@gimp.org>

	* app/path.[ch]: removed path_to_beziersel() so this file can be
	safely included from core/.

	* app/tools/gimpbezierselecttool.[ch]: added it here.

	* app/core/core-types.h: added a GimpToolOptions typedef. Removes
	deps into tools/ and will later be a core object anyway.

	* app/tools/tools-types.h: removed the ToolOptions typedef here.

	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage.c
	* app/core/gimptoolinfo.[ch]: removed deps into tools/, misc stuff.

	* app/tools/tool_manager.[ch]: some ugly temp hacks. Please ignore.

	* app/widgets/gimpdialogfactory.[ch]: added a "remember_if_open" field
	to the GimpDialogFactoryEntry so we can manage dialogs which should
	not be re-opened on startup.

	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c: register & create all editor dialog with the
	"global_dialog_factory".

	* app/gui/tool-options-dialog.c
	* app/tools/*: s/ToolOptions/GimpToolOptions/
2001-07-17 20:50:01 +00:00
Michael Natterer 1bcd3e1834 app/Makefile.am removed.
2001-07-07  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/context_manager.[ch]: removed.

	* app/app_procs.c: call tool_mananger instead of context_manager
	functions, pass "the_gimp" to some more functions.

	* app/drawable.[ch]: pass a GimpContext to drawable_fill().

	* app/errors.c: behave according to "stack_trace_mode" when using
	the debugging signal handler.

	* app/gimprc.[ch]: removed the core/ config variables.

	* app/selection.c: set the selection's state to INVISIBLE in
	selection_pause().

	* app/core/Makefile.am
	* app/core/gimpcoreconfig.[ch]: new files (the configuration
	variables used by core/).

	* app/core/gimpcontext.[ch]: removed the global contexts (user,
	default, ...) and their functions. It's no longer possible to pass
	NULL to the context functions to manipulate the current context
	(gimpcontext.c doesn't know the current context any more).

	* app/core/gimp.[ch]: added them here. The functions are now called
	gimp_[set|get]_*_context(). Added gimp_create_context() which is
	the only function to create contexts now.

	* app/gui/dialogs.[ch]
	* app/gui/gui.[ch]: pass "gimp" to all functions.

	* app/tools/tool_manager.[ch]
	* app/tools/tools.[ch]: pass "gimp" to lots of functions. Added
	the "global_tool_context" logic and the global/non-global paint
	options switching from the context_manager. Pass "gimp" to all
	tools' "register" functions.

	* app/tools/*: changed accordingly.

	* app/devices.c
	* app/disp_callbacks.c
	* app/file-open.[ch]
	* app/file-save.c
	* app/gdisplay.c
	* app/gimage.c
	* app/libgimp_glue.c
	* app/module_db.c
	* app/nav_window.c
	* app/plug_in.c
	* app/qmask.c
	* app/undo.c
	* app/base/base-config.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage.c
	* app/core/gimppalette.c
	* app/core/gimptoolinfo.[ch]
	* app/core/gimpundo.c
	* app/gui/brush-select.c
	* app/gui/channels-commands.c
	* app/gui/color-area.c
	* app/gui/dialogs-constructors.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/gradient-editor.c
	* app/gui/gradient-select.c
	* app/gui/info-window.c
	* app/gui/layers-commands.c
	* app/gui/menus.c
	* app/gui/palette-editor.c
	* app/gui/palette-import-dialog.c
	* app/gui/palette-select.c
	* app/gui/paths-dialog.c
	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/gui/test-commands.c
	* app/gui/tool-options-dialog.c
	* app/gui/toolbox.c
	* app/gui/tools-commands.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdrawablelistview.[ch]
	* app/widgets/gimpimagedock.c
	* app/widgets/gimplayerlistview.c
	* app/pdb/brushes_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/palette_cmds.c
	* app/pdb/patterns_cmds.c
	* app/pdb/procedural_db.c
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/patterns.pdb: changed accordingly: remove usage
	of gimp_context_[get|set]_*(NULL), create contexts with
	gimp_create_context(). Get the user/current context with
	gimp_get_[user|current]_context(). Added/removed access to the
	global "the_gimp" variable in some places. Get the core's config
	variables from "core_config".
2001-07-07 12:17:23 +00:00
Michael Natterer 7dacaa1ddb removed search_in_path() and the unused xstrsep().
2001-05-16  Michael Natterer  <mitch@gimp.org>

	* app/general.[ch]: removed search_in_path() and the unused
	xstrsep().

	* app/plug_in.c: added plug_in_search_in_path(), don't include
	"general.h".

	* app/gimprc.c
	* app/image_render.c
	* app/gui/convert-dialog.c
	* app/gui/palette-editor.c
	* app/gui/paths-dialog.c
	* app/pdb/paths_cmds.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptexttool.c
	* tools/pdbgen/pdb/paths.pdb: removed useless includes.
2001-05-16 18:09:45 +00:00
Michael Natterer d240f623f1 new directory app/base/
2001-05-15  Michael Natterer  <mitch@gimp.org>

	* configure.in: new directory app/base/

	* app/Makefile.am
	* app/boundary.[ch]
	* app/brush_scale.[ch]
	* app/gimpchecks.h
	* app/gimplut.[ch]
	* app/pixel_processor.[ch]
	* app/pixel_region.[ch]
	* app/pixel_surround.[ch]
	* app/temp_buf.[ch]
	* app/tile.[ch]
	* app/tile_cache.[ch]
	* app/tile_manager.[ch]
	* app/tile_manager_pvt.h
	* app/tile_pvt.h
	* app/tile_swap.[ch]: moved to base/

	* app/base/Makefile.am
	* app/base/base-types.h
	* app/base/*: new directory for the sub-object pixel maniplation
	and storage stuff. Does not include Gtk+ or anything outside
	base/. Did some cleanup in all files.

	* app/appenums.h
	* app/apptypes.h
	* app/core/gimpimage.h: removed types which are now in
	base/base-types.h.

	* app/base/base-config.[ch]
	* app/gimprc.[ch]: put the config variables for base/ to their own
	file so base/ doesn not have to include gimprc.h (does not yet
	work, i.e. the variables are un-configurable right now)

	* app/main.c: set a log handler for "Gimp-Base".

	* app/paint-funcs/Makefile.am
	* app/paint-funcs/paint-funcs.[ch]: removed the color hash which
	maps RGB to color indices because it's a totally standalone system
	which has nothing to do with the paint-funcs and introduced a
	GimpImage dependency.

	paint-funcs/ should be considered on the same sub-object
	(glib-only) level as base/, only in a different directory.

	* app/core/Makefile.am
	* app/core/gimpimage-colorhash.[ch]: put the color hash here.

	* app/gimage.c: don't invalidate the color hash here...

	* app/core/gimpimage.c: ... but in the colormap_changed() default
	inplementation. Initialize the hash in class_init().

	* tools/pdbgen/Makefile.am: scan app/base/base-types.h for enums.

	* tools/pdbgen/enums.pl: regenerated.

	* app/[lots]
	* app/core/[of]
	* app/gui/[files]
	* app/pdb/[all]
	* app/tools/[over]
	* app/widgets/[the]
	* tools/pdbgen/pdb/[place]: changed #includes accordingly. And use
	base_config->value instead of the stuff from gimprc.h.
2001-05-15 11:25:25 +00:00
Sven Neumann fdbdb390ab app/Makefile.am removed this file ...
2001-05-14  Sven Neumann  <sven@gimp.org>

        * app/Makefile.am
        * app/pixmaps2.h: removed this file ...

        * app/tools/Makefile.am
        * app/tools/icons.h: ... and readded it here with some changes.

        * app/tools/*.c: include the new icons.h file

        * app/pdb/procedural_db.[ch]: declare name as const
2001-05-14 00:04:29 +00:00
Michael Natterer d1022c34b6 app/Makefile.am removed.
2001-05-10  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/asupsample.[ch]: removed.

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/tools/Makefile.am
	* app/tools/tools-types.h: new files.

	* app/tools/gimptoolinfo.[ch]: removed.
	* app/core/gimptoolinfo.[ch]: added here.

	* libgimp/Makefile.am
	* libgimp/gimp.h
	* libgimp/gimpadaptivesupersample.[ch]
	* libgimp/gimpbilinear.[ch]: removed here...

	* libgimpcolor/Makefile.am
	* libgimpcolor/gimpcolortypes.h
	* libgimpcolor/gimpadaptivesupersample.[ch]
	* libgimpcolor/gimpbilinear.[ch]: ..and added here.

	* tools/pdbgen/app.pl
	* tools/pdbgen/pdb/paths.pdb

	* app/*.c: changed tons of #include's
2001-05-09 22:34:59 +00:00
Michael Natterer 8985b107c3 configure.in added new directory app/core/ for the core object system.
2001-05-09  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/Makefile.am: added new directory app/core/ for the core
	object system.

	* app/gimage_mask.[ch]
	* app/gimpbrush-header.h
	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.[ch]
	* app/gimpbrushpipe.[ch]
	* app/gimpchannel.[ch]
	* app/gimpcontainer.[ch]
	* app/gimpcontext.[ch]
	* app/gimpdata.[ch]
	* app/gimpdatafactory.[ch]
	* app/gimpdatalist.h
	* app/gimpdrawable-desaturate.[ch]
	* app/gimpdrawable-equalize.[ch]
	* app/gimpdrawable-invert.[ch]
	* app/gimpdrawable-offset.[ch]
	* app/gimpdrawable-preview.[ch]
	* app/gimpdrawable.[ch]
	* app/gimpgradient.[ch]
	* app/gimpimage-convert.[ch]
	* app/gimpimage-duplicate.[ch]
	* app/gimpimage-undo.[ch]
	* app/gimpimage.[ch]
	* app/gimplayer.[ch]
	* app/gimplayermask.[ch]
	* app/gimplist.[ch]
	* app/gimpmarshal.[ch]
	* app/gimpobject.[ch]
	* app/gimppalette-import.[ch]
	* app/gimppalette.[ch]
	* app/gimppattern-header.h
	* app/gimppattern.[ch]
	* app/gimpundo.[ch]
	* app/gimpundostack.[ch]
	* app/gimpviewable.[ch]: removed these files...

	* app/core/*: ...and added them here.

	* app/*.c
	* app/gui/*.c
	* app/pdb/*.c
	* app/tools/*.c
	* app/widgets/*.c
	* plug-ins/common/gbr.c
	* plug-ins/common/gih.c
	* plug-ins/common/pat.c
	* po/POTFILES.in
	* tools/pdbgen/Makefile.am
	* tools/pdbgen/enums.pl
	* tools/pdbgen/pdb.pl
	* tools/pdbgen/pdb/*.pdb: changed accordingly.
2001-05-09 02:32:03 +00:00
Michael Natterer f6f1901228 app/paint_funcs.c app/paint_funcs.h removed the old files.
2001-04-07  Michael Natterer  <mitch@gimp.org>

	* app/paint_funcs.c
	* app/paint_funcs.h
	* app/paint_funcs_simd.S: removed the old files.

	* tools/pdbgen/Makefile.am
	* app/app_procs.c
	* app/channel_ops.c
	* app/channels_dialog.c
	* app/desaturate.c
	* app/disp_callbacks.c
	* app/floating_sel.c
	* app/gimage.c
	* app/gimage_mask.c
	* app/gimpchannel.c
	* app/gimpdrawable-preview.c
	* app/gimpdrawable.c
	* app/gimpimage.c
	* app/gimplayer.c
	* app/gimplayermask.c
	* app/global_edit.c
	* app/image_map.c
	* app/image_new.c
	* app/layers_dialog.c
	* app/temp_buf.c
	* app/toolbox.c
	* app/undo.c
	* app/undo_history.c
	* app/paint-funcs/paint-funcs.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c: changed accordingly.
2001-04-07 15:58:26 +00:00
Michael Natterer eb26cf7830 app/tools/gimpairbrushtool.c app/tools/gimpdodgeburntool.[ch]
2001-04-07  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpairbrushtool.c
	* app/tools/gimpdodgeburntool.[ch]
	* app/tools/gimperasertool.c
	* app/tools/gimppaintbrushtool.[ch]
	* app/tools/gimppenciltool.c
	* app/pdb/tools_cmds.c
	* tools/pdbgen/pdb/tools.pdb: general cleanup of all paint tools we
	have so far: reordered/renamed functions to make them look the same,
	minor fixes in all files.
2001-04-07 11:01:22 +00:00
Michael Natterer 0486fdabe6 app/apptypes.h pass the ToolOptions to the ToolOptionsResetFunc instead of
2001-03-31  Michael Natterer  <mitch@gimp.org>

	* app/apptypes.h
	* app/tools/tool_options_dialog.c: pass the ToolOptions to the
	ToolOptionsResetFunc instead of a useless (void).

	* app/tools/paint_options.[ch]
	* app/tools/selection_options.[ch]: pass ToolOptions pointers here too.

	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c: changed accordingly. Removed many
	"reset" callbacks which just redirected the call to
	paint_options_reset() or selection_options_reset().
2001-03-31 20:41:39 +00:00
Michael Natterer 2824801f78 made undo_pop_paint() work again.
2001-03-31  Michael Natterer  <mitch@gimp.org>

	* app/undo.c: made undo_pop_paint() work again.

	* app/tools/gimppainttool.[ch]: store the tool ID and the tool
	type in the PaintUndo struct.

	* app/tools/gimppenciltool.c: removed unused variable.

	* app/tools/gimptool.c: removed and reordered STUB()s and cruft.
2001-03-31 17:46:59 +00:00
Michael Natterer b5e61322d4 added some help_data and tooltips.
2001-03-12  Michael Natterer  <mitch@gimp.org>

	* app/gimplayerlistview.c: added some help_data and tooltips.

	* app/tools/Makefile.am
	* app/tools/gimperasertool.[ch]: one more.

	* app/tools/gimppaintbrushtool.[ch]
	* app/tools/gimppenciltool.[ch]: made all paint tools look the same.

	* app/tools/gimppainttool.c
	* app/tools/gimptool.[ch]
	* app/tools/paint_options.c
	* app/tools/tools.c: changed accordingly.

	* pixmaps/anchor.xpm: made it a bit smaller.

	* pixmaps/refresh.xpm: replaced with the "Recurrence" icon from
	evolution.
2001-03-12 04:40:17 +00:00
Seth Burgess fadadfcf1a Added pencil back.
Modified Files:
 	app/tools/Makefile.am app/tools/gimppenciltool.h
 	app/tools/gimppenciltool.c app/tools/gimptool.c
 	app/tools/gimptool.h app/tools/paint_options.c
 	app/tools/tools.c
2001-03-11 23:28:16 +00:00
Michael Natterer 07300cf385 app/Makefile.am app/gradientP.h removed.
2001-02-10  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gradientP.h
	* app/gradient_header.h: removed.

	* app/gimpgradient.[ch]: new object -- bye bye "gradient_t"

	* app/gradients.[ch]: new files for managing the gradient list.

	* app/gradient.[ch]: containes only the gradient editor now (which
	still badly poked aroung in the GimpGradient structure).

	* app/app_procs.c
	* app/apptypes.h
	* app/devices.c
	* app/gimpcontainerlistview.c
	* app/gimpcontext.[ch]
	* app/gimpcontextpreview.[ch]
	* app/gimpdnd.[ch]
	* app/gradient_select.[ch]
	* app/indicator_area.c
	* app/palette_import.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/tools/airbrush.c
	* app/tools/blend.c
	* app/tools/paint_core.c
	* app/tools/paintbrush.c
	* app/tools/pencil.c
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb: changed accordingly, some
	changes to the preview and view stuff.

	* app/gimppreview.[ch]: removed the "context" attribute again
	because it was overkill (a simple gtk_signal-connect_object does
	the same as doing the autoconnection magic inside the GimpPreview
	object).

	* app/commands.[ch]
	* app/menus.c: example views on the gradient container.
2001-02-10 19:35:29 +00:00
Michael Natterer 7a4260da70 Makefile.am configure.in added the new library below.
2001-01-24  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* configure.in
	* gimptool.in: added the new library below.

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpchainbutton.[ch]
	* libgimpwidgets/gimpcolorarea.[ch]
	* libgimpwidgets/gimpcolorbutton.[ch]
	* libgimpwidgets/gimpdialog.[ch]
	* libgimpwidgets/gimpfileselection.[ch]
	* libgimpwidgets/gimphelpui.[ch]
	* libgimpwidgets/gimppatheditor.[ch]
	* libgimpwidgets/gimppixmap.[ch]
	* libgimpwidgets/gimpquerybox.[ch]
	* libgimpwidgets/gimpsizeentry.[ch]
	* libgimpwidgets/gimpunitmenu.[ch]
	* libgimpwidgets/gimpwidgets.[ch]
	* libgimpwidgets/gimpwidgets.def
	* libgimpwidgets/gimpwidgetstypes.h: new shared library.

	Currently there are some ugly dependencies into libgimp. These
	will be removed and go to a "libgimpglue" library which will be
	a library for functions which share a common interface between
	plug-ins and the app but have different implementations.

	Include "libgimp/gimpunit.h" from "libgimpwidgets/gimpwidgetstypes.h"
	to simulate this upcoming separation.

	* libgimp/Makefile.am
	* libgimp/gimpchainbutton.[ch]
	* libgimp/gimpcolorarea.[ch]
	* libgimp/gimpcolorbutton.[ch]
	* libgimp/gimpdialog.[ch]
	* libgimp/gimpfileselection.[ch]
	* libgimp/gimphelpui.[ch]
	* libgimp/gimppatheditor.[ch]
	* libgimp/gimppixmap.[ch]
	* libgimp/gimpquerybox.[ch]
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpunitmenu.[ch]
	* libgimp/gimpwidgets.[ch]: removed from here.

	* libgimp/gimpui.h
	* libgimp/gimpuitypes.h
	* libgimp/makefile.mingw.in
	* libgimp/makefile.msc: changed accordingly.

	* app/[all ui files]
	* app/pdb/palette_cmds.c
	* app/pdb/tools_cmds.c
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/tools.pdb: #include "libgimpwidgets/gimpwidgets.h"
	and removed useless includes.

	* app/apptypes.h: #include "libgimpwidgets/gimpwidgetstypes.h"

	* app/Makefile.am
	* plug-ins/[all makefiles which link against libgimpui]:
	link against libgimpwidgets.la

	* po-libgimp/POTFILES.in: changed file locations.
2001-01-24 22:36:18 +00:00
Michael Natterer e803beddd4 Makefile.am configure.in added stuff for the new library below.
2001-01-23  Michael Natterer  <mitch@gimp.org>

	* Makefile.am
	* configure.in
	* gimptool.in: added stuff for the new library below.

	* libgimpcolor/.cvsignore
	* libgimpcolor/Makefile.am
	* libgimpcolor/gimpcolor.h
	* libgimpcolor/gimpcolorspace.c
	* libgimpcolor/gimpcolorspace.h
	* libgimpcolor/gimpcolortypes.h
	* libgimpcolor/gimphsv.c
	* libgimpcolor/gimphsv.h
	* libgimpcolor/gimprgb.c
	* libgimpcolor/gimprgb.h: new shared library which both the app
	and plug-ins link against. The library depends only on glib.

	* libgimpcolor/gimpcolor.def
	* libgimpcolor/makefile.mingw.in
	* libgimpcolor/makefile.msc: added Win32 build files which
	definitely don't work.

	* libgimp/Makefile.am
	* libgimp/gimpcolor.[ch]
	* libgimp/gimpcolorspace.[ch]: removed.

	* libgimp/gimp.h
	* libgimp/gimpadaptivesupersample.c
	* libgimp/gimpbilinear.c
	* libgimp/gimppalette.c
	* libgimp/gimptypes.h: include the stuff from libgimpcolor.

	Plug-Ins don't need to include <libgimpcolor/gimpcolor.h>
	explicitely. LibGimp depends on libgimpcolor and thus also includes
	it's headers.

	* libgimp/gimp.def
	* libgimp/makefile.mingw.in: fiddled around with Win32 stuff...

	* app/Makefile.am: link against libgimpcolor.la

	* app/apptypes.h: include "libgimpcolor/gimpcolortypes.h"

	* app/asupsample.c
	* app/channels_dialog.c
	* app/colormap_dialog.c
	* app/commands.c
	* app/convert.c
	* app/devices.c
	* app/disp_callbacks.c
	* app/drawable.c
	* app/gimpcontext.c
	* app/gimpdnd.c
	* app/gimpimage.c
	* app/gimppalette.c
	* app/gimprc.c
	* app/gradient.c
	* app/libgimp_glue.c
	* app/palette.c
	* app/palette_import.c
	* app/qmask.c
	* app/xcf.c
	* app/tools/paint_core.c
	* app/tools/paintbrush.c
	* app/tools/pencil.c: include "libgimpcolor/gimpcolor.h" before all
	gimp includes because it's a standalone library.

	* plug-ins/FractalExplorer/Makefile.am
	* plug-ins/Lighting/Makefile.am
	* plug-ins/MapObject/Makefile.am
	* plug-ins/bmp/Makefile.am
	* plug-ins/common/Makefile.am
	* plug-ins/common/mkgen.pl
	* plug-ins/dbbrowser/Makefile.am
	* plug-ins/faxg3/Makefile.am
	* plug-ins/fits/Makefile.am
	* plug-ins/flame/Makefile.am
	* plug-ins/fp/Makefile.am
	* plug-ins/gap/Makefile.am
	* plug-ins/gdyntext/Makefile.am
	* plug-ins/gfig/Makefile.am
	* plug-ins/gflare/Makefile.am
	* plug-ins/gfli/Makefile.am
	* plug-ins/gimpressionist/Makefile.am
	* plug-ins/helpbrowser/Makefile.am
	* plug-ins/ifscompose/Makefile.am
	* plug-ins/imagemap/Makefile.am
	* plug-ins/maze/Makefile.am
	* plug-ins/mosaic/Makefile.am
	* plug-ins/pagecurl/Makefile.am
	* plug-ins/print/Makefile.am
	* plug-ins/rcm/Makefile.am
	* plug-ins/script-fu/Makefile.am
	* plug-ins/sel2path/Makefile.am
	* plug-ins/sgi/Makefile.am
	* plug-ins/webbrowser/Makefile.am
	* plug-ins/xjt/Makefile.am: add libgimpcolor.la to LDADD.

	* INSTALL: don't recommend to --disable-shared for development.

	* TODO.xml: increased some percentages, added plug-in help stuff.
2001-01-23 18:49:44 +00:00
Michael Natterer c31d2639e3 made gradient_get_color_at() use GimpRGB.
2001-01-20  Michael Natterer  <mitch@gimp.org>

	* app/gradient.[ch]: made gradient_get_color_at() use GimpRGB.

	* app/airbrush.c
	* app/blend.c
	* app/gimpcontextpreview.c
	* app/gradient_select.c
	* app/paint_core.[ch]
	* app/paintbrush.c
	* app/palette.c
	* app/pencil.c

	* app/gradients_cmds.c
	* app/gradient_select_cmds.c
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb: changed accordingly.
2001-01-20 16:28:05 +00:00
Michael Natterer 3220f9ec94 app/channel.[ch] app/drawable.[ch] app/gdisplay.[ch] app/gimpdrawable.[ch]
2001-01-14  Michael Natterer  <mitch@gimp.org>

	* app/channel.[ch]
	* app/drawable.[ch]
	* app/gdisplay.[ch]
	* app/gimpdrawable.[ch]
	* app/layer.[ch]:

	- Removed all "typedef drawable_function gimp_drawable_function".
	- Renamed all *_get_ID() functions to *_get_by_ID().
	- For symmetry reasons, renamed drawable_ID() to gimp_drawable_get_ID().
	- Removed the *_get_ID() functions of GimpLayer, GimpLayerMask
	  and GimpChannel.

	* app/airbrush.c
	* app/bezier_select.c
	* app/blend.c
	* app/brightness_contrast.c
	* app/bucket_fill.c
	* app/by_color_select.c
	* app/clone.c
	* app/color_balance.c
	* app/color_picker.c
	* app/convert.c
	* app/convolve.c
	* app/crop.c
	* app/curves.c
	* app/desaturate.c
	* app/dodgeburn.c
	* app/edit_selection.c
	* app/eraser.c
	* app/fileops.c
	* app/flip_tool.c
	* app/floating_sel.c
	* app/fuzzy_select.c
	* app/gimage.c
	* app/gimage_mask.c
	* app/gimphistogram.c
	* app/gimpimage.c
	* app/global_edit.c
	* app/histogram_tool.c
	* app/hue_saturation.c
	* app/image_map.c
	* app/ink.c
	* app/invert.c
	* app/layer_select.c
	* app/layers_dialog.c
	* app/levels.c
	* app/paint_core.c
	* app/paintbrush.c
	* app/pencil.c
	* app/plug_in.c
	* app/posterize.c
	* app/scan_convert.c
	* app/smudge.c
	* app/text_tool.c
	* app/threshold.c
	* app/transform_core.c
	* app/undo.c
	* app/undo_history.c

	* app/channel_cmds.c
	* app/channel_ops_cmds.c
	* app/color_cmds.c
	* app/display_cmds.c
	* app/drawable_cmds.c
	* app/edit_cmds.c
	* app/floating_sel_cmds.c
	* app/image_cmds.c
	* app/layer_cmds.c
	* app/parasite_cmds.c
	* app/selection_cmds.c
	* app/text_tool_cmds.c
	* app/tools_cmds.c
	* libgimp/gimpdrawable_pdb.c
	* tools/pdbgen/pdb.pl
	* tools/pdbgen/pdb/channel_ops.pdb
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/tools.pdb: changed accordingly.
2001-01-14 21:11:52 +00:00
Michael Natterer 2db8881557 app/airbrush.[ch] app/bezier_select.c app/bezier_selectP.h app/blend.[ch]
2000-12-31  Michael Natterer  <mitch@gimp.org>

	* app/airbrush.[ch]
	* app/bezier_select.c
	* app/bezier_selectP.h
	* app/blend.[ch]
	* app/boundary.h
	* app/brightness_contrast.[ch]
	* app/bucket_fill.c
	* app/by_color_select.c
	* app/clone.[ch]
	* app/color_balance.c
	* app/color_picker.c
	* app/commands.c
	* app/convolve.[ch]
	* app/crop.c
	* app/crop.h
	* app/curves.c
	* app/dodgeburn.[ch]
	* app/edit_selection.[ch]
	* app/ellipse_select.c
	* app/eraser.[ch]
	* app/flip_tool.[ch]
	* app/free_select.[ch]
	* app/fuzzy_select.[ch]
	* app/gdisplay.c
	* app/gimage.c
	* app/histogram_tool.[ch]
	* app/hue_saturation.[ch]
	* app/image_map.[ch]
	* app/ink.[ch]
	* app/iscissors.c
	* app/levels.c
	* app/magnify.[ch]
	* app/move.c
	* app/nav_window.[ch]
	* app/paint_core.[ch]
	* app/paintbrush.[ch]
	* app/path_bezier.[ch]
	* app/path_tool.c
	* app/pencil.[ch]
	* app/perspective_tool.[ch]
	* app/posterize.c
	* app/rect_select.[ch]
	* app/rotate_tool.[ch]
	* app/scale_tool.[ch]
	* app/selection.[ch]
	* app/shear_tool.[ch]
	* app/smudge.[ch]
	* app/text_tool.[ch]
	* app/threshold.c
	* app/tools.[ch]
	* app/transform_core.[ch]: removed the "gdisp_ptr" madness and
	useless casts all over the place. Introduced a "PaintState" enum
	instead of #define's. Various cleanups.
2000-12-31 04:07:42 +00:00
Michael Natterer 8d6c335f8f app/Makefile.am app/channel_pvt.h app/drawable_pvt.h app/gdisplayF.h
2000-12-29  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/channel_pvt.h
	* app/drawable_pvt.h
	* app/gdisplayF.h
	* app/gimpdrawableP.h
	* app/gimpimageP.h
	* app/layer_pvt.h
	* app/toolsF.h: removed these files.

	* app/apptypes.h
	* tools/pdbgen/enums.pl: added tons of opaque typedefs and enums.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/display.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/tools.pdb
	* app/*: chainsaw #include cleanup:

	- Never (never!!) include stuff in header files except where we
	  need access to structures' contents (like derived objects).
	- Added prototypes and proper formating in many files.
	- The #include order in *all* *.c files is as follows:

	#include "config.h"

	#include <system stuff>

	#include <gtk/gtk.h>

	#include "apptypes.h"

	#include "gimp stuff"

	#include "libgimp stuff"

	#include "libgimp/gimpintl.h"

	By following this scheme we can easily see a file's dependencies
	from it's #include's and can grep for the inclusion to find out
	where a file is used.

	* tools/pdbgen/app.pl: changed to follow the include scheme above.

	* libgimp/Makefile.am
	* libgimp/gimpuitypes.h: new file, included from libgimp/gimpui.h
	and from app/apptypes.h.

	* libgimp/gimpcolorbutton.[ch]
	* libgimp/gimpdialog.[ch]
	* libgimp/gimphelpui.[ch]
	* libgimp/gimpparasite.[ch]
	* libgimp/gimppatheditor.[ch]
	* libgimp/gimpprotocol.c
	* libgimp/gimpquerybox.[ch]
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimptypes.h
	* libgimp/gimpui.h
	* libgimp/gimpunit.h
	* libgimp/gimpunitmenu.[ch]
	* libgimp/gimpwidgets.[ch]: changed accordingly.

	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/gdyntext/message_window.c
	* plug-ins/imagemap/imap_default_dialog.c
	* plug-ins/imagemap/imap_file.c: these files used to include
	"libgimp/gimpui.h" without including "libgimp/gimp.h". This is
	no longer possible because the libgimpui headers don't inlcude
	"libgimp/gimpunit.h" any more.
2000-12-29 15:22:01 +00:00
Sven Neumann 3cff8419db Jens Lautenbacher <jtl@gimp.org>
2000-12-18  Sven Neumann  <sven@gimp.org>
	    Jens Lautenbacher <jtl@gimp.org>

	* app/Makefile.am

	* app/gimpbrushlistP.h
	* app/gimpbrushpipeP.h
	* app/gimpobjectP.h: removed these three files

	* app/parasitelistP.h
	* app/channels_dialog.c
	* app/docindex.c
	* app/gimpdrawable.c
	* app/gimpdrawableP.h
	* app/gimpimage.c
	* app/gimpimageP.h
	* app/gimplist.[ch]
	* app/gimpobject.c
	* app/gimpobject.h
	* app/gimpsetP.h: changed according to header removal

	* app/airbrush.c
	* app/brush_select.[ch]
	* app/brushes_cmds.c
	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.[ch]
	* app/gimpbrushlist.[ch]
	* app/gimpbrushpipe.[ch]
	* app/gimpcontextpreview.c
	* app/paint_core.c
	* app/paintbrush.c
	* app/pencil.c
	* tools/pdbgen/pdb/brushes.pdb: Big Brushes Cleanup.

	The GimpBrush* object hierarchy and the file formats were broken by
	"design". This made it overly difficult to read and write pixmap
	brushes and brush pipes, leading to the situation that The GIMP was
	not able to read it's very own file formats. Since the GimpBrush
	format did support arbitrary color depths, the introduction of a
	file format for pixmap brushes was unnecessary.

	The GimpBrushPixmap object is dead. GimpBrush has an additional
	pixmap temp_buf and handles pixmap brushes transparently. The file
	format of pixmap brushes is not any longer a grayscale brush plus
	a pattern, but a simple brush with RGBA data. The old brushes can
	still be loaded, but the .gpb format is deprecated.

	GimpBrushPipe derives from GimpBrush. The fileformat is still a text
	header, followed by a number of brushes, but those brushes are stored
	in the new GimpBrush format (no pattern anymore). The pipe does not
	care about the depth of the contained GimpBrushes, so we get
	grayscale BrushPipes for free. Since the brush loader still loads the
	old format, old .gih files can also still be loaded.

	Since the brushes in the GimpBrushPipe do not any longer contain a
	pointer to the pipe object, we do only temporarily switch brushes
	in the paint_core routines. This is not very elegant, but the best
	we can do without a major redesign.

	* app/patterns.[ch]: changed the loader to work with a filedescriptor
	instead of a filehandle to make it work with the new brush loading
	code.

	* plug-ins/common/.cvsignore
	* plug-ins/common/Makefile.am
	* plug-ins/common/plugin-defs.pl
	* plug-ins/common/gih.c: new plug-in that saves GIH files in the
	new format (loader will follow soon)

	* plug-ins/common/gpb.c: removed since Pixmap Brushes are no longer
	supported as a special file format.

	* plug-ins/common/gbr.c: load and save brushes in the new brush format
	which allows RGBA brushes too.

	* plug-ins/common/pat.c: load and save grayscale patterns too
2000-12-18 15:14:08 +00:00
Sven Neumann dfa2bed505 Last-minute cleanup:
2000-12-16  Sven Neumann  <sven@gimp.org>

	Last-minute cleanup:

	* app/gimpdrawableF.h
	* app/gimphistogramF.h
	* app/gimpimageF.h
	* app/gimplistF.h
	* app/gimplutF.h
	* app/gimpobjectF.h
	* app/gimpsetF.h
	* app/layerF.h
	* app/parasitelistF.h: removed these files

	* app/Makefile.am
	* tools/pdbgen/Makefile.am: changed accordingly

	* app/[almost every file]: include cleanup
2000-12-16 21:37:03 +00:00
Michael Natterer c73b233f8a app/color_select.c app/colormaps.[ch] removed unused global variables
2000-04-26  Michael Natterer  <mitch@gimp.org>

	* app/color_select.c
	* app/colormaps.[ch]
	* app/context_manager.c: removed unused global variables
	[foreground|background]_pixel and [old|new]_color_pixel.

	Initialize the colormap and visual stuff with GdkRGB instead of
	GtkPreview functions (which are deprecated).

	* app/[62 files]: removed #include's (started with colormaps.h and
	couldn't stop). Also ordered them consistently and did some small
	unrelated cleanups.
	Removed variuos <stdlib.h> et.al. but checked the files carefully
	before doing so. If I was too radical and you get warnings on your
	platform, please flame me or just put them back :)
2000-04-27 17:27:28 +00:00
Sven Neumann c9482821ab mostly header cleanup and i18n
--Sven
2000-01-31 23:59:05 +00:00
Michael Natterer fbfdf4b309 app/Makefile.am removed.
2000-01-14  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/tool_options_ui.h: removed.

	* app/tool_options.c
	* libgimp/gimpwidgets.[ch]: moved some more ui utility functions
	to libgimp.

	* app/airbrush.c
	* app/blend.c
	* app/bucket_fill.c
	* app/channel_ops.c
	* app/clone.c
	* app/color_picker.c
	* app/convolve.c
	* app/crop.c
	* app/dodgeburn.c
	* app/eraser.c
	* app/file_new_dialog.[ch]
	* app/flip_tool.c
	* app/image_new.[ch]
	* app/ink.c
	* app/layers_dialog.c
	* app/magnify.c
	* app/measure.c
	* app/paintbrush.c
	* app/pencil.c
	* app/smudge.c
	* app/text_tool.c
	* app/tool_options.c
	* app/transform_tool.c
	* app/xinput_airbrush.c: use the libgimp functions (esp. the radio
	button group constructor), some code cleanup.

	* plug-ins/common/csource.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/diffraction.c
	* plug-ins/common/jpeg.c
	* plug-ins/common/png.c
	* plug-ins/unsharp/unsharp.c: more plugin ui tuning.

	* plug-ins/unsharp/Makefile.am
	* plug-ins/unsharp/dialog_f.[ch]
	* plug-ins/unsharp/dialog_i.[ch]: removed.
2000-01-14 12:41:00 +00:00
Sven Neumann d70a75c486 app/airbrush.c app/convolve.c app/dodgeburn.c app/paint_options.h
* app/airbrush.c
        * app/convolve.c
        * app/dodgeburn.c
        * app/paint_options.h
        * app/paintbrush.c
        * app/pencil.c
        * app/smudge.c
        * app/tool_options.c: cleaned up pressure sensitivity for paint
        tools. I had to rename Pressure to Rate in a few tools to avoid
        confusion with the Pressure option that applies to the brush.

        * app/gimplut.c: indentation, no changes

--Sven
1999-11-13 01:02:27 +00:00
Michael Natterer a74d52fbbf Use the context almost everywhere. 1999-10-26 18:27:27 +00:00
Sven Neumann 831b75e301 Correct scaling of brush pipes and pixmap brushes.
--Sven
1999-09-09 19:11:38 +00:00
Sven Neumann 181c66985a Sorry for breaking the freeze, but I had these almost ready for weeks now...
--Sven
1999-09-09 01:47:54 +00:00
EDT 1999 Adrian Likins 5e64804c4b app/gimpbrushpip.[ch] app/airbrush.c app/pencil.c fix pencil tool for use
Wed Sep  1 00:56:37 EDT 1999 Adrian Likins <adrian@gimp.org>

        * app/gimpbrushpip.[ch]
        * app/airbrush.c
        * app/pencil.c
        * app/paintbrush.c: fix pencil tool for use with
           pixmaps again
1999-09-01 06:02:08 +00:00
EDT 1999 Adrian Likins 99f35577ea add a "Use Pressure" check button to the options so that pressure
Tue Aug 31 01:13:13 EDT 1999 Adrian Likins <alikins@redhat.com>

        * app/pencil.c: add a "Use Pressure" check button to the options
        so that pressure sensitivy can be disabled. Suggested by
        Tuomas Kuosmanen  <tigert@gimp.org>.
1999-08-31 06:13:30 +00:00
Tor Lillqvist 387002c04b Add a flags field and corresponding type ToolFlags to PaintCore. The only
1999-08-27  Tor Lillqvist  <tml@iki.fi>

* app/paint_core.h: Add a flags field and corresponding type
ToolFlags to PaintCore. The only flag bit defined so far is
TOOL_CAN_HANDLE_CHANGING_BRUSH, which those tools who don't mind
if the brush changes while painting (as in the case of pixmap pipe
brushes).

* app/paint_core.c: Test above flag before calling the brush's
select_brush method.

* app/airbrush.c
* app/paintbrush.c
* app/pencil.c: Set above flag.

* app/makefile.{cygwin,msc}: Add latest additions.
1999-08-26 21:33:58 +00:00
Tor Lillqvist 868bdfff44 Overhaul of pixmap brushes and pipes: No separate pixmap pipe
brush tool any longer. The paintbrush, airbrush and pencil
tools, which already knew how to handle the single-pixmap
brushes now also handle the pipes as well.

* app/pixmapbrush.{h,c}
* app/gimpbrushpixmap.{h,c}: Removed these files.

* app/Makefile.am
* app/makefile.{cygwin,msc}: Remove from here, too.

* app/gimpbrushpipe.{h,c}: Total overhaul.

* app/paint_core.h
* app/apptypes.h: Some more types moved to apptypes.h

* app/context_manager.c
* app/tool_options.c
* app/tools.c
* app/toolsF.h: Remove PIXMAPBRUSH tool.

* app/gimpbrush.h: New method: select_brush. Used to change the
brush in paint_core, for pipe brushes.

* app/gimpbrush.c: Add gimp_brush_select_brush, which is dummy for
the normal brushes (returns the same brush).

* app/paint_core.c: Call the brush's select_brush method to get a
potential new brush before calling the paint_func.

* app/gimpbrushlist.c: Various changes related to the pixmap and
pipe overhaul.

* app/airbrush.c
* app/pencil.c: Reorder code a bit in the tool motion function to
avoid executing unnecessary code in the case of a pixmap brush.

Other changes in the same commit:

* app/install.c: Make quote_spaces extern.

* app/appenv.h: Declare it.

* libgimp/gimpui.def: Add missing entry points.

* libgimp/makefile.{cygwin,msc}: Add missing objects to gimpui.
1999-08-26 00:54:30 +00:00
Michael Natterer 311c83b0a4 app/Makefile.am new file containing the dnd data definitions.
1999-08-19  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/Makefile.am
	* app/gimpdnd.h: new file containing the dnd data definitions.

	* app/disp_callbacks.[ch]
	* app/interface.c: drop layers on the toolbox to create a new
	image and on the display to copy it to the image's layer stack.

	* app/layers_dialog.c: drop layer on the "New" button to create an
	empty layer with the dropped layer's properties, to "Duplicate" to
	duplicate it and on the trashcan to delete it.
	Thanks to Andy for the ultra-cool dnd preview pixmap patch.

	* app/layer.[ch]
	* app/undo.c: renamed layer_mask() to layer_get_mask(). Prototyped
	some function headers.

	* app/disp_callbacks.c: Wheelmouse stuff: Shift+wheel scales the
	display.

	* app/airbrush.c
	* app/eraser.c
	* app/paint_options.h
	* app/paintbrush.c
	* app/pencil.c
	* app/tool_options.c: moved the "Incremental" toggle to the
	PaintOptions structure because it is used more often now.
1999-08-19 19:53:30 +00:00
Tor Lillqvist f6858e21d1 Actually use the enum types GimpImageType, GimpImageBaseType,
* app/*.[ch]: Actually use the enum types GimpImageType,
	GimpImageBaseType, LayerModeEffects, PaintApplicationMode,
	BrushApplicationMode, GimpFillType and ConvertPaletteType, instead
	of just int or gint. Hopefully I catched most of the places
	where these should be used.

	Add an enum ConvolutionType, suffix the too general constants
	NORMAL, ABSOLUTE and NEGATIVE with _CONVOL. Use NORMAL_MODE
	instead of NORMAL in some places (this was what was intended). Fix
	some minor gccisms.

	* app/apptypes.h: New file. This file contains the above
	enumeration types, and some opaque struct typedefs. It was
	necessary to collect these in one header that doesn't include
	other headers, because when we started using the above mentioned
	types in the headers, all hell broke loose because of the
	spaghetti-like cross-inclusion mess between headers.

	(An example: Header A includes header B, which includes header C
	which includes A. B uses a type defined in A. This is not defined,
	because A hasn't defined it yet at the point where it includes B,
	and A included from B of course is skipped as we already are
	reading A.)
1999-08-18 23:41:39 +00:00
Adrian Likins 29709cb9ee app/airbrush.c app/paintbrush.c app/pencil.c app/pixmapbrush.c
Fri Aug 13 16:39:25 1999 Adrian Likins <alikins@redhat.com>

        * app/airbrush.c
        * app/paintbrush.c
        * app/pencil.c
        * app/pixmapbrush.c
        * app/pixmapbrush.h

        Added support for pixmap brushes to airbrush, pencil,
        and paintbrush. Merging this into paintbrush makes
        the pixmaptool itself kind of useless at the moment,
        but that will change ;->

        Still a few rough edges here, but its mostly there.
        I still need to make the "incremental" button for
        the tools to accurately reflect that pixmap always
        uses this mode.

        * app/eraser.c
        * app/eraser.h
        * app/tools_cmds.c
        * tools/pdbgen/pdb/tools.pdb

        Applied patch from  Shuji Narazaki <narazaki@gimp.org>
        to implement the anti-eraser. Neat.
1999-08-13 20:50:30 +00:00
BST 1999 Andy Thomas 954151d601 ./app/clone.c ./app/airbrush.c ./app/bezier_select.c ./app/paintbrush.c
Fri Jul 23 00:01:05 BST 1999 Andy Thomas <alt@gimp.org>

	* ./app/clone.c
	* ./app/airbrush.c
	* ./app/bezier_select.c
	* ./app/paintbrush.c
	* ./app/eraser.c
	* ./app/convolve.c
	* ./app/smudge.c
	* ./app/dodgeburn.c
	* ./app/pencil.c
	* ./app/paint_core.c

	Better stroking of paths.
	First point in stroke path is now correctly painted (try stroking
	with a brush spacing of > 100.0 in gimp 1.0.x).
	Fixed problem in paint_core_interpolate() where points were
	missed in some cases.
	(BTW for those who do not know the brush spacing means as follows:-
	A spacing of 100.0 means brush strokes are placed next to each other
	exactly with no gaps or overlaps. A spacing of 200.0 means only
	alternate spaces are filled with the brush paint. A setting of 50.0
	means the brush paints positions overlap by 50% of the brush width.
	So 100.0 corresponds to exactly the brush width! It took me
	ages to figure this simple thing out!)
1999-07-22 23:11:46 +00:00
MEST 1999 Sven Neumann b47b9e0860 app/clone.c app/dodgeburn.c app/pencil.c applied a patch from Olof S
Fri Jul  9 18:39:03 MEST 1999  Sven Neumann <sven@gimp.org>

        * app/clone.c
        * app/dodgeburn.c
        * app/pencil.c
        * app/smudge.c: applied a patch from Olof S Kylander
        <olof@frozenriver.com> that enables pressure sensitivity for all
        the tools that were missing it


--Sven
1999-07-09 16:41:58 +00:00
Michael Natterer 1058f41dab app/airbrush.c app/blend.c app/bucket_fill.c app/clone.c app/convolve.c
1999-07-06  Michael Natterer  <mitschel@cs.tu-berlin.de>

        * app/airbrush.c
        * app/blend.c
        * app/bucket_fill.c
        * app/clone.c
        * app/convolve.c
        * app/dodgeburn.c
        * app/eraser.c
        * app/ink.c
        * app/paintbrush.c
        * app/pencil.c
        * app/smudge.c: get opacity/paint mode from the current context
        (currently always the user context).

        * app/gimage_mask.c: the "stroke" command uses the paintbrush's
        settings if the current context is the user context and we are in
        per-tool paint options mode.

        * app/context_manager.[ch]
        * app/paint_options.h
        * app/preferences_dialog.c
        * app/tool_options.c
        * app/tools.c: moved the global/per-tool paint options switching
        to the context manager. The tool options themselves only contain
        the widgets for them now. This should fix the segfaults happening
        in per-tool mode.
	Removed the disclaimer from the prefs. dlg. as it seems to work
	now. The impl. in the context manager however is still a hack.

        * app/brush_select.c
        * app/brushes_cmds.c
        * tools/pdbgen/pdb/brushes.pdb: same as above.

        * app/lc_dialog.c: minimal code reduction. No functionality changed.
1999-07-06 15:18:25 +00:00
jaycox 5dd060bd56 use the new color picking feature of paint_core.
* app/pencil.c: use the new color picking feature of paint_core.

* ChangeLog: added the entry that goes with my previous commit *DOH*
1999-05-14 00:37:58 +00:00
Michael Natterer ca2cbd3257 First version of per-tool paint options. No PDB interface yet. The tool
1999-04-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	First version of per-tool paint options. No PDB interface yet.
	The tool options dialog got rather big when in per-tool mode, so
	it will probably have to become a notebook.

	It's not yet 100% consistent. If switched off, everything should
	behave exactly like before.

	* app/Makefile.am
	* app/paint_options.h: new file

	* app/tool_options.c: PaintOptions gui. Maintain a list of all
	paint tools' ToolOptions to enable switching between global and
	per-tool paint options.

	* app/brush_select.[ch]: changed packing boxes, tables, ...
	The paint options in the brush selection can be hidden now.
	Moved create_paint_mode_menu() to paint_options.h and
	tool_options.c and renamed it to paint_mode_menu_new().

	* app/gimage_mask.c
	* app/gimpbrush.[ch]
	* app/gimpbrushlist.[ch]
	* app/paint_core.c: moved gimp_brush_[set|get]_spacing() from
	gimpbrushlist.[ch] to gimpbrush.[ch].
	Moved gimp_brush_[get|set]_[opacity|paint_mode]() to
	paint_options.h and tool_options.c and renamed them to
	paint_options_*_*().  They are "global paint options" now.

	* app/airbrush.c
	* app/blend.c
	* app/bucket_fill.c
	* app/clone.c
	* app/convolve.c
	* app/eraser.c
	* app/ink.c
	* app/paintbrush.c
	* app/pencil.c: all paint tools' options are derived from
	"PaintOptions" now. Opacity and paint mode are obtained through
	macros which take into account the current paint options mode.

	* app/buildmenu.h: #include <gtk/gtk.h>

	* app/color_picker.c
	* app/text_tool.c: changed spacings.

	* app/gimprc.[ch]: new gimprc option "global-paint-options"

	* app/preferences_dialog.c: Added a "Tool Options" page. Code
	cleanup. Some work on the convenience constructors test site.

	* app/tools.c: fixed "unused variable" warning.
1999-04-22 14:34:00 +00:00
Manish Singh ccac10a4b0 new file, containes the PDB stuff for most of the tools
* app/tools_cmds.c: new file, containes the PDB stuff for most
of the tools

* app/gimprc_cmds.c: new file, PDB interface stuff for gimprc
access

* app/Makefile.am: added tools_cmds.c and gimprc_cmds.c

* app/airbrush.[ch]
* app/blend.[ch]
* app/bucket_fill.[ch]
* app/by_color_select.[ch]
* app/clone.[ch]
* app/color_picker.[ch]
* app/convolve.[ch]
* app/crop.[ch]
* app/ellipse_select.[ch]
* app/eraser.[ch]
* app/flip_tool.[ch]
* app/free_select.[ch]
* app/fuzzy_select.[ch]
* app/gimprc.[ch]
* app/paintbrush.[ch]
* app/pencil.[ch]
* app/perspective_tool.[ch]
* app/rect_select.c app/rect_select.h
* app/rotate_tool.[ch]
* app/scale_tool.[ch]
* app/shear_tool.[ch]: bye bye PDB stuff (exported necessary enums
functions, vars, etc.)

* app/internal_procs.c: use register_foo functions

* app/blend.[ch]: GradientType enum case changed

* app/bucket_fill.[ch]: s/FillMode/BucketFillMode/, made the enum
more consistent

* app/clone.[ch]: capitalized the CloneType enum

* app/color_picker.[ch]: changed get_color to pick_color so we don't
conflict with colormaps.c get_color

* app/convolve.[ch]: capitalized the ConvolveType enum

* app/paint_core.h: made a GradientPaintMode enum

* app/transform_core.h: BoundingBox enum

* app/scale_tool.c: use the generic bounding box enum for X1, Y1, etc.

* app/shear_tool.[ch]: turned HORZ and VERT into a ShearType enum

-Yosh
1999-04-18 21:22:41 +00:00