Commit Graph

66 Commits

Author SHA1 Message Date
Sven Neumann aa1d33554a sink the GtkPreview created for the splash.
2001-11-21  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: sink the GtkPreview created for the splash.

	* libgimpwidgets/gimphelpui.c: ref and sink the tooltips on creation.
2001-11-21 19:42:51 +00:00
Michael Natterer fda881c51d g_strdup (g_get_temp_dir ()), may fix an unseen crash.
2001-08-01  Michael Natterer  <mitch@gimp.org>

	* app/base/base.c: g_strdup (g_get_temp_dir ()), may fix an unseen
	crash.

	* libgimpwidgets/gimphelpui.[ch]: fixed the help stuff by using
	GtkWidget's new "show_help" signal, which is exactly what we did
	before, only without badly hacking around.
	Renamed gimp_help_connect_help_accel() to gimp_help_connect()
	because that's what it does.

	* app/devices.c
	* app/errorconsole.c
	* app/interface.c
	* app/gui/about-dialog.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gradients-commands.c
	* app/gui/gui.c
	* app/gui/info-dialog.c
	* app/gui/palettes-commands.c
	* app/gui/paths-dialog.c
	* app/gui/select-commands.c
	* app/gui/tips-dialog.c
	* app/gui/toolbox.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpdatafactoryview.c
	* libgimpwidgets/gimpdialog.c
	* plug-ins/FractalExplorer/FractalExplorer.c
	* plug-ins/common/CEL.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/gee.c
	* plug-ins/common/gee_zoom.c
	* plug-ins/common/gqbist.c
	* plug-ins/flame/flame.c
	* plug-ins/fp/fp_gtk.c
	* plug-ins/script-fu/script-fu-scripts.c: changed accordingly,
	GObject stuff, sprinkled some GTK_STOCK_FOOs, minor cleanups.
2001-07-31 23:28:56 +00:00
Sven Neumann 0f6ab278ae removed g_signal_handlers_disconnect_by_data again. As Owen pointed out,
2001-07-31  Sven Neumann  <sven@gimp.org>

	* app/core/core-types.h: removed g_signal_handlers_disconnect_by_data
	again. As Owen pointed out, it's generally a bad idea to use it since
	you can't be absolutely sure that no one else has a pointer to the
	data you are disconnecting.

	* app/gdisplay.c: added the macro here temporarily.

	* app/module_db.c
	* app/undo_history.c
	* app/gui/brush-editor.c
	* app/gui/brush-select.c
	* app/gui/gradient-select.c
	* app/gui/pattern-select.c: use g_signal_handlers_disconnect_by_func.

	* libgimpwidgets/gimpbutton.c
	* libgimpwidgets/gimpchainbutton.c
	* libgimpwidgets/gimpcolorarea.c
	* libgimpwidgets/gimpcolorbutton.c
	* libgimpwidgets/gimpfileselection.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimpoffsetarea.c
	* libgimpwidgets/gimppatheditor.c
	* libgimpwidgets/gimpsizeentry.c
	* libgimpwidgets/gimpunitmenu.c
	* libgimpwidgets/gimpwidgets.c: GObject porting.
