Commit Graph

111 Commits

Author SHA1 Message Date
Sven Neumann 5b205f17eb make the file_save dialog sensitive again if the user clicked "No" when
2000-08-23  Sven Neumann  <sven@gimp.org>

	* app/fileops.c: make the file_save dialog sensitive again if the
	user clicked "No" when asked if he wishes to overwrite a file.

	* app/gimpimage.c: when saving an undoable parasite, just do it
	without calling undo_push_cantundo(). Undoable parasites are used
	by many save plug-ins to attach a comment, but this operation
	shouldn't prevent the user from using the undo_stack afterwards.
	The JPEG plug-in has an additional bug that I couldn't solve, so
	undoing after a Save As JPEG is still impossible.

	* app/undo_history.c: lame attempt to draw the clean symbol at the
	correct undo step. Not perfect but much better as before...
2000-08-23 19:29:01 +00:00
BST 2000 Austin Donnelly 42839da35b fix nasty bug where if overwriting a file and also changing the format,
Fri Aug 18 18:14:35 BST 2000 Austin Donnelly <austin@gimp.org>

	* app/fileops.c: fix nasty bug where if overwriting a file and
	    also changing the format, gimp would use the old format
    	    rather than the newly selected one.  To repeat: save a new
    	    image as (eg) jpeg by typing foo.jpg<RET>, then Save As XCF by
    	    using the pop-up menu and clicking OK, then Save As jpeg by
    	    using pop-up and clicking OK, and OK again to allow the file
    	    to be overwritten.  You should find that foo.jpg contains an
    	    XCF version of the image.  This was because the "overwrite"
    	    path through the code was subtly different from the standard
    	    way through, meaning that gimage_set_save_proc() was never
    	    called.  Now unified into new function file_save_with_proc().
2000-08-18 17:24:30 +00:00
Nick Lamb /GIMP 3815e91164 I venture once again into app/ to fix #11701.
This fix is somewhat evil. Tell me (rather than reverting it)
if you find a case for which it does not work.
2000-08-17 21:22:11 +00:00
Sven Neumann d42269996a unified messages in fileops.c and updated german translation
--Sven
2000-05-11 17:03:52 +00:00
Michael Natterer 5948e2ab51 app/fileops.c return silently from save/save_as and grey out the menu
2000-05-08  Michael Natterer  <mitch@gimp.org>

	* app/fileops.c
	* app/gdisplay.c: return silently from save/save_as and grey out
	the menu entries if there is no active drawable. Fixes #10239.
2000-05-08 00:40:10 +00:00
Michael Natterer 031e3dea86 app/app_procs.c named all public functions document_index_*(). Don't
2000-05-07  Michael Natterer  <mitch@gimp.org>

	* app/app_procs.c
	* app/docindex.[ch]: named all public functions document_index_*().
	Don't loop/segfault when opening an old "ideas" file but silently
	skip the first line.

	* app/fileops.[ch]: do some file access sanity checks before
	actually calling the load/save proc. Show the full file name
	in all error messages. Use a query_boolean_box for the overwrite
	warning. Made file_save() static.
	Also copied some Win32 #define's from libgimp/gimpenv.c for the
	file access stuff. Tor, could you have a look at them please?
2000-05-07 17:47:24 +00:00
Michael Natterer c73b233f8a app/color_select.c app/colormaps.[ch] removed unused global variables
2000-04-26  Michael Natterer  <mitch@gimp.org>

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

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

	* app/[62 files]: removed #include's (started with colormaps.h and
	couldn't stop). Also ordered them consistently and did some small
	unrelated cleanups.
	Removed variuos <stdlib.h> et.al. but checked the files carefully
	before doing so. If I was too radical and you get warnings on your
	platform, please flame me or just put them back :)
2000-04-27 17:27:28 +00:00
Sven Neumann 62546d89d4 implemented the changes Nick Lamb suggested: If the background layer has
* libgimp/gimpexport.c: implemented the changes Nick Lamb
suggested:  If the background layer has no alpha channel,
suggest "Flatten" instead of "Merge Visible Layers".

