Commit Graph

4057 Commits

Author SHA1 Message Date
Sven Neumann 3974e5ee8f Attempt to finally fix Smudge tool problems (bug #115057):
2003-06-13  Sven Neumann  <sven@gimp.org>

        Attempt to finally fix Smudge tool problems (bug #115057):

	* app/paint-funcs/paint-funcs-generic.h (blend_pixels): added an
	implementation for the non-alpha case.

	* app/paint/gimpsmudge.c (gimp_smudge_start): added back code that
	used to prefill the buffer if the inital area was clipped.
2003-06-13 11:12:04 +00:00
Sven Neumann 7cb3c316a4 fixed a typo I introduced yesterday.
2003-06-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimptemplate.c (gimp_template_create_image): fixed a
	typo I introduced yesterday.
2003-06-13 11:04:16 +00:00
Michael Natterer 9b206bd4df removed the check again because adding e.g. GRAY drawables to RGB images
2003-06-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.c (gimp_drawable_configure): removed the
	check again because adding e.g. GRAY drawables to RGB images is
	prefectly ok as long as they are channels/masks.
2003-06-12 14:18:33 +00:00
Sven Neumann d942668ff6 check if the drawable type fits to the image. This assertion would have
2003-06-12  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable.c (gimp_drawable_configure): check if the
	drawable type fits to the image. This assertion would have catched
	the problem below.
2003-06-12 10:43:00 +00:00
Sven Neumann 653b4e0fe7 handle all fill types, fixes bug #114979.
2003-06-12  Sven Neumann  <sven@gimp.org>

	* app/core/gimptemplate.c (gimp_template_create_image): handle all
	fill types, fixes bug #114979.
2003-06-12 10:16:51 +00:00
Sven Neumann 08879c9f90 app/gui/info-window.c libgimpwidgets/gimpcolorscales.c applied some
2003-06-11  Sven Neumann  <sven@gimp.org>

	* app/gui/info-window.c
	* libgimpwidgets/gimpcolorscales.c
	* libgimpwidgets/gimpcolorselect.c: applied some slightly modified
	patches from Michael Bushey that fix rounding errors when
	converting between color values in gdouble and guchar
	representation (bug #109241).

	* libgimpcolor/gimpcolorspace.c
	* libgimpcolor/gimprgb.c: similar fixes here.
2003-06-11 15:55:48 +00:00
Michael Natterer ebbedb7559 app/config/gimpcoreconfig.[ch] removed "tool-plug-in-path" property.
2003-06-11  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: removed "tool-plug-in-path" property.

	* app/gui/preferences-dialog.c: changed accordingly. Some
	preparation for more HIG compliance.
2003-06-11 15:18:26 +00:00
Michael Natterer 652b9dced0 app/config/gimpcoreconfig.c removed "tool-plug-in-path" property.
2003-06-11  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpcoreconfig.c
	* app/config/gimprc-blurbs.h: removed "tool-plug-in-path" property.

	* app/gui/preferences-dialog.c: changed accordingly. Some
	preparation for more HIG compliance.
2003-06-11 15:01:38 +00:00
Michael Natterer 0c6d379081 added some more g_return_if_fail() to avoid NULL pointer dereferencing.
2003-06-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.c (gimp_drawable_mask_bounds): added some
	more g_return_if_fail() to avoid NULL pointer dereferencing.
2003-06-11 13:50:04 +00:00
Sven Neumann 610e2a639e added a container that keeps references to the buttons which are not added
2003-06-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptoolbox.[ch]: added a container that keeps
	references to the buttons which are not added to the wrap box.
	Just to make sure they are destroyed on exit.
2003-06-11 12:05:00 +00:00
Sven Neumann 9b20083ee9 etc/Makefile.am added a sample sessiorc which will be used after user
2003-06-11  Sven Neumann  <sven@gimp.org>

	* etc/Makefile.am
	* etc/sessionrc: added a sample sessiorc which will be used after
	user installation.

	* app/gui/user-install-dialog.c (tree_items): install the sample
	sessionrc.
2003-06-11 10:58:57 +00:00
Sven Neumann f9fec0cda7 fixed my latest fix. Fixes bug #114882.
2003-06-11  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs-generic.h (blend_pixels): fixed my
	latest fix. Fixes bug #114882.
2003-06-11 00:46:59 +00:00
Sven Neumann addba61b08 added utility function gimp_rgb_get_gdk_color(), documented
2003-06-10  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.[ch]: added utility function
	gimp_rgb_get_gdk_color(), documented gimp_get_screen_resolution().

	* app/widgets/gimppreviewrenderer.c
	(gimp_preview_renderer_set_border_color)
	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_set_padding): use the new function.
2003-06-10 16:44:44 +00:00
Sven Neumann b39f8fb809 expects the tool identifier as a GQuark now.
2003-06-10  Sven Neumann  <sven@gimp.org>

	* app/gui/tools-commands.c (tools_select_cmd_callback): expects
	the tool identifier as a GQuark now.

	* app/gui/image-menu.c: changed accordingly. Removed code that
	used to move the menu entries for the color correction tools to
	the Layers menu. Added the respective menu entries by hand. Added
	a menu entry for arbitrary rotations and one for Select by Color.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: register the color correction
	tools in the Tools menu.

	* app/tools/gimptransformtool.c: added an initialize method and
	moved most initalization code from button_press to this place.
2003-06-10 14:31:53 +00:00
Sven Neumann 58b975a4f2 now that blend_pixels() behaves correctly, we can simply initialize the
2003-06-09  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpsmudge.c (gimp_smudge_start): now that
	blend_pixels() behaves correctly, we can simply initialize the
	smudge buffer with transparent pixels.
2003-06-09 15:24:30 +00:00
Sven Neumann 32bab29f18 weight pixels by their alpha value. Fixes the smudge tool (bug #72879).
2003-06-09  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs-generic.h (blend_pixels): weight
	pixels by their alpha value. Fixes the smudge tool (bug #72879).
2003-06-09 15:05:57 +00:00
Michael Natterer 5c5ff60858 pack the main table expanding, not shrinking. Fixes bug #114656.
2003-06-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfontselection-dialog.c
	(gimp_font_selection_dialog_new): pack the main table expanding,
	not shrinking. Fixes bug #114656.
2003-06-08 00:51:09 +00:00
Michael Natterer 98bdd5c0f3 app/widgets/Makefile.am new files containing the toolbox' drop callbacks.
2003-06-06  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptoolbox-dnd.[ch]: new files containing the
	toolbox' drop callbacks. Exports gimp_toolbox_dnd_init().

	* app/widgets/gimptoolbox.c: removed the callbacks and all the
	"core/" includes they needed and call gimp_toolbox_dnd_init().
2003-06-06 15:14:47 +00:00
Sven Neumann bc93e4a041 added "in_toolbox"; defaults to TRUE.
2003-06-06  Sven Neumann  <sven@gimp.org>

	* app/core/gimptoolinfo.[ch]: added "in_toolbox"; defaults to TRUE.

	* app/tools/tool_manager.c: set "in_toolbox" to FALSE for tools
	derived from GimpImageTool.

	* app/widgets/gimptoolbox.c: respect the new flag when constructing
	the toolbox.
2003-06-06 14:58:20 +00:00
Sven Neumann aca442cf8a UTF-8 validate messages before passing them to g_message().
2003-06-06  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/message.pdb: UTF-8 validate messages before
	passing them to g_message().

	* app/pdb/message_cmds.c
	* libgimp/gimpmessage_pdb.c: regenerated.
2003-06-06 13:12:44 +00:00
Michael Natterer ef30cf315d app/gui/image-menu.c moved the convenience items which create new docks
2003-06-06  Michael Natterer  <mitch@gimp.org>

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: moved the convenience items which
	create new docks from the "Dialogs/" level to a new
	"Dialogs/Create New Dock/" sub-menu.  Fixes bug #111278.

	* app/gui/dialogs-commands.[ch] (dialogs_create_data_cmd_callback):
	new convenience constructor callback. Factored out duplicated
	code to the new dialogs_create_dock() utility function.
2003-06-06 12:16:13 +00:00
Michael Natterer 4f33a4788f added CW/CCW to the "Rotate" menu entries as suggested in bug #57797.
2003-06-06  Michael Natterer  <mitch@gimp.org>

	* app/gui/image-menu.c: added CW/CCW to the "Rotate" menu entries
	as suggested in bug #57797. Cleaned up image_menu_update().
2003-06-06 11:17:09 +00:00
Michael Natterer 2c95877093 use gtk_label_set_text_with_mnemonic() instead of just
2003-06-06  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpitemfactory.c (gimp_item_factory_set_label):
	use gtk_label_set_text_with_mnemonic() instead of just
	gtk_label_set_text().

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: added mnemonics for all sub-menus.
	Fixes bug #106991.

	* app/gui/image-menu.c: cleaned up the "Layers" menu: moved
	sub-menus together. Changed the "Stack" menu's labels and
	accelerators and added "Select Top/Bottom Layer" for consistency
	(bound to Home/End).

	* app/gui/layers-commands.[ch]: changed accordingly. Added the
	new select top/bottom callbacks.
2003-06-06 10:30:14 +00:00
Sven Neumann e23a566f52 removed unneeded includes.
2003-06-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcolortool.c: removed unneeded includes.

2003-06-05  Sven Neumann  <sven@gimp.org>

	* POTFILES.in: added app/tools/gimpcoloroptions.c
2003-06-05 20:42:38 +00:00
Sven Neumann a6988b2746 simplified by using the functions inherited from GimpColorTool.
2003-06-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c: simplified by using the functions
	inherited from GimpColorTool.
2003-06-05 20:29:03 +00:00
Sven Neumann b1c437b4f8 use OPAQUE_OPACITY instead of 255.
2003-06-05  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable.c (gimp_drawable_get_color_at):
	* app/core/gimpimage-projection.c (gimp_image_projection_get_color_at):
	use OPAQUE_OPACITY instead of 255.

	* app/core/gimpimage-pick-color.[ch]: factored out code that
	averages over colors so it can be used from GimpImageTool.

	* app/tools/gimpimagemaptool.[ch]: derived from GimpColorTool and
	added a GimpColorTool::pick implementation.

	* app/tools/gimpcoloroptions.c
	* app/tools/gimpcolorpickeroptions.c: add the toggle for
	"sample_merged" in gimp_color_picker_options_gui().

	* app/tools/gimpcolortool.c (gimp_color_tool_cursor_update): check
	if the cursor is over the active drawable or if "sample_merged" is
	active.

	* app/tools/gimplevelstool.c: simplified since all color-picking is
	now handled by the parent classes. Fixes bug #112668.
2003-06-05 18:47:23 +00:00
Sven Neumann 21b4aba939 changed the default radius.
2003-06-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcoloroptions.c: changed the default radius.

	* app/tools/gimpcolortool.[ch]: pass GimpColorOptions to
	gimp_color_tool_enable(). Added gimp_color_tool_disable() and
	gimp_color_tool_is_enabled().

	* app/tools/gimpcolorpickertool.c: changed accordingly.

	* app/tools/gimppainttool.[ch]: derived GimpPaintTool from
	GimpColorTool and removed most color picking code.

	* app/tools/gimpdodgeburntool.c (gimp_dodgeburn_tool_modifier_key)
	* app/tools/gimperasertool.c (gimp_eraser_tool_modifier_key):
	chain up to the parent class.

	* app/tools/gimppaintbrushtool.c: purely cosmetic change.
2003-06-05 15:43:49 +00:00
Michael Natterer f8081a8629 always return channel->x1,y1,x2,y2, *not* tx1,ty1,tx2,ty2 since the latter
2003-06-05  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpchannel.c (gimp_channel_bounds): always return
	channel->x1,y1,x2,y2, *not* tx1,ty1,tx2,ty2 since the latter
	contain bogus values if the mask is empty. Fixes bug #114419.

	* plug-ins/script-fu/scripts/unsharp-mask.scm: cleaned up
	while searching the bug.
2003-06-05 13:27:27 +00:00
Sven Neumann b108d7028b added VOID: ENUM, BOXED, INT.
2003-06-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpmarshal.list: added VOID: ENUM, BOXED, INT.

	* app/tools/gimpcolortool.[ch]: added a default implementation for
	GimpColorTool::pick. Emit a "picked" signal when a color was
	successfully picked.

	* app/tools/gimpcolorpickertool.c: simplified a lot since
	GimpColorTool does most of the work for us now.
2003-06-04 20:23:36 +00:00
Michael Natterer a014c9d0d3 undraw the cursor on GDK_PROXIMITY_OUT. Always set shell->proximity to
2003-06-04  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): undraw the cursor on
	GDK_PROXIMITY_OUT. Always set shell->proximity to FALSE *before*
	calling gimp_display_shell_update_cursor().
2003-06-04 19:51:22 +00:00
Sven Neumann 9d2cc5f82a reordered arguments.
2003-06-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-pick-color.[ch]: reordered arguments.

	* app/tools/gimpcolorpickertool.c
	* app/tools/gimppainttool.c: changed accordingly.
2003-06-04 16:42:46 +00:00
Sven Neumann 737bf44e28 app/tools/Makefile.am app/tools/gimpcoloroptions.[ch] new files that
2003-06-04  Sven Neumann  <sven@gimp.org>

        * app/tools/Makefile.am
        * app/tools/gimpcoloroptions.[ch]
        * app/tools/gimpcolortool.[ch]: new files that implement base
        classes moved out of GimpColorPickerOptions and GimpColorPickerTool.

        * app/tools/gimpcolorpickeroptions.[ch]
        * app/tools/gimpcolorpickertool.[ch]: derive from the new obejcts.

        * app/tools/gimpimagemaptool.h
        * app/tools/gimppainttool.c
        * app/tools/tools-types.h: moved typedefs into the types file.
2003-06-04 15:48:17 +00:00
Michael Natterer 909325ee67 call gimp_display_shell_scale_setup() instead of
2003-06-04  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_reconnect):
	call gimp_display_shell_scale_setup() instead of
	gimp_display_shell_shrink_wrap() so window size, zoom factor and
	scroll offsets are preserved across File->Revert if possible.
	Fixes bug #114383.
2003-06-04 13:06:59 +00:00
Sven Neumann 7d96902193 need to get ascent and descent from a PangoLayoutLine. Report negative
2003-06-03  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-compat.c (text_get_extents): need to get
	ascent and descent from a PangoLayoutLine. Report negative descent
	so the function behaves like it used to in 1.2.
2003-06-03 17:40:01 +00:00
Michael Natterer 0c3ff3b086 fixed offset calculation for 90 and 270 degree rotations.
2003-06-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-rotate.c (gimp_image_rotate_item_offset):
	fixed offset calculation for 90 and 270 degree rotations.

	* app/core/gimpimage-flip.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-scale.c: increase the progress also when
	transforming the selection. Makes the progress appear more
	continuous. Also clened up and simplified the progress code
	in all files.

	* app/core/gimpimage-resize.[ch]: added a progress like in the
	files above.

	* app/gui/image-commands.c (image_resize_callback): changed
	accordingly.

	(image_scale_implement): clened up and simplified a lot.

	* tools/pdbgen/pdb/image.pdb: changed accordingly.

	* app/pdb/image_cmds.c: regenerated.
2003-06-03 16:42:46 +00:00
Sven Neumann 46d726d098 app/widgets/gimpvectorstreeview.h moved function definitions to the
2003-06-02  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpvectorstreeview.h
	* app/widgets/widgets-types.h: moved function definitions to the
	widgets-types header file.

	* app/gui/dialogs-constructors.c
	* app/widgets/gimpselectioneditor.[ch]: added a "Selection to
	Path" button as suggested in bug #112448.
2003-06-02 17:57:11 +00:00
Michael Natterer 2d90edbcf6 make sure channels end up at (0, 0) after scaling and resizing. Fixes bug
2003-06-02  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpchannel.c (gimp_channel_scale, resize): make sure
	channels end up at (0, 0) after scaling and resizing.
	Fixes bug #114213.
2003-06-02 15:19:03 +00:00
Michael Natterer 1871d9ccef Implemented DISSOLVE_MODE the way it should have always been. Fixes bug
2003-06-02  Michael Natterer  <mitch@gimp.org>

	Implemented DISSOLVE_MODE the way it should have always been.
	Fixes bug #107402.

	* app/paint-funcs-generic.h (struct apply_layer_mode_struct): added
	"guchar *mask" so it can be used by the layer mode.

	(dissolve_pixels): take an additional "mask" parameter and
	dissolve the pixels according to the *combined* opacity of the
	pixel's alpha, the opacity and the mask. Removed a wrong comment
	about why we call g_rand_int() x times before we start to use its
	values.

	(layer_dissolve_mode): pass the mask to dissolve_pixels(). No need
	to call add_alpha_pixels() since we overwrite the dest buffer
	entirely in disolve_pixels().

	* app/paint-funcs.c (initial_sub_region, combine_sub_region):
	allocate the buffer large enough for DISSOLVE (which always needs
	an alpha channel). Pass the mask to the layer mode functions.
	Discard opacity and mask after applying DISSOLVE since it
	"consumes" all transparency.
2003-06-02 14:21:01 +00:00
Tor Lillqvist 35c781c3ea Remove. No gimp library uses symbols from the gimp executable any longer,
2003-05-31  Tor Lillqvist  <tml@iki.fi>

	* app/gimp.sym: Remove. No gimp library uses symbols from the
	gimp executable any longer, says Mitch.

	* app/Makefile.am: Remove related stuff from here, too.
2003-05-31 21:24:56 +00:00
Michael Natterer 15b9be6a2c added enum GimpTransformType which can be one of { LAYER, SELECTION, PATH
2003-05-31  Michael Natterer  <mitch@gimp.org>

	* app/tools/tools-enums.[ch]: added enum GimpTransformType which
	can be one of { LAYER, SELECTION, PATH }

	* app/tools/gimptransformoptions.[ch]: added a GimpTransformType
	property to GimpTransformOptions. Added a GUI for the new
	option.

	* app/tools/gimpflipoptions.[ch]: derive it from
	GimpTransformOptions and add the GUI here, too.

	* app/tools/gimpfliptool.c
	* app/tools/gimptransformtool.[ch]: added support for transforming
	the selection. Added framework for transforming paths (still
	unimplemented).

	* app/tools/gimpselectionoptions.c: small cleanup.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-path-16.png
	* themes/Default/images/stock-path-22.png
	* themes/Default/images/stock-selection-16.png: new icons for the
	new transform options buttons. Simply copied existing ones...
2003-05-30 23:52:24 +00:00
Tor Lillqvist 31e12a213b As gimp uses fontconfig directly, check for it.
2003-05-30  Tor Lillqvist  <tml@iki.fi>

	* configure.in: As gimp uses fontconfig directly, check for it.

	* app/Makefile.am: And link with it.

	* app/gimp.sym: Remove dead symbols.

	* libgimp/gimp.def
	* libgimpwidgets/gimpwidgets.def: Move gimp_standard_help_func.

	* plug-ins/xjt/xjt.c: Use _mkdir() on Win32.
2003-05-30 22:59:29 +00:00
Sven Neumann f7f09188f2 don't stop the active tool, the tool manager did this already when the
2003-05-30  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpeditselectiontool.c
	(gimp_edit_selection_tool_button_release): don't stop the active
	tool, the tool manager did this already when the edit-selection
	tool was pushed.
2003-05-30 15:50:46 +00:00
Michael Natterer 30ea5171aa removed the calls to g_log_set_handler().
2003-05-29  Michael Natterer  <mitch@gimp.org>

	* app/main.c (main): removed the calls to g_log_set_handler().

	* app/app_procs.[ch] (app_init): added the g_log_set_handler()
	calls and pass them the global Gimp instance as user_data.
	Renamed app_gui_init() to app_gui_libs_init().

	* app/errors.c: use the passed Gimp pointer instead of using
	"the_gimp". Don't #include "app_procs.h".

	* app/gui/gui.[ch]: removed gui_get_screen_resolution().

	* app/widgets/gimpwidgets-utils.[ch]: added
	gimp_get_screen_resolution().

	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell.c
	* app/gui/preferences-dialog.c
	* app/gui/user-install-dialog.c: changed accordingly.

	* app/display/gimpdisplayshell.c: don't #include "gui/gui.h".
2003-05-29 11:34:30 +00:00
Michael Natterer 737d54fa2f remove main_column->editable_widget on each button_press_event. Should fix
2003-05-29  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainertreeview.c
	(gimp_container_tree_view_button_press): remove
	main_column->editable_widget on each button_press_event. Should
	fix more (if not all) stale editing widgets.
2003-05-28 23:17:06 +00:00
Michael Natterer bbc102f9cf app/display/gimpdisplayshell-callbacks.c app/tools/gimpcolorpickertool.c
2003-05-28  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptextoptions.c
	* app/tools/gimptransformtool.c
	* app/tools/paint_options.c
	* app/tools/tool_manager.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptoolbox-color-area.c:
	don't #include "gui/dialogs.h" to get the global factories but use
	gimp_dialog_factory_from_name() instead.
2003-05-28 17:23:54 +00:00
Sven Neumann 698a4ad07e wrap gui_libs_init() so we don't need to include gui.h from main.c
2003-05-28  Sven Neumann  <sven@gimp.org>

	* app/app_procs.[ch]: wrap gui_libs_init() so we don't need to
	include gui.h from main.c

	* app/main.c: changed accordingly.

	* app/gui/gui.[ch]: added a GdkScreen parameter to
	gui_get_screen_resolution(). Use NULL if you want the default
	screen.

	* app/gui/preferences-dialog.c
	* app/gui/user-install-dialog.c: changed accordingly.

	* app/display/gimpdisplayshell-scale.c: use the monitor resolution
	stored in the GimpDisplayShell object.

	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell.c: get the monitor resolution for
	the widget's GdkScreen. Set it in the realize method so it gets
	changed when the image window is migrated to another screen.
2003-05-28 16:11:29 +00:00
Michael Natterer ad3efec7d2 app/gui/image-menu.c app/gui/palette-editor-menu.c
2003-05-28  Michael Natterer  <mitch@gimp.org>

	* app/gui/image-menu.c
	* app/gui/palette-editor-menu.c
	* app/gui/view-commands.[ch]
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimppaletteeditor.[ch]: changed all places to show
	zoom menu items and icons in ZOOM_OUT, ZOOM_IN order. In an attack
	of consistency, also reordered all callbacks accordingly.
2003-05-28 16:07:53 +00:00
Michael Natterer 6cee716ddd don't let the navigation _popup_ auto-resize itself and don't allocate a
2003-05-28  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpnavigationview.c: don't let the navigation
	_popup_ auto-resize itself and don't allocate a minimum size
	bacause that makes sense for the navigation _tab_ only. Fixes
	popup size and positioning.
2003-05-28 15:20:58 +00:00
Sven Neumann c229fda7b5 don't mark a string for translation which should never be used.
2003-05-27  Sven Neumann  <sven@gimp.org>

	* app/gui/vectors-commands.c (vectors_selection_to_vectors): don't
	mark a string for translation which should never be used.
2003-05-27 12:02:34 +00:00
Michael Natterer 8addf4daa6 app/tools/gimpfreeselecttool.[ch] added the possibility to <alt>+drag the
2003-05-27  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpfreeselecttool.[ch]
	* app/tools/gimprectselecttool.[ch]: added the possibility to
	<alt>+drag the whole selection preview line *while* creating the
	selection. Used a modified version of
	http://aeropc5.hut.fi/~mjkorhon/gimp-move-selection.patch (found
	in the mailing list archives). Fixes bug #87688.
2003-05-27 11:52:03 +00:00
Michael Natterer 5c04f27cd5 switch to the "Channels" tab after adding the new channel. Fixes bug
2003-05-27  Michael Natterer  <mitch@gimp.org>

	* app/gui/select-commands.c (select_save_cmd_callback): switch
	to the "Channels" tab after adding the new channel.
	Fixes bug #101970.
2003-05-27 11:28:10 +00:00
Michael Natterer 707e597665 added "gint ref_count" to the TileManager struct.
2003-05-26  Michael Natterer  <mitch@gimp.org>

	* app/base/tile-manager-private.h: added "gint ref_count" to the
	TileManager struct.

	* app/base/tile-manager.[ch]: replaced tile_manager_destroy()
	by tile_manager_ref() and tile_manager_unref().

	* app/core/gimpimage-undo-push.c: ref the tile managers stored in
	the undo system and DON'T destroy them if no undo could be pushed.
	Should fix the remaining crashes with undo disabled like in
	bug #9350.

	(!!!) Note that the tiles passed to gimp_image_undo_push_image()
	and gimp_drawable_push_undo() as well as the tile managers of
	drawables passed to gimp_image_undo_push_[layer|channel]_mod()
	must be unref'ed by the caller now.

	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste):
	don't take ownership of the passed tiles but ref them if needed.

	(!!!) Callers must unref the passed tiles themselves now.

	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage.c
	* app/core/gimpimagemap.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/paint/gimppaintcore.c
	* app/text/gimptextlayer.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimptransformtool-undo.c
	* app/tools/gimptransformtool.c: changed accordingly.
2003-05-26 17:02:06 +00:00
Michael Natterer 4c070aff16 app/widgets/gimppaletteeditor.[ch] app/gui/palette-editor-commands.[ch]
2003-05-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppaletteeditor.[ch]
	* app/gui/palette-editor-commands.[ch]
	* app/gui/palette-editor-menu.c: started to clean up the palette
	editor: added buttons for all menu items and menu items for all
	buttons. Improved selected palette entry handling. Moved all code
	to gimppaletteeditor.c and call it from the menu callbacks.  Lots
	of cleanup (unfinished).
2003-05-26 14:56:57 +00:00
Pedro Gimeno 2f31d12f86 Fix off-by-one when dragging the selection. Fixes the last pending issue
2003-05-26  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/tools/gimpeditselectiontool.c (selection_transform_segs):
	Fix off-by-one when dragging the selection. Fixes the last pending
	issue of bug #17904. Use temporary variables for clamp values.

	* app/display/gimpdisplayshell-selection.c
	(selection_transform_segs): Perform the clamping that fixes
	bug #110014 here instead of in the callers. Solves a rare case
	that was not properly handled before.
	(selection_render_points, selection_generate_segs): Remove the
	clamping code from here.

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_rectangle): More
	clampings to avoid overflow of 16-bit coordinates.