2001-07-31 11:33:13 +00:00
Michael Natterer 06b16890ba Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)
2001-07-24  Michael Natterer  <mitch@gimp.org>

	Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)

	* configure.in: require glib/gtk+ >= 1.3.7, commented out the
	gtkxmhtml stuff.

	From now on, you will need glib, pango, atk and gtk+ HEAD from CVS
	to hack or use GIMP HEAD.

	Beware, it crashes randomly :)

	* app/core/Makefile.am
	* app/core/gimpmarshal.list: new file plus rules to generate
	gimpmarshal.[ch] from it.

	* app/core/*
	* app/tools/*
	* app/widgets/*
	* libgimpwidgets/*: started to use the glib object system. All
	core/ objects are still gtk objects however. All signals are
	created using g_signal_new(). There are many gtk+ artefacts left.
	Finally, we will _not_ use the gtk_signal_foo() wrappers and
	friends any more.

	* app/colormaps.c
	* app/devices.[ch]
	* app/disp_callbacks.c
	* app/errorconsole.c
	* app/file-save.[ch]
	* app/interface.c
	* app/module_db.c
	* app/nav_window.c
	* app/ops_buttons.c
	* app/scroll.c
	* app/user_install.c
	* app/gui/about-dialog.c
	* app/gui/brush-editor.c
	* app/gui/brushes-commands.c
	* app/gui/color-notebook.c
	* app/gui/colormap-dialog.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/file-commands.c
	* app/gui/file-dialog-utils.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.c
	* app/gui/gradient-editor.c
	* app/gui/gradients-commands.c
	* app/gui/image-commands.c
	* app/gui/info-dialog.[ch]
	* app/gui/layer-select.c
	* app/gui/layers-commands.c
	* app/gui/menus.c
	* app/gui/offset-dialog.c
	* app/gui/palette-editor.c
	* app/gui/palettes-commands.c
	* app/gui/patterns-commands.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.[ch]
	* app/gui/splash.c
	* app/gui/tips-dialog.c
	* app/gui/tool-options-dialog.c
	* app/gui/toolbox.c
	* app/gui/tools-commands.c
	* libgimp/gimpbrushmenu.c
	* libgimp/gimpmenu.c
	* libgimp/gimppatternmenu.c
	* libgimp/gimpui.c
	* libgimpbase/gimpenv.c: tons and tons of changes like "const
	gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete
	and currently disables), lots of s/gtk_signal/g_signal/,
	removal/replacement of deprecated stuff,
	s/GtkSignalFunc/GCallback/ and lots of small changes and fixes
	while I was on it, zillions of warnings left...

	* modules/Makefile.am: disabled the water color selector
	temporarily (XInput issues).

	* plug-ins/Makefile.am
	* plug-ins/common/.cvsignore
	* plug-ins/common/Makefile.am
	* plug-ins/common/plugin-defs.pl: simply excluded all plug-ins
	which did not build (including Script-Fu). They are trivial to
	fix.
2001-07-24 21:27:11 +00:00
Michael Natterer 7a4260da70 Makefile.am configure.in added the new library below.
2001-01-24  Michael Natterer  <mitch@gimp.org>

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

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

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

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

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

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

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

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

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

	* po-libgimp/POTFILES.in: changed file locations.
2001-01-24 22:36:18 +00:00
Michael Natterer 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
Michael Natterer cdd0a5147d app/fileops.c Make sure that we don't try to destroy query_boxes twice or
2000-11-18  Michael Natterer  <mitch@gimp.org>

	* app/fileops.c
	* libgimp/gimpquerybox.[ch]: Make sure that we don't try to destroy
	query_boxes twice or try to disconnect not-any-more connected
	handlers.

	* app/color_notebook.c
	* app/gimpcontext.[ch]
	* app/gimphelp.[ch]
	* app/lc_dialog.[ch]
	* app/menus.h
	* app/preferences_dialog.c
	* app/tools.[ch]
	* libgimp/gimpcolorbutton.[ch]
	* libgimp/gimpdialog.[ch]
	* libgimp/gimpexport.[ch]
	* libgimp/gimpfileselection.[ch]
	* libgimp/gimphelpui.[ch]
	* libgimp/gimppatheditor.[ch]
	* libgimp/gimppixmap.[ch]
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpui.[ch]
	* libgimp/gimpunitmenu.[ch]
	* libgimp/gimpwidgets.[ch]: in a coding attack, changed help_data
	and many other strings passed to UI functions to (const gchar *).
	As a consequence, I had to fix lots of warnings ;)

	* plug-ins/common/tga.c
	* plug-ins/imagemap/imap_main.c: fixed warnings.

	Code cleanup and indentation all over the place.
2000-11-18 00:25:42 +00:00
Michael Natterer 804af727f6 app/gimpunit.c all libgimp headers are included via gimp.h or gimpui.h, so
2000-05-31  Michael Natterer  <mitch@gimp.org>

	* app/gimpunit.c
	* libgimp/*: all libgimp headers are included via gimp.h or
	gimpui.h, so include <gtk/gtk.h> there and in the *.c files.
	Various cleanups.
2000-05-30 23:38:46 +00:00
Michael Natterer 9c6b0b0c33 These changes enable help support for 3rd party plug-ins which install
2000-05-21  Michael Natterer  <mitch@gimp.org>

	These changes enable help support for 3rd party plug-ins which
	install their help files outside GIMP's main help dir.

	Instead of calling gimp_help(), gimp_plugin_help_func() etc.,
	all help callbacks now have to call gimp_standard_help_func()
	which has different implementations in the app and in libgimp.

	There is a new function gimp_plugin_help_register() which can
	be called during plug-in query. plug_in.c keeps a list of
	executable_name/help_path pairs. Plug-ins have to pass their
	exec. name to gimp_help() which uses the list to find the plug-in's
	help directory.

	* app/gimphelp.[ch]: gimp_help() now takes a help_path parameter.
	help_path == NULL means the standard help directory. Various
	changes to pass the help_path to the help browser.

	* app/gimprc.c: save the plug-in's help_path in the pluginrc file.

	* app/menus.c: ugly hack to enable help_paths in the "F1" callback.

	* app/plug_in.[ch]: many help_path related changes. Use g_basename()
	instead of strrchr(str,G_DIR_SEPARATOR), cosmetic cleanups.

	* app/internal_procs.c
	* app/gimphelp_cmds.c
	* tools/pdbgen/pdb/gimphelp.pdb: new procedure
	gimp_plugin_help_register(). gimp_help() takes a second parameter
	which is the executable name (not the help_path).

	* app/color_notebook.c
	* app/commands.c
	* app/lc_dialog.c
	* app/preferences_dialog.c
	* app/tools.c: call gimp_standard_help_func() instead of gimp_help().

	* libgimp/gimp.c: new function gimp_get_progname() which returns
	the full path of the plug-in's executable.

	* libgimp/gimp.h: export the new function,
	removed gimp_plugin_help_func(), gimp_help() takes the executable
	name as second parameter.

	* libgimp/gimpcompat.h: added gimp_plugin_help_func().

	* libgimp/gimphelp.c: a wrapper for gimp_plugin_help_register(),
	changed the calls to gimp_help.

	* libgimp/gimphelpui.[ch]: call gimp_standard_help_func() instead
	of gimp_help().

	* plug-ins/helpbrowser/helpbrowser.c: now called with an additional
	help_path parameter. Various changes to enable
	help_path != gimp_standard_help_path.

	Unrelated stuff:

	* app/batch.h: added missing GPL header.

	* app/gimpunit.c: had a LGPL header, merged some fprintf's into
	one call.

	* app/procedural_db.[ch]: cosmetic: g* types, s/g_malloc/g_new/,
	prototypes, indentation.

	* app/resize.c: use less packing widgets. didn't find the "offset"
	redraw bug :(
2000-05-21 17:41:02 +00:00
Michael Natterer cb9243e481 added documentation.
2000-02-27  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimphelpui.c: added documentation.

2000-02-27  Michael Natterer  <mitch@gimp.org>

	* libgimp/tmpl/gimphelpui.sgml: updated.
2000-02-27 12:34:13 +00:00
Michael Natterer 882c240a38 libgimp/gimphelpui.[ch] added some not-yet-complete documentation.
2000-02-26  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimphelpui.[ch]
	* libgimp/gimpdialog.c: added some not-yet-complete documentation.

2000-02-26  Michael Natterer  <mitch@gimp.org>

	* libgimp/libgimp-decl.txt
	* libgimp/libgimp-docs.sgml
	* libgimp/libgimp-sections.txt
	* libgimp/tmpl/gimp.sgml
	* libgimp/tmpl/gimpdialog.sgml
	* libgimp/tmpl/gimphelpui.sgml
	* libgimp/tmpl/gimpunit.sgml
	* libgimp/tmpl/gimpwidgets.sgml: updated.
2000-02-26 14:28:08 +00:00
Sven Neumann 2d578df303 excluded gserialize.[ch] from the build
* libgimp/Makefile.am: excluded gserialize.[ch] from the build

* libgimp/*: header cleanup


--Sven
2000-02-26 03:41:06 +00:00
Michael Natterer 9f92453c56 app/gdisplay_ops.c app/gradient.c app/palette.c removed the "eek" wilber
2000-02-12  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/gdisplay_ops.c
	* app/gradient.c
	* app/palette.c
	* plug-ins/gflare/gflare.c: removed the "eek" wilber from all
	query boxes except the "Quit the GIMP?" warning.

	* libgimp/gimpfileselection.c
	* libgimp/gimpunitmenu.c: be a bit more clever with widget signals
	(destroy, unmap) which affect the widget's sub-dialogs.

	* libgimp/gimphelpui.c: pass a GtkWindow, not a GtkWidget to
	gimp_dialog_set_icon().

	* libgimp/gimpquerybox.[ch]: added documentation.
2000-02-12 13:07:59 +00:00
Michael Natterer d5e99ee9a5 app/gimphelp.h libgimp/gimp.h declare the gimp_standard_help_func in
2000-01-11  Michael Natterer  <mitch@gimp.org>

	* app/gimphelp.h
	* libgimp/gimp.h
	* libgimp/gimphelpui.[ch]: declare the gimp_standard_help_func in
	gimphelpui.h because libgimp widgets must not include libgimp/gimp.h.

	* libgimp/gimpdialog.c
	* libgimp/gimpexport.c
	* libgimp/gimpunitmenu.c: use the dialog constructor for the
	export dialog and the unit selection.

	* plug-ins/gpc/gpc.[ch]
	* plug-ins/megawidget/megawidget.[ch]: removed unused functions
	(dialog creation and some other stuff). The rest of these libs is
	scheduled for removal, too...

	* plug-ins/AlienMap/AlienMap.c
	* plug-ins/AlienMap/Makefile.am
	* plug-ins/AlienMap2/AlienMap2.c
	* plug-ins/AlienMap2/Makefile.am
	* plug-ins/borderaverage/Makefile.am
	* plug-ins/borderaverage/borderaverage.c
	* plug-ins/common/align_layers.c
	* plug-ins/common/blur.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/compose.c
	* plug-ins/common/decompose.c
	* plug-ins/common/gauss_iir.c
	* plug-ins/common/gauss_rle.c
	* plug-ins/common/mapcolor.c
	* plug-ins/common/max_rgb.c
	* plug-ins/common/mblur.c
	* plug-ins/common/noisify.c
	* plug-ins/common/spread.c
	* plug-ins/common/xbm.c
	* plug-ins/common/xpm.c
	* plug-ins/fp/Makefile.am
	* plug-ins/fp/fp_gtk.c
	* plug-ins/rcm/Makefile.am
	* plug-ins/rcm/rcm_callback.[ch]
	* plug-ins/rcm/rcm_dialog.c
	* plug-ins/sinus/sinus.c: standard ui (spacings etc.) for some
	more plugins. Did some indentation, prototyping and I18N fixes.
2000-01-11 15:48:00 +00:00
Michael Natterer b9ff380742 make sure that the help signals are created for all widget classes where
2000-01-07  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimphelpui.c: make sure that the help signals are
	created for all widget classes where we need them.

	* plug-ins/common/Makefile.am
	* plug-ins/common/edge.c
	* plug-ins/common/emboss.c
	* plug-ins/common/engrave.c
	* plug-ins/common/exchange.c
	* plug-ins/common/film.c
	* plug-ins/common/flarefx.c
	* plug-ins/common/fractaltrace.c
	* plug-ins/common/gauss_iir.c
	* plug-ins/common/gauss_rle.c
	* plug-ins/common/gbr.c
	* plug-ins/common/gee.c
	* plug-ins/common/gicon.c
	* plug-ins/common/gif.c
	* plug-ins/common/glasstile.c
	* plug-ins/common/gpb.c
	* plug-ins/common/gqbist.c
	* plug-ins/common/grid.c
	* plug-ins/common/gtm.c: more plugins which use the dialog
	constructor. Did some code formating and indentation.
2000-01-06 22:26:10 +00:00
Michael Natterer ee6ad0e212 removed most functions. Show the help page in an idle function to avoid
2000-01-05  Michael Natterer  <mitch@gimp.org>

	* app/gimphelp.[ch]: removed most functions. Show the help page in
	an idle function to avoid confusion with calling the temporary
	help browser procedure in the middle of the "gimp_help" PDB call.
	(I beleive this should work, so this is maybe a workaround for
	some other bug).

	* app/gimpui.[ch]: removed the dialog functions.

	* libgimp/Makefile.am
	* libgimp/gimpdialog.[ch]
	* libgimp/gimphelp.c
	* libgimp/gimphelpui.[ch]: new files. Moved most of the help
	functions and the dialog constructors to libgimp and libgimpui.

	* libgimp/gimp.h: declaration of the "gimp_help*" functions.

	* libgimp/gimpui.h: include "gimpdialog.h" and "gimphelpui.h".

	* plug-ins/common/grid.c: use the dialog constructor. It's now
	possible to show the plugin's help with "F1".
2000-01-05 15:47:06 +00:00