* app/fileops.c: In the MRU list and the doc_index always store
the absolute path to images, so you can open files from the
command-line and gimp will find them later if started from another
dir. Added tooltips that show the full path.

* app/menus.c: fixed a memleak (list entries were not freed on
removal from the MRU list).

* app/main.c
* app/user_install.[ch]: renamed functions and variables to match
the new filename.


--Sven
2000-04-07 20:04:00 +00:00
Sven Neumann 949b6e3f34 changed GIMP_MIN_RESOLUTION to 5e-3,
a bunch of small cleanups here and there


--Sven
2000-04-06 18:59:48 +00:00
Sven Neumann b7940e1ebf new function gimp_dialog_hide() that calls gdk_window_withdraw() after
gtk_widget_hide() so dialogs actually go away even if the user iconified
them before. Should fix bugs #2961, #5293, #6441 and #7849.


--Sven
2000-03-28 23:02:05 +00:00
Sven Neumann e585b34327 hide the file_selector when the main dialog is unmapped
* app/curves.c:
* app/levels.c: hide the file_selector when the main dialog is unmapped

* app/fileops.c: indentation


--Sven
2000-03-27 19:57:02 +00:00
Sven Neumann c6b6cd9d7a app/fileops.c when reverting an image, reconnect all affected views to the
* app/fileops.c
* app/gdisplay.[ch]: when reverting an image, reconnect all
  affected views to the reverted version. This fixes one of the
  bugs Tigert pointed out at GUADEC.

* app/gimage_mask.[ch]
* app/flip_tool.c: cleanups


--Sven & Mitch
2000-03-21 03:19:11 +00:00
Sven Neumann 864fb49354 fixed bugs #7078 and #2291
--Sven
2000-03-12 01:34:45 +00:00
Sven Neumann 24bbdbef07 applied a bunch of patches:
Simon Budigs patch sent to the list Sun, 20 Feb 2000
gimp-kirchgessner-000217-0
gimp-cosmin-20000212
gimp-mattias-000227-0


