Commit Graph

1504 Commits

Author SHA1 Message Date
9b7a46311f don't reserve Delete for use by tools. Fixes bug #532116.
2008-05-10  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events) 
(gimp_display_shell_canvas_tool_events):
	don't reserve Delete for use by tools. Fixes bug #532116.

	* app/tools/gimpimagemaptool.c
	* app/tools/gimptransformtool.c: don't use Delete (you can still
	use the Backspace key to achieve the same).


svn path=/trunk/; revision=25607
2008-05-10 10:20:42 +00:00
82c2616f0f Applied modified patch from Alexia Death which adds velocity support to
2008-05-10  Michael Natterer  <mitch@gimp.org>

	Applied modified patch from Alexia Death which adds velocity
	support to paint tools in the spirit of the pressure support we
	already have. Fixes bug #529431.

	* app/display/gimpdisplayshell-coords.c
	(gimp_display_shell_eval_event): tweak velocity calculation to
	work in screen coordinates.

	* app/paint/gimppaintoptions.[ch]: add velocity options in the
	same way as there are pressure options. Add utility functions
	which return dynamic opatity and dynamic rate according to the the
	option's settings and some GimpCoords' pressure and velocity.

	* app/tools/gimppaintoptions-gui.c: add GUI for the velocity
	options.

	* app/paint/gimpbrushcore.h: remove PRESSURE_SCALE define, it's
	now in gimppaintoptions.h.

	* app/paint/gimpbrushcore.c (gimp_brush_core_interpolate):
	inerpolate velocity too.

	(gimp_brush_core_calc_brush_scale): take velocity into account.

	(gimp_brush_core_get_brush_mask): always pressurize the mask in
	the GIMP_BRUSH_PRESSURE because there always is velocity (unlike
	pressure which is only there on tablets).

	* app/paint/gimpairbrush.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimperaser.c
	* app/paint/gimpheal.c
	* app/paint/gimppaintbrush.c
	* app/paint/gimpsmudge.c: get opacity and rate from the new paint
	options utility functions which take both pressure and velocity
	into account.

	* app/paint/gimppaintbrush.c: take velocity into account when
	calculating the gradient color offset.

	* app/paint/gimpairbrush.c: do some additional fiddling with
	velocity in the asynchronous airbrush timeout.

	* app/paint/gimpairbrushoptions.c: override the velocity-size
	property and have it default to FALSE.


svn path=/trunk/; revision=25604
2008-05-10 10:03:21 +00:00
7cdecd20d0 don't call gtk_widget_grab_focus() here.
2008-05-08  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events): don't call gtk_widget_grab_focus() here.

	(gimp_display_shell_canvas_tool_events): call it here instead and
	add comments about how BUTTON_PRESS and FOCUS_IN interact.

	Also return TRUE from BUTTON_PRESS, BUTTON_RELEASE and
	MOTION_NOTIFY.


svn path=/trunk/; revision=25590
2008-05-08 15:26:21 +00:00
d4ac3ad00e removed the entry's inner border to save some precious space in the
2008-05-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c (gimp_scale_combo_box_init):
	removed the entry's inner border to save some precious space in
	the status-bar.


svn path=/trunk/; revision=25588
2008-05-08 12:47:21 +00:00
7a8abc28b3 move the focus to the canvas on button-press events.
2008-05-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events): move the focus to the canvas on
	button-press events.

	* app/widgets/gimpwindow.c (gimp_window_key_press_event): 
removed
	a use of G_UNLIKELY() that is somewhat bogus here.


svn path=/trunk/; revision=25587
2008-05-08 12:34:27 +00:00
563684d665 app/tools/gimppainttool.c applied patch from Alexia Death which changes
2008-05-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimppainttool.c
	* app/display/gimpdisplayshell-coords.c: applied patch from 
Alexia
	Death which changes the maximum smoothing for paint tools to 
more
	conservative default and adds velocity dependent smooth 
suppression.


svn path=/trunk/; revision=25564
2008-05-05 06:21:22 +00:00
9be0d9c98f also handle the Tab keys and call the "activate" handler when Tab is
2008-04-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c
	(gimp_scale_combo_box_entry_key_press): also handle the Tab keys
	and call the "activate" handler when Tab is pressed.


svn path=/trunk/; revision=25553
2008-04-30 08:43:37 +00:00
89e4fdbc44 install a "key-press-event" handler and reset the entry when the Escape
2008-04-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c: install a "key-press-event"
	handler and reset the entry when the Escape key is pressed.


svn path=/trunk/; revision=25552
2008-04-30 08:40:16 +00:00
7cc4f8c1db added signal "entry-activated".
2008-04-29  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.[ch]: added signal 
"entry-activated".

	* app/display/gimpstatusbar.c (gimp_statusbar_new): connect to 
