Commit Graph

86 Commits

Author SHA1 Message Date
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
Sven Neumann cfc62108b0 added gradient preview to the toolbox.
--Sven
1999-09-01 11:29:39 +00:00
Michael Natterer ef4cb06bb7 export bucket_fill_region().
1999-08-23  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/bucket_fill.[ch]: export bucket_fill_region().

	* app/channels_dialog.c: enabled dropping a color to a channel.

	* app/color_area.c
	* app/color_panel.c
	* app/gimpdnd.[ch]: the whole color dnd is now done in a generic
	function in gimpdnd.c (dnd of other types is still hacked in at
	various places but will go to generic functions and callbacks as
	well).

	* app/disp_callbacks.[ch]
	* app/interface.c: drop a color to the display to bucket fill the
	selected region.
1999-08-23 14:19:26 +00:00
Michael Natterer 1e08aa1ef7 app/color_area.[ch] app/color_panel.[ch] enabled dnd for colors
1999-08-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/color_area.[ch]
	* app/color_panel.[ch]
	* app/gimpdnd.[ch]: enabled dnd for colors (compatible with the
	standard gtk/gnome color dnd). The color selection is now invoked
	on a real click, not on button_down to avoid confusion with dnd.

	* app/channels_dialog.c
	* app/disp_callbacks.c
	* app/interface.c
	* app/layers_dialog.c: minor dnd updates/fixes.

	* app/channel.[ch]
	* app/channel_pvt.h
	* app/docindex.[ch]
	* app/docindexif.[ch]
	* app/drawable.[ch]
	* app/floating_sel.c
	* app/gimage.[ch]
	* app/gimage_mask.c
	* app/gimpdrawable.[ch]
	* app/gimpdrawableP.h
	* app/gimpimage.[ch]
	* app/gimpimageP.h
	* app/layer.[ch]
	* app/layer_pvt.h
	* app/undo.c
	* app/xcf.c: wanted to do some s/int/gboolean/ in the layer files
	where appropriate and found myself spending the whole night doing
	a big code review for layers/channels/drawables/images:
	s/int/gboolean/, s/<type>/g<type>/, lots of indentation, removed
	some old global variables and deprecated functions, #include
	cleanups, proper prototypes, copyright headers, ...
1999-08-22 11:45:31 +00:00
Michael Natterer 70407d2882 app/Makefile.am new file. Contains a function which creates dnd preview
1999-08-20  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/Makefile.am
	* app/gimpdnd.c: new file. Contains a function which creates dnd
	preview icons for all kinds of drawables.

	* app/gimpdnd.h: added the new dnd types.

	* app/channels_dialog.c: same dnd functions as in the layers
	dialog. Fixed channels_dialog_flush(). Code cleanup.

	* app/layers_dialog.c: enabled dnd for layer masks.

	* app/disp_callbacks.c
	* app/interface.c: dnd code generalization. The toolbox and the
	display accept drop of any kind of drawable now.

	* app/gimage.h
	* app/gimpimage.[ch]: new function gimp_image_position_channel().

	* app/layer.[ch]: new function layer_mask_get_layer().
1999-08-20 19:59:06 +00:00
Michael Natterer 311c83b0a4 app/Makefile.am new file containing the dnd data definitions.
1999-08-19  Michael Natterer  <mitschel@cs.tu-berlin.de>

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

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

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

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

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

	* app/airbrush.c
	* app/eraser.c
	* app/paint_options.h
	* app/paintbrush.c
	* app/pencil.c
	* app/tool_options.c: moved the "Incremental" toggle to the
	PaintOptions structure because it is used more often now.
1999-08-19 19:53:30 +00:00
Manish Singh 374e55bced add pixmaps/dropper.xpm to EXTRA_DIST
* Makefile.am: add pixmaps/dropper.xpm to EXTRA_DIST

* app/appenv.h: minor formatting changes

* app/channel.c: #include "gdisplay.h"

* app/color_transfer.c
* app/dodgeburn.c
* app/gdisplay.c
* app/iscissors.c
* app/paint_core.c: remove extra SQR and ROUND definitions

* app/flip_tool.c: hackaround the flip tool options constant problem