--Sven
2000-03-10 17:27:25 +00:00
Sven Neumann f530f0dbb1 the ultimate solution to the i18n problem
--Sven
2000-02-23 20:25:24 +00:00
Marc Lehmann 737a8e2fc5 *** empty log message *** 2000-02-20 17:59:00 +00:00
Sven Neumann 6cba1d70ea when loading an image, check that gimage_id != -1
--Sven
2000-01-26 17:40:03 +00:00
Michael Natterer fa30ba04c7 configure.in po-plug-ins/POTFILES.in plug-ins/common/Makefile.am
2000-01-25  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* po-plug-ins/POTFILES.in
	* plug-ins/common/Makefile.am
	* plug-ins/common/plugin-defs.pl
	* plug-ins/megawidget/*: removed. (There were only 3 functions
	left which were used by ~5 plugins, so I moved the resp. functions
	to the plugins). More preview stuff to come...

	* app/airbrush_blob.c
	* modules/colorsel_triangle.c
	* modules/colorsel_water.c: use G_PI instead of M_PI.

	* app/procedural_db.h
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: new PDB return value STATUS_CANCEL which
	indicates that "Cancel" was pressed in a plugin dialog. (Useful
	only for file load/save plugins).

	* app/fileops.[ch]
	* app/menus.c: changes to handle STATUS_CANCEL correctly. Did some
	code cleanup in fileops.[ch]. Pop up a warning if File->Save
	failed.

	* app/plug_in.c: return_val[0] is of type PDB_STATUS, not
	PDB_INT32.

	* libgimp/gimpmath.h: new constant G_MAXRAND which equals to
	RAND_MAX if it exists or to G_MAXINT otherwise.

	* libgimp/gimpwidgets.[ch]: new function gimp_random_seed_new()
	which creates a spinbutton and a "Time" toggle.
	Call the function which does the "set_sensitive" magic from the
	radio button callback.

	* plug-ins/[75 plugins]:

	- Return STATUS_CANCEL in all file load/save dialogs if "Cancel"
	  was pressed.
	- Standardized the file plugins' "run" functions.
	- Use G_PI and G_MAXRAND everywhere.
	- Added tons of scales and spinbuttons instead of text entries.
	- Applied uniform packing/spacings all over the place.
	- Reorganized some UIs (stuff like moving the preview to the top
	  left corner of the dialog).
	- Removed many ui helper functions and callbacks and use the stuff
	  from libgimp instead.
	- I tried not to restrict the range of possible values when I
	  replaced entries with spinbuttons/scales but may have failed,
	  though in some cases. Please test ;-)
	- #include <libgimp/gimpmath.h> where appropriate and use it's
	  constants.
	- Indentation, s/int/gint/ et.al., code cleanup.

	RFC: The plugins are definitely not useable with GIMP 1.0 any
	     more, so shouldn't we remove all the remaining compatibility
	     stuff ??? (like "#ifdef GIMP_HAVE_PARASITES")
2000-01-25 17:46:56 +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
Marc Lehmann 521be42192 *** empty log message *** 2000-01-01 22:10:41 +00:00
Sven Neumann e713f9bae3 Use our new (sligtly compressed) layout of gtk_file_selection all over the
place.


--Sven
1999-12-30 20:16:58 +00:00
Sven Neumann 0b58c9c94b dialog and keybinding tweaks, i18n issues
--Sven
1999-12-29 16:53:41 +00:00
Sven Neumann 5135d61119 new PDB functions: file_[load|save]_thumbnail
--Sven
1999-12-14 19:38:39 +00:00
Sven Neumann 73ff9a1757 cosmetic stuff
--Sven
1999-12-14 14:10:34 +00:00
Sven Neumann 407e8008b6 fixed (or broke?) single thumbnail creation
--Sven
1999-11-27 03:11:50 +00:00
Michael Natterer b6a3dd5acf app/app_procs.c app/channels_dialog.c app/fileops.c app/gdisplay.c
1999-11-23  Michael Natterer  <mitch@gimp.org>

	* app/app_procs.c
	* app/channels_dialog.c
	* app/fileops.c
	* app/gdisplay.c
	* app/gdisplay_ops.c
	* app/layers_dialog.c
	* app/menus.[ch]
	* app/paths_dialog.c
	* app/plug_in.c: removed
	menus_set_[sensitive|state]_glue(). Removed the N_()'s from all
	menu paths which are not eventually passed to
	gtk_item_factory_create_item().

	* app/tool_options.c: minor updates.

	* app/file_new_dialog.c: reordered the action_area buttons.
1999-11-23 19:11:29 +00:00
Michael Natterer e46eaf8687 Reorganized the core menu items (everything except <Image>/Filters).
1999-11-20  Michael Natterer  <mitch@gimp.org>

	Reorganized the core menu items (everything except
	<Image>/Filters). Everything is of course trivial to change again,
	so please comment on the new "menu feeling" ;-)

	* app/menus.[ch]:

	- Applied the suggestions collected by Olof.
	- Added "..." to all items which open a dialog.
	- Introduced some additional separators (e.g. in "Dialogs").
	- Reorder some plugins and the color correct tools after
	  initialisation.
	- A menu entry to invoke the tooltips inspector.
	- A debugging menu entry which dumps the menu paths and their help
	  pages (will of course go away when the help sys is consistent).

	There are currently two identical "Help" menus because
	<Toolbox>/Help trashes the menu bar if the toolbox is too narrow
	(gtk doesn't seem to support multi-line menubars, any idea?)

	* app/app_procs.c: call menus_reorder_plugins() after loading the
	plugins to beautify the "Xtns" menu.

	* app/commands.[ch]: reordered some functions to match the new
	menu structure (for easier source navigation) and renamed some to
	be consistent (e.g. all help functions are now called help_*).

	Show/Hide the rulers with ordinary gtk_widget_[show|hide]()
	commands. I've tested it several times and it looks exactly the
	same as the old code which used internal gtk knowledge.

	* app/gdisplay.c: applied the menu changes to
	gdisplay_set_menu_sensitivity().

	* app/gimphelp.[ch]: new public function gimp_context_help() which
	invokes the tooltips inspector. Code cleanup.

	* app/resize.c: changed the dialogs' titles to match the menu entries.

	* app/session.c: renamed the gradient selection cmd callback to be
	consistent with brushes/patterns.

	* app/tools.c: added "..." to the menu paths of the tools which
	have dialogs.

	* app/fileops.c
	* app/channels_dialog.c
	* app/layers_dialog.c
	* app/paths_dialog.c: added some "...".

	* plug-ins/common/align_layers.c
	* plug-ins/common/autostretch_hsv.c
	* plug-ins/common/c_astretch.c
	* plug-ins/common/color_enhance.c
	* plug-ins/common/compose.c
	* plug-ins/common/decompose.c
	* plug-ins/common/mail.c
	* plug-ins/common/normalize.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/dbbrowser/dbbrowser.c
	* plug-ins/fp/fp.c
	* plug-ins/print/print.c
	* plug-ins/rcm/rcm.c: changed the menu paths and added "...".
1999-11-20 12:12:41 +00:00
GMT 1999 Adam D. Moss 754af91ba1 Fix multi-thumbnail code oversight causing double load-and-thumbnailing of
Wed Nov 17 20:07:08 GMT 1999  Adam D. Moss <adam@gimp.org>

	* app/fileops.c: Fix multi-thumbnail code oversight
	causing double load-and-thumbnailing of first/only image.
1999-11-17 20:10:53 +00:00
Marc Lehmann 3e965c2c44 *** empty log message *** 1999-11-15 01:30:43 +00:00
Sven Neumann 2a47f098f2 applied a (modified) patch from Rene Rebe <rene.rebe@okay.net> that allows
* app/fileops.c:
        applied a (modified) patch from Rene Rebe <rene.rebe@okay.net>
        that allows to generate previews for multiple files. Plugged
        some small memleaks while I was on it.

        * tools/pdbgen/pdb/gimage.pdb
        * app/gimage_cmds.c
        * app/xcf.c: plugged memleaks that occured on xcf and indexed load

        * po/fr.po: applied a patch from Daniel Eggert that fixes a merging
        problem in the french translation

--Sven
1999-11-09 14:10:09 +00:00
Michael Natterer b3144e7ccc app_procs.c app/commands.[ch] app/interface.c app/menus.c app/session.c
1999-10-30  Michael Natterer  <mitch@gimp.org>

	* app_procs.c
	* app/commands.[ch]
	* app/interface.c
	* app/menus.c
	* app/session.c
	* app/tools.[ch]: namespace cleanups: changed the
	"tools_options_*" functions to "tool_options_*" and prefixed all
	dialog menu callbacks with "dialogs_*".
	Allow dropping a tool to the tool options dialog.

	* app/bezier_select.c: change the active tool using context
	functions.

	* app/dialog_handler.[ch]: replaced the uppercase datatype names
	by standard mixed upper/lowercase ones. Provide a function to
	register the fileload dialog instead of accessing it as global
	variable.

	* app/disp_callbacks.c: switch to the move tool using context
	functions. Fixed the drop color/pattern functions to convert the
	dropped thing to the dest. image's color space.

	* app/fileops.c: don't export the fileload dialog as global
	variable but register it with the dialog handler instead.

	* app/paths_dialog.[ch]: replaced all the uppercase struct names
	defined here by mixed upper/lowercase. Introduced a
	"set_menu_sensitivity" function like in layers/channels instead of
	calling single button on/off functions from various places.
	Added a menu entry for "Selection to Path".
1999-10-30 10:39:48 +00:00
Nick Lamb /GIMP cb1e0ba121 Fix #3179 (Revert uses wrong filename) 1999-10-30 09:15:18 +00:00
Nick Lamb /GIMP 500f5ae2cb Really fixed #2152 this time. Yosh asked me to rename *_OK as PLUG_IN_*
so that's also changed this time.
1999-10-19 04:58:17 +00:00
Nick Lamb /GIMP 7590b2da36 Fixed #2169 and as a side-effect discovered that RGB_IMAGE means
something quite different for app vs plug-ins. The one in app is
now called RGB_IMAGE_OK to differentiate them.
1999-10-19 04:24:21 +00:00
Manish Singh d0519fd33d use G_OS_WIN32 and G_HAVE_CYGWIN #defines
* app/app_procs.c
* app/gdisplay_color.[ch]
* app/gdisplay_color_ui.c: make the ui usable

* app/gdisplay.c: enable cdisplay support

* modules/Makefile.am
* modules/cdisplay_gamma.c: moved gamma functionality to separate

-Yosh
1999-10-04 19:26:07 +00:00
Michael Natterer 5a01821b1f EEEEEEEEEEK!!! 1999-10-04 08:40:33 +00:00
Michael Natterer 3ed87f4aa4 app/fileops.c app/menus.[ch] app/menus.h show a help page for all menu
1999-10-03  Michael Natterer  <mitch@gimp.org>

	* app/fileops.c
	* app/menus.[ch]
	* app/menus.h
	* app/plug_in.c: show a help page for all menu entries registered
	by plugins.
	Changed menus_create() to menus_create_item_from_full_path() which
	takes a single GimpItemFactoryEntry instead of an array as
	parameter.
1999-10-03 16:54:17 +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
Austin Donnelly 11409e97fb comment typo fix, plus add %D* to default image-title-format string, so
Fri Oct  1 12:46:12 1999  Austin Donnelly  <austin@gimp.org>

	* gimprc.in: comment typo fix, plus add %D* to default
	    image-title-format string, so people get a '*' in the titlebar
	    if their image is dirty.
	* app/fileops.c: initialise filename before using it.
	* app/gdisplay.c: empty parameter list () is K&R - should be
	    stronger (void) in ANSI C.
	* app/gimpdrawable.c: gimp_drawable_{dirty,clean} functions
	    removed - no one uses them anyway.  Parasite undo type is
	    proper parasite undo type, not MISC_UNDO.
	* app/gimpdrawableP.h: drawable dirty bit removed.
	* app/gimpimage.c: don't change the resolution if there's no
	    difference from the old one.  Call gdisplay_shrink_wrap() to
	    re-calculate scale factors and refresh the display on
	    resolution change.  Layer undo doesn't have sub-types
	    anymore, uses main UndoType instead.
	* app/layer.h: Remove LayerUndoType
	* app/qmask.c: fix qmask undo so it actually works.
	* app/undo.h: new types for undo_push_layer{,_mask} and
	    undo_push_qmask.
	* app/undo.c: change way group boundaries are represented:
	    each Undo has a group_boundary boolean set to TRUE if this is
	    the start or the end of a group, and the type of the Undo is
	    the group's type.  Within a group, each Undo keeps its own
	    type.  This allows pop funcs and free funcs to do
	    type-specific things (eg needed by layer and channel stuff).
	    Don't maintain per-drawable dirty flags anymore.   Floating
	    sel to layer and layer rename now uses meaningful undo types.
	* app/undo_types.h: more specific undo types:
	    LAYER_{ADD,REMOVE}_UNDO, LAYER_MASK_{ADD,REMOVE}_UNDO,
	    LAYER_RENAME_UNDO, and PARASITE_{ATTACH,DETACH}_UNDO.
	* app/undo_history.c: oops - undo stack was being placed into gtk
	    list in wrong order.
	* app/edit_selection.c: push more descriptive LAYER_DISPLACE_UNDO
	    rather than MISC_UNDO.
	* app/layers_dialog.c: better tagging of undo types
1999-10-01 18:43:24 +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
BST 1999 Andy Thomas ba5b191bae app/fileops.c
Fri Sep 24 22:22:43 BST 1999 Andy Thomas <alt@gimp.org>

	* app/fileops.c

	Fix for the preview/thumbnail interactions causing
	corruptions.
1999-09-24 21:39:06 +00:00
Zach Beane 6f022ac3bc Check the prefs for trust_dirty_flag; if we don't trust it, save no
matter what.
1999-09-23 20:34:30 +00:00
Sven Neumann ba211f07f2 i18n patch from Daniel Egger
--Sven
1999-09-23 11:49:16 +00:00
Manish Singh 3ce38aa009 another XachPatch (TM) to fix revert and urls
-Yosh
1999-09-11 23:45:57 +00:00
Tor Lillqvist 6ef23d984f app/appenv.h New file. Includes <math.h>. Move G_PI, RINT(), ROUND() etc
1999-09-01  Tor Lillqvist  <tml@iki.fi>

* app/appenv.h
* libgimp/gimpmath.h: New file. Includes <math.h>. Move G_PI,
RINT(), ROUND() etc from app/appenv.h here, so plug-ins can
use them, too. Remove some commented-out old stuff in appenv.h.

* libgimp/gimp.h: Include gimpmath.h.

* libgimp/gimp.c (gimp_main): Win32: Don't install signal
handlers, we can't do anything useful in the handler ourselves
anyway (it would be nice to print out a backtrace, but that seems
pretty hard to do, even if not impossible). Let Windows inform the
user about the crash. If the plug-in was compiled with MSVC, and
the user also has it, she is offered a chance to start the
debugger automatically anyway.

* app/*several*.c: Include gimpmath.h for G_PI etc. Don't include
<math.h>, as gimpmath.h includes it.

* plug-ins/*/*many*.c: Include config.h. Don't include <math.h>.
Remove all the duplicated definitions of G_PI and rint(). Use
RINT() instead of rint().