the
	new signal and move the focus to the canvas.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): 
comment.


svn path=/trunk/; revision=25549
2008-04-29 09:08:53 +00:00
5709dcc27a keep the current scale value, beep and reset the entry when the user input
2008-04-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c: keep the current scale value,
	beep and reset the entry when the user input cannot be parsed.
	Also changed the input parser to interpret a single number as a
	percentage.


svn path=/trunk/; revision=25547
2008-04-28 21:50:18 +00:00
5cc4c6ae3a derive from GtkComboBoxEntry. Needs some more work with respect to input
2008-04-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.[ch]: derive from 
GtkComboBoxEntry.
	Needs some more work with respect to input validation and focus
	handling...


svn path=/trunk/; revision=25542
2008-04-28 16:41:02 +00:00
f23d046965 app/widgets/Makefile.am app/widgets/widgets-types.h added GimpWindow class
2008-04-28  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpwindow.[ch]: added GimpWindow class and moved
	key-press-event handler from GimpDock to this class.

	* app/widgets/gimpdock.[ch]:
	* app/display/gimpdisplayshell.[ch]: derive from GimpWindow.


svn path=/trunk/; revision=25541
2008-04-28 16:30:55 +00:00
64e02fadef take vertical padding into account to avoid resizing the statusbar.
2008-04-22  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_frame_size_request):
	take vertical padding into account to avoid resizing the statusbar.

svn path=/trunk/; revision=25512
2008-04-22 10:15:06 +00:00
b8d687fec2 remove local "inertia" variable and simply modify the passed
2008-04-16  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-coords.c
	(gimp_display_shell_eval_event): remove local "inertia" variable
	and simply modify the passed "inertia_factor" when needed.


svn path=/trunk/; revision=25494
2008-04-16 15:19:28 +00:00
5061fb6be0 fix calculation of filter distance, it was missing a 1 / zoom_factor.
2008-04-15  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-coords.c
	(gimp_display_shell_eval_event): fix calculation of filter
	distance, it was missing a 1 / zoom_factor. Moved variables to
	local scope. Remove resundant thistime variable. Turned const
	gdouble into a #define.


svn path=/trunk/; revision=25490
2008-04-15 21:32:00 +00:00
5ab6f922d2 introduced a #define for the spacing between the icon and the statusbar
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: introduced a #define for the spacing
	between the icon and the statusbar label.

svn path=/trunk/; revision=25484
2008-04-14 11:57:23 +00:00
88325fce62 fixed icon placement for right-to-left render direction.
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_label_expose): 
fixed
	icon placement for right-to-left render direction.


svn path=/trunk/; revision=25482
2008-04-14 11:05:18 +00:00
a95de7a59c rewritten the code that draws the icon in the statusbar label. The new
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: rewritten the code that draws
	the icon in the statusbar label. The new code gives nicer 
spacing.


svn path=/trunk/; revision=25481
2008-04-14 10:10:02 +00:00
fea85ea945 app/display/gimpdisplayshell.c (gimp_display_shell_show_tooltip)
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c 
(gimp_display_shell_show_tooltip)
	* app/display/gimpstatusbar.c (gimp_statusbar_progress_start)
	* app/gui/gui.c (gui_menu_show_tooltip): push a NULL stock-id.


svn path=/trunk/; revision=25479
2008-04-14 07:39:23 +00:00
c88bd263e0 added a sanity check.
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_label_expose): 
added
	a sanity check.

	* app/display/gimpdisplayshell-layer-select.c: formatting.


svn path=/trunk/; revision=25478
2008-04-14 06:50:55 +00:00
e7c5bf8086 added stock-id parameters to all statusbar setters.
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: added stock-id parameters to 
all
	statusbar setters.

	* app/display/gimpdisplayshell-title.c: pass NULL as stock-id.

	* app/tools/gimptool.c: pass the tool icon to the statusbar.

	* app/tools/gimpeditselectiontool.c 
(gimp_edit_selection_tool_start):
	inherit the tool-info from the parent tool.


svn path=/trunk/; revision=25477
2008-04-14 06:28:43 +00:00
d8ad4cfa7c added "label-scale" style property.
2008-04-13  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpunitcombobox.c: added "label-scale" style 
property.

	* app/display/gimpscalecombobox.[ch]: ditto. Also removed the
	support for extra action items.

	* app/display/gimpstatusbar.c: changed accordingly.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: use a smaller font for the combo-box 
labels
	in the statusbar.


svn path=/trunk/; revision=25475
2008-04-13 17:01:19 +00:00
3b8d863bbe don't call gtk_widget_set_name() on a NULL menubar.
2008-04-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_appearance_update): don't call
	gtk_widget_set_name() on a NULL menubar.