* app/flip_tool.[ch]: use InternalOrientationType for flip_tool_flip
prototype

* app/interface.c: use GTK_LABEL case in gtk_label_set_justify

* plug-ins/common/mkgen.pl
* plug-ins/common/plugin-defs.pl: add @extra EXTRA_DIST processing

-Yosh
1999-08-13 22:33:49 +00:00
Seth Burgess b519150fa9 ChangeLog app/channel.c app/channel.h app/channel_ops.c
app/gimpimage.c app/gimpimageP.h app/interface.c
 	app/paint_core.c app/qmask.c app/qmask.h:

	Added qmask settings dialogs through double clicking.
1999-08-07 20:55:26 +00:00
Sven Neumann 82f1763de3 My last change to the dnd code did fix the bug but disabled loading
* app/interface.c: My last change to the dnd code did fix the bug
        but disabled loading multiple files. Now applied a new patch from
        Shuji Narazaki <narazaki@gimp.org>.

--Sven
1999-08-03 20:26:44 +00:00
Marc Lehmann fdca243c98 *** empty log message *** 1999-08-03 16:21:36 +00:00
Sven Neumann e1c7514579 why has this ever worked ??
--Sven
1999-08-02 19:17:02 +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
EDT 1999 Adrian Likins e1ee90c955 *app/interface.c: added type for _NETSCAPE_URL to the DnD stuff so you can
Thu Jul  8 00:08:50 EDT 1999  Adrian Likins <alikins@redhat.com>

        *app/interface.c: added type for _NETSCAPE_URL to the DnD stuff
        so you can now drag image urls from netscape

-adrian
1999-07-08 05:07:53 +00:00
Seth Burgess 7058d4c631 Added Qmasks 7-6-99 <sjburges@gimp.org>
* pixmaps/qmasknosel.xpm
        * pixmaps/qmasksel.xpm: Ugly pixmaps that tigert promised to replace

        * app/channel.[ch]
        * app/channel_cmds.c : made some of the private structures accessible
          through exported functions to keep things a bit clean

        * app/interface.c
        * app/gdisplay.[ch]
        * app/gimpimageP.h
        * app/gimpimage.[ch]
        * app/undo.[ch]: added qmasks

        * app/Makefile.am
        * app/qmask.[ch]: added new files for qmask support

        * tools/pdbgen/pdb/channel.pdb: changed some channel stuff to keep
          things a bit more private
1999-07-07 03:18:54 +00:00
Michael Natterer a60b2c2f02 the Tool structure is now allocated by a common constructor which sets
1999-07-02  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/[all tools]: the Tool structure is now allocated by a common
	constructor which sets default values and provides default tool
	action functions. To get rid of much code duplication there should
	be a object hierarchy of tools.

	* app/context_manager.c
	* app/tools.[ch]: create and destroy private contexts for the
	paint tools on startup and exit. They are not used yet.

	* app/interface.c
	* app/menus.c
	* app/tools.h: num_tools is now exported in tools.h

	* app/commands.c
	* app/gdisplay.c
	* app/menus.c: made "Toggle Selection" a toggleable menu item.
1999-07-02 17:40:10 +00:00
Sven Neumann 6b56a53703 tools/pdbgen/pdb/guides.pdb fixed a bug in image_find_next_guide
* tools/pdbgen/pdb/guides.pdb
        * app/guides_cmds.c: fixed a bug in image_find_next_guide

        * plug-ins/xjt: reflect the name change of gimp_image_find_next_guide

        * app/interface.c: applied the patch from
        Shuji Narazaki <narazaki@gimp.org> that allows to open images by
        dropping them onto the toolbar

--Sven
1999-07-01 09:13:39 +00:00
Michael Natterer c456ba93ba app/[all tool related files] app/commands.c app/disp_callbacks.c
1999-06-26  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/[all tool related files]
	* app/commands.c
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/gimage.c
	* app/interface.c: hopefully fixed the bugs that appeared with my
	last fix. And some more changes...

	- Slightly changed the conditions which cause the tools to be
	  re-initialized on button_press events and the global
	  initialisation functions.
	- The dialog tools now explicitly set tool->gdisp_ptr so they can
	  be properly hidden on display deletion.
	- Create the crop info dialog only once and avoid ugly redraw bugs
	  by blocking the sizeentries' signal when initializing them.
	- Standardized the tools_new_<tool>() functions. They are
	  scheduled to be moved to a common constructor in tools.c
	- Various stuff...