* app/app_procs.[ch]: app_exit() takes a gboolean.

* app/batch.c
* app/commands.c
* app/interface.c: Call app_exit() with FALSE or TRUE.

* app/main.c (on_error): Call gimp_fatal_error. (main): Don't
install any signal handler on Win32 here, either.

* app/errors.c (gimp_fatal_error, gimp_terminate): Win32: Format
the message and call MessageBox with it.  g_on_error_query doesn't
do anything useful on Win32, and printf'ing a message to stdout or
stderr doesn't do anything, either, in a windowing application.
1999-09-01 20:30:56 +00:00
EDT 1999 Austin Donnelly 0a7dca9110 Dirty flag now correct in all cases. Can be displayed in image window
Mon Aug 23 10:15:32 EDT 1999  Austin Donnelly  <austin@gimp.org>

	Dirty flag now correct in all cases.  Can be displayed in image
	window title too.  See NOTE near gimp_image_dirty() for details.

	* app/fileops.c: gimp_image_clean_all() after reverting an image.
	* app/gdisplay.c: register handlers for gimage dirty and clean
	    signals to update image title.  New image-title-format
	    expansion: %Dx expands to x if the image is dirty.
	* app/gdisplay_ops.c: gimage->dirty flags != 0 is the correct
	    condition to test to see if an image is dirty.
	* app/gimpdrawable.c: gimp_image_dirty() should never be called
	    except from an undo_push_* function.  Call
	    undo_push_cantundo() if you want to dirty the image but can't
	    be bothered writing an undo handler (be ashamed of yourself!).
	* app/gimpimage.c: new gimage signal: clean.  Emitted when an undo
	    operation takes place.  Gimage changes when either dirty or
	    clean is emitted, so if you need to update previews etc, look
	    for both!  Move group_count into gimage structure, since
	    leaving it as a static in undo.c is bad if two undo groups are
	    started on different images at the same time.  More changes
	    of gimp_image_dirty() to undo_push_cantundo()
	    (parasite-related, plus layer moves).  See the NOTE on dirty
	    counter near gimp_image_dirty() for the full story.
	    gimp_image_dirty() and gimp_image_clean() simplified - counter
	    can go negative.
	* app/gimpimageP.h: group_count moved from undo.c
	* app/layers_dialog.c: push undo for layer name change, rather
	    than dirtying the image.
	* app/undo.c: layer rename undo functions
	    added. undo_push_cantundo() convenience functions added.
	    group_count made per-gimage since everything else is.  When
	    blowing away redo stack, make image infinitely dirty if redo
	    info contained file save point.
	* app/undo.h: added undo_push_layer_rename() and
	    undo_push_cantundo().
	* TODO: added idea for undo history window.
