Commit graph

747 commits

Author SHA1 Message Date
Michael Natterer 61122751c1 app/display/gimpdisplayshell-filter-dialog.c
2003-08-24  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpnavigationview.c
	* app/gui/dialogs-menu.c
	* app/gui/documents-menu.c
	* app/gui/error-console-menu.c
	* app/gui/gradient-editor-commands.c
	* app/gui/gradient-editor-menu.c
	* app/gui/image-menu.c
	* app/gui/select-commands.c
	* app/gui/tool-options-dialog.c
	* app/gui/toolbox-menu.c
	* app/gui/vectors-menu.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpeditor.[ch]
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.[ch]
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimpundoeditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimphelp-ids.h: added and updated more help IDs.
2003-08-24 13:52:51 +00:00
Michael Natterer 3a7354ba62 Oops, should have gone with my last checkin. 2003-08-23 19:50:35 +00:00
Michael Natterer fc20b3ac55 app/display/gimpdisplayshell.c app/gui/brush-select.c
2003-08-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c
	* app/gui/brush-select.c
	* app/gui/channels-menu.c
	* app/gui/convert-dialog.c
	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/gui.c
	* app/gui/image-commands.c
	* app/gui/image-menu.c
	* app/gui/layers-menu.c
	* app/gui/menus.c
	* app/gui/palette-import-dialog.c
	* app/gui/palette-select.c
	* app/gui/palettes-commands.c
	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/qmask-menu.c
	* app/gui/templates-commands.c
	* app/gui/toolbox-menu.c
	* app/gui/vectors-menu.c
	* app/tools/[all tools].c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpitemfactory.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimphelp-ids.h: added, fixed and updated lots of
	help IDs. Still unfinished.
2003-08-22 01:42:57 +00:00
Michael Natterer fd61d33c5e made the layer cycling circular. Removed the static layer_select variable
2003-08-17  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-layer-select.[ch]: made the layer
	cycling circular. Removed the static layer_select variable and
	allocate a new struct for each use. Made it use Ctrl+Tab for
	forward cycling and Ctrl+Shift+Tab for backward so it doesn't use
	Alt any more. Cleanup.

	* app/display/gimpdisplayshell-callbacks.c: changed it from Alt to
	Ctrl here, too.

	Fixes all the stuff mentioned in bug #119236.
2003-08-17 16:58:39 +00:00
Michael Natterer a4823e99c7 if the canvas has no focus on button_press, set it explicitly instead of
2003-08-16  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): if the canvas has no
	focus on button_press, set it explicitly instead of asuming that
	focus_in will follow anyway. Should once more fix bug #85202.

	Grab the keyboard while button1 is down so the focus can't go away
	while the tool can't receive modifier events. Should fix more
	#85202-alike bugs.
2003-08-16 21:07:13 +00:00
Henrik Brix Andersen 4172d170bc have the grid/guide menu entries reflect the presence of grid/guides in
2003-08-12 Henrik Brix Andersen <brix@gimp.org>

* app/gui/image-menu.c (image_menu_update): have the grid/guide
menu entries reflect the presence of grid/guides in the image (as
suggested by jimmac)

* app/display/gimpdisplayshell.c (gimp_display_shell_snap_coords):
snap to grid/guides even if the grid/guides are hidden (as
suggested by jimmac)
2003-08-12 18:02:55 +00:00
Sven Neumann 2dbb388024 app/config/gimpconfig-deserialize.c app/config/gimpconfig-serialize.c
2003-08-08  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-serialize.c
	* app/config/gimpconfig.c
	* app/config/gimprc.c
	* app/core/gimpitem.[ch]
	* app/display/gimpprogress.[ch]
	* app/widgets/gimpdialogfactory.c
	* app/widgets/gimpenummenu.c
	* app/widgets/gimpfontselection.c
	* app/widgets/gimpwidgets-utils.c: documentation fixes.
