Commit graph

41 commits

Author SHA1 Message Date
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 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 e66f2bd7be app/Makefile.am renamed...
2001-02-10  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gradient.[ch]: renamed...

	* app/gradient_editor.[ch]: ...to this

	* app/gradient_select.c: changed #include
2001-02-10 19:54:24 +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
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 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 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 c668aaa437 app/gradient.c reviewed the gradient code. The old code used to use list
2000-12-21  Sven Neumann  <sven@gimp.org>

	* app/gradient.c
	* app/gradient_select.[ch]: reviewed the gradient code. The old code
	used to use list indices which led to bug #35612 and other problems.
	We now attach a pointer to the gradient to each row in the GtkClists
	and retrieve the matching row for a gradient using
	gtk_clist_find_row_from_data(). Additionally I have added similar code
	as we use for brushes to assure that no two gradients have the same
	name.
2000-12-21 11:56:58 +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
Sven Neumann c9482821ab mostly header cleanup and i18n
--Sven
2000-01-31 23:59:05 +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 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
Sven Neumann f4b06fdb4c open the gradient editor on double-click
* app/gradient_select.c: open the gradient editor on double-click


--Sven
2000-01-05 19:20:00 +00:00
Michael Natterer 373e512dc1 Enable the popup menu containing only "New" in the whole area inside the
1999-12-02  Michael Natterer  <mitch@gimp.org>

	* app/palette.c: Enable the popup menu containing only "New" in
	the whole area inside the palette's scrolled window.
	This way you don't have to correctly hit the small line a newly
	created palette consists of.

	* app/gradient.c
	* app/gradient_select.c: Set the "Gradient" clist column to it's
	optimal size but ensure a minimal size, so the column title is
	fully visible with all languages and font sizes.
1999-12-02 21:04:47 +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 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
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 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 c73db058f3 closed the bug Xach reported on the list and made the previews correctly
update itself if brush/gradient changes.


--Sven
1999-09-02 14:46:58 +00:00
Sven Neumann cfc62108b0 added gradient preview to the toolbox.
--Sven
1999-09-01 11:29:39 +00:00
Michael Natterer a4c1e8a557 new ui for the "Layer Offset" dialog.
1999-07-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/channel_ops.[ch]: new ui for the "Layer Offset" dialog.

	* app/channels_dialog.c
	* app/layers_dialog.c: major code cleanup: Folded some callbacks
	into common ones, "widget" instead of "w", indentation, ...

	* app/commands.c
	* app/interface.[ch]
	* app/global_edit.c: the query boxes must be shown by the caller
	now. There's no need to split up the string for the message box
	manually as the Gtk 1.2 label widget handles newlines corectly.
	Added the "edge_lock" toggle to the "Shrink Selection" dialog.
	Nicer spacings for the query and message boxes.

	* app/ink.c: tried to grab the pointer in the blob preview but
	failed. Left the code there as a reminder (commented out).

	* app/menus.c: reordered <Image>/Select.

	I was bored and grep-ed the sources for ancient or deprecated stuff:

	* app/about_dialog.[ch]
	* app/actionarea.[ch]
	* app/app_procs.c
	* app/brush_edit.c
	* app/brush_select.c
	* app/color_select.c
	* app/convert.c
	* app/devices.c
	* app/gdisplay.c
	* app/gdisplay_ops.c
	* app/histogram_tool.[ch]
	* app/info_window.c
	* app/install.c
	* app/ops_buttons.c
	* app/palette.c
	* app/palette_select.c
	* app/paths_dialog.c
	* app/pattern_select.c
	* app/resize.c
	* app/scale_toolc.c
	* app/text_tool.c:
	s/container_border_width/container_set_border_width/g,
	s/sprintf/g_snprintf/g, replaced some constant string lengths with
	strlen(x).

	* app/bezier_select.c
	* app/blend.c
	* app/boundary.c
	* app/errors.[ch]
	* app/free_select.c
	* app/gimpbrushlist.c
	* app/gimprc.c
	* app/iscissors.c
	* app/main.c
	* app/patterns.[ch]
	* app/text_tool.c: namespace fanaticism: prefixed all gimp error
	functions with "gimp_" and formated the messages more uniformly.

	* app/gradient.c
	* app/gradient_select.c: same stuff as above for the ui
	code. There are still some sub-dialogs which need cleanup.

	Did some cleanup in most of these files: prototypes, removed tons
	of #include's, i18n fixes, s/w/widget/ as above, indentation, ...