1999-06-26 11:16:47 +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
Seth Burgess ef67644a02 Fixed --no-data and -n (that I broke). Gave indexed palette a default height.
Seth <sjburges@gimp.org>
Modified Files:
 	ChangeLog app/colormap_dialog.i.c app/devices.c
 	app/indicator_area.c app/interface.c
----------------------------------------------------------------------
1999-06-18 04:22:19 +00:00
Seth Burgess 8c9544675b Added ability to turn off the brush and pattern indicators.
Also fixed a small bug in the pattern code that let a pattern stay
up if the user focussed on another widget before releasing mouse button.

Modified Files:
 	ChangeLog app/devices.c app/gimprc.c app/gimprc.h
 	app/interface.c app/preferences_dialog.c app/indicator_area.c
1999-06-14 02:23:53 +00:00
Michael Natterer e5408cac3e app/disp_callbacks.[ch] app/gimpset.c patch from
1999-06-03  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/disp_callbacks.[ch]
	* app/gimpset.c
	* app/interface.c: patch from <Simon.Budig@unix-ag.org>. Cleans up
	the active image implementation. Now the button and key events of
	the whole gdisplay shell are connected to a separate active image
	callback.

	Don't let the arrow button of the gdisplay grab the focus and
	block it's events after any button_press_event, so the canvas
	always owns the keyboard focus and the button never grabs the
	pointer.

	* app/gdisplay.c: correct sensitive setting for the Layers/Stack
	submenu.

	* app/interface.c: make the query boxes insensitive after pressing
	"OK" (may be useful if they're once used for operations which take
	longer than just shrink/grow/...).

	* app/layers_dialog.c: switch to the active image when the "Auto"
	button is activated.

	* app/menus.c: bound the <Image>/Layers/Stack menu to some
	<modifier>+PageUp/Down combinations.

	* app/preferences_dialog.c: pop up with the "Interface" branch
	expanded.
1999-06-03 18:28:39 +00:00
Seth Burgess 46c38c74dc Added a brush indicator to the toolbar. Its a start :) 1999-06-02 05:55:02 +00:00
Michael Natterer 4a13995205 app/commands.c app/crop.c app/file_new_dialog.c app/info_dialog.[ch]
1999-05-31  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/commands.c
	* app/crop.c
	* app/file_new_dialog.c
	* app/info_dialog.[ch]
	* app/interface.c
	* app/layers_dialog.c
	* app/resize.[ch]
	* app/rotate_tool.c
	* app/scale_tool.c
	* app/shear_tool.c: finished the float->double migration for
	resolution values. Standardized the order of function calls which
	initialize sizeentries. Fixed some off-by-one errors by using
	correct double->int casting. Use the g* counterparts of int and
	double in some places. Various code cleanups.

	* app/preferences_dialog.c: same changes as above plus a cleaner
	implementation of the mem_size_unit stuff. The whole dialog should
	behave like before.
1999-05-31 14:11:10 +00:00
Michael Natterer dcfb450b25 app/[all files with resolution info] libgimp/gimp.h libgimp/gimpimage.c
1999-05-22  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/[all files with resolution info]
	* libgimp/gimp.h
	* libgimp/gimpimage.c
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpunit.[ch]
	* plug-ins/newsprint/newsprint.c
	* plug-ins/pgn/png.c
	* plug-ins/tiff/tiff.c: double instead of float for all resolution
	and unit-factor variables.

	* app/commands.c
	* app/crop.c
	* app/interface.c
	* app/layers_dialog.c
	* app/move_tool.c
	* app/resize.c
	* app/rotate_tool.c
	* app/scale_tool.c: pass the image's unit *and* gdisp->dot_for_dot
	to all functions which create sizeentries. Never create a
	sizeentry with UNIT_PIXEL but with the image's unit and set it's
	unit to UNIT_PIXEL after creation if dot_for_dot is on.
	This way the image's unit can always be picked from the menu
	without selecting "More...".

	* app/interface.c: made the query_*_box() functions use the
	ActionArea.

	* plug-ins/gimpunitmenu.c: GTK_WIN_POS_MOUSE for the unit
	selection dialog.