2003-08-08 19:30:23 +00:00
Henrik Brix Andersen 2ff979d421 added more intuitive decribtions
2003-07-31 Henrik Brix Andersen <brix@gimp.org>

* app/core/core-enums.h (GimpGridType): added more intuitive
decribtions

* app/core/core-enums.c: regenerated

* app/display/gimpdisplayshell.c (gimp_display_shell_draw_grid):
use gdk_draw_point() instead of gdk_draw_line() for dots-only mode

* .cvsignore: added gimptool-win32.c
2003-07-31 01:41:01 +00:00
Michael Natterer 6c0c7fda33 moved the code which manipulates gimage->layer_stack and the call to
2003-07-29  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.c (gimp_image_set_active_layer): moved the
	code which manipulates gimage->layer_stack and the call to
	gimp_layer_invalidate_boundary() inside the if(layer != active_layer)
	branch so it is called less often. Fixes the slowness of bug #104440
	for most cases since we don't need to recalculate the selection
	boundary in the next step.

	(gimp_image_set_active_channel): call
	gimp_layer_invalidate_boundary() before setting the active_layer
	to NULL. Fixes stale layer boundary when switching to a channel.

	* app/display/gimpdisplay.c (gimp_display_flush_whenever): when
	there are no updates, we still need to restart the selection.
	Fixes missing layer boundary when switching from a channel to
	a layer.
2003-07-29 16:36:56 +00:00
Michael Natterer bd457be1c7 use the gimp_display_shell_selection_control() wrapper instead of calling
2003-07-29  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-handlers.c
	(gimp_display_shell_ants_speed_notify_handler): use the
	gimp_display_shell_selection_control() wrapper instead of
	calling gimp_display_shell_selection_*() functions directly.
	Don't #include "gimpdisplayshell-selection.h".
2003-07-29 16:16:03 +00:00
Michael Natterer d9440b4136 skip double clicks by checking event->type == GDK_BUTTON_PRESS. Brings
2003-07-29  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_[hv]ruler_button_press): skip double clicks by
	checking event->type == GDK_BUTTON_PRESS. Brings press and release
	events sent to the move tool back in sync and fixes bug #75351.
2003-07-29 14:36:18 +00:00
Henrik Brix Andersen 351557433b renamed GIMP_GRID_TYPE_INTERSECTION to GIMP_GRID_TYPE_INTERSECTIONS, added
2003-07-28 Henrik Brix Andersen <brix@gimp.org>

* app/core/core-enums.h (GimpGridType): renamed
  GIMP_GRID_TYPE_INTERSECTION to GIMP_GRID_TYPE_INTERSECTIONS, added
  GIMP_GRID_TYPE_DOTS

* app/core/core-enums.c: regenerated

* app/gui/grid-dialog.c
* app/core/gimpgrid.c: changed accordingly

* app/display/gimpdisplayshell.c (gimp_display_shell_draw_grid): added
  code to draw the dots-only grid
2003-07-28 21:26:11 +00:00
Michael Natterer bc77f1e3ff app/config/gimprc-blurbs.h added separate properties for the fullscreen
2003-07-18  Michael Natterer  <mitch@gimp.org>

	* app/config/gimprc-blurbs.h
	* app/config/gimpdisplayconfig.[ch]: added separate properties for
	the fullscreen appearance of the display (menubar, rulers,
	scrollbars, statusbar and padding). Default to everything
	invisible and black padding.

	* app/display/gimpdisplayshell.[ch]: renamed struct
	GimpDisplayShellVisibility to GimpDisplayShellAppearance and added
	the canvas padding stuff.

	* app/display/gimpdisplayshell-appearance.[ch]: made
	gimp_display_shell_set_padding() fullscreen-aware. Added
	gimp_display_shell_get_padding().

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/gui/image-menu.c: changed addordingly.

	* app/gui/preferences-dialog.c: added the new options and moved
	the display appearance stuff to its own page. Minor cleanups.