1999-07-22 16:21:10 +00:00
Manish Singh f2622e5420 configure.in removed tips files, AC_SUBST GIMP_PLUGINS and GIMP_MODULES so
* configure.in
* Makefile.am: removed tips files, AC_SUBST GIMP_PLUGINS and
GIMP_MODULES so you can easily skip those parts of the build

* acinclude.m4
* config.sub
* config.guess
* ltconfig
* ltmain.sh: libtool 1.3.2

* app/fileops.c: shuffle #includes to avoid warning about MIN and
MAX

[ The following is a big i18n patch from David Monniaux
  <david.monniaux@ens.fr> ]

* tips/gimp_conseils.fr.txt
* tips/gimp_tips.txt
* tips/Makefile.am
* configure.in: moved tips to separate dir

* po-plugins: new dir for plug-in translation files

* configure.in: add po-plugins dir and POTFILES processing

* app/boundary.c
* app/brightness_contrast.c
* app/by_color_select.c
* app/color_balance.c
* app/convert.c
* app/curves.c
* app/free_select.c
* app/gdisplay.c
* app/gimpimage.c
* app/gimpunit.c
* app/gradient.c
* app/gradient_select.c
* app/install.c
* app/session.c: various i18n tweaks

* app/tips_dialog.c: localize tips filename

* libgimp/gimpunit.c
* libgimp/gimpunitmenu.c: #include "config.h"

* plug-ins/CEL
* plug-ins/CML_explorer
* plug-ins/Lighting
* plug-ins/apply_lens
* plug-ins/autostretch_hsv
* plug-ins/blur
* plug-ins/bmp
* plug-ins/borderaverage
* plug-ins/bumpmap
* plug-ins/bz2
* plug-ins/checkerboard
* plug-ins/colorify
* plug-ins/compose
* plug-ins/convmatrix
* plug-ins/cubism
* plug-ins/depthmerge
* plug-ins/destripe
* plug-ins/gif
* plug-ins/gifload
* plug-ins/jpeg
* plug-ins/mail
* plug-ins/oilify
* plug-ins/png
* plug-ins/print
* plug-ins/ps
* plug-ins/xbm
* plug-ins/xpm
* plug-ins/xwd: plug-in i18n stuff

-Yosh
1999-05-29 16:35:47 +00:00
Manish Singh b8c19394dc gave parasite undo a MISC_UNDO class for now so it compiles
* app/gimpdrawable.c: gave parasite undo a MISC_UNDO class for now
so it compiles

* app/tools_cmds.c: fix crop invoker to give correct args to
crop_image

* app/color_cmds.c: s/GRAY/GRAY_LUT/g;

* app/brush_select.[ch]: removed PDB procs, export brush_active_dialogs,
brush_select_dialog, s/active_dialogs/brush_active_dialogs/

* app/gimage_cmds.[ch]
* app/channel_ops.[ch]: removed channel ops PDB procs, moved duplicate
function from gimage_cmds to channel_ops, export offset and duplicate

* app/gimpbrushlist.[ch]: removed PDB procs

* app/gradient.[ch]: removed PDB procs,

* app/gradient_header.h: exported G_SAMPLE, GradSelect, num_gradients,
grad_active_dialogs, gradient_select_dialog

* app/gradient_select.c: removed PDB procs,
s/active_dialogs/grad_active_dialogs/

* app/patterns.[ch]: removed PDB procs

* app/pattern_select.[ch]: removed PDB procs,
s/active_dialogs/pattern_active_dialogs/

* app/procedural_db.c: removed PDB procs and supporting functions

* app/procedrual_db.h: fiddled with enums

* app/channel_cmds.[ch]
* app/drawable_cmds.[ch]
* app/parasite_cmds.[ch]: pdbgenned now, removed header files

* app/gimpparasite.c: minor cleanup

* app/internal_procs.c: use pdbgen stuff

* app/tools_cmds.c
* app/text_tool_cmds.c: updated from pdbgen

* app/brushes_cmds.c
* app/brush_select_cmds.c
* app/gradient_cmds.c
* app/gradient_select_cmds.c
* app/patterns_cmds.c
* app/pattern_select_cmds.c
* app/procedural_db_cmds.c: new pdbgen files

* app/Makefile.am: file shuffle (see above)