1999-08-23 14:34:58 +00:00
Michael Natterer f1b5e1ae47 namespace cleanups.
1999-06-21  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/context_manager.c: namespace cleanups.

	* app/commands.[ch]
	* app/menus.c: moved the "Toggle Selection" menu entry to "View",
	sprinkled some separators and made the layers/channels/paths popup
	menus consistent with Tigert's last ops buttons change.

	* app/fileops.c
	* app/plug_in.c: check for gdisplay_active() returning NULL in
	some more places.

	* app/[all tool related files]:

	- Turned the ToolAction and ToolState #define's into typedef'ed
	  enums, so the compiler can do some more sanity checking.
	- Removed one more unused global variable "active_tool_layer".
	- Removed some #include's from tools.c.
	- Standardized the individual tools' structure names.
	- Moved showing/hiding the tool options to separate functions.
	- Stuff...

	* app/commands.c
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/tools.c: fixed the segfaults which happened when the image
	of one of the tools which have dialogs (levels/posterize/...) was
	deleted. My approach was to do stricter sanity checking and to set
	some gdisplay pointers correctly where appropriate, so I can't
	tell exactly where the bug was.
	The curves tool now(??) updates on every _second_ display change
	only, which is really obscure.
	Finding/changing the display to operate on should definitely be
	done by connecting to the user context's "display_changed"
	signal.

	* app/gimpset.c: emit the "remove" signal _after_ removing the
	pointer from the set. If this was not a bug but a feature, please
	let me know, we'll need two signals then.