2003-07-17 22:30:13 +00:00
Michael Natterer 84e73fa4d1 removed gimp_display_shell_transform_boundary() again...
2003-07-10  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-transform.[ch]: removed
	gimp_display_shell_transform_boundary() again...

	* app/tools/gimpdrawtool.[ch]: ...and added as
	gimp_draw_tool_draw_boundary(). Removed the GimpDrawToolState enum
	and the "draw_state" member since they were redundant. Cleanup.

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

	* app/tools/gimppainttool.[ch]: added a brush preview so we
	finally see where we will paint. Fixes bug #32498. Cleanup.

	* app/tools/tool_manager.c: also look at draw_tool->gdisp, not
	only at tool->gdisp when deciding whether the active tool has to
	be suspended/resumed/halted. Fixes a couple of fnords with the
	line preview and the new brush preview.

	* app/tools/gimpcolortool.c: minor cleanup.
2003-07-10 16:01:45 +00:00
Michael Natterer b14c364490 added new function gimp_display_shell_transform_boundary() which takes an
2003-07-09  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-transform.[ch]: added new function
	gimp_display_shell_transform_boundary() which takes an array of
	BoundSegs and returns an array of GdkSegments.

	* app/tools/gimpeditselectiontool.c: use it.
2003-07-09 22:40:27 +00:00
Sven Neumann e78601452c app/gui/edit-commands.c added "Fill with Pattern" menu entry as suggested
2003-07-02  Sven Neumann  <sven@gimp.org>

	* app/gui/edit-commands.c
	* app/gui/image-menu.c: added "Fill with Pattern" menu entry as
	suggested in bug #116365.

	* app/base/temp-buf.c
	* app/base/tile-swap.c
	* app/config/gimpbaseconfig.c
	* app/config/gimpconfig-types.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell.c
	* app/file/file-utils.c
	* app/paint-funcs/paint-funcs-types.h
	* app/tools/gimpdrawtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.h
	* app/tools/gimptextoptions.c
	* app/paint-funcs/paint-funcs-types.h
	* app/vectors/gimpbezierstroke.c
	* app/vectors/gimpstroke.c
	* app/vectors/gimpvectors.c
	* app/vectors/vectors-types.h
	* libgimp/gimpbrushmenu.c
	* libgimp/gimpmisc.h
	* libgimpmodule/gimpmodule.c: fixed some minor issues found
	compiling with -pedantic.

	* app/pdb/misc_tools_cmds.c
	* tools/pdbgen/pdb/misc_tools.pdb: adapt to the changed order of
	arguments for gimp_image_pick_color().
2003-07-02 18:01:19 +00:00
Michael Natterer 69539fc5c4 added GimpMenuPositionFunc typedef.
2003-07-02  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h: added GimpMenuPositionFunc typedef.

	* app/widgets/gimpwidgets-utils.[ch]: made gimp_menu_position()
	a GimpMenuPositionFunc.

	* app/widgets/gimpitemfactory.[ch]
	(gimp_item_factory_popup_with_data): added position_func and
	position_data parameters. Use gimp_menu_position() if no
	position_func is given.

	* app/display/gimpdisplayshell-callbacks.c: removed
	gimp_display_shell_origin_menu_popup() and call
	gimp_item_factory_popup_with_data() directly from
	gimp_display_shell_popup_menu(), using
	gimp_display_shell_origin_menu_position() as position_func.

	* app/widgets/gimpeditor.[ch]: added a GtkWidget::popup_menu()
	implementation so all context menus are keyboard accessible.
	Added "gpointer factory_data" member so the menu can be popped up
	in the right context.

	* app/gui/channels-menu.c
	* app/gui/layers-menu.c
	* app/gui/vectors-menu.c: make them work without an active image
	since they can be popped up at any time now.

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: cleanup.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpdockbook.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c: pass NULL, NULL as
	position_func and position_data so the default implementation is
	used.
2003-07-02 12:03:56 +00:00
Henrik Brix Andersen edd5c33923 Added a per image configurable grid.
This fixes bug #65198

