Commit Graph

108 Commits

Author SHA1 Message Date
Sven Neumann d517927260 Use static GdkPixmaps in the image_window and for the tool icons.
--Sven
2000-02-08 23:45:20 +00:00
Sven Neumann 6fe8e7ee61 unref gdk_pixmaps and gdk_bitmaps
cosmetics


--Sven
2000-02-08 20:48:48 +00:00
Kelly Lynn Martin 77c44b21e1 restructured toolbox to use a single gtk_hwrap_box with the added "forced
2000-02-07  Kelly Lynn Martin  <kelly@poverty.bloomington.in.us>

	* app/interface.c: restructured toolbox to use a single
	gtk_hwrap_box with the added "forced break" functionality to make
	the selector boxes not run in with the rest of the tool buttons.
	The toolbox should now not cut things off, although if the user
	selects a really small toolbox the buttons or selectors may be,
	um, difficult to use...

	* app/gtkwrapbox.h:
	* app/gtkwrapbox.c:
	* app/gtkvwrapbox.c (reverse_list_col_children):
	* app/gtkhwrapbox.c (reverse_list_row_children): support for
	"forced break" functionality needed for toolbox -- will forward
	patches to Tim Janik as well
2000-02-07 10:51:08 +00:00
Sven Neumann 682abba9eb when dropping an indexed layer onto the toolbox, copy the colormap
to the newly created image (fixes bug #5692)


--Sven
2000-01-31 18:37:36 +00:00
Garry R. Osgood 16d1795918 app/disp_callbacks.c app/gimage_mask.c app/global_edit.c app/interface.c
2000-01-11  Garry R. Osgood <gosgood@idt.net>
* app/disp_callbacks.c
* app/gimage_mask.c
* app/global_edit.c
* app/interface.c
* app/layer.c
* app/layer.h
* app/transform_core.c  Followup to #4708. Some clients
of layer_new_from_tiles() need to specify the
kind of layer they need; added a GimpImageType
parameter for this purpose. Closes #5045.
* app/paths_dialog.c paths_dialog_set_default_op()
now checks for the existence of the path_dialog
before manipulating its internals. Closes #5049;
2000-01-11 20:08:45 +00:00
Sven Neumann 9a9ee85e28 allow the user to choose the default for "Dot for Dot"
--Sven
2000-01-09 17:31:00 +00:00
Sven Neumann a34415cb7b Removed the obsolete drawable argument from layer_from_tiles.
The layer_type is now taken from the base_type of the image.
Also changed the name to layer_new_from_tiles.


--Sven
2000-01-01 18:33:40 +00:00
Manish Singh b8e03bd1c7 added spec file to EXTRA_DIST
* Makefile.am: added spec file to EXTRA_DIST

* docs/Makefile.am: added undo.txt to EXTRA_DIST

* app/interface.c: removed the DODGY warning, doesn't look dodgy to me

* libgimp/*.h: missed an s/Library/Lesser/

* tools/pdbgen/*: lots of work on the libgimp portion

-Yosh
1999-12-26 07:54:39 +00:00
GMT 1999 Austin Donnelly 4d93809fec delay the showing of the full-size pattern, brush or gradient by 150ms as
Sun Nov  7 18:59:22 GMT 1999  Austin Donnelly  <austin@gimp.org>

	* app/gimpcontextpreview.c: delay the showing of the full-size
	    pattern, brush or gradient by 150ms as the brush and pattern
	    selector dialogs currently do.  Also, only generate a "click"
	    event if the user has clicked quickly, ie, the mouse up event
	    came before the timeout caused the popup to be displayed).

	* app/gimprc.c: default image size now 983x857, in an attempt to
	    flush out problems to do with large images, images with
	    incomplete tiles around the edges, and images with
	    width != height.  Non-square pixels and other resolution stuff
	    will come in at a later stage when we've got the first round
	    of problems fixed.

	* app/gradient.c: don't allow two gradients with the same name -
	    replace the first.  Mainly this stops us having two "Default"
	    gradients if you start up with --no-data.

	* app/interface.c: can now create an indicator panel in the
	    toolbox even if we have --no-data, since we have built-in
	    defaults now.
1999-11-07 19:03:43 +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 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
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
Sven Neumann fc4e6346df dnd improvements
--Sven
1999-10-09 20:33:53 +00:00
Michael Natterer 5a01821b1f EEEEEEEEEEK!!! 1999-10-04 08:40:33 +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
Manish Singh c6a9919e39 new vwrapbox stuff
* app/gtkvwrapbox.[ch]: new vwrapbox stuff

* app/Makefile.am: added new files

* app/interface.c: place the indicator areas in a vwrapbox. Still
kinda screwy tho.

-Yosh
1999-09-03 00:15:11 +00:00
Manish Singh 52b5222052 app/gtkhwrapbox.[ch] sync from gle
* app/gtkhwrapbox.[ch]
* app/gtkwrapbox.[ch]: sync from gle

* app/inteface.c: set allow_shrink on the toolbox window, use
gtk_hwrap_box_new

* app/blend.c: use shift to constrain to 45 deg: XachCode (tm)

-Yosh
1999-09-02 18:56:39 +00:00
Manish Singh 9fb081a7e6 add gimpmath.h
* libgimp/Makefile.am: add gimpmath.h

* app/gtkwrapbox.[ch]
* app/gtkhwrapbox.[ch]: wrapbox widget from gle

* app/Makefile.am: added those files

* app/interface.c: use an hwrapbox for the toolbar. Still not perfect
yet, working on it.

* app/gimpdrawable.c
* app/about_dialog.c
* app/airbrush.c
* app/blend.c: some minor code cleanup

-Yosh
1999-09-02 01:41:18 +00:00
BST 1999 Andy Thomas f380edd704 app/gdisplay.c app/gdisplay.h app/interface.c app/nav_window.c
Wed Sep  1 23:18:21 BST 1999 Andy Thomas <alt@gimp.org>

	* app/gdisplay.c
	* app/gdisplay.h
	* app/interface.c
	* app/nav_window.c
	* app/nav_window.h
	* pixmap/navbutton.xpm (new)

	New popup navigation window. press the icon that appears in
	the bottom right-hand corner of the image display. A navigation
	window will appear that will allow you to scroll around the image if
	the area shown is smaller than the overall image size. Thanks to tml
        for the idea.
1999-09-01 22:39:44 +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
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