1999-06-21 22:12:07 +00:00
Michael Natterer a72dbe86b4 connect to the user context's "display_changed" and to the image context's
1999-06-21  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/context_manager.c: connect to the user context's
	"display_changed" and to the image context's "remove" signal to
	avoid dangling references and to set the menu sensitivity on
	display change.

	* app/disp_callbacks.c
	* app/file_new_dialog.c
	* app/fileops.c
	* app/gdisplay.c
	* app/gdisplay_ops.c
	* app/gimpcontext.c
	* app/interface.[ch]: entirely moved the active display stuff to
	the user context:

	- The active display is set by any event in the display shell,
	  by File/New and File/Open.
	- gdisplay_delete() resets the active display to NULL if we
	  deleted the active display.
	- Reduced gdisplay_active() to a single statement returning the
	  context's active display. Should replace it by a macro.
	- gdisplay_flush_whenever() sets the menu sensitivity for the
	  active display.
	- Removed global variable popup_shell since it was only set all
	  the time but never used. I guess it's original job is now done
	  by the context anyway.
	- gdisplay_set_menu_sensitivity() works with gdisp == NULL.
	- There are mysterious Gdk-CRITICALs if both <Image> and one of
	  it's sub-menus are teared-off. Probably a gtk+ bug.

	To do all this stuff at a central place, there needs to be a
	GimpSet of displays (and ideally, GDisplay should be a GtkObject).

	* app/commands.c
	* app/lc_dialog.c: fixed segfaults happening with teared-off menus.
1999-06-20 23:29:34 +00:00
Tomas Ogren d085c151d3 locale-wrapper for menus_set_sensitive (..._locale) and menus_set_state
1999-06-06  Tomas Ogren  <stric@ing.umu.se>

* app/menus.[ch]: locale-wrapper for menus_set_sensitive (..._locale)
  and menus_set_state (..._locale) which splits the menu-entry
  "<Foo>/Bar/Baz" into "<Foo>" and "/Bar/Baz" to remove double
  translations
* app/app_procs.c, app/channels_dialog.c, app/fileops.c, app/gdisplay.c
* app/gdisplay_ops.c, app/layers_dialog.c, app/paths_dialog.c
* app/plug_in.c:
  Use the _locale version from above
1999-06-06 21:13:03 +00:00
BST 1999 Adam D. Moss 30d6acf42c Preferences dialog now has an option for people who don't like thumbnail
Sun Jun  6 17:22:16 BST 1999 Adam D. Moss <adam@gimp.org>

	* fileops.c gimprc.c gimprc.h preferences_dialog.c:
	Preferences dialog now has an option for people who don't
	like thumbnail files to ever be written.
1999-06-06 16:31:15 +00:00