Commit graph

1629 commits

Author SHA1 Message Date
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
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
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 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
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
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 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 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
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 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 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 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 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 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 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
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
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 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 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 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
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 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 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 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 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 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
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
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
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
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
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 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 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 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 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