svn path=/trunk/; revision=25469
2008-04-11 16:58:14 +00:00
01a35bddfb unfullscreen the window before doing anything else.
2008-04-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty):
	unfullscreen the window before doing anything else.


svn path=/trunk/; revision=25466
2008-04-11 14:42:43 +00:00
c57d42c32a don't show the status bar's resize grip in fullscreen mode.
2008-04-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_appearance_update): don't show the status
	bar's resize grip in fullscreen mode.


svn path=/trunk/; revision=25465
2008-04-11 09:08:40 +00:00
5357d440e4 improved the check if the message can be shown in the statusbar. Do not
2008-04-10  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch] 
(gimp_statusbar_progress_message):
	improved the check if the message can be shown in the statusbar.
	Do not show messages that don't fit into the given space.

	* app/gui/gui-message.c (gui_message_error_dialog): if there's
	already an error dialog associated with a progress, then use it.


svn path=/trunk/; revision=25461
2008-04-10 19:24:06 +00:00
1006d379e4 app/display/gimpdisplayshell-callbacks.c
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-coords.[ch]
	* app/tools/gimppainttool.c
	* app/tools/gimptool.[ch]: applied patch from Alexia Death as
	attached to bug #508639. This change makes the smoothing depend on
	the active tool.

svn path=/trunk/; revision=25392
2008-04-07 13:54:43 +00:00
260c38b06d use gimp_statusbar_push_temp() directly instead of going through
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay-handlers.c (gimp_display_saved_handler):
	use gimp_statusbar_push_temp() directly instead of going through
	gimp_message(). Use the GTK_STOCK_SAVE icon for the statusbar
	message.

svn path=/trunk/; revision=25388
2008-04-07 12:50:57 +00:00
19864b9a42 resurrected the icon in statusbar messages.
2008-04-06  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: resurrected the icon in statusbar
	messages.


svn path=/trunk/; revision=25378
2008-04-06 09:54:30 +00:00
fe11741319 added new function gimp_display_close() which decides if
2008-04-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.[ch]: added new function
	gimp_display_close() which decides if gimp_display_delete() or
	gimp_display_empty() needs to be called.

	* app/display/gimpdisplay-foreach.[ch]: added new function
	gimp_displays_close() and removed the 'do_quit' parameter from
	gimp_displays_delete().

	* app/gui/gui.c (gui_exit_callback): changed accordingly.

	* app/display/gimpdisplayshell-close.c: removed
	gimp_display_shell_really_close() and call gimp_display_close()
	instead.

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty): 
moved
	code to update the ui managers here.

	* app/actions/file-commands.c (file_save_cmd_callback)
	(file_close_cmd_callback)
	* app/dialogs/file-save-dialog.c (file_save_dialog_response)
	* app/dialogs/quit-dialog.c (quit_close_all_dialog_response):
	close displays instead of deleting them.

	* app/gui/gui-vtable.c (gui_display_delete): call
	gimp_display_close().


svn path=/trunk/; revision=25377
2008-04-05 20:32:24 +00:00
82dc4aab8d no need to translate the empty string.
2008-04-01  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-title.c
	(gimp_display_shell_update_title_idle): no need to translate the
	empty string.


svn path=/trunk/; revision=25328
2008-03-31 22:17:45 +00:00
465b4e76c3 never set the dest_inc and src_dec variables to zero.
2008-03-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c 
(gimp_display_shell_scale_changed):
	never set the dest_inc and src_dec variables to zero.


svn path=/trunk/; revision=25313
2008-03-30 16:39:44 +00:00
9acc157a75 added new function gimp_display_shell_unset_cursor().
2008-03-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-cursor.[ch]: added new function
	gimp_display_shell_unset_cursor().
	(gimp_display_shell_real_set_cursor): deal with cursor_type -1 
and
	change the cursor to the default desktop cursor. Fixes warnings 
on
	image load.

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty):
	use gimp_display_shell_unset_cursor().


svn path=/trunk/; revision=25312
2008-03-30 16:09:55 +00:00
8088b64c72 app/display/gimpcanvas.c app/widgets/gimpcoloreditor.c
2008-03-30  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpcursorview.c
	* app/widgets/gimpcurveview.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpdockbook.c
	* app/widgets/gimpdockseparator.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpmenudock.c
	* app/widgets/gimpsamplepointeditor.c
	* app/widgets/gimptoolbox.c: chain up unconditionally in
	GtkWidget::style_set() because there is has a default
	implementation.