-Yosh
1999-04-23 20:54:02 +00:00
Michael Natterer 2f34216a2a app/brush_select.c app/channels_dialog.c app/color_select.c app/devices.c
1999-03-27  Michael Natterer  <mitschel@cs.tu-berlin.de>

        * app/brush_select.c
        * app/channels_dialog.c
        * app/color_select.c
        * app/devices.c
        * app/file_new_dialog.c
        * app/gradient_select.c
        * app/palette_select.c
        * app/pattern_select.c: applied a patch from Marco Lamberto
        <lm@geocities.com> which unifies actionareas ("Cancel" rightmost
        and default). Did the same in some more dialogs.

        * libgimp/gimpfileselection.c
        * libgimp/gimppatheditor.c
        * app/preferences_dialog.[ch]: completely reworked the preferences
        dialog:

        - select the notebook's pages with a tree.
        - reordered the categories. Please give me feedback, this really
          needs to be intuitive.
        - removed lots of unused #include's.
        - turned the prefs. dialog into a test site for new convenience
          constructors. These changes are however not visible. Flame me
          until they're perfect ;) When finished, this stuff can save
          *many* lines of gtk+ code.

        * modules/colorsel_gtk.c: made it circular.
1999-03-27 18:16:30 +00:00
Tor Lillqvist a27cedc001 First batch of changes to merge the Win32 version. This will be
done in pieces, don't expect to be able to compile on Win32 from
these sources yet.  Ans of course, the official version of GTk+
doesn't include the Win32 stuff yet.
1999-02-20 23:20:54 +00:00
GMT 1999 Andy Thomas 01d2a20548 New app/dialog_handler.c app/dialog_handler.h
Sun Jan 10 22:41:51 GMT 1999 Andy Thomas <alt@picnic.demon.co.uk>

	New
	* app/dialog_handler.c
	* app/dialog_handler.h

	Changed
	* app/disp_callbacks.c
	* app/gradient_select.c
	* app/tools.c
	* app/interface.c
	* app/patterns.c
	* app/gimpbrushlist.c
	* app/palette.c
	* app/layers_dialog.c
	* app/devices.c
	* app/errorconsole.c

	Can now hide/show all main dialogs using the TAB key in any window.
	However....
	there is a bug in gtk that causes the Gimp the crash if you show
	and then hide a lot of dialogs (eg if you have all dialogs visible
	and press the TAB key repeatedly). I have email-ed an example to
	the gtk bug list.
	Also I can't seem to be able to catch the SHIFT-TAB combination
	(suggestions welcome ;-) so the first press of the tab hide all
	dialogs the second press reshows only the toolbox and the third
	press reshows all. Comments please if you find this behaviour
	non-intuitive.
1999-01-10 23:20:33 +00:00
GMT 1998 Andy Thomas 1d591e95e6 Changed the palette dialog. New functionality. Better previews. Can
Fri Dec 18 23:46:11 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>

	Changed the palette dialog. New functionality. Better previews.
	Can display larger palettes. Can import palettes from images and from
	gradients. Fixed colour selection so that the hightlighted
	square says in sync on redraws.

	* app/convert.h
	* app/palette.h
	* app/palette.c
	* app/gradient.c
	* app/gradient_select.c
	* app/gimage.c
	* app/gimpimage.c
	* app/gimpimage.h

	New file:-

	* app/palette_entries.h
1998-12-19 00:00:06 +00:00
Manish Singh d2ea549d27 stuff from patches/i18n by Daniel Egger
* app/*: stuff from patches/i18n by Daniel Egger

* app/channels_dialog.c: fixes minor buglets in the channels dialog

-Yosh
1998-12-16 00:37:09 +00:00
Manish Singh 3fcc361159 app/gradient.c s/gtk_clist_set_border/gtk_clist_set_shadow_type/
* app/gradient.c
* app/gradient_select.c:
s/gtk_clist_set_border/gtk_clist_set_shadow_type/

* configure.in
* libgimp/Makefile.am
* app/Makefile.am: use GIMP_THREAD_FOO substitution

* app/gimage_cmds.c: initialize some vars to quell warnings

-Yosh
1998-12-01 23:19:01 +00:00
GMT 1998 Andy Thomas 66cd5c1678 app/gradient.c app/gradient_select.c
Thu Nov  5 21:55:46 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>

	* app/gradient.c
	* app/gradient_select.c

	Changes due to gtk+ updates. Clist have been changed recently
	in gtk which required changes to source code. These changes
	have only been tested with the gtk version that introduced these
	changes. (so lets get all those updates going...)
1998-11-05 23:10:31 +00:00
GMT 1998 Andy Thomas 08000c86de app/gradient.c app/Makefile.am
Wed Nov  4 22:23:18 GMT 1998 Andy Thomas <alt@picnic.demon.co.uk>

	* app/gradient.c
	* app/Makefile.am

	New files

	* app/gradient_select.c
	* app/gradient_header.h

	Split gradient selector dialog out of the main gradient code.
	New gradient headerfile that contains the key gradient structures
	and #defines.
1998-11-04 23:30:18 +00:00