2003-05-25 23:23:34 +00:00
Michael Natterer dd9a0a4a63 Use g_object_[set|get]_qdata(), not just _data() to speed up tool manager
2003-05-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/tool_manager.[ch] (tool_manager_set,get): Use
	g_object_[set|get]_qdata(), not just _data() to speed up tool
	manager access.

	Removed tool_manager_active_get_help_data() and
	tool_manager_help_func().

	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c: use gimp_standard_help_func and
	tool->tool_info->help_data instead. Don't #include "tool_manager.h".
2003-05-25 17:16:59 +00:00
Michael Natterer ac2b6c8702 changed again to take no paramaters and use _gimp_standard_help_func from
2003-05-25  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimphelpui.[ch] (_gimp_help_init): changed again
	to take no paramaters and use _gimp_standard_help_func from
	gimpwidgets-private.

	* libgimpwidgets/gimpwidgets-private.[ch]: removed the palette
	functions from GimpWidgetVTable. Instead, pass them as
	GimpGetColorFunc to gimp_widgets_init() and make them available as
	_gimp_get_foreground_func and _gimp_get_background_func.

	* libgimpwidgets/gimpcolorbutton.c
	* libgimp/gimpui.c: changed accordingly.

	* app/libgimp_glue.[ch]: removed the palette functions.

	* app/gui/gui.c: added gui_get_foreground_func() and
	gui_get_background_func() and pass them to gimp_widgets_init().
2003-05-25 14:23:43 +00:00
Michael Natterer 253ed7092b added a GimpHelpFunc parameter to _gimp_help_init(). Implement
2003-05-25  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimphelpui.[ch]: added a GimpHelpFunc parameter to
	_gimp_help_init(). Implement gimp_standard_help_func() here and
	use the function pointer passed to _gimp_help_init().

	* libgimpwidgets/gimpwidgets-private.[ch]: removed
	standard_help_func from GimpWidgetsVTable. Require it as paramater
	to gimp_widgets_init() and pass it to _gimp_help_init().

	* libgimpwidgets/gimpunitmenu.c: use gimp_standard_help_func
	directly again.

	* app/libgimp_glue.[ch]: removed gimp_standard_help_func().

	* libgimp/Makefile.am
	* libgimp/gimphelp.c: removed this file (containing
	gimp_standard_help_func()).

	* app/gui/gui.c: added private gimp_help_func() and pass it to
	gimp_widgets_init().

	* libgimp/gimpui.c: added private gimp_ui_help_func() and pass it
	to gimp_widgets_init().