svn path=/trunk/; revision=25307
2008-03-29 23:43:39 +00:00
fc93cc19ce deprecate gimp_memsize_to_string() in favor of
2008-03-28  Sven Neumann  <sven@gimp.org>

	* libgimpbase/gimpmemsize.[ch]: deprecate gimp_memsize_to_string()
	in favor of g_format_size_for_display().

	* app/actions/edit-commands.c
	* app/core/gimpimagefile.c
	* app/dialogs/image-new-dialog.c
	* app/dialogs/image-scale-dialog.c
	* app/display/gimpdisplayshell-title.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimpthumbbox.c
	* plug-ins/uri/uri-backend-gnomevfs.c
	* plug-ins/uri/uri-backend-gvfs.c
	* plug-ins/uri/uri-backend-libcurl.c
	* plug-ins/uri/uri-backend-wget.c: use g_format_size_for_display()
	instead of gimp_memsize_to_string().

svn path=/trunk/; revision=25285
2008-03-28 16:33:24 +00:00
ded9a6c3df don't flush if there's no image. (gimp_display_shell_dnd_flush): use
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_drop_uri_list): don't flush if there's no image.
	(gimp_display_shell_dnd_flush): use gtk_window_present() instead of
	gdk_window_focus().

svn path=/trunk/; revision=25261
2008-03-27 12:22:23 +00:00
f98c737094 use a button with icon for the progress cancel button.
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: use a button with icon for the
	progress cancel button.

svn path=/trunk/; revision=25260
2008-03-27 12:17:45 +00:00
be216eea27 added an arbitrary number to the minimum height.
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_style_set):
	added an arbitrary number to the minimum height.

svn path=/trunk/; revision=25259
2008-03-27 12:08:55 +00:00
bfa3e92155 make sure that the statusbar frame requests enough space to hold it's
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: make sure that the statusbar frame
	requests enough space to hold it's children, also the invisible ones.

	* app/display/gimpdisplayshell.c (gimp_display_shell_style_set):
	don't add 1 pixel here, this spacing is gone.

svn path=/trunk/; revision=25258
2008-03-27 11:38:45 +00:00
81c46c382b derive GimpStatusbar from GtkStatusbar. Use the normal statusbar label for
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: derive GimpStatusbar from
	GtkStatusbar. Use the normal statusbar label for statusbar
	messages and only show the progressbar when progress is active.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): removed
	spacing from the main vertical box.

svn path=/trunk/; revision=25257
2008-03-27 10:43:55 +00:00
86cf30dd1d hide ugly details behind a sane API.
2008-03-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcairo-wilber.[ch]: 
	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): hide 
ugly
	details behind a sane API.


svn path=/trunk/; revision=25248
2008-03-26 19:25:55 +00:00
ccb8239a26 improve tooltip here too.
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty):
	improve tooltip here too.


svn path=/trunk/; revision=25247
2008-03-26 18:26:13 +00:00
3f2120ed09 include a better Wilber path, thanks to Jimmac.
2008-03-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcairo-wilber.c: include a better Wilber path,
	thanks to Jimmac.

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): undid
	scaling "fix", instead take the offset into account. Draw with
	transparency.

svn path=/trunk/; revision=25246
2008-03-26 17:25:00 +00:00
00b3334d1f fix scaling.
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): fix scaling.


svn path=/trunk/; revision=25245
2008-03-26 16:33:04 +00:00
93dcbb1904 app/widgets/Makefile.am new files that renders a Wilber image as a Cairo
2008-03-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimpcairo-wilber.[ch]: new files that renders a
	Wilber image as a Cairo path. Or at least it is supposed to do
	this at some point...

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): use the
	scalable Wilber path. Needs more work...

svn path=/trunk/; revision=25244
2008-03-26 15:59:52 +00:00
ea0f905e75 use the height for height, not the width
svn path=/trunk/; revision=25243
2008-03-26 14:20:23 +00:00
7dadaee825 install wilber.png.
2008-03-26  Sven Neumann  <sven@gimp.org>

	* data/images/Makefile.am: install wilber.png.

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): try to
	load "wilber.png" from $prefix/share/gimp/2.0/images.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new):
	improved tooltip.

svn path=/trunk/; revision=25242
2008-03-26 14:08:45 +00:00
7301aaaeae improve wilber scaling and remove the drop zone layout.
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.[ch]: improve wilber scaling and remove
	the drop zone layout.

	* app/display/gimpdisplayshell.c: add a tooltip instead.


svn path=/trunk/; revision=25241
2008-03-26 13:49:27 +00:00
7b8890fa66 don't set an initial cursor so we get the desktop default cursor after
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_realize): don't set an initial cursor
	so we get the desktop default cursor after starting GIMP.


svn path=/trunk/; revision=25240
2008-03-26 13:47:58 +00:00
86f0c83d52 Forgot to unref the pixbuf.
svn path=/trunk/; revision=25237
2008-03-26 13:10:55 +00:00