* app/core/Makefile.am
* app/core/core-types.h:
* app/core/gimpgrid.[ch]: added new class GimpGrid.

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

* app/core/gimpimage-guides.[ch]: removed the gimp_image_snap_*()
functions...

* app/core/gimpimage-snap.[ch]: ...and added them here since they
are no longer guide specific.

* app/core/gimpimage-undo-push.[ch]: added
gimp_image_undo_push_image_grid()

* app/display/gimpdisplayshell-handlers.c:
* app/core/gimpimage.[ch]: added grid member to _GimpImage. Added
new signal "grid_changed", added gimp_image_grid_changed(),
gimp_image_get_grid() and gimp_image_set_grid().

* app/display/gimpdisplayshell-appearance.[ch]: added
gimp_display_shell_set_show_grid(),
gimp_display_shell_get_show_grid(),
gimp_display_shell_set_snap_to_grid() and
gimp_display_shell_get_snap_to_grid().

* app/display/gimpdisplayshell-callbacks.c: added call to
gimp_display_shell_draw_grid()

* app/display/gimpdisplayshell.[ch]: added grid member to
_GimpDisplayShellVisibility, added snap_to_grid and grid_dialog
members to _GimpDisplayShell, added
gimp_display_shell_draw_grid(), modified
gimp_display_shell_snap_coords() to use the new
gimp_image_snap_*() functions.

* app/gui/image-menu.c: added grid entries to
image_menu_entries[].

* app/gui/view-commands.[ch]: added
view_configure_grid_cmd_callback(),
view_toggle_grid_cmd_callback() and
view_snap_to_grid_cmd_callback().

* app/gui/Makefile.am
* app/gui/grid-dialog.[ch]: added a grid dialog.
2003-06-23 19:34:48 +00:00
Michael Natterer 5e950b5501 Cleaned up and improved the message system:
2003-06-13  Michael Natterer  <mitch@gimp.org>

	Cleaned up and improved the message system:

	* app/core/gimp.[ch]: added "const gchar *domain" to
	GimpMessageFunc (a NULL domain means the message is from the GIMP
	core, everything else is a plug-in).

	* app/errors.c: pass "domain == NULL" to gimp_message().

	* tools/pdbgen/pdb/message.pdb: derive the message domain from the
	current plug-in's menu_path (evil hack but works reasonably well).

	* app/pdb/message_cmds.c: regenerated.

	* app/widgets/gimpwidgets-utils.[ch] (gimp_message_box): added a
	header showing the message domain and changed the dialog layout to
	follow the HIG more closely.

	* app/gui/error-console-dialog.[ch]: removed.

	* app/widgets/gimperrorconsole.[ch]
	* app/gui/error-console-commands.[ch]
	* app/gui/error-console-menu.[ch]: new files containing a
	re-implementation of the error console dialog.

	* app/gui/Makefile.am
	* app/gui/dialogs-constructors.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h: changed accordingly.

	* app/display/gimpprogress.c: added more spacing and removed the
	separator (more HIG compliant).

	* plug-ins/[most plug-ins].c: Changed lots of messages and
	progress strings:

	- Removed plug-in names from messages since that's automatically
	  covered by "domain" now.
	- Put all filenames in ''.
	- Changed "Loading" to "Opening".
	- Added "..." to all progress messages.
	- Cleaned up all file open/save error messages to look the
	  same and include g_strerror(errno).
	- Removed special casing for progress bars and *always* show them,
	  not only if run_mode != GIMP_RUN_NONINTERACTIVE (we can't expect
	  all plug-ins to do this correctly but need to hack the core to
	  sort out unwanted progress bars).

	Unrelated:

	- Cleaned up indentation, spacing, #includes, coding style and
	  other stuff while I was at all these files.
2003-06-13 14:37:00 +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
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
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
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 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 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
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
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 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
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 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 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
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 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 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 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 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
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 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 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
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
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 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 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
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 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
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