2003-05-25 12:13:57 +00:00
Hans Breuer 89bfbdf66d updated win32 (msvc) build
2003-05-24  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc **/*.def : updated win32 (msvc) build

	* plug-ins/twain/twain.c plug-ins/winsnap/winsnap.c :
	add the extra parameter to gimp_main() calls
2003-05-24 17:00:03 +00:00
Sven Neumann 7ade1c7251 fixed offset of layers and vectors after rotation (bug #113611).
2003-05-24  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-rotate.c (gimp_image_rotate): fixed offset of
	layers and vectors after rotation (bug #113611).
2003-05-23 22:50:03 +00:00
Sven Neumann 62dffea661 libgimpwidgets/Makefile.am new files. Moved gimp_widgets_init() here and
2003-05-23  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets-private.[ch]: new files. Moved
	gimp_widgets_init() here and added a vtable parameter. The vtable
	has entries for all the symbols that are either provided by libgimp
	or gimp itself depending on who is using the library.

	* libgimpwidgets/libgimp-glue.c: removed this file that uses to
	provide a Win32 only hack that is now not needed any longer.

	* libgimpwidgets/gimpcolorbutton.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimpsizeentry.c
	* libgimpwidgets/gimpunitmenu.c
	* libgimpwidgets/gimpwidgets.[ch]: don't call the offending
	functions directly, but use the vtable entries. This is ugly but
	the ugliness is restricted to our code. There are plans to clean
	this up further... (Fixes #113410 once more.)

	* app/gui/gui.c (gui_libs_init)
	* libgimp/gimpui.c (gimp_ui_init): initialize libgimpwidgets with
	the proper vtable.
2003-05-23 18:27:05 +00:00
Michael Natterer a2f7750d85 Always provide interlibrary dependencies, not just on Win32.
2003-05-23  Michael Natterer  <mitch@gimp.org>

	* modules/Makefile.am: Always provide interlibrary
	dependencies, not just on Win32.

	* Makefile.am
	* app/Makefile.am
	* app/config/Makefile.am
	* data/misc/Makefile.am
	* docs/Makefile.am
	* libgimp/Makefile.am
	* libgimpbase/Makefile.am
	* libgimpcolor/Makefile.am
	* libgimpmath/Makefile.am
	* libgimpmodule/Makefile.am
	* libgimpwidgets/Makefile.am
	* tools/Makefile.am: replaced many hardcoded "1.3" strings by
	$(LT_RELEASE). Hopefully didn't break the Win32 build...
2003-05-23 17:28:07 +00:00
Sven Neumann 83a2f4983e app/paint/gimppaintcore.c applied a patch from Henning Makholm
2003-05-23  Sven Neumann  <sven@gimp.org>

	* app/paint/gimppaintcore.c
	* app/tools/gimppainttool.c: applied a patch from Henning Makholm
	<henning@makholm.net> that improves drawing of narrow straight lines
	by moving the endpoints to pixel centers. Fixes bug #84145.
2003-05-23 13:22:38 +00:00
Michael Natterer 0fc53e0f54 don't call gimp_dialog_factory_add_foreign() with a NULL dialog_factory.
2003-05-23  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-notebook.c (color_notebook_new_internal): don't
	call gimp_dialog_factory_add_foreign() with a NULL dialog_factory.

	* app/widgets/gimpcolorpanel.c: removed the color_notebook_active
	boolean state and *always* call color_notebook_show() when the
	user clicks the button. This way the notebook is automatically
	deiconified or risen.
2003-05-23 12:00:49 +00:00
Sven Neumann 3dffa4fbd3 docs/keybindings.txt changed the default shortcut for "Zoom In" to '+'.
2003-05-23  Sven Neumann  <sven@gimp.org>

	* docs/keybindings.txt
	* app/gui/image-menu.c (image_menu_entries): changed the default
	shortcut for "Zoom In" to '+'. Fixes bug #56108.
2003-05-23 11:27:28 +00:00
Michael Natterer 80db2fb4d1 implement <shift>+click on the eye icon the same way it was in 1.2 (hide
2003-05-23  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdrawabletreeview.c
	(gimp_drawable_tree_view_eye_clicked): implement <shift>+click on
	the eye icon the same way it was in 1.2 (hide all other drawables
	if any is visible, show them all otherwise). Fixes bug #113479.
2003-05-23 11:03:13 +00:00
Michael Natterer f7351b0bbb app/vectors/Makefile.am new files implementing a compatibility API for
2003-05-22  Michael Natterer  <mitch@gimp.org>

	* app/vectors/Makefile.am
	* app/vectors/gimpvectors-compat.[ch]: new files implementing a
	compatibility API for converting old XCF and PDB point arrays
	to GimpVectors and vice versa.

	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/paths.pdb: use the new functions instead of
	having slightly different, but equally ugly code twice.

	* app/xcf/xcf-load.c: cleaned up path loading a lot. Removed the
	path_point loading utility functions.

	* app/pdb/paths_cmds.c: regenerated.

	* app/Makefile.am: link vectors/libappvectors.a after
	xcf/libappxcf.a so the compat functions (which are not needed in
	vectors/) are found.  Also reverted an accidentially checked in
	change to the libgimpwidgets link order.
2003-05-22 19:02:38 +00:00
Manish Singh 99b371fca9 convert filename to a uri for find_utils_find_proc.
2003-05-22  Manish Singh  <yosh@gimp.org>

        * tools/pdbgen/pdb/fileops.pdb: convert filename to a uri for
        find_utils_find_proc.

        * app/pdb/fileops_cmds.c: regenerated
2003-05-22 16:58:57 +00:00
Michael Natterer 487f71ba05 Removed the old paths and the remaining legacy stuff it needed. Fixes bug
2003-05-21  Michael Natterer  <mitch@gimp.org>

	Removed the old paths and the remaining legacy stuff it needed.
	Fixes bug #104471.

	* Makefile.am
	* configure.in
	* pixmaps/*: removed the pixmaps/ directory.

	* app/ops_buttons.[ch]
	* app/path.[ch]
	* app/pathP.h
	* app/path_transform.h
	* app/gui/paths-dialog.[ch]
	* app/tools/gimpbezierselecttool.[ch]: removed these files.

	* app/Makefile.am
	* app/gui/Makefile.am
	* app/tools/Makefile.am: changed accordingly.

	* app/core/core-types.h: removed the Path* types.

	* app/core/gimpimage.[ch]
	* app/core/gimpimage-duplicate.c: removed gimage->paths.

	* app/gui/about-dialog.c: inline wilber2_xpm for now.

	* app/gui/dialogs-constructors.c
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c
	* app/gui/menus.c: removed the old paths dialog.

	* app/gui/gui.c: removed gui_rotate_the_shield_harmonics() hack
	which was broken anyway.

	* app/tools/gimptransformtool.c: #if 0 path_transform preview stuff.

	* app/tools/gimpiscissorstool.c: removed useless include.

	* app/tools/tools.c: removed the bezier select tool.

	* app/vectors/gimpvectors.c (gimp_vectors_real_stroke_add): use
	g_list_append(), not g_list_prepend() so some ugly side conditions
	of legacy path loading are honored.

	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c: load and save only GimpVectors.
2003-05-21 17:38:14 +00:00
Michael Natterer 31bf3c9052 added GimpDrawable::alpha_changed() signal.
2003-05-21  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: added GimpDrawable::alpha_changed()
	signal.

	* app/core/gimpimage-undo-push.c
	* app/core/gimplayer.c: emit it when alpha is removed from or
	added to a layer.

	* app/widgets/gimpcontainertreeview.[ch]: added a
	"name_attributes" column to the list store which provides a
	PangoAttrList for the name column.

	* app/widgets/gimplayertreeview.[ch]: connect to all layers'
	"alpha_changed" and set the BG layer's name to bold.

	* app/widgets/gimpdrawabletreeview.c: removed redundant assertions.
2003-05-21 11:34:00 +00:00
Simon Budig 9c811f25d0 Extended to be able to handle multiple polygons in a sane way.
2003-05-21  Simon Budig  <simon@gimp.org>

	* app/core/gimpscanconvert.[ch]: Extended to be able to handle
	multiple polygons in a sane way.

	* app/core/gimpimage-mask-select.c: Use this to convert
	multiple-stroke vectors objects to selections. Libart rocks!

	* app/tools/gimpiscissorstool.c: Changed accordingly.

	(The previous commit did not run cleanly)
2003-05-21 01:02:37 +00:00
Simon Budig c6aa6a9efa Extended to be able to handle multiple polygons in a sane way.
2003-05-21  Simon Budig  <simon@gimp.org>

	* app/core/gimpscanconvert.[ch]: Extended to be able to handle
	multiple polygons in a sane way.

	* app/core/gimpimage-mask-select.c: Use this to convert
	multiple-stroke vectors objects to selections. Libart rocks!

	* app/tools/gimpiscissorstool.c: Changed accordingly.
2003-05-21 01:01:09 +00:00
Michael Natterer fc6ddb0540 removed redundant functions gimp_rgb_to_hsv_double() and
2003-05-20  Michael Natterer  <mitch@gimp.org>

	* libgimpcolor/gimpcolorspace.[ch]: removed redundant functions
	gimp_rgb_to_hsv_double() and gimp_hsv_to_rgb_double().

	* app/core/gimpdrawable-blend.c: use gimp_rgb_to_hsv() and
	gimp_hsv_to_rgb() instead.

	* plug-ins/fp/fp.[ch]
	* plug-ins/fp/fp_misc.c: ditto. Deuglyfied the changed functions'
	coding style a lot.
2003-05-20 18:29:13 +00:00
Michael Natterer a1abf2c55c call gimp_layer_invalidate_boundary() because the layer extents may
2003-05-20  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod): call
	gimp_layer_invalidate_boundary() because the layer extents may
	change.

	* app/core/gimpitem-linked.c: pass clip_result == TRUE when
	rotating linked channels.

	* app/core/gimpdrawable-transform.c: implement clip_result so
	linked channels can be rotated without leaving the image in an
	inconsistent state. Added utility function
	gimp_drawable_transform_rotate_point().
2003-05-20 18:13:07 +00:00
Sven Neumann dc0aff0c0e app/display/gimpdisplayshell.[ch] removed padding_gc from the
2003-05-20  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpdisplayshell-callbacks.c: removed padding_gc from
	the GimpDisplayShell struct. Don't draw the padding color manually.

	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_set_padding): set the canvas background color
	using gdk_window_set_background().
2003-05-20 17:52:48 +00:00
Sven Neumann c90a88fd9d fixed a harmless compiler warning.
2003-05-20  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-rotate.c (gimp_image_rotate): fixed a harmless
	compiler warning.
2003-05-20 15:41:39 +00:00
Michael Natterer 966fb5595f don't default to clip_result == TRUE (unlike the other transform
2003-05-20  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpchannel.c (gimp_channel_rotate): don't default to
	clip_result == TRUE (unlike the other transform functions).

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_rotate): fixed offset calculation.

	* app/core/gimpimage-rotate.c: change the image size *after* all items
	are rotated. Adjust all items' offsets after rotation. Rotate the
	resolutions too. Seems to work now and fixes bug #6101.

	* app/core/gimpimage.c (gimp_image_size_changed): emit
	"size_changed" on all vectors.

	* app/core/gimpitem-linked.[ch]: added gimp_item_linked_rotate().

	* app/gui/drawable-commands.c: flip and rotate linked items too.

	* app/vectors/gimpvectors.c (gimp_vectors_rotate): fixed rotation
	angles.

	Unrelated:

	* app/core/gimpimage-merge.c: don't #include "path.h".
2003-05-20 15:26:38 +00:00
Sven Neumann a996ba3956 fixed algorithm for GIMP_ROTATE_180.
2003-05-20  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_rotate): fixed algorithm for
	GIMP_ROTATE_180.
2003-05-20 13:40:33 +00:00
Sven Neumann 4e335f7fc2 no need to include gimp-intl.h.
2003-05-20  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-flip.c: no need to include gimp-intl.h.

	* app/core/gimpimage-rotate.c: change the image size if needed;
	implemented rotation of guides.

	* app/vectors/gimpvectors.c: implemented rotation of vectors.
2003-05-20 11:55:12 +00:00
Michael Natterer f46c16c8ea remember the guide's orientation in the guide undo. Needed for
2003-05-20  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-undo-push.c: remember the guide's orientation
	in the guide undo. Needed for gimp_image_rotate().
2003-05-20 11:24:54 +00:00
Sven Neumann 1de667f0b6 added new enum GimpRotationType.
2003-05-20  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]: added new enum GimpRotationType.

	* app/core/Makefile.am
	* app/core/gimpimage-rotate.[ch]: new files.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpdrawable.c
	* app/core/gimpitem.[ch]
	* app/core/gimplayer.c
	* app/vectors/gimpvectors.c: added GimpItem::rotate. Still work in
	progress.

	* plug-ins/common/rotate.c: don't install any menu entries. The
	plug-in is only kept around to provide plug_in_rotate for backward
	compatibility.

	* app/gui/drawable-commands.[ch]
	* app/gui/image-commands.[ch]
	* app/gui/image-menu.c: use the new rotate implementation and use
	stock icons for the menu entries. Fixes bug #57797.
2003-05-20 10:36:29 +00:00
Michael Natterer 470947f911 Some color API cleanup:
2003-05-20  Michael Natterer  <mitch@gimp.org>

	Some color API cleanup:

	* libgimpcolor/gimpcolortypes.h: added struct GimpHSL. All values
	are doubles in a [0.0..1.0] range.

	* libgimpcolor/gimpcolorspace.[ch]: changed the GimpRGB <-> HSL
	functions to use the new struct instead of separate hue, saturation
	and lightness doubles. Note that the hue range has changed from
	[0.0..360.0] to [0.0..1.0].

	* app/base/colorize.c (colorize_calculate)
	* plug-ins/common/AlienMap2.c (transform): changed accordingly.
2003-05-20 10:20:34 +00:00
Michael Natterer 1b107d83d6 eek, forgot to commit this file.
2003-05-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/drawable-commands.h: eek, forgot to commit this file.
2003-05-19 17:17:10 +00:00
Michael Natterer 67b00677c7 moved the image flip entries to the Image->Transform submenu and added
2003-05-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/image-menu.c: moved the image flip entries to the
	Image->Transform submenu and added flip entries to
	Layer->Transform. Cleaned up the transform submenus.

	* app/gui/drawable-commands.[ch]: added
	drawable_flip_cmd_callback().

	* tools/pdbgen/pdb/image.pdb: added a PDB wrapper for
	gimp_image_flip().

	* libgimp/gimpimage_pdb.[ch]
	* app/pdb/image_cmds.c
	* app/pdb/internal_procs.c: regenerated.
2003-05-19 16:28:35 +00:00
Sven Neumann 48b3b263fe fixed sense of assertions; argh.
2003-05-19  Sven Neumann  <sven@gimp.org>

	* app/base/temp-buf.c (temp_buf_to_color) (temp_buf_to_gray):
	fixed sense of assertions; argh.
2003-05-19 15:54:52 +00:00
Michael Natterer 49b851780e fixed to work like gimp_hls_to_rgb_int() (does the right thing now for the
2003-05-19  Michael Natterer  <mitch@gimp.org>

	* libgimpcolor/gimpcolorspace.c (gimp_hsl_to_rgb): fixed to work
	like gimp_hls_to_rgb_int() (does the right thing now for the
	saturation == 0 case). Some minor cleanups.

	Implemented "Colorize" as suggested in bug #20509. It's not a
	toggle in the "Hue/Saturation" tool dialog (which would be a gross
	hack IMHO) but a separate tool. Fixes bug #20509.

	* app/base/Makefile.am
	* app/base/base-types.h
	* app/base/colorize.[ch]: the actual mapping function lives
	here. Its algorithm was taken from the "colorify" plug-in.

	* app/tools/Makefile.am
	* app/tools/gimpcolorizetool.[ch]: the tool.

	* app/tools/tools.c: register it.

	* app/gui/dialogs.c: session-manage its dialog.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-colorize-16.png
	* themes/Default/images/tools/stock-tool-colorize-22.png: new
	icons from Jimmac.

	Unrelated:

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: don't #include "tool_manager.h"
2003-05-19 14:21:03 +00:00
Manish Singh 5e88b31d58 remove glibconfig.h inline check, it hasn't worked for a long time.
2003-05-19  Manish Singh  <yosh@gimp.org>

        * configure.in: remove glibconfig.h inline check, it hasn't worked
        for a long time.

        * tools/authorsgen/contributors: added George J. Carrette, author of
        SIOD.
2003-05-19 07:04:46 +00:00
Simon Budig 0174bb6d6a Implemented closed paths. Not yet available in a sane manner via the UI.
2003-05-19  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpbezierstroke.[ch]: Implemented closed paths. Not
	yet available in a sane manner via the UI. Added the last missing
	line from gimp_bezier_stroke_interpolate ().

	* app/tools/gimpvectortool.c: Changed accordingly

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpvectors.[ch]: removed Tabs.
2003-05-18 23:08:01 +00:00
Michael Natterer a354e7f45e set gimage->qmask_state to TRUE if a channel's name is "Qmask". Fixes bug
2003-05-19  Michael Natterer  <mitch@gimp.org>

	* app/xcf/xcf-load.c (xcf_load_channel): set gimage->qmask_state
	to TRUE if a channel's name is "Qmask". Fixes bug #113240.
2003-05-18 22:07:36 +00:00
Michael Natterer 272ee133ed snap correctly to the bottom and right sides of the rectangle. Also snap
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-guides.c (gimp_image_snap_rectangle): snap
	correctly to the bottom and right sides of the rectangle. Also
	snap to the closer guide if we snap twice on one axis.
	Fixes bug #113233.

	All snapping functions: use ROUND() instead of truncating the
	double coords.
2003-05-18 21:41:53 +00:00
Michael Natterer c12bec704c update the cursor on GDK_ENTER_NOTIFY.
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): update the cursor on
	GDK_ENTER_NOTIFY.

	* app/display/gimpdisplayshell-cursor.c
	(gimp_display_shell_update_cursor): argh, "0" coordinates are
	*inside* the canvas.

	Together fixes bug #113239.
2003-05-18 20:20:57 +00:00
Michael Natterer 73e5a890bf removed GIMP_TARGET_PALETTE. Fixes bug #113237.
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppaletteeditor.c (color_palette_target_table):
	removed GIMP_TARGET_PALETTE. Fixes bug #113237.
2003-05-18 19:32:46 +00:00
Michael Natterer a27b88502f push a colormap undo if the image was INDEXED. Fixes bug #113236. Minor
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-convert.c (gimp_image_convert): push a
	colormap undo if the image was INDEXED. Fixes bug #113236.
	Minor Cleanups.
2003-05-18 19:21:53 +00:00
Michael Natterer 1358fafb0e Implemented "Flip Image". Fixes bug #23179:
2003-05-18  Michael Natterer  <mitch@gimp.org>

	Implemented "Flip Image". Fixes bug #23179:

	* app/core/core-enums.[ch]: added GIMP_UNDO_GROUP_IMAGE_FLIP.

	* app/core/Makefile.am
	* app/core/gimpimage-flip.[ch]: new files implementing
	gimp_image_flip().

	* app/gui/image-menu.c
	* app/gui/image-commands.[ch]: added it to the "Image" menu.

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-flip-horizontal-16.png
	* themes/Default/images/stock-flip-vertical-16.png
	* libgimpwidgets/gimpstock.[ch]: added icons for the new
	menu items.

	Bugs found while hacking the stuff above:

	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste):
	only call gimp_layer_add_alpha() if the pasted tiles have alpha.

	* app/core/gimpimage-undo-push.c (undo_pop_channel_mod): fixed to
	do the right thing if the channel is the selection mask.
2003-05-18 18:48:36 +00:00
Michael Natterer 146a51c55f changed to expect all points (also the first one) in "H, A, H" order.
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/vectors/gimpbezierstroke.[ch]
	(gimp_bezier_stroke_new_from_coords): changed to expect all points
	(also the first one) in "H, A, H" order.  Ignore the first coord
	in the array for now. Added "gboolean closed" parameter.

	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/paths.pdb: shuffle the legacy path point arrays
	around before creating strokes so they match the new order.

	* app/pdb/paths_cmds.c: regenerated.
2003-05-18 16:36:10 +00:00
Michael Natterer 45973682e4 app/display/gimpdisplayshell-dnd.[ch] enabled dropping of vectors to the
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-dnd.[ch]
	* app/display/gimpdisplayshell.c: enabled dropping of vectors to
	the display to copy them between images.
2003-05-18 14:47:07 +00:00
Michael Natterer 256701f68d added BOOLEAN: OBJECT, POINTER.
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpmarshal.list: added BOOLEAN: OBJECT, POINTER.

	* app/widgets/gimpcontainerview.[ch]: added a boolean return
	value to GimpContainerView::select_item() which indicates if
	the select operation was successful.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpvectorstreeview.c: changed accordingly.

	* app/widgets/gimpdrawabletreeview.c: ditto. Removed the
	tree_view's select_function because it was only constraining the
	widget, not the underlying select operation. Instead, implement
	GimpContainerView::select_item() and disallow anything but the
	floating selection to be selected. Also re-enabled the
	"floating_selection_changed" callback and explicitely set the
	active item so the button states get updated. Fixes bug #112487.
2003-05-18 13:28:27 +00:00
Michael Natterer bda46bbc35 added new function gimp_vectors_convert() which duplicates a GimpVectors
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/vectors/gimpvectors.[ch]: added new function
	gimp_vectors_convert() which duplicates a GimpVectors for another
	image.

	* app/widgets/gimpvectorstreeview.c
	(gimp_vectors_tree_view_class_init): use it as
	GimpItemTreeView::convert_item() implementation. Enables
	DND-copying of vectors between images.
2003-05-18 11:18:58 +00:00
Michael Natterer c44bf94c5a app/tools/gimptransformtool.c removed old path undo stuff.
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptransformtool.c
	* app/tools/gimptransformtool-undo.[ch]: removed old path undo stuff.
2003-05-18 10:44:09 +00:00
Michael Natterer 4624d49662 call gimp_item_set_image() on the new layer's mask too if it exists.
2003-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c (gimp_layer_new_from_drawable): call
	gimp_item_set_image() on the new layer's mask too if it exists.
2003-05-18 10:32:16 +00:00
Michael Natterer 9252db5865 Fixed File->Revert, which was completely broken before:
2003-05-17  Michael Natterer  <mitch@gimp.org>

	Fixed File->Revert, which was completely broken before:

	* app/gui/file-commands.c (file_revert_confirm_callback): set the
	new image on all GimpContexts which had the old image set.  Unref
	the new image after the displays are reconnected.

	Added some paranoia code for similar future situations (the
	functions below were not broken, but affected by the above bug):

	* app/display/gimpdisplay-handlers.c (gimp_display_disconnect):
	set gdisp->gimage to NULL before unrefing the image.

	* app/widgets/gimpimagedock.c (gimp_image_dock_image_changed):
	unref the gimage pointer returned by g_object_get() only if it is
	non-NULL. Cleanup.
2003-05-17 16:34:30 +00:00
Michael Natterer 00645531e0 treat the empty string as NULL filename. Fixes bug #113179.
2003-05-17  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.c (gimp_image_set_filename): treat the empty
	string as NULL filename. Fixes bug #113179.
2003-05-17 15:35:57 +00:00
Michael Natterer 0c67310555 app/vectors/gimpbezierstroke.[ch] app/vectors/gimpstroke.[ch]
2003-05-16  Michael Natterer  <mitch@gimp.org>

	* app/vectors/gimpbezierstroke.[ch]
	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpvectors-preview.c
	* app/vectors/gimpvectors.[ch]: massive cleanup / code review:
	Made default implementations real ones. Don't add "const" to
	call-by-value parameters. Iterate lists using for() loops. Moved
	variables to local scopes. Removed tabs. Indentation. Stuff...

	* app/vectors/gimpstroke.[ch]: added unused "gboolean closed"
	member.
2003-05-16 16:49:04 +00:00
Michael Natterer 9981c4645c added "gboolean cut_image" parameter so we can float selections without
2003-05-16  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-mask.[ch] (gimp_image_mask_extract): added
	"gboolean cut_image" parameter so we can float selections
	without cutting them from the original drawable.

	* app/gui/select-commands.c
	* tools/pdbgen/pdb/selection.pdb: pass cut_image == TRUE.

	* app/pdb/selection_cmds.c: regenerated.

	* app/tools/tools-enums.[ch]: added SELECTION_MOVE_COPY value
	to the SelectOps enum.

	* app/tools/gimpselectiontool.c: use the new mode when
	<ctrl>+<alt>-dragging a selction (yes, this is evil but there are
	no modifiers left).

	* app/tools/gimpeditselectiontool.[ch]: extended EditType enum by
	EDIT_MASK_COPY_TO_LAYER_TRANSLATE and pass cut_image == FALSE if
	it's passed to init_edit_selection().

	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimprectselecttool.c: pass the new mode to
	GimpEditSelectionTool.
2003-05-16 12:10:47 +00:00
Michael Natterer a8598c6969 added dialog_factory and dialog_identifier parameters to the constructors
2003-05-16  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-notebook.[ch]: added dialog_factory and
	dialog_identifier parameters to the constructors and register the
	color_notebook with the passed factory as foreign dialog.

	* app/widgets/gimpcolorpanel.c: changed accordingly.

	* app/gui/dialogs.c
	* app/gui/colormap-editor-commands.c
	* app/gui/gradient-editor-commands.c
	* app/gui/palette-editor-commands.c
	* app/widgets/gimptoolbox-color-area.c: added session management for
	the color notebooks created here.
2003-05-16 11:53:50 +00:00
Michael Natterer 4dcf21316e call vectors_selection_to_vectors() instead of #warning about being
2003-05-16  Michael Natterer  <mitch@gimp.org>

	* app/gui/vectors-commands.c (vectors_sel_to_vectors_cmd_callback):
	call vectors_selection_to_vectors() instead of #warning about
	being unimplemented.
2003-05-16 09:52:49 +00:00
Michael Natterer fb8c6affdb fixed some bugs and warnings in the ported functions.
2003-05-16  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/paths.pdb: fixed some bugs and warnings in
	the ported functions.

	* app/pdb/paths_cmds.c: regenerated.
2003-05-15 23:18:35 +00:00
Sven Neumann 6d347d385a app/pdb/fileops_cmds.c this change should fix file_load_thumbnail() for
2003-05-16  Sven Neumann  <sven@gimp.org>

	* app/pdb/fileops_cmds.c
	* tools/pdbgen/pdb/fileops.pdb: this change should fix
	file_load_thumbnail() for images with alpha channel by blending
	the resulting tempbuf on a checkerboard (bug #113033).
2003-05-15 22:05:37 +00:00
Michael Natterer a05d2c6310 removed generation of includes for enums since including "pdb-types.h" is
2003-05-15  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/app.pl (declare_args): removed generation of
	includes for enums since including "pdb-types.h" is sufficient
	now.

	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/channel_cmds.c
	* app/pdb/color_cmds.c
	* app/pdb/convert_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/edit_cmds.c
	* app/pdb/guides_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/misc_tools_cmds.c
	* app/pdb/paint_tools_cmds.c
	* app/pdb/procedural_db_cmds.c
	* app/pdb/selection_cmds.c
	* app/pdb/selection_tools_cmds.c
	* app/pdb/text_tool_cmds.c
	* app/pdb/transform_tools_cmds.c: regenerated.
2003-05-15 21:24:41 +00:00
Michael Natterer ecbbb96235 removed PDB access to the old paths and ported everything to GimpVectors.
2003-05-15  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/paths.pdb: removed PDB access to the old paths
	and ported everything to GimpVectors. Note that everything except
	gimp_path_set_points() is untested and that
	gimp_path_get_point_at_dist() is currently unimplemented. Changed
	order of the generated functions and fixed some help texts.

	* tools/pdbgen/app.pl: removed $tools_eek and $paint_eek hacks
	because pdb/ doesn't include stuff from tools/ any more and paint/
	no longer depends on GTK+.

	* app/pdb/paint_tools_cmds.c
	* app/pdb/paths_cmds.c
	* libgimp/gimppaths_pdb.[ch]: regenerated.
2003-05-15 21:15:00 +00:00
Sven Neumann 254cfb27ad fixed typo: use x1 instead of the uninitialized variable x.
2003-05-15  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_affine): fixed typo: use x1 instead
	of the uninitialized variable x.

	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.[ch]: removed unused variable
	has_alpha from blend_pixels() function.

	* app/base/temp-buf.c: cosmetics.
2003-05-15 21:01:02 +00:00
Michael Natterer 984eef2500 added new function vectors_selection_to_vectors() which invokes the
2003-05-15  Michael Natterer  <mitch@gimp.org>

	* app/gui/vectors-commands.[ch]: added new function
	vectors_selection_to_vectors() which invokes the sel2path Plug-In.

	* app/gui/dialogs-constructors.c: make the new function known to
	GimpVectorTreeView.

	* app/widgets/gimpvectorstreeview.[ch]: Added a "Selection to Path"
	button anc call the new function.
2003-05-15 14:31:22 +00:00
Sven Neumann 60935d5028 app/pdb/fileops_cmds.c fixed docs for file_save_thumbnail (bug #113033).
2003-05-15  Sven Neumann  <sven@gimp.org>

	* app/pdb/fileops_cmds.c
	* tools/pdbgen/pdb/fileops.pdb: fixed docs for file_save_thumbnail
	(bug #113033).
2003-05-15 14:12:16 +00:00
Sven Neumann 929fef0d57 added some sanity checks to temp_buf conversion routines.
2003-05-15  Sven Neumann  <sven@gimp.org>

	* app/base/temp-buf.c: added some sanity checks to temp_buf
	conversion routines.

	* tools/pdbgen/pdb/fileops.pdb (file_load_thumbnail_invoker): use
	GimpImagefile to load a thumbnail. Only works for RGB images yet.
	This adresses bug #113033.

	* app/pdb/fileops_cmds.c: regenerated.

	* app/file/file-utils.[ch]: removed file_utils_readXVThumb(). It
	is not needed any longer since GimpImagefile also handles the
	old-style .xvpics.

	* plug-ins/script-fu/scripts/copy-visible.scm: fixed typo.
2003-05-15 13:33:30 +00:00
Michael Natterer 71a578fc30 cleaned up the old path saving functions just as the old path loading
2003-05-15  Michael Natterer  <mitch@gimp.org>

	* app/xcf/xcf-save.c: cleaned up the old path saving functions
	just as the old path loading ones. Don't use g_slist_foreach() but
	do everything in one functions. Added error checking for path
	saving.
2003-05-15 12:47:42 +00:00
Michael Natterer 1589a20644 the old paths actually *do* support multiple strokes, they are just all in
2003-05-15  Michael Natterer  <mitch@gimp.org>

	* app/xcf/xcf-load.c (xcf_load_old_path): the old paths actually
	*do* support multiple strokes, they are just all in one curve.
	Added support for loading them as separate GimpBezierStrokes.
2003-05-15 12:32:53 +00:00
Michael Natterer c1eddd4fbc actually increment the coord index when iterating the coords array. Fixes
2003-05-15  Michael Natterer  <mitch@gimp.org>

	* app/vectors/gimpbezierstroke.c
	(gimp_bezier_stroke_new_from_coords): actually increment the coord
	index when iterating the coords array. Fixes bug #113049.
2003-05-15 12:28:57 +00:00
Michael Natterer a5ddcd73e5 load the old paths into new GimpVectors objects. Old paths are still
2003-05-14  Michael Natterer  <mitch@gimp.org>

	* app/xcf/xcf-load.c: load the old paths into new GimpVectors
	objects. Old paths are still created because new vectors can't be
	saved yet. Renamed all old path loading functions to
	xcf_load_old_path*(). Added prototypes for them and reordered them
	to match the order of the rest of the file. Changed their
	signatures to match the rest of the file and indented them.
2003-05-14 19:21:42 +00:00
Michael Natterer 149e81dab5 app/core/Makefile.am new file for utility functions. Contains
2003-05-14  Michael Natterer  <mitch@gimp.org>

	* app/core/Makefile.am
	* app/core/gimp-utils.[ch]: new file for utility functions.
	Contains gimp_rectangle_intersect() for now.

	* app/core/gimpdrawable-transform.c: removed the function here.

	* app/core/gimpdrawable.c (gimp_drawable_resize): use it to
	determine the amount of pixels to copy between the old and new
	tile managers. Removed restriction that forced the areas to
	overlap by at least one pixel.

	* app/core/gimpitem.c (gimp_item_real_transform): removed the
	restriction here, too.

	* app/core/gimplayer.c (gimp_layer_create_mask): use the new
	function to decide how much to copy from the selection when
	creating a mask from it.
2003-05-14 15:32:07 +00:00
Michael Natterer 5f42f8da78 changed the TileManager variable names to "orig_tiles" and "new_tiles" in
2003-05-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable-transform.[ch]: changed the TileManager
	variable names to "orig_tiles" and "new_tiles" in the whole file.

	(gimp_drawable_transform_tiles_flip): implement "clip_result".
	Enables flipping of linked channels.
2003-05-14 10:51:14 +00:00
Michael Natterer 3b4c7f2eb6 chain up to parent_class->book_removed(), not book_added(). Fixes dock
2003-05-14  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpimagedock.c (gimp_image_dock_book_removed):
	chain up to parent_class->book_removed(), not book_added().  Fixes
	dock destruction on last book removal.
2003-05-14 10:18:03 +00:00
Michael Natterer 85f5206d59 app/xcf/xcf-load.c (xcf_load_channel_props) store the channel's "linked"
2003-05-13  Michael Natterer  <mitch@gimp.org>

	* app/xcf/xcf-load.c (xcf_load_channel_props)
	* app/xcf/xcf-save.c (xcf_save_channel_props): store the channel's
	"linked" state in the XCF. Older GIMPs will complain, but still
	load the file as if the new property was not there.
2003-05-13 18:30:15 +00:00
Michael Natterer a4395cead9 added "gboolean clip_result" to GimpItem::flip().
2003-05-13  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added "gboolean clip_result" to
	GimpItem::flip().

	* app/vectors/gimpvectors.c
	* app/tools/gimpfliptool.c: changed accordingly.

	* app/core/gimpdrawable.c: implement GimpItem::flip() and
	GimpItem::transform().

	* app/core/gimpchannel.c
	* app/core/gimplayer.c: chain up in flip() and transform() and do
	only the layer/channel specific stuff here.

	* app/core/gimpdrawable-transform.[ch]: fixed indentation.
	(gimp_drawable_transform_tiles_flip): added "gboolean clip_result"
	and warn that it is not yet implemented.
	(gimp_drawable_transform_tiles_affine): when transforming a
	channel set bg_color to transparent. Clip channels (but not layer
	masks) only if the passed tiles have bpp == 1 (the channel is
	unfloated).
	(gimp_drawable_transform_affine): clip all unfloated channels.

	* app/core/gimpitem-linked.[ch]: added gimp_item_linked_get_list()
	utility function to avoind iterating all layers/channels/vectors
	in all functions.

	* app/tools/gimptransformtool.c: clip all unfloated channels.

	The clipping fixes above together fix bug #112858.
2003-05-13 13:57:11 +00:00
Michael Natterer 6745446916 s/bg/bg_color/g, cleanup.
2003-05-13  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-mask.c (gimp_image_mask_extract):
	s/bg/bg_color/g, cleanup.
2003-05-13 12:48:18 +00:00
Sven Neumann 4f24228456 wait 10 ms before killing the plug-in just like the comment says. The code
2003-05-13  Sven Neumann  <sven@gimp.org>

	* app/plug-in/plug-in.c (plug_in_close): wait 10 ms before killing
	the plug-in just like the comment says. The code used to wait 0.1 ms
	only.
2003-05-13 11:44:28 +00:00
Sven Neumann 8f1cb61213 use a low-priority timeout for updating the WM icon.
2003-05-12  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-handlers.c
	(gimp_display_shell_invalidate_preview_handler): use a low-priority
	timeout for updating the WM icon.
2003-05-12 17:33:15 +00:00
Michael Natterer 45334e637e Added support for transforming linked layers, channels and vectors. Fixes
2003-05-12  Michael Natterer  <mitch@gimp.org>

	Added support for transforming linked layers, channels
	and vectors. Fixes bug #86277.

	* app/core/gimpdrawable-transform.[ch]
	(gimp_drawable_transform_tiles_flip): added "gdouble axis" and
	calculate the resulting drawable offset.
	(gimp_drawable_transform_flip): calculate the axis and pass it to
	the function above.
	(gimp_drawable_transform_[tiles_]affine): reordered parameters.

	* app/core/gimpitem.[ch]: added virtual functions GimpItem::flip()
	and GimpItem::transform().

	* app/core/gimpchannel.c
	* app/core/gimplayer.c
	* app/vectors/gimpvectors.c: implement flip() and transform().
	Note that all functions always transform the whole item,
	regardless of a present selection.

	* app/core/Makefile.am
	* app/core/gimpitem-linked.[ch]: new files containing utility
	functions which translate, flip and transform all linked items.

	* app/tools/gimpfliptool.c
	* app/tools/gimptransformtool.c
	* tools/pdbgen/pdb/layer.pdb: use the new gimp_item_linked_*()
	functions to translate, flip and transform all linked items.

	* tools/pdbgen/pdb/transform_tools.pdb: follow
	gimp_drawable_transform_affine() API change.

	* app/pdb/layer_cmds.c
	* app/pdb/transform_tools_cmds.c: regenerated.
2003-05-12 15:56:36 +00:00
Michael Natterer 305dc2ffd7 make sure that active_tool->tool_info is non-NULL before dereferencing it.
2003-05-12  Michael Natterer  <mitch@gimp.org>

	* app/tools/tool_manager.c (tool_manager_tool_changed): make sure
	that active_tool->tool_info is non-NULL before dereferencing it.
	(Spotted by Ville Pätsi).
2003-05-12 14:11:37 +00:00
Sven Neumann 0c30ec3cf7 added a missing break that broke gimp_image_find_next_guide(). Fixes bug
2003-05-11  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/guides.pdb: added a missing break that broke
	gimp_image_find_next_guide(). Fixes bug #112717.

	* app/pdb/guides_cmds.c: regenerated.
2003-05-11 13:47:16 +00:00
Sven Neumann ebb56bc5f8 added a "Stroke Selection" button to the selection editor as suggested in
2003-05-09  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpselectioneditor.[ch]: added a "Stroke Selection"
	button to the selection editor as suggested in bug #112448.
2003-05-09 21:41:53 +00:00
Sven Neumann 2182fb816a initialize scale to please the compiler.
2003-05-09  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpmagnifytool.c (gimp_magnify_tool_button_release):
	initialize scale to please the compiler.
2003-05-09 19:57:38 +00:00
Michael Natterer 457368140d added "gboolean push_undo" to GimpItem::translate() and don't push and
2003-05-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added "gboolean push_undo" to
	GimpItem::translate() and don't push and undo in
	gimp_item_translate().

	* app/core/gimpchannel.[ch]: removed public function
	gimp_channel_translate() and implement GimpItem::translate().

	* app/core/gimpimage-mask.c
	* app/core/gimplayer.c: changed accordingly.

	* app/vectors/gimpvectors.c: actually translate the vectors
	in translate().

	* app/gui/channels-commands.c (channels_new_channel_query): removed
	useless call to gimp_channel_translate().

	* app/tools/gimpeditselectiontool.c
	* tools/pdbgen/pdb/layer.pdb: when translating a linked layer,
	also translate all linked channels and vectors. Cleanup.

	Note that the "linked" behaviour has changed: before this change,
	moving a layer moved all linked layers unconditionally. Now,
	linked layers/channels/vectors are moved *only* if the moved layer
	is also linked (the linked items behave as a group now and moving
	something not in the group does not affect the group).

	* app/pdb/layer_cmds.c: regenerated.
2003-05-09 13:05:37 +00:00
Michael Natterer 3a8ef85b8c app/core/gimpimage-crop.c (gimp_image_crop) app/core/gimpimage-resize.c
2003-05-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-crop.c (gimp_image_crop)
	* app/core/gimpimage-resize.c (gimp_image_resize)
	* app/core/gimpimage-scale.c (gimp_image_scale):
	don't #include "gimpchannel.h". Moved code around so they all do
	their stuff in the same order (improves readability when comparing
	the functions). Use GimpItem variables instead of GimpChannel or
	GimpLayer ones. Lots of cleanup.
2003-05-09 11:27:21 +00:00
Michael Natterer 2de90bdb41 resize all vectors here, too.
2003-05-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-crop.c (gimp_image_crop): resize all vectors
	here, too.
2003-05-09 00:49:56 +00:00
Michael Natterer 882a8eca80 added default implementations for scale() and resize() which just set the
2003-05-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.c: added default implementations for scale()
	and resize() which just set the resulting width/height and offset
	values.

	* app/core/gimpdrawable.c: chain up in scale() and resize().

	* app/vectors/gimpvectors.[ch]: buncha vectors changes/features:

	- Removed unused "linked" and "locked" members.
	- Removed "changed" signal.
	- Added "freeze" and "thaw" signals and functions to emit them.
	- Added "freeze_count" member so we emit only one freeze/thaw pair
	  even when doing nested changes.
	- Added GimpItem::translate() implementation.
	- Actually scale and resize the vectors in scale() and resize().
	- Added undo for scale() and resize().
	- Added freeze()/thaw() pairs around all modifying functions.
	- Changed gimp_vectors_copy_strokes() to work as needed.

	* app/core/gimpimage-resize.c
	* app/core/gimpimage-scale.c: resize and scale all vectors.
	Fixes bug #36491.

	* app/core/gimpimage-undo-push.c (undo_pop_vectors_mod): added
	freeze()/thaw() around the vectors-modifying code. Also restore
	width, height and offsets.

	* app/tools/gimpvectortool.c: connect to "freeze" and "thaw"
	and pause()/resume() vectors drawing accordingly.
2003-05-09 00:38:51 +00:00
Michael Natterer 33b7d779d6 removed "linked" member and API...
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.[ch]: removed "linked" member and API...

	* app/core/gimpitem.[ch]: ...and added it here.

	* app/core/core-enums.[ch]
	* app/core/gimpimage-undo-push.[ch]: changed layer_linked undo
	types and functions to be item_linked ones.

	* app/tools/gimpeditselectiontool.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.

	* app/widgets/gimplayertreeview.[ch]: removed "linked" icon and
	functions...

	* app/widgets/gimpitemtreeview.[ch]: and added them here. Setting
	channels or vectors to "linked" does nothing yet.
2003-05-08 20:26:01 +00:00
Michael Natterer 129c78d271 added gimp_item_translate() and virtual function GimpItem::translate().
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added gimp_item_translate() and
	virtual function GimpItem::translate().

	* app/core/gimplayer.[ch]: removed public function
	gimp_layer_translate() and implement GimpItem::translate()
	instead.

	* app/core/core-enums.[ch]
	* app/core/gimpimage-undo-push.[ch]: changed layer_displace undo
	types and functions to be item_displace ones.

	* app/core/gimpimage-crop.c
	* app/core/gimpimage-resize.c
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/layers-commands.c
	* app/tools/gimpeditselectiontool.c
	* app/widgets/gimptoolbox.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.
2003-05-08 19:11:17 +00:00
Michael Natterer ab0ac8472f removed the remaining layer scale API.
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.[ch]: removed the remaining layer scale API.

	* app/core/gimpitem.[ch]: added the same functions here.

	* app/core/gimpimage-scale.c
	* app/gui/layers-commands.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.
2003-05-08 14:54:04 +00:00
Michael Natterer 766930db38 added width, height, offset_x and offset_y parameters.
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch] (gimp_item_configure): added width,
	height, offset_x and offset_y parameters.

	* app/core/gimpdrawable.c
	* app/vectors/gimpvectors.c: changed accordingly.

	* app/tools/gimpfliptool.c: removed unused variable.
2003-05-08 14:21:39 +00:00
Michael Natterer c1ab39a5e8 removed gimp_drawable_offsets().
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: removed gimp_drawable_offsets().

	* app/core/gimpitem.[ch]: added gimp_item_offsets().

	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-histogram.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-mask-select.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-pick-color.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell.c
	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/paint/gimppaintcore.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpinktool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/drawable.pdb: changed accordingly.

	* app/pdb/color_cmds.c
	* app/pdb/drawable_cmds.c: regenerated.
2003-05-08 14:06:03 +00:00
Michael Natterer 54878b79ce removed gimp_drawable_width,height().
2003-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: removed gimp_drawable_width,height().

	* app/core/gimpitem.[ch]: added gimp_item_width,height().

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-contiguous-region.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage.c
	* app/core/gimpimagemap.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimplayermask.c
	* app/core/gimpscanconvert.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell.c
	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimppaintcore.c
	* app/paint/gimpsmudge.c
	* app/text/gimptextlayer.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/selection.pdb: changed accordingly.

	* app/pdb/drawable_cmds.c
	* app/pdb/selection_cmds.c: regenerated.
2003-05-08 13:12:46 +00:00
Michael Natterer 4136e61ddc More transform virtualization preparation:
2003-05-08  Michael Natterer  <mitch@gimp.org>

	More transform virtualization preparation:

	* app/core/gimpdrawable.[ch]: removed "width", "height", "offset_x"
	and "offset_y"...

	* app/core/gimpitem.[ch]: ...and added them here.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-qmask.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/text/gimptext-compat.c
	* app/text/gimptextlayer.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimppreviewrendererdrawable.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.
2003-05-08 11:52:31 +00:00
Michael Natterer 1b2cc067c5 when adding a layer mask from selection, don't crash if the layer is not
2003-05-07  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c (gimp_layer_create_mask): when adding a
	layer mask from selection, don't crash if the layer is not
	entirely inside the image boundary but clip the copy_region()
	accordingly. Fixes bug #112409. Added a local GimpDrawable variable
	so we don't need to GIMP_DRAWABLE(layer) all the time.
2003-05-07 17:00:57 +00:00
Michael Natterer 7442ef5099 forgot to commit this one.
2003-05-07  Michael Natterer  <mitch@gimp.org>

	* app/vectors/gimpvectors.c: forgot to commit this one.
2003-05-07 14:45:26 +00:00
Michael Natterer 323ed50c99 More transform stuff virtualization:
2003-05-07  Michael Natterer  <mitch@gimp.org>

	More transform stuff virtualization:

	* app/core/gimpitem.[ch]: added new virtual function
	GimpItem::resize().

	* app/core/gimpchannel.[ch]
	* app/core/gimplayer.[ch]: removed public resize functions
	and implement resize() instead.

	* app/core/gimpdrawable.c: implement resize() which contains
	the common parts of layer/channel resizing.

	* app/vectors/gimpvectors.c: added empty resize() implementation.

	* app/core/gimpimage-crop.c
	* app/core/gimpimage-resize.c
	* app/gui/layers-commands.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.
2003-05-07 13:01:17 +00:00
Michael Natterer 2a17435e7e Started to abstract item transformation so we can easily transform
2003-05-07  Michael Natterer  <mitch@gimp.org>

	Started to abstract item transformation so we can easily
	transform multiple linked items later:

	* app/core/gimpitem.[ch]: added new virtual function
	GimpItem::scale() with the same signature as the former
	gimp_layer_scale_lowlevel().

	* app/core/gimpdrawable.c: implement scale() and do the
	common parts of layer/channel scaling here.

	* app/core/gimpchannel.[ch]
	* app/core/gimplayer.[ch]: implement scale() for the
	channel/layer specific parts of scaling.

	* app/core/gimplayer.[ch]: renamed gimp_layer_scale() to
	gimp_layer_scale_by_origin().

	* app/vectors/gimpvectors.c: added empty scale() implementation.

	* app/core/gimpimage-scale.c
	* app/core/gimpimage-undo-push.c
	* app/gui/layers-commands.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.

	Unrelated:

	* app/core/gimpimage-undo-push.c: fixed item rename undo to
	take the size of the saved name into account. Removed old
	path_undo stuff.
2003-05-07 11:09:00 +00:00
Michael Natterer f3747dbac2 removed GimpToolState (ACTIVE, INACTIVE).
2003-05-06  Michael Natterer  <mitch@gimp.org>

	* app/tools/tools-enums.[ch]: removed GimpToolState (ACTIVE,
	INACTIVE).

	* app/tools/gimptoolcontrol.[ch]: replaced "GimpToolState state"
	by "gboolean active".

	* app/tools/gimptool.c (gimp_tool_control)
	* app/tools/tool_manager.c (tool_manager_control_active): check
	for gimp_tool_control_is_active() before calling
	gimp_tool_control_halt().
2003-05-06 11:11:15 +00:00
Michael Natterer 1317d1809e added g_return_if_fail (gimp_tool_control_is_active (tool->control)) since
2003-05-06  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.c (gimp_tool_motion): added
	g_return_if_fail (gimp_tool_control_is_active (tool->control))
	since that's a basic constraint of tool event handling.

	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimprectselecttool.c (gimp_*_tool_motion):
	removed checks for gimp_tool_control_is_active().
2003-05-06 10:30:34 +00:00
Pedro Gimeno 9e7d814ac8 Cleanups. (gradient_calc_linear_factor): Apply the gradient to both sides
2003-05-05  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/core/gimpdrawable-blend.c: Cleanups.
	(gradient_calc_linear_factor): Apply the gradient to both sides
	when Repeat is set to Sawtooth Wave. Fixes bug #112106.

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_affine): Fix copy'n'paste slip in
	coordinates calculation for supersampling code. Transform the
	pixel centers properly. Fixes bug #10466.

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_rectangle,
	gimp_draw_tool_draw_arc): Ported the fix for bug #17904 from the
	STABLE branch (off-by-one when drawing the rectangle/ellipse
	previews).

	* app/tools/gimpeditselectiontool.c: Renamed
	gimp_edit_selection_tool_snap to
	gimp_edit_selection_tool_calc_coords, as it is no longer used for
	snapping.
	(gimp_edit_selection_tool_calc_coords): Use floor instead of
	rounding. Callers changed to remove rounding, as it deals with
	gdoubles directly. Thanks to Mitch for the help refining this
	one. Fixes bug #17906.
2003-05-05 18:45:58 +00:00
Michael Natterer f1d317a302 some more code cleanup.
2003-05-05  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-scale.c: some more code cleanup.
2003-05-05 15:33:11 +00:00
Michael Natterer 1204865d04 new utility function which takes GimpZoomType and zooms "scalesrc" and
2003-05-05  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-scale.[ch]
	(gimp_display_shell_scale_zoom_fraction): new utility function
	which takes GimpZoomType and zooms "scalesrc" and "scaledest".
	(gimp_display_shell_scale_calc_fraction): new utility function
	which takes an exact double scale factor and calculates "scalesrc"
	and "scaledest".

	(gimp_display_shell_scale): use the first.
	(gimp_display_shell_scale_fit): use the second.

	* app/tools/gimpmagnifytool.[ch]: use the first to click-zoom and
	the second to area-zoom. Fixes bug #112115. Removed zoom_in() and
	zoom_out() utiliy functions. Removed "GimpZoomType op" from the
	GimpMagnifyTool struct. Cleanup.
2003-05-05 14:48:15 +00:00
Michael Natterer 5067bec93b don't change the passed GimpCoords if we didn't snap.
2003-05-05  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_snap_coords):
	don't change the passed GimpCoords if we didn't snap.
2003-05-05 11:26:01 +00:00
Michael Natterer 95f8fca15e set GDK_HINT_USER_POS for all session managed dialogs, not only for those
2003-05-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.c: set GDK_HINT_USER_POS for all
	session managed dialogs, not only for those which already have
	saved session info. This way the dialogs keep their position
	acrosss hide/show within the same session, even if they have never
	been used before.

	* app/gui/dialogs.c: added entries for the file open/save dialogs.
	Fixed some entries.

	* app/gui/file-dialog-utils.[ch]
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: register the file dialogs with
	the dialog factory.
2003-05-03 23:02:26 +00:00
Michael Natterer 31becaf4d0 Update the splash before calling plug_in_query() and plug_in_init()
2003-05-03  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-ins.c (plug_ins_init): Update the splash before
	calling plug_in_query() and plug_in_init() (applied a modified
	patch from Raphael Quinet). Fixes bug #112156.
2003-05-03 20:18:03 +00:00
Michael Natterer a51bff58f9 added "dockable_added", "dockable_removed" and "dockable_reordered"
2003-05-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockbook.[ch]: added "dockable_added",
	"dockable_removed" and "dockable_reordered" signals and emit them.

	* app/widgets/gimpimagedock.[ch]: implement GimpDock::book_added()
	and GimpDock::book_removed(). Connect to the above signals and
	update the window title as proposed in bug #111971. Idle-update
	the title so subsequent changes are compressed. Fixes bug #111971.

	* app/widgets/gimpdock.c: cleanup.
2003-05-03 11:59:44 +00:00
Michael Natterer c18b6554b1 app/gui/dialogs.c app/tools/gimphistogramtool.c register their dialogs
2003-05-03  Michael Natterer  <mitch@gimp.org>

	* app/gui/dialogs.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpmeasuretool.c: register their dialogs too.
2003-05-03 09:56:25 +00:00
Michael Natterer fefaf61b28 added new function gimp_dialog_factory_add_foreign() which adds a dialog
2003-05-02  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.[ch]: added new function
	gimp_dialog_factory_add_foreign() which adds a dialog that was not
	created by the factory itself. Its identifier however must be
	registered with the factory. Connect to all toplevel dialogs'
	"configure_event" and remember the resulting window geometry so we
	get session management for *all* dialogs, not only for those which
	were open on exit.

	* app/gui/dialogs.c: added the "File New" dialog. Added foreign
	entries (without constructor) for all dialogs opened by tools.

	* app/gui/dialogs-constructors.[ch]: added a constructor for
	the file_new dialog.

	* app/gui/file-new-dialog.[ch]: renamed file_new_dialog_create()
	to file_new_dialog_new() and removed the gimage and template
	paramaters. Adder new function file_new_dialog_set() to set
	gimage and template after creation.

	* app/gui/file-commands.c
	* app/gui/templates-commands.c: changed accordingly.

	* app/tools/gimpimagemaptool.[ch]
	* app/tools/gimptransformtool.[ch]: added
	"const gchar *shell_identifier" to the tool structs. Register the
	tool dialogs using gimp_dialog_factory_add_foreign().

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpthresholdtool.c: set "shell_identifier" so the
	dialogs become session managed. Fixes bug #61091.

	* app/tools/gimpcroptool.c: register the crop dialog with the
	dialog factory. Fixes bug #52849.

	* app/tools/gimpcolorpickertool.c: ditto.

	Unrelated:

	* app/tools/gimptool.c: no need to cast the return value of
	g_object_new().
2003-05-02 18:43:15 +00:00
Pedro Gimeno a115c7b5ab Save brush pointer before first stroke and restore it after. Fixes bug
2003-05-02  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/paint/gimppaintcore-stroke.c (gimp_paint_core_stroke,
	gimp_paint_core_stroke_vectors): Save brush pointer before first
	stroke and restore it after. Fixes bug #102162.

	* plug-ins/common/flarefx.c (FlareFX): Use
	gimp_fixme_preview_do_row instead of memcpy. Fixes bug #112042 for
	this plug-in.

	* plug-ins/common/jigsaw.c: Several cleanups.
	(jigsaw_values_changed): New function as a result of the cleanups.
	(jigsaw): Use gimp_fixme_preview_do_row instead of memcpy.
	Together with the fix to flarefx, fixes bug #112042.
	(draw_jigsaw): Warn if passed a NULL buffer (solves the crash
	reported in bug #112012).

	* plug-ins/gimpressionist/orientation.c: Slightly reformatted.
	(create_orientationpage): Modify orientfirst/orientlast instead of
	sizefirst/sizelast in the corresponding adjustments. Fixes bug
	#112061.
2003-05-02 12:10:40 +00:00
Manish Singh 3511123863 Query fontconfig directly for the font list, avoiding scanning the
2003-05-01  Manish Singh  <yosh@gimp.org>

        * app/text/gimpfontlist.c: Query fontconfig directly for the font
        list, avoiding scanning the internal fontconfig list over and over
        again. There are differences in the font list that the old and new
        code produce however. The new code will generate descriptions for
        more fonts, and some of the styles will be different. Also, pango
        font description strings aren't specific enough for all cases, so
        a font name may appear more than once in the list. I'm not sure
        how to solve this best, but this code is Good Enough (TM) for now.
2003-05-02 05:50:36 +00:00
Pedro Gimeno 99f249ced3 Don't try to compress the left and right ends. Fixes bug #89274.
2003-04-30  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/widgets/gimpgradienteditor.c (control_compress_range): Don't
	try to compress the left and right ends. Fixes bug #89274.
2003-04-30 14:31:27 +00:00
Michael Natterer 909a28ced2 skip guides with negative positions. Fixes warning since
2003-04-30  Michael Natterer  <mitch@gimp.org>

	* app/xcf/xcf-load.c (xcf_load_image_props): skip guides with
	negative positions. Fixes warning since gimp_image_add_[hv]guide()
	doesn't allow positions < 0 any more.
2003-04-30 12:51:11 +00:00
Michael Natterer bf1b054cfe when editing an object's name, make sure we really edit its name, not its
2003-04-29  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainertreeview.c
	(gimp_container_tree_view_button_press): when editing an object's
	name, make sure we really edit its name, not its description.
2003-04-29 18:25:12 +00:00
Pedro Gimeno 06a65279ae Serialize access to source and destination memory to reduce the chance of
2003-04-29  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/paint-funcs/paint-funcs.c (shrink_line): Serialize access to
	source and destination memory to reduce the chance of cache misses
	when dealing with large images. Enable some assertions temporarily
	to ensure that the algorithm works properly before backporting it.
2003-04-29 15:50:39 +00:00
Pedro Gimeno c8ecdeec5c Mostly rewritten to improve accuracy. Fixes bug #104693.
2003-04-27  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/paint-funcs/paint-funcs.c (shrink_line): Mostly rewritten to
	improve accuracy. Fixes bug #104693.
2003-04-27 18:58:56 +00:00
Pedro Gimeno df21fe5276 Some reformattings to improve readability. (shrink_line): Added some
2003-04-25  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/paint-funcs/paint-funcs.c: Some reformattings to improve
	readability.
	(shrink_line): Added some explanatory comments.
	(border_region): Fixed wrong (though harmless) allocation bug: used
	sizeof(gint16 *) where sizeof(gint16) was needed.
2003-04-25 23:08:09 +00:00
Sven Neumann 2e2f9fcfd5 applied patch from Pedro Gimeno that fixes bug #51883.
2003-04-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-contiguous-region.c
	(find_contiguous_region_helper): applied patch from Pedro Gimeno
	that fixes bug #51883.

	* plug-ins/common/bumpmap.c (bumpmap): applied patch from Pedro
	Gimeno that fixes bug #52543.
2003-04-17 12:06:03 +00:00
Michael Natterer 2a55fbeda6 new functions snapping to one axis only. (gimp_image_snap_rectangle): use
2003-04-17  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-guides.c (gimp_image_add_x,y): new functions
	snapping to one axis only.
	(gimp_image_snap_rectangle): use them to enable snapping the
	rectangle to all its corners, not just the NW and SE one.
2003-04-17 10:22:13 +00:00
Michael Natterer d5edd5308e added an API to specify a "snap_offset" and a "snap_width/height". Needed
2003-04-17  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptoolcontrol.[ch]: added an API to specify a
	"snap_offset" and a "snap_width/height". Needed for tools which
	want to snap to a rectangle and/or a position which is not the
	current cursor position.

	* app/display/gimpdisplayshell.[ch]: removed
	gimp_display_shell_find_guide(), gimp_display_shell_snap_point()
	and gimp_display_shell_snap_rectangle().
	Added gimp_display_shell_snap_coords() which works on GimpCoords
	and gets passed the above snap offsets.

	* app/display/gimpdisplayshell-callbacks.c: use the new snap
	function, using the values from GimpToolControl.

	* app/tools/gimpcroptool.c: set snap offsets so the handles can be
	guide-aligned after creating. Fixes bug #110957.

	* app/tools/gimpeditselectiontool.c: removed snapping code (which
	was broken anyway) and set appropriate snap offsets in
	init_edit_selection().
2003-04-17 02:57:33 +00:00
Michael Natterer b123d9f027 modify the focus chain so it doesn't go line-by-line, but spinbuttons
2003-04-16  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimptemplateeditor.c (gimp_template_editor_init):
	modify the focus chain so it doesn't go line-by-line, but
	spinbuttons first, then the widgets right of them.
2003-04-16 12:59:36 +00:00
Michael Natterer 8cee4963fb check for GIMP_IS_DISPLAY(gdisp) again.
2003-04-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.c: check for GIMP_IS_DISPLAY(gdisp) again.

	* app/tools/gimptool.h: don't #include "gimptoolcontrol.h"

	* app/tools/[all tools].c: #include "gimptoolcontrol.h"
2003-04-15 16:05:52 +00:00
Sven Neumann 032c13098d app/tools/Makefile.am app/tools/gimptoolgui.[ch] removed unused files.
2003-04-15  Sven Neumann  <sven@gimp.org>

	* app/tools/Makefile.am
	* app/tools/gimptoolgui.[ch]
	* app/tools/gimptoolmodule.[ch]: removed unused files.
2003-04-15 14:24:03 +00:00
Sven Neumann 0c399e5c93 Removed support for pluggable tools:
2003-04-15  Sven Neumann  <sven@gimp.org>

	Removed support for pluggable tools:

	* configure.in: bumped version number to 1.3.15.

	* Makefile.am
	* libgimpproxy
	* libgimptool
	* plug-ins/Makefile.am
	* plug-ins/plugin-helper
	* plug-ins/tools: removed libgimpproxy, libgimptool and plug-ins
	that used it.

	* tools/Makefile.am
	* tools/gimp-mkproxy: removed tool that used to generate
	libgimpproxy.

	* app/core/core-enums.h
	* app/core/gimpchannel.h
	* app/display/display-types.h
	* app/widgets/widgets-enums.h: removed proxy-skip/resume stuff.

	* app/core/gimpobject.c: use gimp marshallers.

	* app/tools/Makefile.am
	* app/tools/gimptool.h
	* app/tools/tools-enums.[ch]: moved these files back from
	libgimptool.

	* app/tools/gimptool.c
	* app/tools/gimptoolcontrol.h: merged back functionality from
	libgimptool.

	* app/Makefile.am
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/tools-commands.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpbucketfilltool.h
	* app/tools/gimpdrawtool.h
	* app/tools/gimpimagemaptool.h
	* app/tools/gimpinktool.h
	* app/tools/gimptoolmodule.c
	* app/tools/tool_manager.c
	* app/tools/tools-types.h
	* app/tools/tools.c
	* tools/pdbgen/Makefile.am: changed accordingly.
2003-04-15 14:20:19 +00:00
Michael Natterer e745778f25 added a "selected_item" pointer to the GimpContainerGridView struct so we
003-04-15  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainergridview.[ch]: added a "selected_item"
	pointer to the GimpContainerGridView struct so we don't need to
	remember it using g_object_[set|get]_data(). Also make sure that
	the selected item doesn't get out of sight when resizing the view
	and that it is always visible initially.
2003-04-15 14:13:14 +00:00
Michael Natterer 5b631a8cab make sure all progress bars and at 1.0. Build the list of extension
2003-04-15  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-ins.c (plug_ins_init): make sure all progress
	bars and at 1.0. Build the list of extension procedures to start
	before starting them (and don't start them while iterating the
	list of procedures because the list changes if we start an
	extension).
2003-04-15 11:35:31 +00:00
Michael Natterer 1d5d809c93 use a smaller preview size for the gradient popup than for the button.
2003-04-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/paint_options.c (gimp_paint_options_gui): use a smaller
	preview size for the gradient popup than for the button.
2003-04-15 11:11:25 +00:00
Sven Neumann cdea262d75 tools/pdbgen/pdb/drawable.pdb don't request viewable previews with a width
2003-04-14  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/image.pdb: don't request viewable previews with
	a width or height of 0 and don't crash if no preview is returned.

	* app/pdb/drawable_cmds.c
	* app/pdb/image_cmds.c
	* libgimp/gimpdrawable_pdb.c: regenerated.
2003-04-14 15:41:46 +00:00
Michael Natterer 21cd66d275 made gimp_vector_tool_clear_vectors() private. Connect to the vector's
2003-04-14  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpvectortool.[ch]: made
	gimp_vector_tool_clear_vectors() private. Connect to the vector's
	"changed" signal (and do nothing in the callback for now...).
	Alwayws set tool->gdisp in button_press(). Use for() loops to
	iterate strokes. Fixed gimp_vector_tool_set_vectors() to hopefully
	do the right thing in all cases now. s/ptr/list/g. Cleanup.
2003-04-14 14:52:00 +00:00
Michael Natterer 8c6159c41d made "changed" a real signal, don't crash when iterating a NULL stroke
2003-04-14  Michael Natterer  <mitch@gimp.org>

	* app/vectors/gimpvectors.[ch]: made "changed" a real signal,
	don't crash when iterating a NULL stroke list, cleanup.
2003-04-14 14:46:34 +00:00
Michael Natterer dfdb1917cd check for !GIMP_IS_PREVIEW(widget), not for GTK_WIDGET_NO_WINDOW(widget)
2003-04-14  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockbook.c (gimp_dockbook_get_tab_widget): check
	for !GIMP_IS_PREVIEW(widget), not for GTK_WIDGET_NO_WINDOW(widget)
	when deciding whether to put the tab_widget in a GtkEventBox
	because GimpPreview is NO_WINDOW now but still handles events.
	Fixes dockable DND.
2003-04-14 14:44:30 +00:00
Sven Neumann b7cf188359 don't try to reparent the children of GtkInputDialog but simply pop up the
2003-04-14  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c: don't try to reparent the children
	of GtkInputDialog but simply pop up the dialog as provided by
	GTK+. Looks ugly but shouldn't crash any longer. Fixes bug #104423.
2003-04-14 14:15:20 +00:00
Simon Budig 740983b06f app/vectors/gimpstroke.[ch] Changed vectors->strokes to a GList and
2003-04-14  Simon Budig  <simon@gimp.org>

        * app/vectors/gimpstroke.[ch]
        * app/vectors/gimpvectors.[ch]: Changed vectors->strokes to a
        GList and removed stroke->next. Implemented stuff for duplicating
        strokes. Duplicating a vector works now.

        * app/tools/gimpvectortool.c: added not-yet-used function to
        determine where a click has been. Refcounting stuff changed.

        * app/core/gimpimage-mask-select.c
        * app/paint/gimppaintcore-stroke.c: Changed accordingly.
2003-04-14 00:37:04 +00:00
Michael Natterer 86ec502c46 connect to "realize" of the scrolled window's viewport and scroll to the
2003-04-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainergridview.c: connect to "realize" of the
	scrolled window's viewport and scroll to the correct item
	(because GtkViewport is too dumb to this by itself).

	* app/widgets/gimpcontainerpopup.[ch]: added a "view_type"
	parameter.

	* app/widgets/gimpviewablebutton.[ch]: added new function
	gimp_viewable_button_set_view_type() and pass the view_type
	to the GimpContainerPopup.

	* app/widgets/gimptemplateeditor.c: default to GIMP_VIEW_TYPE_GRID
	for the stock icon popup.
2003-04-13 20:19:07 +00:00
Michael Natterer 1a204234a4 Added g_return_if_fail (gimp_drawable_is_rgb (drawable)), cleanup.
2003-04-13  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable-desaturate.c (gimp_drawable_desaturate):
	Added g_return_if_fail (gimp_drawable_is_rgb (drawable)), cleanup.
2003-04-13 18:45:38 +00:00
Michael Natterer 6663cee5f3 invalidate the preview when the stock_id changes.
2003-04-13  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptemplate.c (gimp_template_notify): invalidate
	the preview when the stock_id changes.

	* app/widgets/gimptemplateeditor.[ch]: added an optional entry
	to edit the template's name.

	* app/widgets/gimptemplateview.[ch]: added a "duplicate" button and
	function pointers for creating templates, editing templates and
	creating images from templates.

	* app/gui/file-new-dialog.[ch] (file_new_dialog_create): added an
	optional template parameter.

	* app/gui/file-commands.c: pass template == NULL.

	* app/gui/templates-menu.c: added a "Duplicate Template" menu entry.

	* app/gui/templates-commands.[ch]: added the callback for the
	duplicate menu item. Added "New Template" and "Edit Template"
	dialogs. Added a function which opens a file_new_dialog with
	a template preselected.

	* app/gui/dialogs-constructors.c: let GimpTemplateView know
	about the functions.
2003-04-13 16:25:14 +00:00
Sven Neumann c16bc592a0 changed the "fade-length" and "gradient-length" minimum values to 0.0 for
2003-04-13  Sven Neumann  <sven@gimp.org>

	* app/paint/gimppaintoptions.c: changed the "fade-length" and
	"gradient-length" minimum values to 0.0 for compatibility with
	the PDB API.

	* app/paint/gimppaintcore.c (gimp_paint_core_get_color_from_gradient):
	check that gradient_length > 0.0 before dividing by it.

	* plug-ins/gfig/gfig.c (gfig_paint_callback): push an undo group
	around the paint operations (bug #110446).
2003-04-13 13:55:09 +00:00
Michael Natterer 1501733056 made the names editable in the tree view.
2003-04-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimptemplateview.c: made the names editable in the
	tree view.
2003-04-13 13:47:16 +00:00
Michael Natterer ffa291d6ce app/core/gimpcontext.c (gimp_context_deserialize_property) g_free() the
2003-04-13  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.c (gimp_context_deserialize_property)
	* app/core/gimpcontainer.c (gimp_container_deserialize): g_free()
	the string returned by gimp_scanner_parse_string(). Replace
	NULL object names by "".
2003-04-13 12:27:44 +00:00
Michael Natterer 4799083c69 g_memdup() the segments returned by gimp_image_mask_boundary(). Just
2003-04-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpeditselectiontool.c (init_edit_selection):
	g_memdup() the segments returned by gimp_image_mask_boundary().
	Just caching the pointers leads to bug #22375 because the image's
	mask boundary changes while we live-move stuff.

	* app/tools/gimpmovetool.c (gimp_move_tool_button_press): pause
	the selection when starting to move a guide, since we also resume
	it when we're finished.

	(both bugs tracked down by Pedro Gimeno).
2003-04-13 11:43:47 +00:00
Michael Natterer a4be816fa6 app/widgets/gimpcontainerpopup.[ch] added "preview_size" and
2003-04-12  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainerpopup.[ch]
	* app/widgets/gimpviewablebutton.[ch]: added "preview_size" and
	"preview_border_width" parameters to the constructors and use them
	when creating the popup.

	* app/tools/gimptextoptions.c
	* app/tools/paint_options.c
	* app/widgets/gimptemplateeditor.c: changed accordingly. Create the
	icon popup without borders.
2003-04-12 20:02:16 +00:00
Michael Natterer f82440ff48 made object properties G_PARAM_READWRITE by default. Added flag
2003-04-12  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-params.h: made object properties
	G_PARAM_READWRITE by default. Added flag GIMP_PARAM_AGGREGATE
	which indicates that an object property is not a reference but a
	real part of its owner.

	* app/config/gimpconfig-deserialize.c: g_object_set_property()
	object properties only if they are not GIMP_PARAM_AGGREGATE.

	* app/config/gimpconfig-utils.c (gimp_config_copy_properties,
	gimp_config_reset_properties): copy and reset GIMP_PARAM_AGGREGATE
	object properties correctly.

	* app/config/gimpconfig-serialize.c: don't call
	gimp_config_writer_open/close() for properties which are handled
	by a GimpConfigIface::serialize_property() implementation.

	* app/core/gimpcontext.c: removed exlicit G_PARAM_WRITABLE from
	object properties since that's the default now. Call
	gimp_config_writer_open/close() when serializing properties.

	* app/core/gimpviewable.c (gimp_viewable_get_property): use
	gimp_viewable_get_stock_id().
	(gimp_viewable_set_stock_id): set stock_id to NULL if the new
	stock_id is the same as viewable_class->default_stock_id.
	Added serialize_property() which skips stock_id serialization
	if it is NULL.

	* app/tools/gimptextoptions.c: made the "text" property
	GIMP_PARAM_AGGREGATE. Added gimp_text_options_set_property()
	(which does nothing).

	* app/widgets/gimptemplateeditor.[ch]: added an optional
	GimpViewableButton to change the template's icon.

	* app/gui/file-new-dialog.c: create it with the icon button so it
	gets some testing.
2003-04-12 19:06:25 +00:00
Sven Neumann 5aae2c2306 fixed fnord that caused the dialog to sometimes show a ratio of 0:0.
2003-04-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_dialog): fixed fnord that caused the
	dialog to sometimes show a ratio of 0:0.
2003-04-11 22:00:09 +00:00
Sven Neumann a24b7de0c4 return GTK_ICON_SIZE_INVALID for non-existant icons.
2003-04-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.c (gimp_get_icon_size): return
	GTK_ICON_SIZE_INVALID for non-existant icons.

	* app/widgets/gimppreviewrenderer.c: handle GTK_ICON_SIZE_INVALID.
2003-04-11 21:23:34 +00:00
Michael Natterer 3343455c13 s/NewImageInfo/FileNewDialog/g, cleanup.
2003-04-11  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-new-dialog.c: s/NewImageInfo/FileNewDialog/g,
	cleanup.
2003-04-11 17:42:59 +00:00
Michael Natterer fde9575781 derive it from GtkBin, not from GtkVBox. Removed "content_spacing" style
2003-04-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockable.[ch]: derive it from GtkBin, not from
	GtkVBox. Removed "content_spacing" style property.

	* app/widgets/gimpcontainerview-utils.c
	* etc/gtkrc_user
	* themes/Default/gtkrc: changed accordingly.
2003-04-11 16:51:49 +00:00
Michael Natterer d47eedc279 app/widgets/Makefile.am app/widgets/widgets-types.h new widget chopped out
2003-04-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptemplateeditor.[ch]: new widget chopped out
	of file-new-dialog.c

	* app/gui/file-new-dialog.c: use it.
2003-04-11 13:17:23 +00:00
Sven Neumann 5408dfc8ad lookup the border color in the window's colormap.
2003-04-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppreviewrenderer.c (gimp_preview_renderer_create_gc):
	lookup the border color in the window's colormap.
2003-04-11 12:48:54 +00:00
Sven Neumann a8697d3e02 app/widgets/gimppreview.[ch] moved background functionality into the
2003-04-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppreview.[ch]
	* app/widgets/gimppreviewrenderer.[ch]: moved background
	functionality into the renderer. Removed some GimpPreview
	functions that used to wrap GimpPreviewRenderer functionality.

	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpnavigationview.c
	* app/gui/dialogs-constructors.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimppreview-popup.c
	* app/widgets/gimpselectioneditor.[ch]: changed accordingly.
2003-04-11 11:18:12 +00:00
Michael Natterer 141fc6c54e set the cursor on preview->event_window, not widget->window. Use
2003-04-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpnavigationpreview.c: set the cursor on
	preview->event_window, not widget->window. Use
	preview->renderer->viewable, not preview->viewable.
2003-04-11 10:58:28 +00:00
Sven Neumann 6d8249bd86 made GimpPreview a NO_WINDOW widget that draws on the parent window. Added
2003-04-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppreview.[ch]: made GimpPreview a NO_WINDOW
	widget that draws on the parent window. Added an INPUT_ONLY window
	for events.

	* app/widgets/gimpnavigationpreview.c: take the widget's
	allocation into account when rendering the marker and grab the
	mouse on the preview's event_window.

	* app/widgets/gimppreviewrenderer.[ch]: pass GdkRectangles as const.
2003-04-11 08:37:26 +00:00
Michael Natterer df228e7814 added Portrait/Landscape radio buttons which follow the state of the
2003-04-10  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-new-dialog.c: added Portrait/Landscape radio
	buttons which follow the state of the width/height entered and can
	be used to swap them.
2003-04-10 20:08:56 +00:00
Sven Neumann a9fe64217a more code cosmetics 2003-04-10 14:37:06 +00:00
Sven Neumann 311dbe9ad7 app/xcf/xcf-load.c some cosmetic changes before I do any real ones.
2003-04-10  Sven Neumann  <sven@gimp.org>

	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c: some cosmetic changes before I do any real ones.
2003-04-10 14:15:24 +00:00
Sven Neumann 2db8367c7d themes/Default/images/Makefile.am
2003-04-10  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-portrait-16.png
	* themes/Default/images/stock-landscape-16.png: new icons by Jimmac.

	* libgimpwidgets/gimpstock.[ch]: register the new icons.

	* app/widgets/widgets-enums.[ch]: added new enum GimpAspectType.
2003-04-10 11:05:17 +00:00
Michael Natterer 2598142564 added gimp_context_type_to_prop_name().
2003-04-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.[ch]: added gimp_context_type_to_prop_name().

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpviewablebutton.[ch]: new widget implementing
	the wheel-scrollable preview button.

	* app/tools/gimptextoptions.c
	* app/tools/paint_options.[ch]: removed the code implementing the
	same and use GimpViewableButton.

	* app/tools/tool_manager.c: added the font to the context
	properties which are remembered per tool. Added an evil hack
	using g_object_set_data() to pass the global_dock_factory to
	tool option GUI constructors.
2003-04-10 10:34:56 +00:00
Sven Neumann 6b581cc500 app/text/text-enums.[ch] app/text/gimptext.[ch] added some more text
2003-04-09  Sven Neumann  <sven@gimp.org>

	* app/text/text-enums.[ch]
	* app/text/gimptext.[ch]
	* app/text/gimptextlayout.c: added some more text properties that
	can't be accessed from the GUI yet.
2003-04-09 21:19:12 +00:00
Michael Natterer 30b303edb8 fixed boolean logic bug introduced by the fix for bug #110173. Spotted by
2003-04-09  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpeditselectiontool.c
	(gimp_edit_selection_tool_button_release): fixed boolean logic bug
	introduced by the fix for bug #110173. Spotted by Pedro Gimeno.
2003-04-09 16:29:58 +00:00
Sven Neumann fb23d14946 fixed algorithm that calculates the brush size, some code cleanup.
2003-04-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpbrushgenerated.c: fixed algorithm that calculates
	the brush size, some code cleanup.
2003-04-09 15:31:45 +00:00
Sven Neumann d64317a0cc don't try to hide the tearoff menu item if tearoff menus are disabled in
2003-04-09  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c (image_menu_setup): don't try to hide the
	tearoff menu item if tearoff menus are disabled in the prefs.
2003-04-09 11:13:00 +00:00
Michael Natterer 43c341c055 added "gboolean set_image_clean" and call gimp_image_clean_all() only if
2003-04-09  Michael Natterer  <mitch@gimp.org>

	* app/file/file-save.[ch] (file_save_as): added "gboolean
	set_image_clean" and call gimp_image_clean_all() only if it
	was passed as TRUE.
	(file_save): pass TRUE.

	* app/gui/file-save-dialog.c: pass TRUE from the "Save as" and
	FALSE from the "Save a Copy" dialog (bug #109464).
2003-04-09 09:52:01 +00:00
Michael Natterer 13a9252950 say "Remove Channel" when pushing the undo, not "Remove Layer".
2003-04-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.c (gimp_image_remove_channel): say
	"Remove Channel" when pushing the undo, not "Remove Layer".
2003-04-09 09:11:25 +00:00
Michael Natterer d2fbc95c43 added paint_options_container_scrolled() utility function which
2003-04-09  Michael Natterer  <mitch@gimp.org>

	* app/tools/paint_options.[ch]: added
	paint_options_container_scrolled() utility function which
	wheel-scrolls a container. Use it for the brush and pattern
	previews. Added a gradient preview.

	* app/tools/gimpblendoptions.c: removed the gradient preview here.

	* app/tools/gimptextoptions.c: use the new function to scroll
	the font list.
2003-04-08 22:43:20 +00:00
Michael Natterer bfe98456e4 removed the pattern preview...
2003-04-08  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpbucketfilloptions.c: removed the pattern preview...

	* app/tools/paint_options.c: ...and added it here so all paint
	tools can use it if needed. Added a pattern preview to the clone
	tool options.
2003-04-08 20:08:37 +00:00
Michael Natterer e9d617b5f2 Added "gpointer get_tab_data" to GimpDockableGetTabFunc and to
2003-04-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockable.[ch]: Added "gpointer get_tab_data" to
	GimpDockableGetTabFunc and to gimp_dockable_new().

	* app/gui/dialogs-constructors.c: changed accordingly. Replaced
	dialogs_[brush,pattern,gradient,palette,font]_tab_func() by
	dialogs_viewable_tab_func() which gets passed the GType as
	get_tab_data.
2003-04-08 19:54:22 +00:00
Michael Natterer 99d93b9255 added vitrual function GimpViewable::get_description() which returns the
2003-04-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.[ch]: added vitrual function
	GimpViewable::get_description() which returns the string that
	should be presented to the user plus an optional tooltip with more
	information. The default implementation just returns the object's
	name and no tooltip.

	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpimage.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimptoolinfo.c: implement get_description().

	* app/core/gimpimagefile.[ch]: ditto. Renamed
	gimp_imagefile_get_description() to
	gimp_imagefile_get_desc_string(). Well, um, gimme a better name...

	* app/gui/file-open-dialog.c: changed accordingly.

	* app/file/file-utils.[ch]: renamed readXVThumb() to
	file_utils_readXVThumb().

	* tools/pdbgen/pdb/fileops.pdb: changed accordingly.

	* app/widgets/widgets-types.h: removed GimpItemGetNameFunc typedef.

	* app/widgets/gimpcontainerview-utils.[ch]: removed the the actual
	get_name_funcs. They now live in the core as
	GimpViewable::get_description() implementations.

	* app/widgets/gimpcontainermenu.[ch]
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcontainerview.[ch]
	* app/widgets/gimpmenuitem.[ch]
	* app/widgets/gimpviewabledialog.c: removed get_name_func stuff
	and use gimp_viewable_get_description().

	* app/widgets/gimpcontainermenu.[ch]: added "preview_border_width"
	to gimp_container_menu_set_preview_size().

	* app/widgets/gimpimagedock.c: changed accordingly.

	* app/pdb/fileops_cmds.c: regenerated.
2003-04-08 16:01:01 +00:00
Michael Natterer f20e559bbf app/widgets/gimpbrushfactoryview.[ch] app/widgets/gimpbufferview.[ch]
2003-04-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpbrushfactoryview.[ch]
	* app/widgets/gimpbufferview.[ch]
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpcontainergridview.[ch]
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpcontainerview.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimpimageview.[ch]
	* app/widgets/gimpitemtreeview.[ch]
	* app/widgets/gimptemplateview.[ch]: removed "min_item_x" and
	"min_item_y" parameters all over the place. Added
	"preview_border_width" instead.

	* app/widgets/gimpmenuitem.c: ensure that all menu items have the
	same height.

	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpundoeditor.c
	* app/gui/brush-select.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: changed accordingly.

	* app/gui/dialogs-constructors.c: removed the borders from the tool
	and template lists.
2003-04-08 12:39:02 +00:00
Michael Natterer 5797c03295 app/config/gimpguiconfig.[ch] added "gboolean save_accels" and "gboolean
2003-04-08  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added "gboolean save_accels" and
	"gboolean restore_accels".

	* app/gui/menus.[ch]: added menus_restore(), menus_save() and
	menus_clear().

	* app/gui/session.[ch]: added session_clear().

	* app/gui/gui.c: call menus_restore() and menus_save().

	* app/gui/preferences-dialog.c: brought the full core config
	options overkill to the GUI. Needs to be simplified. Cleaned
	up the "Interface" page a bit.
2003-04-08 10:02:42 +00:00
Sven Neumann 0dd49fd559 another patch from Pedro Gimeno that addresses problems displaying the
2003-04-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpeditselectiontool.c (selection_transform_segs):
	another patch from Pedro Gimeno that addresses problems displaying
	the selection border (bug #110014).
2003-04-07 16:30:38 +00:00
Sven Neumann 02fec0809b applied a patch from Pedro Gimeno that removes the confusing misfeature of
2003-04-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpeditselectiontool.c
	(gimp_edit_selection_tool_button_release): applied a patch from
	Pedro Gimeno that removes the confusing misfeature of anchoring
	the floating selection if it wasn't moved (bug #110173).
2003-04-07 13:22:50 +00:00
Michael Natterer 43356fa076 applied a (modified) patch from Pedro Gimeno that fixes bug #110115.
2003-04-07  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpeditselectiontool.c: applied a (modified) patch
	from Pedro Gimeno that fixes bug #110115.
2003-04-07 09:31:28 +00:00
Michael Natterer 290d9f2168 call gimp_viewable_invalidate_preview() on the layer, not on the image
2003-04-07  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c (gimp_layer_apply_mask): call
	gimp_viewable_invalidate_preview() on the layer, not on the image
	(fixes bug #108960).
2003-04-07 09:27:08 +00:00
Michael Natterer 9827ceac0e added gimp_list_uniquefy_name() utility function.
2003-04-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplist.[ch]: added gimp_list_uniquefy_name() utility
	function.

	* app/core/gimpdatalist.c
	* app/core/gimpitem.c: use it here instead of duplicating almost
	the same code.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptemplateview.[ch]: new widget for editing the
	template list.

	* app/gui/dialogs-constructors.c: use it.

	* app/gui/Makefile.am
	* app/gui/templates-commands.[ch]
	* app/gui/templates-menu.[ch]: new files implementing the context
	menu for the template list.

	* app/gui/menus.c: register the new menu with the menu factory.

	* app/gui/file-commands.c (file_new_template_callback): uniquefy
	the new template's name.

	* app/gui/documents-commands.c: fixed typo.
2003-04-06 11:21:56 +00:00
Michael Natterer b0defba66a fixed bug spotted by Pedro Gimeno by moving the alpha calculation to the
2003-04-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpgradient.c (gimp_gradient_get_color_at): fixed bug
	spotted by Pedro Gimeno by moving the alpha calculation to the
	bottom so it is not affected by rgb->hsv->rgb conversions
	(bug #110053).
2003-04-06 09:07:23 +00:00
Michael Natterer e7fbd8106f reset object properties only if they are GIMP_PARAM_SERIALIZABLE.
2003-04-05  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-utils.c (gimp_config_reset_properties):
	reset object properties only if they are GIMP_PARAM_SERIALIZABLE.

	* app/core/gimpcontext.[ch]: added a GimpTemplate property.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: added a template dialog.

	* app/gui/dialogs-menu.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: and menu entries to open it.

	* app/widgets/gimpdnd.[ch]: added DND for GimpTemplates.
2003-04-05 19:56:38 +00:00
Michael Natterer 41e7e9e535 cosmetic.
2003-04-05  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.c: cosmetic.
2003-04-05 18:40:16 +00:00
Michael Natterer e727c80e6f app/widgets/gimpcontainermenuimpl.c; keep the "(none)" item at the top of
2003-04-05  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainermenuimpl.c; keep the "(none)" item at
	the top of the menu, not at the bottom.
2003-04-05 13:41:10 +00:00
Michael Natterer 51aaf0e1ce call gimp_cotainer_menu_select_item() before notifying the context of the
2003-04-05  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainermenu.c
	(gimp_container_menu_item_selected): call
	gimp_cotainer_menu_select_item() before notifying the context of
	the change.
2003-04-05 13:35:53 +00:00
Michael Natterer 22bf960818 gimp_list_reverse() after loading so it is in the right order.
2003-04-05  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-templates.c (gimp_templates_load):
	gimp_list_reverse() after loading so it is in the right order.
2003-04-05 13:33:35 +00:00
Sven Neumann 55d8075293 applied a patch from Pedro Gimeno that fixes incorrect drawing of the
2003-04-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: applied a patch from
	Pedro Gimeno that fixes incorrect drawing of the selection border
	caused by overflowing 16bit X coordinates (bug #110014).
2003-04-04 22:33:01 +00:00
Sven Neumann fd4743a9c4 themes/Default/images/Makefile.am
2003-04-04  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-gradient-bilinear-16.png
	* themes/Default/images/stock-gradient-conical-asymmetric-16.png
	* themes/Default/images/stock-gradient-conical-symmetric-16.png
	* themes/Default/images/stock-gradient-linear-16.png
	* themes/Default/images/stock-gradient-radial-16.png
	* themes/Default/images/stock-gradient-shapeburst-angular-16.png
	* themes/Default/images/stock-gradient-shapeburst-dimpled-16.png
	* themes/Default/images/stock-gradient-shapeburst-spherical-16.png
	* themes/Default/images/stock-gradient-spiral-anticlockwise-16.png
	* themes/Default/images/stock-gradient-spiral-clockwise-16.png
	* themes/Default/images/stock-gradient-square-16.png
	* libgimpwidgets/gimpstock.[ch]: added new icons drawn by Jimmac.

	* app/tools/gimpblendoptions.c (gimp_blend_options_gui): use the
	new icons in the gradient type menu.
2003-04-04 21:53:54 +00:00
Michael Natterer ff0ce48cdc removed tree_view->preview_border_width.
2003-04-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainertreeview.[ch]: removed
	tree_view->preview_border_width.

	* app/widgets/gimpcontainermenu.[ch]
	* app/widgets/gimpcontainerview.[ch]: and added it here so it is
	configurable in all views. Synced the changes in both classes.

	* app/widgets/gimpcontainermenuimpl.[ch]
	* app/widgets/gimpmenuitem.[ch]: made preview_border_size
	configurable here, too.

	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpimagedock.c
	* app/gui/palette-import-dialog.c: changed accordingly.

	* app/gui/file-new-dialog.c: Removed the border from the template
	menu previews.
2003-04-04 21:16:58 +00:00
Michael Natterer c27429c89a #define GIMP_UNDO_PREVIEW_SIZE 64
2003-04-04  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpundo.h: #define GIMP_UNDO_PREVIEW_SIZE 64

	* app/core/gimpundo.c (gimp_undo_create_preview_private):
	* app/widgets/gimpundoeditor.c (gimp_undo_editor_init): use it.
2003-04-04 20:30:44 +00:00
Sven Neumann 1ba5fb8d35 made "stock-id" a property of the GimpViewable object.
2003-04-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpviewable.c: made "stock-id" a property of the
	GimpViewable object.
2003-04-04 17:32:08 +00:00
Sven Neumann fc6b33190a etc/Makefile.am added a short templaterc.
2003-04-04  Sven Neumann  <sven@gimp.org>

	* etc/Makefile.am
	* etc/templaterc: added a short templaterc.

	* app/gui/user-install-dialog.c: copy templaterc to ~/.gimp-1.3
	and create a templates directory on user installation.
2003-04-04 16:38:02 +00:00
Michael Natterer 9d5998c940 applied another patch from Pedro Gimeno that fixes even the most evil zoom
2003-04-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpnavigationpreview.c
	(gimp_navigation_preview_move_to): applied another patch from Pedro
	Gimeno that fixes even the most evil zoom ratios.

	(gimp_navigation_preview_draw_marker): fixed marker drawing for
	very large zoom ratios.
2003-04-04 16:32:13 +00:00
Michael Natterer 650b70cf69 reduced GIMP_MAX_IMAGE_SIZE to 2^18.
2003-04-04  Michael Natterer  <mitch@gimp.org>

	* libgimpbase/gimplimits.h: reduced GIMP_MAX_IMAGE_SIZE to 2^18.

	* libgimpbase/gimputils.[ch]: added gimp_memsize_to_string()
	utility function (which is definitely broken on 64bit systems).

	* app/core/gimpimage-new.[ch]: removed
	gimp_image_new_get_memsize_string() and gimp_image_new_create_image().
	Renamed gimp_image_new_template_new() to
	gimp_image_new_get_last_template().

	* app/core/gimpimagefile.c
	* app/display/gimpdisplayshell-title.c: changed accordingly.

	* app/core/gimp-templates.c: changed filename from "templates"
	to "templaterc".

	* app/core/gimp.[ch]
	* app/core/gimpimage-duplicate.c: don't include "gimpimage-new.h".

	* app/core/gimptemplate.[ch]: removed
	gimp_template_calc_memsize().  Instead, added the size and a
	boolean indicating that it is valid to the GimpTemplate
	struct. Added GObject::notify() implementation and update the
	values there.

	* app/widgets/gimppropwidgets.c: connect to the unit property
	correctly.

	* app/gui/file-new-dialog.c: changed accordingly. Disconnect
	from the template's "notify" signal while changing all values.
2003-04-04 15:11:30 +00:00
Sven Neumann 6e736cf63e app/gui/image-menu.c (image_menu_set_zoom) fixed an issue with the new
2003-04-04  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c (image_menu_set_zoom)
	* app/gui/view-commands.c (view_zoom_other_cmd_callback): fixed
	an issue with the new Zoom Ratio dialog.
2003-04-04 13:45:17 +00:00
Sven Neumann 8ea11afaa9 include stdlib.h for abs().
2003-04-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-transform.c: include stdlib.h for abs().
2003-04-04 13:33:08 +00:00
Sven Neumann 2c1b4f78bc applied a patch from Pedro Gimeno that fixes the display render problems
2003-04-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c: applied a patch from
	Pedro Gimeno that fixes the display render problems at high zoom
	levels (bug #109933).
2003-04-04 11:42:46 +00:00
Sven Neumann a11fd46183 Applied a patch from Øyvind Kolås that adds supersampling to the transform
2003-04-04  Sven Neumann  <sven@gimp.org>

	Applied a patch from Øyvind Kolås that adds supersampling to the
	transform operations (bug #109817):

	* app/base/tile-manager-private.h
	* app/base/tile-manager.[ch]: cache the last accessed tile and use
	it to optimize read_pixel_data_1().

	* app/core/gimpdrawable-transform-utils.c
	* app/core/gimpdrawable-transform.c: changed the resampling
	behavior when scaling down.
2003-04-04 11:19:57 +00:00
Michael Natterer 9820b157ba the "color" option's label was saying "Size". Changed it to "Color".
2003-04-04  Michael Natterer  <mitch@gimp.org>

	* app/tools/paint_options.c (pressure_options_gui): the "color"
	option's label was saying "Size". Changed it to "Color".
2003-04-04 10:13:13 +00:00
Michael Natterer 0d61c2889c use "", not NULL for "no accelerator", since NULL will show the
2003-04-04  Michael Natterer  <mitch@gimp.org>

	* app/gui/documents-menu.c: use "", not NULL for "no accelerator",
	since NULL will show the stock_item's accelerator.

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: added a "Document History..." menu item
	at the bottom of the "Open Recent" submenus.

	* app/gui/menus.c (menus_last_opened_add): reorder the dynamically
	created entries to the top of the menu. Cleanup.
2003-04-04 10:11:38 +00:00
Sven Neumann 7009415716 extended range of possible zoom ratios like in the other scaling routines.
2003-04-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_fit): extended range of possible zoom
	ratios like in the other scaling routines.

	* app/display/gimpdisplayshell-scale.[ch]
	* app/display/gimpdisplayshell.[ch]
	* app/gui/image-menu.c
	* app/gui/view-commands.[ch]: added a dialog to menually enter the
	zoom ratio. Fixes bug #65057.
2003-04-04 08:32:51 +00:00
Michael Natterer a018b06a96 Added preliminary support for image templates. Not finished yet. Addresses
2003-04-03  Michael Natterer  <mitch@gimp.org>

	Added preliminary support for image templates. Not finished
	yet. Addresses bug #96059. Now we need a volunteer to create
	a nice collection of default templates...

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimptemplate.[ch]
	* app/core/gimp-templates.[ch]: new files implementing the new
	GimpTemplate object and the list of available image templates.

	* app/core/gimp.[ch]: keep a container of templates around.

	* app/core/gimpimage-new.[ch]: ported to use GimpTemplate. Removed
	struct GimpImageNewValues.

	* app/widgets/gimpcontainermenuimpl.c: changed to show the
	"(none)" item for a NULL selection also, not only for an empty
	container.

	* app/widgets/gimppropwidgets.[ch]: added
	gimp_prop_size_entry_connect() which connects an externally
	created GimpSizeEntry to object properties. Fixed the size entry
	code to actually work.

	* app/gui/image-menu.c
	* app/gui/file-commands.[ch]: added "Save as Template" which
	creates a new template from any image's properties.

	* app/gui/file-new-dialog.c: use prop_widgets and GimpTemplate.
	Offer the available templates in a menu at the top of the dialog.
2003-04-03 17:50:56 +00:00
Michael Natterer 4865105f41 don't forget to resume the selection after cancelling a guide drag.
2003-04-03  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmovetool.c (gimp_move_tool_button_release): don't
	forget to resume the selection after cancelling a guide drag.
	Spotted by Pedro Gimeno.
2003-04-03 17:37:31 +00:00
Sven Neumann c556c957a2 themes/Default/images/Makefile.am
2003-04-03  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-template-16.png
	* themes/Default/images/stock-texture-64.png: new icons by Jimmac.

	* libgimpwidgets/gimpstock.[ch]: register the new icons.

	* app/widgets/gimppreview.[ch]: added the possibility to set a
	background pixmap on the preview widget.

	* app/gui/dialogs-constructors.c
	* app/display/gimpnavigationview.[ch]
	* app/widgets/gimpselectioneditor.[ch]: set a background on the
	navigation and selection previews when layer previews are disabled
	in the preferences.
2003-04-03 16:13:12 +00:00
Michael Natterer 2a096fd025 reverted my last "fix" and fixed the real bug: "tEXt::Thumb::Size" is
2003-04-02  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimagefile.c: reverted my last "fix" and fixed the
	real bug: "tEXt::Thumb::Size" is optional, so don't fail if it's
	not present. Plugged some memleaks.
2003-04-02 11:26:02 +00:00
Manish Singh bab3855604 turns out we can override the XSetting.. do so.
2003-04-01  Manish Singh  <yosh@gimp.org>

        * app/gui/menus.c: turns out we can override the XSetting.. do so.

        * app/gui/preferences_dialog.c: Remove GNOME2 warning, it should work
        fine now.
2003-04-02 00:08:38 +00:00
Michael Natterer fdb7265a7c #define GIMP_VIEWABLE_MAX_PREVIEW_SIZE here.
2003-04-01  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.h: #define GIMP_VIEWABLE_MAX_PREVIEW_SIZE
	here.

	* app/widgets/gimppreview.h
	* app/widgets/gimppreviewrenderer.h: removed the #defines here.

	* app/core/gimpviewable.c (gimp_preview_get[_popup]_size): check
	the return values to be within bounds.

	* app/text/gimpfont.c
	* app/display/gimpdisplayshell-render.c: use the new constant
	instead of the magic "1024".

	* app/core/gimpdrawable-preview.c: #include our own header file.

	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenu.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppreview.c
	* app/widgets/gimppreviewrenderer.c: changed accordingly.
2003-04-01 13:53:47 +00:00
Sven Neumann 6701ca7cf6 removed some debug entries which are not needed any longer. Fixes bug
2003-04-01  Sven Neumann  <sven@gimp.org>

	* app/gui/toolbox-menu.c (toolbox_menu_entries): removed some
	debug entries which are not needed any longer. Fixes bug #109680.

	* app/gui/Makefile.am
	* app/gui/test-commands.[ch]: removed these files from CVS.
2003-04-01 12:19:24 +00:00
Michael Natterer 19f210f59c added gboolean show_scrollbars to be consistent with show_menubar etc.
2003-04-01  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpdisplayconfig.[ch]: added gboolean show_scrollbars
	to be consistent with show_menubar etc.

	* app/config/gimprc-blurbs.h: added its blurb and made all
	SHOW_FOO_BLURBs consistent.

	* app/display/gimpdisplayshell.c: take the scrollbar visibility
	default value from GimpDisplayConfig.

	* app/gui/preferences-dialog.c: GUI for the new property.
2003-04-01 11:04:44 +00:00
Michael Natterer a1a1705b60 added VOID__DOUBLE_DOUBLE
2003-04-01  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpmarshal.list: added VOID__DOUBLE_DOUBLE

	* app/widgets/gimpnavigationpreview.[ch]: applied patch from
	Pedro Gimeno that fixes mapping of preview scroll offsets to
	image scroll offsets. Changed the x, y, width, height members
	from gint to gdouble. Changed the external API to use exact
	doubles instead of rounded ints.

	* app/display/gimpnavigationview.c: speak to the navigation
	preview in exact double values.

	Alltogether fixes bug #109648.
2003-04-01 10:32:03 +00:00