Commit Graph

100 Commits

Author SHA1 Message Date
Michael Natterer 594496b132 configure.in new directory containing all widgets. Some of them will go to
2001-04-11  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/widgets/*: new directory containing all widgets. Some of them
	will go to libgimpwidgets.

	* app/color_panel.[ch]
	* app/gimpbrushpreview.[ch]
	* app/gimpconstrainedhwrapbox.[ch]
	* app/gimpcontainergridview.[ch]
	* app/gimpcontainerlistview.[ch]
	* app/gimpcontainerview.[ch]
	* app/gimpdatafactoryview.[ch]
	* app/gimpdock.[ch]
	* app/gimpdockable.[ch]
	* app/gimpdockbook.[ch]
	* app/gimpdrawablelistitem.[ch]
	* app/gimpdrawablelistview.[ch]
	* app/gimpdrawablepreview.[ch]
	* app/gimpgradientpreview.[ch]
	* app/gimpimagepreview.[ch]
	* app/gimplayerlistitem.[ch]
	* app/gimplayerlistview.{ch]
	* app/gimplistitem.[ch]
	* app/gimppalettepreview.[ch]
	* app/gimppatternpreview.[ch]
	* app/gimppreview.[ch]
	* app/gimptoolinfopreview.[ch]
	* app/gtkhwrapbox.[ch]
	* app/gtkvwrapbox.[ch]
	* app/gtkwrapbox.[ch]
	* app/histogramwidget.[ch]: removed from here.

	* app/Makefile.am
	* app/appenums.h
	* app/brush_select.c
	* app/channels_dialog.c
	* app/devices.c
	* app/gimpdnd.c
	* app/gimpdrawable-preview.c
	* app/gimphistogram.h
	* app/gradient_editor.c
	* app/gradient_select.c
	* app/indicator_area.c
	* app/info_window.c
	* app/palette.c
	* app/palette_select.c
	* app/pattern_select.c
	* app/qmask.c
	* app/test_commands.c
	* app/toolbox.c
	* app/pdb/color_cmds.c
	* app/tools/paint_options.c
	* app/tools/tool_options_dialog.c
	* tools/pdbgen/pdb/color.pdb: changed accordingly.
2001-04-11 01:13:53 +00:00
Michael Natterer b51d761fcc app/Makefile.am app/apptypes.h new subclass of GimpDrawableListView (the
2001-03-11  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/apptypes.h
	* app/gimplayerlistview.[ch]: new subclass of GimpDrawableListView
	(the upcoming replacement of the layers dialog). Connects to the
	new GimpLayer signals using the layer container as signal proxy
	(see below).

	* app/gimpcontainerview.[ch]: made "set_container" a virtual
	function.  This is needed by the GimpLayerListView to
	connect/disconnect signals. Subclasses implementing this method
	MUST obey the following order of instructions:

	1. disconnect from signals related to GimpContainerView->container
	2. chain up (!!!)
	3. connect to signals related to GimpContainerView->container

	And yes, I will add DocBook files for all those new objects :)

	* app/gimppreview.[ch]: made "border_color" a GimpRGB instead of
	guchar[3]. Added gimp_preview_set_border_color().

	* app/gimpcontainergridview.c
	* app/gimplayerlistitem.c: use gimp_preview_set_border_color().

	* app/gimpcontainerlistview.c
	* app/gimpdrawablelistview.c: cleanup.

	* app/gimpdrawablelistitem.c: we can safely asume that our parent
	widget is a GimpDrawableListView and use it's "reorder_drawable"
	function pointer (after checking that it's there).

	* app/gimplistitem.c: connect the correct DND type when changing
	the container of a list item with "reorderable" enabled.

	* app/gimplayer.[ch]: added accessors and "*_changed" signals for
	layer->mode, layer->opacity and layer->preserve_trans.

	* app/disp_callbacks.c: fixed a FIXME: use the correct bucket fill
	tool context again.

	* app/tools/paint_options.[ch]: paint_mode_menu_new(): added a
	boolean which toggles the "Behind" item on/off to the same
	constructor can be used for all paint mode menus.

	* app/tools/gimptoolinfo.c: rect. select is the standard tool again.

	* app/brush_select.c
	* app/floating_sel.c
	* app/gimpimage.c
	* app/layers_dialog.c
	* app/pdb/layer_cmds.c
	* app/tools/gimpeditselectiontool.c
	* tools/pdbgen/pdb/layer.pdb: use the new layer accessors and the
	paint_mode_menu constructor.

	* app/commands.c
	* app/gdisplay.c
	* app/menus.c
	* app/undo.c
	* app/tools/gimppainttool.c
	* app/tools/gimptool.c
	* app/tools/paint_options.c
	* app/tools/tool_manager.c: put the #warning's back inside
	#ifdef __GNUC__
2001-03-11 17:24:47 +00:00
Michael Natterer 3eb62f8756 removed crap from ancient times when tools used to be an enum.
2001-02-23  Michael Natterer  <mitch@gimp.org>

	* app/app_procs.c: removed crap from ancient times when tools
	used to be an enum.

	* app/brush_select.[ch]: cleaned up the gui and made global paint
	mode toggling much simpler by expanding vertically instead of
	reparenting.

	* app/context_manager.c: removed hack by using a tool manager
	accessor function.

	* app/gimpcontext.c: use the new standard tool info object. Tools
	also _behave_ like all other data types now (can e.g. be
	refreshed).

	* app/tools/tool.[ch]

	* app/tools/gimptoolinfo.[ch]: added an "identifier" which is an
	untranslated string with a meaningful prefix and name, e.g.
	"gimp:color_picker_tool". Renamed "tool_name" and "tool_desc"
	to "blurb" and "help", changed the constructor accordingly.
	Added gimp_tool_info_get_standards() to make the context work
	with tool refresh.

	* app/tools/tool_manager.[ch]
	* app/tools/tools.c: removed the global list of tool class
	structures because the tool info list is in place.
	Added tool_manager_register_tool_options() which calls
	tool_options_dialog_add() and registers the options in the
	global_tool_info_list.

	* app/tools/Makefile.am
	* app/tools/paint_options.[ch]
	* app/tools/selection_options.[ch]
	* app/tools/tool_options.[ch]
	* app/tools/tool_options_dialog.[ch]: build them all again. This
	is mostly the old tool options system with minor modifications to
	work with the new stuff. The tool options auto-update with the user
	context now, so there are no update functions any more.

	* app/gimpdnd.c
	* app/toolbox.c
	* app/tools/color_picker.c
	* app/tools/measure.c
	* app/tools/move.c: changed accordingly.
2001-02-23 21:32:47 +00:00
Michael Natterer a80dd4d071 added DND source functions which work by GtkType.
2001-02-18  Michael Natterer  <mitch@gimp.org>

	* app/gimpdnd.[ch]: added DND source functions which work by
	GtkType.

	* app/commands.c
	* app/brush_select.c
	* app/gradient_select.[ch]
	* app/pattern_select.c: removed the DND code here because it's all
	done by the GimpContainerView now.

	* app/gimpbrushpreview.c
	* app/gimpgradientpreview.c
	* app/gimppalettepreview.c
	* app/gimppatternpreview.c: use the DND by-type connect functions.

	* app/gimpbrushgenerated.c: implemented "duplicate", cleanup.

	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.[ch]: added a "activate_item" signal
	method which is emitted by the subclasses to indicate double click.

	* app/gimpdatafactoryview.c: connect to "activate_item" and show
	the editor.

	* app/convert.c
	* app/gimppalette.[ch]
	* app/palette.c
	* app/paletteP.h
	* app/palette_import.c
	* app/palette_select.[ch]: major cleanup: Behaves like the other
	datatypes now: DND, context stuff, GimpContainerListViews in
	the dialogs etc. Mostly just removal of code.

	* app/gradient_editor.c: fixed signal blocking/unblocking.

	* plug-ins/script-fu/scripts/Makefile.am: install the "Test Sphere"
	script again.
2001-02-18 19:44:28 +00:00
Michael Natterer 2f6f9bdd0b app/gimpcontainer.[ch] app/gimpcontainergridview.c
2001-02-17  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainer.[ch]
	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.[ch]
	* app/gimplist.c
	* app/gimpmarshal.[ch]: the GimpContainer has a new virtual "reorder"
	method which is much more eficient then the current remove/add
	braindeadness when renaming data objects.
	Changed the views to connect to "reorder" and call the
	GimpContainerView's new "reorder_item" method which then does
	the right thing in the view subclasses.

	* app/gimpdatafactory.c
	* app/gimpdatafactoryview.c
	* app/gimpdatalist.[ch]: removed the data list loading and saving
	stuff from GimpDataList because that's the job of the
	GimpDataFactory.

	* app/brush_edit.[ch]
	* app/brush_select.c: cleanup.

	* app/gradient_editor.[ch]: changed it to work like the brush
	editor: return a GradientEditor pointer in the constructor
	and statically store this pointer in the gradient selection file.
	Removed the global "g_editor" variable and added tons of
	GradientEditor* variables to function calls so they know their
	context without the global variable.

	* app/gradient_select.c: changed accordingly.
2001-02-17 21:20:10 +00:00
Michael Natterer 22371de3e7 added a note about apptype.h and about not including headers in headers.
2001-02-14  Michael Natterer  <mitch@gimp.org>

	* HACKING: added a note about apptype.h and about not including
	headers in headers.

	* app/apptypes.h: added GimpTool and BitmapCursor.

	* app/cursorutil.h
	* app/devices.h
	* app/draw_core.h
	* app/tools/color_picker.h
	* app/tools/tool.h
	* app/tools/tool_options.h
	* app/gimpcontext.h: removed includes of "tools/tool.h"

	* app/gimprc.[ch]: indentadion cleanup, added
	"module_db_load_inhibit".

	* app/module_db.c: removed the above variable here.

	* app/gimpdata.[ch]: added a vitrual "duplicate" method.

	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.[ch]
	* app/gimpbrushpipe.[ch]
	* app/gimpgradient.[ch]
	* app/gimppalette.[ch]
	* app/gimppattern.[ch]: all "load", "new" and "get_standard"
	functions return a GimpData pointer now.

	* app/gimpdatafactory.[ch]: made some stuff const.

	* app/gimpdatafactoryview.c: activate the "duplicate" button and
	set the initial button sensitivity correctly.

	* app/brush_select.c
	* app/gradient_select.c
	* app/pattern_select.c: use the new GimpDataFactoryView.

	* libgimp/Makefile.am: grouped the file to sort out what _may_
	go to subdirs or separate libs.

	* libgimp/gimpenv.[ch]: added many "const".

	* app/app_procs.c
	* app/brush_edit.c
	* app/gimpcontext.c
	* app/gimpdnd.c
	* app/gradient_editor.c
	* app/palette.c
	* app/palette_import.c
	* app/user_install.c: many related changes.

	* libgimpmath/gimpmathtypes.h
	* libgimpmath/gimpvector.[ch]: minor cleanups.

	* plug-ins/script-fu/script-fu.c: gimp_data_directory() is const now.
2001-02-14 14:57:14 +00:00
Michael Natterer a97e433ba2 app/Makefile.am po/POTFILES.in app/brushes.[ch] app/gradients.[ch]
2001-02-14  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* po/POTFILES.in
	* app/brushes.[ch]
	* app/gradients.[ch]
	* app/palettes.[ch]
	* app/patterns.[ch]: removed.

	* app/gimpdatafactory.[ch]: completely manage the data lists,
	including loading with different callbacks per extension.

	* app/gimpdatafactoryview.[ch]: enabled "new", "edit", "delete"
	and "refresh".

	* app/context_manager.c: initisalize the data factories.

	* app/gimpcontext.c: fixed some bad bugs introduced yesterday.

	* app/gradient_editor.[ch]: removed the public "create" function
	and create the editor implicitly on "set_gradient"

	* app/app_procs.c
	* app/apptypes.h
	* app/brush_edit.h
	* app/brush_select.c
	* app/commands.c
	* app/convert.c
	* app/devices.c
	* app/gimpbrushpipe.c
	* app/gimpcontainerview.h
	* app/gimpgradient.c
	* app/gimppattern.c
	* app/gradient_select.c
	* app/palette.c
	* app/pattern_select.c
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/convert_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/palette_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb: um, much stuff, mostly "changed
	accordingly" ;-)
2001-02-14 01:42:12 +00:00
Michael Natterer b5d8536f3f gimprc.in user_install user_install.bat app/gimprc.[ch] removed the
2001-02-13  Michael Natterer  <mitch@gimp.org>

	* gimprc.in
	* user_install
	* user_install.bat
	* app/gimprc.[ch]
	* app/preferences_dialog.c: removed the "brush_vbr_path" variable,
	because all data types will be editable and saveable soon.

	* app/Makefile.am
	* app/apptypes.h
	* app/gimpdatafactory.[ch]: new object which holds a data list and
	knows how to create, edit, duplicate etc. the items in it. Will
	completely replace the brushes.[ch], patterns.[ch], ... files soon.

	* po/POTFILES.in
	* app/gimpdatacontainerview.[ch]: removed.
	* app/gimpdatafactoryview.[ch]: added.

	A view on the GimpDataFactory with a GUI for creating, editing,
	deleting etc. items (mostly unimplemented).

	* app/context_manager.[ch]: replaced the global data lists by global
	data factories.

	* app/brush_select.c
	* app/brushes.[ch]
	* app/commands.c
	* app/convert.c
	* app/devices.c
	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.c
	* app/gimpcontext.c
	* app/gimpdata.[ch]
	* app/gimpdatalist.[ch]
	* app/gimpdnd.c
	* app/gimpgradient.[ch]
	* app/gimppalette.[ch]
	* app/gimppattern.[ch]
	* app/gradient_editor.c
	* app/gradient_select.c
	* app/gradients.[ch]
	* app/indicator_area.c
	* app/palette.c
	* app/palette_import.c
	* app/palette_select.c
	* app/palettes.[ch]
	* app/pattern_select.c
	* app/patterns.[ch]
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/convert_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb: changed accordingly.
2001-02-13 19:53:07 +00:00
Michael Natterer 656d1fae86 app/gradient_editor.[ch] use GimpContainerListView instead of cooking an
2001-02-13  Michael Natterer  <mitch@gimp.org>

	* app/gradient_editor.[ch]
	* app/gradient_select.[ch]: use GimpContainerListView instead of
	cooking an own list.

	* app/gimpgradient.[ch]: removed the GdkPixmap from the gradient.

	* app/gimpcontainerlistview.c: connect the viewable's "name_changed"
	signal to the label.

	* app/gimpmarshal.[ch]
	* app/gimppreview.[ch]: new virtual function "get_size",

	* app/gimpgradientpreview.c: implement "get_size" and return a 3:1
	aspect ratio.

	* app/gradients.c
	* app/palette_select.[ch]
	* app/palettes.c: removed the dialog freeze/thaw functions.

	* app/brush_select.c
	* app/pattern_select.c
	* app/plug_in.c: stuff.
2001-02-13 00:12:15 +00:00
Michael Natterer 267894970d app/brush_select.[ch] removed almost all code by using the
2001-02-12  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.[ch]
	* app/pattern_select.[ch]: removed almost all code by using
	the GimpContainerGridView.

	* app/brushes.c
	* app/patterns.c: brush|pattern_select_freeze|thaw_all() don't
	exist any more.

	* app/devices.c: made it work again.

	* app/gimpgradientpreview.c: the gradient popup is 128 x 32 again.

	* app/plug_in.c: follow the brush and pattern dialog function
	renaming.

	* app/gimppalette.[ch]
	* app/gimppalettepreview.c: added a "Columns" attribute and show
	the popups accordingly.

	The palette file format has changed again. It now can have an
	optional "Columns: <n>" line after the palette's name.

	* data/palettes/Bgold.gpl
	* data/palettes/Borders.gpl
	* data/palettes/Cascade.gpl
	* data/palettes/China.gpl
	* data/palettes/Coldfire.gpl
	* data/palettes/Dark_pastels.gpl
	* data/palettes/Ega.gpl
	* data/palettes/Gold.gpl
	* data/palettes/Grayblue.gpl
	* data/palettes/Hilite.gpl
	* data/palettes/Kahki.gpl
	* data/palettes/Named_Colors.gpl
	* data/palettes/News3.gpl
	* data/palettes/Op2.gpl
	* data/palettes/Plasma.gpl
	* data/palettes/Visibone.gpl
	* data/palettes/Visibone_2.gpl
	* data/palettes/Web.gpl: added the "Columns" parameter where it
	makes sense and remove those ugly black colors which were hanging
	around as first color of may palettes.
2001-02-12 18:05:12 +00:00
Michael Natterer d6a2d391e9 took gimpcontextpreview.[ch] out of the build but still left the sources
2001-02-12  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am: took gimpcontextpreview.[ch] out of the build
	but still left the sources there as reference.

	* app/app_procs.c: initialize the render stuff before creating the
	toolbox (needed for the previews).

	* app/devices.c
	* app/indicator_area.c: use GimpPreviews instead of
	GimpContextPreviews.

	* app/context_manager.[ch]: create the global data lists here
	because they now must exist before any context is created.

	* app/brushes.[ch]
	* app/gradients.[ch]
	* app/palettes.[ch]
	* app/patterns.[ch]: removed them here.

	* app/gimpcontainer.[ch]: added a "freeze_count" and emit the
	"freeze" and "thaw" signals accordingly.

	* app/gimpcontext.[ch]: greatly simplified the way how the
	contexts connect to the data lists (simply keep them connected all
	the time). Also removed all those ugly explicit update functions
	because "thaw" callbacks do this job now.

	* app/gimpdata.c: a GimpData object now becomes dirty on
	"name_changed"; "dirty" now triggers "invalidate_preview" because
	the context does not dispatch these signals any more soon.

	* app/brush_select.c
	* app/convert.c
	* app/gimpdnd.c
	* app/gradient_editor.c
	* app/gradient_select.c
	* app/pattern_select.c
	* app/gradient_editor.c
	* app/gradient_select.c
	* app/gradients.[ch]
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/convert_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb: changed accordingly.
2001-02-12 03:27:28 +00:00
Michael Natterer e4bb2f938a app/Makefile.am app/apptypes.h new abstract base class for everything
2001-02-11  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/apptypes.h
	* app/gimpdata.[ch]: new abstract base class for everything
	(except images) which has a filename and can become dirty and must
	be saved.

	* app/gimpbrush.[ch]
	* app/gimpgradient.[ch]
	* app/gimppattern.[ch]: all derived from GimpData now.

	* app/gimpbrushgenerated.[ch]
	* app/brush_select.c
	* app/brushes.c
	* app/gimpbrushpipe.c
	* app/gradient_editor.c
	* app/gradients.c
	* app/patterns.c: removed lots of code duplication due to common
	file save magic.

	The gradient file format has changed: it now contains the
	gradient's name (no more ugly underscores). The files have the
	extension ".ggr".

	* app/gimpgradient.[ch]: save new gradients, load new and old
	gradients.

	* data/gradients/*: removed all old gradients and added the new
	ones.
2001-02-11 01:39:24 +00:00
Michael Natterer 3675004ef6 app/gimpbrush.[ch] moved the scale and pipe indicator rendering code from
2001-02-07  Michael Natterer  <mitch@gimp.org>

	* app/gimpbrush.[ch]
	* app/gimpbrushpreview.c: moved the scale and pipe indicator
	rendering code from GimpBrush to GimpBrushPreview.
	Removed the "dirty" signal from GimpBrush and use
	"invalidate_preview" of the GimpViewable class.

	* app/brush_edit.c
	* app/brush_select.c
	* app/gimpbrushgenerated.c
	* app/gimpcontext.c
	* app/gimpcontextpreview.c
	* app/tools/paint_core.c: changed accordingly.
2001-02-07 03:14:38 +00:00
Michael Natterer 2e464cf5e6 app/gimpcontainer.[ch] made the "get_by_name" and the "by_index" access
2001-02-05  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainer.[ch]
	* app/gimplist.[ch]: made the "get_by_name" and the "by_index"
	access functions methods of the GimpContainerClass. The semantic
	of this index is somewhat unclear if we have e.g. a hash table
	implementation but the container needs to have an order for the
	ContainerView. Finally, the ordering will be a feature of the
	ContainerView.

	* app/gimpmarshal.[ch]: marshallers needed for the new methods.

	* app/brushes.[ch]
	* app/patterns.[ch]: the public global brush and pattern lists
	are GimpContainers now (they are really GimpLists of course).

	* app/brush_select.c
	* app/devices.c
	* app/gimpcontainerlistview.c
	* app/gimpcontext.c
	* app/gimpdnd.c
	* app/pattern_select.c
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb: changed accordingly.
2001-02-05 17:48:50 +00:00
Michael Natterer 78a8bb4c70 app/Makefile.am new object.
2001-02-04  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimppattern.[ch]: new object.

	* app/apptypes.h: added GimpPattern, removed GPattern.

	* app/patterns.[ch]: contains only the "patterns_()" functions for
	the global pattern list, s/pattern_list/global_pattern_list/g

	* app/brushes.[ch]: s/brush_list/global_brush_list/g

	* app/pattern_select.[ch]
	* app/gimpcontext.[ch]: connect to the Patterns' and the pattern
	list's signals.

	* app/brush_select.[ch]
	* app/devices.c
	* app/disp_callbacks.[ch]
	* app/gimpbrush.c
	* app/gimpbrushgenerated.[ch]
	* app/gimpcontextpreview.[ch]
	* app/gimpdnd.[ch]
	* app/indicator_area.c
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/pattern_select_cmds.c
	* app/pdb/patterns_cmds.c
	* app/tools/bucket_fill.c
	* app/tools/clone.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb
	* po/POTFILES.in: changed accordingly.
2001-02-04 17:34:30 +00:00
Michael Natterer 1994facc9e renamed gimp_container_lookup() back to gimp_container_have(). Virtualized
2001-02-04  Michael Natterer  <mitch@gimp.org>

	* app/gimpcontainer.[ch]: renamed gimp_container_lookup() back
	to gimp_container_have(). Virtualized the "add", "remove",
	"have" and "foreach" methods and removed the "children" list.

	* app/gimplist.[ch]: derived from GimpContainer now.

	* app/Makefile.am
	* app/gimpdatalist.[ch]: new object: an alphabetically sorted
	GimpList with unique names.

	* app/gimpbrushlist.[ch]: removed. It's job is done by the
	GimpDataList now.

	* app/brushes.[ch]: new files. Contain the "brushes_()" functions
	for the global brush list.

	* app/app_procs.c
	* app/apptypes.h
	* app/brush_select.[ch]
	* app/colormap_dialog.[ch]
	* app/context_manager.c
	* app/devices.c
	* app/gimpbrush.c
	* app/gimpcontext.c
	* app/gimpdnd.c
	* app/info_window.c
	* app/lc_dialog.c
	* app/module_db.c
	* app/nav_window.c
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/tools/by_color_select.c
	* app/tools/paintbrush.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* po/POTFILES.in: changed accordingly.
2001-02-04 14:10:03 +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
Sven Neumann fafae590e3 configure.in app/Makefile.am moved all tool sources to app/tools
2001-01-22  Sven Neumann  <sven@gimp.org>

        * configure.in
        * app/Makefile.am
        * app/tools/Makefile.am: moved all tool sources to app/tools

        * app/app_procs.c
        * app/brush_select.c
        * app/commands.c
        * app/context_manager.c
        * app/convert.c
        * app/cursorutil.c
        * app/devices.c
        * app/disp_callbacks.c
        * app/edit_selection.c
        * app/gdisplay.c
        * app/gimage.c
        * app/gimage_mask.c
        * app/gimpbrush.c
        * app/gimpbrushgenerated.c
        * app/gimpbrushpipe.c
        * app/gimpdnd.c
        * app/gimprc.c
        * app/global_edit.c
        * app/info_window.c
        * app/interface.c
        * app/menus.c
        * app/path.c
        * app/paths_dialog.c
        * app/paths_dialogP.h
        * app/scale.c
        * app/scroll.c
        * app/undo.c
        * app/pdb/color_cmds.c
        * app/pdb/text_tool_cmds.c
        * app/pdb/tools_cmds.c
        * po/POTFILES.in
        * tools/kernelgen.c
        * tools/pdbgen/Makefile.am
        * tools/pdbgen/enums.pl
        * tools/pdbgen/pdb/color.pdb
        * tools/pdbgen/pdb/text_tool.pdb
        * tools/pdbgen/pdb/tools.pdb: changed accordingly
2001-01-22 01:46:28 +00:00
Sven Neumann 6a31b131d1 changed destdir for app-side PDB wrappers to app/pdb
2001-01-21  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/app.pl: changed destdir for app-side PDB wrappers to
	app/pdb

	* app/Makefile.am: don't create libgimpim.a in app.

	* configure.in
	* app/pdb/Makefile.am
	* app/pdb/internal_procs.[ch]
	* app/pdb/procedural_db.[ch]
	* app/pdb/*_cmds.c: moved PDB functions into their own subdirectory.

	* app/internal_procs.[ch]
	* app/procedural_db.[ch]
	* app/*_cmds.c: removed here

	* app/app_procs.c
	* app/batch.c
	* app/bezier_select.c
	* app/brush_select.c
	* app/bucket_fill.c
	* app/colormap_dialog.c
	* app/fileops.c
	* app/gimage.c
	* app/gimage_mask.c
	* app/gimphelp.c
	* app/gradient_select.c
	* app/info_window.c
	* app/invert.c
	* app/lc_dialog.c
	* app/menus.c
	* app/nav_window.c
	* app/palette_import.c
	* app/paths_dialog.c
	* app/pattern_select.c
	* app/plug_in.h
	* app/text_tool.c
	* app/xcf.c
	* po/POTFILES.in: changed accordingly
2001-01-21 21:58:16 +00:00
Michael Natterer cac3f7cb25 app/apptypes.h app/brush_edit.c app/brush_select.c app/brushes_cmds.c
2001-01-14  Michael Natterer  <mitch@gimp.org>

	* app/apptypes.h
	* app/brush_edit.c
	* app/brush_select.c
	* app/brushes_cmds.c
	* app/channel.h
	* app/colormap_dialog.c
	* app/datafiles.[ch]
	* app/devices.c
	* app/docindex.c
	* app/fileops.c
	* app/gdisplay.c
	* app/gimage.c
	* app/gimpbrush.[ch]
	* app/gimpbrushgenerated.[ch]
	* app/gimpbrushlist.[ch]
	* app/gimpbrushpipe.[ch]
	* app/gimpcontext.[ch]
	* app/gimpcontextpreview.c
	* app/gimpdnd.c
	* app/gimpdrawable.h
	* app/gimpimage.[ch]
	* app/gimplist.h
	* app/gimpobject.h
	* app/gimpset.[ch]
	* app/gradient.c
	* app/info_window.c
	* app/layer.[ch]
	* app/module_db.c
	* app/palette.[ch]
	* app/patterns.[ch]
	* app/plug_in.[ch]
	* app/undo_history.c
	* app/xcf.c
	* tools/pdbgen/pdb/brushes.pdb

	- Removed the "name" argument from all objects and use
	  GimpObject's name.
	- Use the same code in all "uniquefy name" functions (this
	  functionality will be a method of the "GimpContainer" class).
	- Renamed the parent instances of all objects to "parent instance".
	- Added missing instance and class cast macros.
	- Changed some "gchar *" to "const gchar *" parameters.
2001-01-14 03:55:56 +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 1226dc6c13 when re-drawing a dirty brush, clear it's preview area first.
2000-04-14  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.c: when re-drawing a dirty brush, clear it's
	preview area first.
2000-04-14 16:33:47 +00:00
Michael Natterer 2b92a59e64 po/POTFILES.in app/Makefile.am removed.
2000-02-13  Michael Natterer  <mitch@gimp.org>

	* po/POTFILES.in
	* app/Makefile.am
	* app/buildmenu.[ch]: removed.

	* app/blend.c
	* app/brush_select.c
	* app/curves.c
	* app/histogram_tool.c
	* app/layers_dialog.c
	* app/lc_dialog.c
	* app/levels.c
	* app/paint_options.h
	* app/paintbrush.c
	* app/tool_options.c: use the libgimp option menu
	constructor. Removed paint_mode_menu_set_history().

	* app/colormap_dialog.i.c
	* app/colormap_dialog.p.h: use a popup menu as in the palette
	dialog instead of a pulldown menu.

	* app/channels_dialog.c: made color dnd to a channel widget work
	again.

	* libgimp/gimpwidgets.[ch]: new function
	gimp_option_menu_set_history() which sets the history according to
	user_data as passed to gimp_option_menu_new().
2000-02-13 22:26:41 +00:00
Michael Natterer f0ae0dccd4 app/brush_select.c app/paint_options.h use new function
2000-02-13  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.c
	* app/paint_options.h
	* app/tool_options.c: use new function
	paint_mode_menu_set_paint_mode() instead of
	gtk_option_menu_set_history() because the order of paint modes in
	the menu is different from the one in the LayerModeEffects enum
	(fixes bug #6190). Create the menu with the libgimp menu
	constructor.
2000-02-13 13:14:34 +00:00
Sven Neumann c9482821ab mostly header cleanup and i18n
--Sven
2000-01-31 23:59:05 +00:00
Michael Natterer 03015f85d7 merged the table attach helper functions into one function.
2000-02-01  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimpwidgets.[ch]: merged the table attach helper
	functions into one function.

	* app/*
	* plug-ins/*: changed the calls to gimp_table_attach_aligned()
	accordingly. Did minimal ui updates (spacing and stuff) in some
	files.
2000-01-31 03:13:02 +00:00
Sven Neumann 4e38e85594 i18n
--Sven
2000-01-30 02:48:50 +00:00
Sven Neumann c69e85c8c9 app/brush_select.c create the dialog at mouse position if not the main
* app/brush_select.c
* app/gradient_select.c: create the dialog at mouse position if not
  the main dialog (which is session-managed)

* app/convert.c: small UI changes

* app/gradient.c: don't include session.h

* app/session.c: the gradient_select dialog is not the gradient_editor


--Sven
2000-01-29 23:06:06 +00:00
Michael Natterer 4923047146 removed BOUNDS, MINIMUM and MAXIMUM. No need to include both <glib.h> and
2000-01-25  Michael Natterer  <mitch@gimp.org>

	* app/appenv.h: removed BOUNDS, MINIMUM and MAXIMUM. No need to
	include both <glib.h> and <gtk/gtk.h>.

	* app/*
	* tools/pdbgen/pdb/text_tool.pdb: s/BOUNDS/CLAMP/,
	same for MIN and MAX.

	* app/preferences_dialog.c: the "Check Size" widget was connected
	to the transparency_type variable.

	* plug-ins/common/sobel.c: removed definitions of MIN and ROUND.

	* libgimp/gimp.h: #include "gimplimits.h" and "gimpcolorspace.h".

	* plug-ins/*: don't include the two files.
2000-01-25 23:06:12 +00:00
Michael Natterer 884f223569 app/[all files using the dialog or action area constructors] added a
2000-01-06  Michael Natterer  <mitch@gimp.org>

	* app/[all files using the dialog or action area constructors]
	* libgimp/gimpdialog.[ch]: added a "slot_object" agrument to the
	constructors' va_args lists to allow the action area buttons to be
	connected wich gtk_signal_connect_object().

	* libgimp/gimphelp.c: show the correct help page for plugins.

	* plug-ins/common/CEL.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/Makefile.am
	* plug-ins/common/aa.c
	* plug-ins/common/align_layers.c
	* plug-ins/common/animationplay.c
	* plug-ins/common/apply_lens.c
	* plug-ins/common/blinds.c
	* plug-ins/common/blur.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/checkerboard.c
	* plug-ins/common/colorify.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/compose.c
	* plug-ins/common/convmatrix.c
	* plug-ins/common/csource.c
	* plug-ins/common/cubism.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/decompose.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/destripe.c
	* plug-ins/common/diffraction.c
	* plug-ins/common/displace.c
	* plug-ins/common/grid.c
	* plug-ins/helpbrowser/Makefile.am
	* plug-ins/helpbrowser/helpbrowser.c: use the dialog constructor
	and enable the "F1" help key.
2000-01-06 16:40:17 +00:00
Michael Natterer c688e055e2 Default to "Cancel" in the "Really Quit?" dialog.
1999-12-02  Michael Natterer  <mitch@gimp.org>

	* app/app_procs.c: Default to "Cancel" in the "Really Quit?" dialog.

	* app/app_procs.c
	* app/brush_select.c
	* app/gimpbrushlist.c: Call brush_select_[freeze|thaw]_all() from
	brushes_init() and brushes_free(), so refreshing the brushes from
	plugins/scripts is faster.

	* app/brightness_contrast.c
	* app/color_balance.c
	* app/curves.c
	* app/file_new_dialog.c
	* app/hue_saturation.c
	* app/levels.c
	* app/posterize.c
	* app/threshold.c:
	Reorder the action are buttons: [ "OK" "Reset" "Cancel" ]

	* app/menus.c: Some more cleanups in the menu code. Reorder
	<Image>/Filters/Misc only if ot exists. Generalized
	menu_translate() in preparation for correctly supporting catalogs
	which only exist sometimes (like gimp-perl).

	* app/gradient.c
	* app/gradient_select.c: Save some lines of code by using
	gtk_clist_new_with_titles() instead of gtk_clist_new().

	* libgimp/gimpunitmenu.c: Code cleanup and made the clist titles
	of the unit selection un-clickable.
1999-12-02 13:00:18 +00:00
Michael Natterer 720518b33a Removed the definitions of the tearoff menu items and build them on the
1999-11-25  Michael Natterer  <mitch@gimp.org>

	* app/menus.c: Removed the definitions of the tearoff menu items
	and build them on the fly. Added N_()-marked submenus instead so
	they get properly translated. Removed N_() from all separators.

	Hacked menu_translate(): Don't try to translate separators,
	tearoffs and the /File/MRUxx entries. Avoid multiple lookups in
	the "gimp-std-plugins" domain. Translating plug-in menu entries is
	still broken.

	Defined all filter categories for proper translation and a first
	try to order them and to add separators (please comment...).

	New Category /Filters/Web.

	(Did 'make update-po' in the po* directories and updated the
	german translations.)

	* app/about_dialog.c
	* app/brush_select.c
	* app/drawable.c
	* app/errors.c
	* app/free_select.c
	* app/gradient.c
	* app/info_dialog.c
	* app/plug_in.c
	* app/tool_options.c: minor i18n updates like removing _() from
	some error messages.

	* app/context_manager.c: a private context for the Xinput Airbrush.

	* plug-ins/common/video.c: Register under /Filters/Distorts

	* plug-ins/imagemap/imap_main.c: Register under /Filters/Web
	(Marc, what about putting "prepare for gif" and "webify" there?)

	* plug-ins/perl/po/de.po: s/Xtn/Xtns/g
1999-11-25 11:35:48 +00:00
Michael Natterer 0c922cd3b0 app/airbrush.c app/apptypes.h app/brushes_cmds.c
1999-11-14  Michael Natterer  <mitch@gimp.org>

	* app/airbrush.c
	* app/apptypes.h
	* app/brushes_cmds.c
	* tools/pdbgen/pdb/brushes.pdb
	* app/bucket_fill.c
	* app/clone.c
	* app/gimpbrushpipe.c
	* app/paint_core.c
	* app/patterns.h
	* app/patterns_cmds.c
	* tools/pdbgen/pdb/patterns.pdb: removed the GimpBrushP and
	GPatternP types and use ordinary pointers instead.

	The following stuff makes the "no_data" behaviour consistent. As a
	side-effect it should make the gimp work when there are _really_ no
	brushes/patterns/gradients.

	* app/brush_select.c
	* app/pattern_select.c: set the initial brush/pattern name to "No
	Brushes/Patterns available" instead of "Active".

	* app/devices.c: set the device contexts' brush/pattern/gradient
	names if we started with no_data, so we find them on refresh.

	* app/gimpbrushlist.c: set the name of the standard_brush to
	"Standard".

	* app/gimpcontext.c: don't replace the current
	brush/pattern/gradient's name if the new one to be set is the
	standard one. Together with the change in devices.c, this ensures
	that we get what is set in devicerc. Minor fixes.

	* app/gradient.c: changed gradients_init() to work like the other
	data init functions. Only insert a default gradient in the
	gradients list when the editor is opened (this means that the
	gradients now behave like brushes/patterns when we start with
	"no_data").
	New function gradient_update() avoids tons of useless redraws of
	all clist gradient previews whenever the gradient editor wants to
	update it's large preview.

	* app/gradient_select.c: don't segfault when the user tries to
	drag from an empty gradient list.

	* app/patterns.c: set the index of the standard_pattern to -1 to
	indicate that it's not part of the pattern list.
1999-11-14 10:50:19 +00:00
Sven Neumann cd65099a2a take margin into account when deciding if popping up a preview is
* app/brush_select.c: take margin into account when deciding if
        popping up a preview is necessary

--Sven
1999-11-09 22:01:28 +00:00
Michael Natterer 0302ed0a10 app/brush_select.[ch] app/gradient.c app/gradient_select.[ch]
1999-11-03  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.[ch]
	* app/gradient.c
	* app/gradient_select.[ch]
	* app/interface.[ch]
	* app/palette.c
	* app/pattern_select.[ch]: allow dragging a brush/pattern/... from
	the selections with mouse2 without changing the active element in
	the dialog.

	* app/channels_dialog.c
	* app/color_area.c
	* app/color_panel.c
	* app/color_select.c
	* app/colormap_dialog.i.c
	* app/devices.c
	* app/gimpcontextpreview.[ch]
	* app/gimphelp.[ch]
	* app/gimpui.[ch]
	* app/indicator_area.c
	* app/interface.[ch]
	* app/layers_dialog.c
	* app/lc_dialog.c
	* app/ops_buttons.[ch]
	* app/paths_dialog.c
	* app/preferences_dialog.c
	* app/tools.[ch]: wrapped gtk_tooltips_set_tip() with
	gimp_help_set_help_data() and moved it to gimphelp.[ch].

	This should (hopefully) be the final state of the help system. The
	New function allows a "private tip" to be set without a visible
	tooltip. This way the tooltips inspector (shift+F1) can search for
	help data in the parent containers of the clicked widget. E.g. the
	ops buttons in the layers dialog have private tips like
	"#new_layer" which gets composed with the help data of the layers
	dialog notebook page resulting in a complete help path.

	Allow mouse2 for all dnd operations. Mouse1 still works like before.
1999-11-03 09:58:46 +00:00
Michael Natterer 4a3a57f8ce app/brush_select.c app/gradient_select.c call the PDB callback from the
1999-10-29  Michael Natterer  <mitch@gimp.org>

	* app/brush_select.c
	* app/gradient_select.c
	* app/pattern_select.c: call the PDB callback from the context
	callback because it gets called on every change.

	* app/interface.c: the tool buttons had the wrong private tooltips
	attached.

	* app/gimphelp.c: call the help browser with plug_in_run() instead
	of procedural_db_execute() to make it really ansynchronous.
	Added a GtkTipsQuery tooltips inspector which gets invoked by
	<Shift>+F1. Did some illegal juggling with the tips_query's
	"parent" pointer which may cause problems, so I made the stuff
	disable-able with #ifdef's.
	Is there a proper way to create a tips_query widget without having
	to show it somewhere??
1999-10-29 14:15:55 +00:00
Michael Natterer 79e27e984a More context & dnd stuff... 1999-10-28 15:05:49 +00:00
Michael Natterer a74d52fbbf Use the context almost everywhere. 1999-10-26 18:27:27 +00:00
Michael Natterer b74d256981 changed the "parent context" implementation:
1999-10-19  Michael Natterer  <mitch@gimp.org>

	* gimpcontext.[ch]: changed the "parent context" implementation:

	- Automatically connect/disconnect the "*_changed" signals when
	  changing the parent and when setting the "defined" flag of the
	  attributes.
	- Store the former *_defined booleans in a single guint32.
	- Added generic functions to set the "defined" flags of the
	  attributes and to copy attributes between contexts.

	The contexts now correctly handle disappearing images and
	displays, so we don't have to explicitly reset them any more.

	* context_manager.[ch]: adopted to the changed context
	implementation, connect to the user context's "tool_changed"
	signal to switch the per-tool contexts, don't connect to the
	"removed" signal of the image context.

	* brush_select.c
	* tool_options.c: use LayerModeEffects instead of int when calling
	gimp_context_set_paint_mode().

	* gdisplay.c: no need to reset the active display when deleting it
	because the context connects to the "destroy" signal of the shell
	now.

	* menus.c: a shortcut for the navigation window. Moved
	<Image>/Image/Colors/Desaturate before the separator.

	* tools.c: tools_select(): set the active tool of the user context
	instead of calling a special context manager function.
1999-10-19 15:52:32 +00:00
Michael Natterer a11f33345d The GIMP Help System part II: press "F1" while browsing a menu to show the
1999-10-03  Michael Natterer  <mitch@gimp.org>

	The GIMP Help System part II: press "F1" while browsing a menu
	to show the help page for the menu entry you're currently over
	with the mouse.

	* app/color_notebook.c: all color selectors have to register with
	a help page now.

	* app/color_select.[ch]: register with a help string. Removed
	the dialog part of the files because it's use was deprecated
	anyway (use color notebooks instead).

	* app/colormap_dialog.i.c
	* app/colormap_dialog.p.h
	* app/palette.c
	* app/palette_select.c: use a color notebook instead of a color
	selector.

	* app/gimphelp.c
	* app/gimpui.c: minor changes.

	* app/gimprc.c: "use help" defaults to TRUE now.

	* app/lc_dialog.c
	* app/lc_dialogP.h: a special help function which shows the help
	for the currently selected notebook page.

	* app/menus.c: some weird code which catches "key_press_event"
	in all menu shells and pops up the corresp. help page for the
	selected item. Embedded the GtkItemFactoryEntry in a new
	GimpItemFactoryEntry to allow a help path to be stored.
	Will be partially exported and moved to gimphelp.[ch] later to
	catch key_press for plug-in menu items (don't try this now ;-)

	* app/app_procs.c
	* app/brush_edit.c
	* app/brush_select.c
	* app/channel_ops.c
	* app/channels_dialog.c
	* app/commands.c
	* app/convert.c
	* app/devices.c
	* app/file_new_dialog.c
	* app/fileops.c
	* app/gdisplay.c
	* app/gdisplay_color.c
	* app/gdisplay_color_ui.c
	* app/gdisplay_ops.c
	* app/global_edit.c
	* app/gradient.c
	* app/gradient_select.c
	* app/interface.c
	* app/layers_dialog.c
	* app/module_db.c
	* app/paths_dialog.c
	* app/pattern_select.c
	* app/preferences_dialog.c
	* app/qmask.c
	* app/resize.c
	* app/undo_history.c: changed all dialog constructors to point
	to the right place in the new help file structure.

	* configure.in
	* help/*: the basic new help file structure.

	* modules/colorsel_gtk.c
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: register a help page.

	* plug-ins/helpbrowser/helpbrowser.c: load the help files
	according to the new help file structure.
1999-10-03 13:50:19 +00:00
Michael Natterer 002aa905db app/Makefile.am app/gimphelp.[ch] new files
1999-09-27  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimphelp.[ch]
	* app/gimpui.[ch]: new files

	* app/interface.[ch]
	* app/preferences_dialog.[ch]

	The GIMP Help System part 1: Press "F1" in any dialog to pop up
	the help page for this dialog.

	Moved the widget constructors from preferences_dialog.[ch] and the
	query boxes from interface.[ch] to gimpui.[ch].

	The dialog constructors take a help_func and a help_data
	parameter and install the "F1" accelerator which emits the new
	"help" signal.

	The "help" signal callback calls help_func(help_data) which finally
	has to call gimp_help() which in turn invokes the help browser.

	Still have to find a proper way to (1) prevent "F1" being assigned
	to some menu item and (2) to catch "F1" while browsing the menu
	trees in order to pop up the help for the selected item.

	* app/menus.c: a <Toolbox>/File/Help... menu item.
	* app/commands.[ch]: a command callback for the "Help..." menu item.

	* app/gimprc.[ch]: new boolean gimprc variable "use_help".

	* app/info_dialog.[ch]: pass a help function and data to the info
	dialog constructor.

	* app/tools.[ch]: store the tools help page names in the tool info
	structure. Export a special tools_help_func() which shows the help
	page for the active tool.

	* app/[all files calling a dialog constructor]: pass the dialog's
	help page to the constructor.

	Most dialogs are now created by gimp_dialog_new() which also sets
	up the action_area and the WM delete event callback, so I removed
	the resp. code from these files.

	Fixed some minor bugs and did some other stuff but didn't change
	any logic except dialog creation.

	* plug-ins/helpbrowser/helpbrowser.c: don't try to call a running
	help browser and don't install any menu path (all done in
	app/gimphelp.[ch] now).
1999-09-27 17:58:10 +00:00
Sven Neumann 1f103341c0 brush pipe animation in the brushes dialog too
--Sven
1999-09-26 21:16:37 +00:00
Sven Neumann ba211f07f2 i18n patch from Daniel Egger
--Sven
1999-09-23 11:49:16 +00:00
Tor Lillqvist e422b59e59 Include config.h, guard inclusion of <unistd.h>.
1999-09-14  Tor Lillqvist  <tml@iki.fi>

* app/brush_select.c: Include config.h, guard inclusion of
<unistd.h>.

* app/gimpcontextpreview.c: Include config.h, <string.h> and
appenv.h.

* app/xinput_airbrush.c: Include config.h, <stdio.h>, appenv.h and
libgimp/gimpmath.h. Use G_PI.

* app/makefile.{cygwin,msc}: Updates.

* plug-ins/makefile.{cygwin,msc}: Add the unofficial sel_gauss
plug-in. Add new object files for FractalExplorer and
gimpressionist.

* plug-ins/common/iwarp.c (iwarp_deform): Combine two loops over
the same xi, yi area into one. Remove the then actually unused
deform_area_vectors array. Only one element of the array was used
for each x,yi loop.

* plug-ins/common/sparkle.c: Don't include <math.h>,
libgimp/gimpmath.h includes it. Use G_PI.
1999-09-14 21:20:04 +00:00
Sven Neumann 5a8eb56643 bug-fixing...
--Sven
1999-09-13 11:03:37 +00:00
Sven Neumann 98d58ec1ef forgot the initialize pixmap_buf when the brush is not scaled
--Sven
1999-09-02 21:00:41 +00:00
Sven Neumann 42b6faccc0 I decided not to try to rewrite the brush_select dialog to make use of
the new preview widgets. This means code_duplication, but I don't want to
spend the whole weekend on this...


--Sven
1999-09-02 17:27:28 +00:00
jaycox 2b5130f08a free the brush dialog before freeing the brushes.
* app/app_procs.c: free the brush dialog before freeing the brushes.

	* app/blend.c, app/bucket_fill.c: don't include brush_select.h

	* app/brush_select.[ch]: add the ability to delete generated brushes.

	* app/gimpbrushgenerated.c: save the brush parameters on seperate lines.

	* app/gimpbrushlist.c: make sure we don't overwrite other brush
	files when saving newly created brushes.
1999-09-02 09:20:48 +00:00