1999-05-22 17:56:35 +00:00
Michael Natterer c0b24ce90b app/channel.[ch] app/commands.c app/gimage_mask.[ch]
1999-05-07  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/channel.[ch]
	* app/commands.c
	* app/gimage_mask.[ch]
	* app/gimage_mask_cmds.c
	* tools/pdbgen/pdb/gimage_mask.pdb
	* app/interface.c: propagated the indepentent x/y values for
	shrink/grow/border to the interface but not yet to the PDB.

	* app/*_select.c
	* app/paint_funcs.[ch]: implemented indep. x/y feather. It seems
	that cut-and-paste was sufficient, but I didn't really understand
	the code. Jay, could you have a look at this please?

	If the feather/shrink/... amount is specified in pixels,
	everything behaves like before.
	I'm not sure how the built-in feather option of the selection
	tools should behave, so it still defaults to 'pixel' mode.
	Moved the static feather/shrink/... values from gimage_mask.c to
	commands.c because they belong to the interface.

	* app/text_tool_cmds.c
	* tools/pdbgen/pdb/text_tool.pdb: prepared for resolution
	support, but didn't enable it yet.

	* app/unit_cmds.c
	* tool/pdbgen/pdb/unit.pdb: fixed a help text.
1999-05-06 23:10:29 +00:00
Sven Neumann d342563d60 Moved from toggle_key_func to modifier_key_func.
--Sven
1999-04-27 21:06:00 +00:00
Sven Neumann 8b46a4f9f5 Toggable tools!
I hope I haven't broken too much ;-)


--Sven
1999-04-27 02:09:03 +00:00
Michael Natterer 24ffa60f1b #include <gtk/gtk.h>.
1999-04-05  Michael Natterer  <mitschel@cs.tu-berlin.de>

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

	* app/devices.c: made the "Input Devices" dialog follow the action
	area conventions. Grab pointer in the pattern/brush preview popups.

	* app/errorconsole.c: use the actionarea functions.

	* app/gimpunit.c: had the wrong copyright header.

	* app/info_dialog.c: correctly set the spinbuttons' digits.

	* app/perspectice_tool.c: removed #include <stdio.h> again but
	didn't forget to s/sprintf/g_snprintf/ this time.

	* app/preferences_dialog.c: unified order of varible definitions,
	removed some unused variables.

	* app/crop.c
	* app/file_new_dialog.c
	* app/info_dialog.[ch]
	* app/interface.c
	* app/preferences_dialog.c
	* app/rotate_tool.c
	* app/scale_tool.c
	* libgimp/gimpsizeentry.[ch]
	* libgimp/gimpunitmenu.[ch]: prepared for "percent" in size
	entries.
1999-04-05 12:48:48 +00:00
Michael Natterer 737aa1a0de corrected a typo
1999-03-25  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* unitrc: corrected a typo

	* app/commands.c
	* app/global_edit.c
	* app/gradient.c
	* app/interface.[ch]
	* app/palette.c
	* app/paths_dialog.c: the query_[string|..]_boxes connect their
	close callback to a user provided signal now.

	* libgimp/gimpimage.c: gimp_image_get_unit() doesn't need a
	g_return_if_fail()

	* libgimp/gimpunitmenu.c: memory leak & compiler warning

	* configure.in
	* gimprc.in
	* user_install
	* user_install.bat
	* plug-ins/Makefile.am
	* plug-ins/FractalExplorer/*: added the FractalExplorer plugin.

	* app/install.c: ditto and made the install help text more
	editable by moving it to an array.
1999-03-25 23:14:36 +00:00
Michael Natterer 844a73d33f removed two unused directories from plug-in-path.
1999-03-14  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* gimprc.in: removed two unused directories from plug-in-path.

	* app/file_new_dialog.c: make the first spinbutton grab the focus
	and one more unit initialisation bugfix

	* app/interface.c: grab focus in query_[string|int|..]_box()
	This still needs to be done in many dialogs to be consistent.

	* app/preferences_dialog.c: made the module-path configurable

	* libgimp/gimppatheditor.[ch]: change the order of the buttons to
	match the order in the L&C dialog

	* libgimp/gimpsizeentry.[ch]: enabled highlighting of the
	spinbuttons' contents on focus_in_event.
	Ugly new function gimp_size_entry_grab_focus() because it seems
	impossible to implement gtk_widget_grab_focus(sizeentry).
1999-03-14 18:03:58 +00:00
Michael Natterer 7fd5b7c18e This is mostly unit stuff and code cleanup
1999-03-12  Michael Natterer  <mitschel@cs.tu-berlin.de>

        This is mostly unit stuff and code cleanup

        * libgimp/gimpi.def: add some functions

        * libgimp/gimpsizeentry.[ch]: new function
        gimp_size_entry_set_refval_digits() which allows for float pixel
        input. SIGFPE bugfix from Yasuhiro Shirasaki
        <yasuhiro@awa.tohoku.ac.jp>, minor bugfixes.

        * libgimp/gimpunitmenu.[ch]: add a separator after "pixels",
        bugfixes.

        * app/interface.[ch]: split up the old query_string_box() into
        query_[string|int|float|size]_box(). All functions take an
        optional GtkObject* parameter and connect to that object's
        "destroy" signal, this fixes some segfaults. And a global
        s/container_border_width/container_set_border_width/

        * app/commands.s: grow, shrink, border, feather now use the
        query_size_box. Used MIN(xres,yres) for now for the pixel<->unit
        calculations. Fixed some memory leaks.

        * app/global_edit.c
        * app/gradient.c
        * app/palette.c
        * app/paths_dialog.c: changed the query_string_box() calls
1999-03-12 03:44:59 +00:00
Tor Lillqvist 951c92a602 Second batch of Win32 merge. 1999-03-07 12:56:03 +00:00
GMT 1999 Austin Donnelly b1af71cf86 create modules/ directory in user's ~/.gimp-1.1 dir include description of
Mon Jan 25 20:40:26 GMT 1999  Austin Donnelly  <austin@gimp.org>

	* user_install: create modules/ directory in user's ~/.gimp-1.1 dir
	* app/install.c: include description of ~/.gimp-1.1/modules, plus
	    scroll info back to top when done inserting text since it
	    looks nicer.  Also make window that holds result of running
	    user_install a little larger so we see all messages at once.

	* app/gdisplay.h: FUNSCALE_{X,Y} macros for floating point
	    unscales.
	* app/scale.c: show rulers in real-world units (inches/cm/pixels)
	    if dot-for-dot is turned off, plus smoother ruler updates by
	    using FUNSCALE so we don't jump in pixel steps at high
	    magnification factors.
	* app/interface.c: don't set the ruler metrics for now - it's
 	    easier to do the calculations in pixels.  Need to rethink this
 	    a little anyway.

	* docs/parasites.txt: added jpeg parasite info.
1999-01-25 21:11:44 +00:00
GMT 1999 Adam D. Moss 5a493d6047 An image's projection is now copy-on-write duplicated upon duplication of
Sun Jan 17 22:42:26 GMT 1999 Adam D. Moss <adam@gimp.org>

	* app/gdisplay.c app/gdisplay.h app/gimage_cmds.c:

	An image's projection is now copy-on-write duplicated
	upon duplication of the image.  This should save some
	time and memory for 'duplicate'.

	This needed a new function which is prototyped in gdisplay.h:
	gdisplays_finish_draw() which completes all outstanding
	idlerendered-projections (we don't want to c-o-w an
	incomplete projection).

	* app/interface.c: #include "dialog_handler.h"
1999-01-17 22:50:14 +00:00
GMT 1999 Austin Donnelly d8be79f036 Bit of a large checkin this - it's basically three things: 1 - GimpModules
Sun Jan 11 00:24:21 GMT 1999  Austin Donnelly  <austin@greenend.org.uk>

	Bit of a large checkin this - it's basically three things:
	  1 - GimpModules using gmodules to dynamically load and
	       initialise modules at gimp start of day.
	  2 - Color selectors now register themselves with a color
	       notebook.
	  3 - progress bars have been cleaned up a bit, so now have
	       progress indictations on all transform tool and gradient
	       fill operations.  Not done bucket fill, but that seems to
	       be the next candidate.

	New directories:
	* modules/: new directory for dynamically loadable modules.

	New files:
	* modules/.cvsignore
	* modules/Makefile.am
	* modules/colorsel_gtk.c: GTK color selector wrapped up as a
	    color selector the gimp can use.

	* app/gimpprogress.[ch]: progress bars within gimp core, either as
	    popups, or in the status bar.  This is mainly code moved out
	    of plug-in.c

	* app/color_notebook.[ch]: color selector notebook, implementing
	    very similar interface to color_select.h so it can be used as
	    a drop-in replacement for it.

	* libgimp/color_selector.h: API color selectors need to implement
	    to become a page in the color_notebook.

	* libgimp/gimpmodule.h: API gimp modules need to implement to be
	    initialised by gimp at start of day.

	Modified files:
	* Makefile.am: add modules/ to SUBDIRS
	* libgimp/Makefile.am: install gimpmodule.h and color_selector.h
	* app/gimprc.[ch]: recognise module-path variable.
	* gimprc.in: set module-path variable to something sensible
	    (currently "${gimp_dir}/modules:${gimp_plugin_dir}/modules").
	* app/Makefile.am: build color notebook and gimpprogress
	* app/app_procs.c: register internal GIMP color selector with
	    color notebook.
	* app/asupsample.c: call progress function less frequently for
	    better performance.
	* app/asupsample.h: progress_func_t typedef moved to gimpprogress.h
	* app/blend.c: make callbacks to a progress function
	* app/color_area.c: use a color notebook rather than a color selector
	* app/color_panel.c: ditto
	* app/color_select.c: export color selector interface for notebook
	* app/color_select.h: color_select_init() prototype
	* app/flip_tool.c: flip the image every time, rather than every
	    second click.
	* app/interface.c: move progress bar stuff out to
	    gimpprogress.c.  Make the code actually work while we're at it.
	* app/interface.h: move prototypes for progress functions out to
	    gimpprogress.h
	* app/plug_in.c: load and initialise modules (if possible). Move
	    progress bar handling code out to gimpprogress.c
	* app/plug_in.h: keep only a gimp_progress * for each plugin, not
	    a whole bunch of GtkWidgets.
	* app/scale_tool.c
	* app/rotate_tool.c
	* app/shear_tool.c
	* app/perspective_tool.c: progress bar during operation.
	    De-sensitise the dialog to discourage the user from running
	    two transforms in parallel.
	* app/transform_core.c: recalculate grid coords when bounding box
	    changes.  Only initialise the action area of the dialog once,
	    to avoid multiple "ok" / "reset" buttons appearing.  Undraw
	    transform tool with correct matrix to get rid of handle
	    remains on screen.  Call a progress function as we apply the
	    transform matrix.  A few new i18n markups.  Invalidate
	    floating selection marching ants after applying matrix.
	* app/transform_core.h: transform_core_do() takes an optional
	    progress callback argument (and data).
	* plug-ins/oilify/oilify.c: send progress bar updates after every
	    pixel region, not only if they processed a multiple of 5
	    pixels (which was quite unlikely, and therefore gave a jerky
	    progress indication).
1999-01-11 00:57:33 +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
Manish Singh 49cbf0630d i18n markings from Daniel Egger (mostly removal of tags around PDB stuff),
* i18n markings from Daniel Egger (mostly removal of tags around
PDB stuff), some constification

* I went on a sprintf pogrom. Use g_snprintf or g_strdup_printf
where applicable, to prevent overflows, especially with filenames
and translated strings. suid gimp is now more secure. ;)

-Yosh
1998-12-25 18:22:01 +00:00
Sven Neumann e260d064eb I guess finally we have the coordinates display working with all font sizes
and even after scaling the image.


--Sven
1998-12-13 18:52:34 +00:00
GMT 1998 Austin Donnelly 0db6dcf168 app/interface.c tweak to make status bar update correctly (most of the
Sat Dec 12 17:36:51 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>

	* app/interface.c
	* app/gdisplay.c: tweak to make status bar update correctly (most
 	of the time).  As Sven has already noted, there seems to be a GTK
 	bug involved.

	* app/disp_callbacks.c: only update the cursor co-ords if we
 	actually know them.  Gets rid of silly (0,0) announcements.
1998-12-12 17:41:41 +00:00
Manish Singh cb80e23d3b applied gimp-stric-981116-1, lots o files changes in app. i18n patch.
* applied gimp-stric-981116-1, lots o files changes in app. i18n patch.

* plug-ins/gfig/gfig.c: applied gimp-tml-981121-0, use proper PDB params

-Yosh
1998-11-23 14:47:09 +00:00
Sven Neumann b593a1592f Use a proper size for the coordinates display in the statusbar.
I still don't know why those statusbar is sometimes not updated. The labels
are definitely set, but are sometimes not drawn. I guess this is a GTK
problem.


--Sven
1998-11-19 20:20:46 +00:00
Sven Neumann ee6c165b98 Appearently I committed the wrong version of interface.c last time, sorry.
--Sven
1998-11-15 14:09:16 +00:00
Sven Neumann bb0ea5a46d applied the patch from Kevin Cozens <kcozens@interlog.com>:
size of area displaying cursor position is now adjusted to fit
maximum possible cursor values

--Sven
1998-11-13 22:11:37 +00:00
Manish Singh 0963a109c3 applied gimp-joke-981006-0, portability patch
-Yosh
1998-10-25 05:55:36 +00:00
Manish Singh b23f1a1d2f applied gimp-austin-981007-0, use gtkfontsel for the text tool
* app/text_tool.[ch]: applied gimp-austin-981007-0, use gtkfontsel for the
text tool

* app/about_dialog.c: some nice people ;)

-Yosh
1998-10-07 08:59:11 +00:00
BST 1998 Adam D. Moss c3d66ee292 Resizing image canvases should be less horrible to look at. I've removed
Sat Oct  3 21:01:34 BST 1998 Adam D. Moss <adam@gimp.org>

	* app/channel.c app/channel_ops.c app/disp_callbacks.c
	app/floating_sel.c app/gdisplay.c app/gdisplay.h
	app/gdisplay_ops.c app/gimpimage.c app/image_map.c
	app/interface.c app/layers_dialog.c app/plug_in.c app/undo.c
	app/xcf.c:

	Resizing image canvases should be less horrible to look at.
	I've removed the implicit clear of the whole area when a
	window is resized by the user, and clear the exposed area around
	the image manually when appropriate.

	Dialogs which want synchronous updates for previews and
	such use displays_update_now().

	Removed some old debugging nonsense which I don't want any more.
1998-10-03 20:14:00 +00:00
Sven Neumann 6805b3be8f The statusbar can now be switched off just like the rulers.
--Sven
1998-08-05 12:38:11 +00:00
CDT 1998 Shawn T. Amundson 78d8af84e1 usize statusbar to 1 width
Thu Jul 23 21:57:25 CDT 1998 Shawn T. Amundson <amundson@gimp.org>

        * app/interface.c: usize statusbar to 1 width
1998-07-24 03:20:54 +00:00
EDT 1998 Matthew Wilson bdfc4efe14 app/app_procs.c Changed progressbar updaters to work with new API. THIS
Mon Jul 20 11:07:32 EDT 1998  Matthew Wilson  <msw@gimp.org>

	* app/app_procs.c
	* app/interface.c: Changed progressbar updaters to work with
	new API.  THIS WILL NOT WORK WITH OLDER GTK+.  SOMEONE NEEDS
	TO MAKE AN ENTRY IN gtkfeatures.h SO WE CAN #ifdef THIS.
	(I suppose I should... but what can I say - I'm lazy)
--Matt
1998-07-20 15:07:13 +00:00
CDT 1998 Shawn T. Amundson bb7a8b4802 Cursor location in statusbar Fixed resize of window progressbar is smaller
Wed Jul 15 22:06:32 CDT 1998 Shawn T. Amundson <amundson@gimp.org>

        * Cursor location in statusbar
	* Fixed resize of window
	* progressbar is smaller now
1998-07-16 03:23:14 +00:00