Commit graph

1201 commits

Author SHA1 Message Date
Michael Natterer
e896521924 added gimp_image_add_layers() which takes a list of layers and vierport
2006-11-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.[ch]: added gimp_image_add_layers() which
	takes a list of layers and vierport coordinates to center the
	layers in.

	* app/dialogs/file-open-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/widgets/gimplayertreeview.c: use it instead of having the
	same code three times.
2006-11-03 19:59:30 +00:00
Michael Natterer
725a4e414f added value GIMP_UNDO_GROUP_LAYER_ADD.
2006-11-03  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch] (enum GimpUndoType): added value
	GIMP_UNDO_GROUP_LAYER_ADD.

	* app/file/file-open.[ch]: changed file_open_layer() to
	file_open_layers(), added parameter "gboolean merge_visible",
	return a GList of layers.

	* app/dialogs/file-open-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/widgets/gimplayertreeview.c: pass merge_visible = FALSE and
	add all returned layers to the image. Fixes bug #358082.
	(contains lots of duplicated code, will factor that out later).

	* tools/pdbgen/pdb/fileops.pdb (load_layer): pass merge_visible = TRUE
	(load_layers): new wrapper which returns all the image's layers.

	* app/pdb/fileops_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpfileops_pdb.[ch]: regenerated.

	* libgimp/gimp.def: changed accordingly.
2006-11-03 17:12:27 +00:00
Sven Neumann
21d8268dd3 removed frames. Saves a few pixels and reduces visual clutter.
2006-11-01  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: removed frames. Saves a few pixels
	and reduces visual clutter.
2006-11-01 15:55:40 +00:00
Michael Natterer
b577b45435 made gimp_display_shell_ruler_button_press() static.
2006-10-31  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: made
	gimp_display_shell_ruler_button_press() static.
2006-10-30 23:55:53 +00:00
Simon Budig
ab4d8b037c extended gimp_vectors_import() and friends with a parameter for returning
2006-10-25  Simon Budig  <simon@gimp.org>

        * app/vectors/gimpvectors-import.[ch]: extended gimp_vectors_import()
        and friends with a parameter for returning the newly generated vectors.

        * app/actions/edit-commands.c
        * app/actions/vectors-commands.c
        * app/display/gimpdisplayshell-dnd.c
        * app/widgets/gimpvectorstreeview.c: Changed accordingly.

        * app/vectors/vectors-enums.h: moved the GimpVectorsStrokeType to...
        * libgimpbase/gimpbaseenums.h: ... this file.

        * app/vectors/Makefile.am: Changed accordingly
        * app/vectors/vectors-enums.c: removed accordingly.

        * tools/pdbgen/pdb/vectors.pdb: new functions
        gimp_vectors_new_from_file() and gimp_vectors_new_from_string().

        * tools/pdbgen/pdb/paths.pdb: deprecated the previous functions.

        * app/pdb/internal_procs.c
        * app/pdb/paths_cmds.c
        * app/pdb/vectors_cmds.c
        * app/vectors/vectors-enums.c
        * libgimp/gimpenums.h
        * tools/pdbgen/enums.pl
        * libgimp/gimppaths_pdb.[ch]
        * libgimp/gimpvectors_pdb.[ch]
        * libgimpbase/gimpbaseenums.c
        * devel-docs/libgimp/tmpl/gimpfontselectbutton.sgml
        * devel-docs/libgimp/tmpl/gimptools.sgml: regenerated.
2006-10-25 15:14:03 +00:00
Sven Neumann
22fb09b338 fixed calculation of display area in preparation of fixing bug #362915.
2006-10-19  Sven Neumann  <sven@gimp.org>

        * app/display/gimpdisplayshell-draw.c (gimp_display_shell_draw_area):
        fixed calculation of display area in preparation of fixing bug #362915.

        * plug-ins/common/whirlpinch.c: removed unused define.
2006-10-19 08:25:04 +00:00
Michael Natterer
1ed8dd4f53 app/actions/data-commands.c app/actions/documents-commands.c
2006-10-09  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/drawable-commands.c
	* app/actions/gradients-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palettes-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimp-contexts.c
	* app/core/gimp-documents.c
	* app/core/gimp-edit.c
	* app/core/gimp-modules.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/core/gimpchannel.c
	* app/core/gimpdatafactory.[ch]
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimagefile.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimppdbprogress.c
	* app/core/gimpselection.c
	* app/dialogs/palette-import-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/session.c
	* app/gui/themes.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-file.c
	* app/plug-in/gimppluginmanager.c
	* app/text/gimptextlayer-xcf.c
	* app/text/gimptextlayer.c
	* app/widgets/gimpcontrollers.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimpuimanager.c
	* app/widgets/gimpvectorstreeview.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/palette.pdb: convert lots of g_message() to
	gimp_message(). Make sure we never pass unknown strings (like
	error->message) to printf-like functions directly; run them
	thorugh "%s" instead. Don't translate some messages which should
	never happen.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-10-09 18:49:15 +00:00
Michael Natterer
f5afb754a5 Added message severities and make sure all messages are routed through a
2006-10-09  Michael Natterer  <mitch@gimp.org>

	Added message severities and make sure all messages are routed
	through a central function, so redirecting to the error console or
	stderr work again:

	* app/core/core-enums.[ch]: added enum GimpMessageSeverity { INFO,
	WARNING, ERROR }.

	* app/core/gimp.[ch] (gimp_message)
	(gimp_message_valist): added severity parameter. Changed
	"GimpProgress *progress" parameter to "GObject *handler", where
	"handler" can be either a GimpProgress, a GtkWidget or NULL.

	* app/core/gimp-gui.[ch] (gimp_show_message): ditto. Honor
	--console-messages again. Always dispatch to the GUI message
	handler first if it exists.

	* app/gui/gui-message.[ch]: pass severity parameters around.

	(gui_message_error_dialog): if "handler" is a progress, dispatch
	the message to it first. If it is a widget (and *not* a progress),
	use a GtkMessageDialog on top of that widget's toplevel. Fall
	back to the usual GimpErrorDialog otherwise.

	* app/core/gimpprogress.[ch] (gimp_progress_message): added
	severity parameter. Also added boolean return value to the virtual
	function so it can decide to fail if it can't handle the message.

	* app/display/gimpdisplay.c: implement GimpProgress::message() and
	redirect the message to GimpDisplayShell.

	* app/display/gimpdisplayshell-progress.c: implement
	GimpProgress::message() and redirect the message to GimpStatusbar
	if it is not an error and if the status bar is visible.

	* app/display/gimpstatusbar.[ch]: implement GimpProgress::message(),
	but fail on messages that contain a newline. Show the right icons
	for the message severities (work in progress).

	* app/display/gimpdisplayshell.[ch]: removed
	gimp_display_shell_message() and its _valist() variant.

	* app/widgets/gimperrorconsole.[ch]: show the right icons for the
	message severities.

	* app/widgets/gimpthumbbox.c (gimp_thumb_box_progress_message):
	return TRUE to swallow all messages.

	* app/widgets/gimpwidgets-utils.[ch]: removed
	gimp_show_message_dialog(). Added gimp_get_message_stock_id().

	* app/errors.c
	* app/actions/edit-commands.c
	* app/actions/error-console-commands.c
	* app/actions/file-commands.c
	* app/actions/select-commands.c
	* app/actions/text-editor-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimagefile.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/pdb/gimppdb.c
	* app/plug-in/gimpplugin.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimptool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/message.pdb
	* tools/pdbgen/pdb/palette.pdb: added severity parameter to
	gimp_message() calls. Convert all calls to
	gimp_show_message_dialog() and gimp_display_shell_message() to
	gimp_message(). Also converted some more g_message() calls.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-10-09 08:17:22 +00:00
Michael Natterer
ae4a93de96 remove the temp message idle source in GtkObject::destroy().
2006-10-02  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.c: remove the temp message idle source
	in GtkObject::destroy().
2006-10-02 08:56:12 +00:00
Sven Neumann
e6d34e4f68 added gimp_display_shell_message() and a valist variant and decide here
2006-09-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.[ch]: added
	gimp_display_shell_message() and a valist variant and decide here
	where the message is shown.

	* app/actions/edit-commands.c (edit_paste)
	* app/tools/gimptool.c (gimp_tool_message): use the new message API.
2006-09-28 11:16:42 +00:00
Michael Natterer
10f9181e64 added _valist() variants of all printf-style functions.
2006-09-28  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.[ch]: added _valist() variants
	of all printf-style functions.

	* app/tools/gimptool.[ch] (gimp_tool_push_status)
	(gimp_tool_replace_status)
	(gimp_tool_message): take printf-style ... arguments and use the
	new valist() variants of the statusbar API to avoid additional
	strdups. Revert previous commit from Sven, he will add back that
	feature differently right away :)

	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c: use the new printf-style status API
	where possible.

	* app/tools/gimptransformtool.c: accidentially removed
	"core/gimp.h", added it back.
2006-09-28 11:07:55 +00:00
Michael Natterer
d271c7387c terminate the spaces string correctly. Spotted by bill.
2006-09-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_progress_style_set):
	terminate the spaces string correctly. Spotted by bill.
2006-09-22 17:57:11 +00:00
Michael Natterer
1419751614 changed all message setting functions to use printf-style argument lists.
2006-09-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.[ch]: changed all message setting
	functions to use printf-style argument lists. Added new API to
	show a temporary message that stays on top regardless of any other
	message activity and disappears after 3 seconds.

	* app/actions/edit-commands.c: show a statusbar message when
	pasting fails because the clipboard contains no image data. Pop a
	dialog when "Paste as New" fails. Addresses bug #357059 for
	internal functions.

	* app/display/gimpdisplayshell-title.c
	* app/gui/gui.c
	* app/tools/gimptool.c: changed accordingly.
2006-09-22 16:44:47 +00:00
Sven Neumann
9789d18b94 always recalculate the selection when restarting it.
2006-09-22  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: always recalculate the
	selection when restarting it.
2006-09-22 14:27:07 +00:00
Michael Natterer
59a3dd1405 also look at shell->space_release_pending when deciding whether to return
2006-09-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_space_released): also look at
	shell->space_release_pending when deciding whether to return early.
2006-09-22 14:17:33 +00:00
William Skaggs
7903feff20 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/display/gimpcanvas.[ch]
	* app/tools/gimpdrawtool.[ch]: remove recently added code relating
	to stippled xor drawing -- not handled well by some display
	drivers.

	* app/tools/gimprectangletool.c: improve drawing of handles.
2006-09-20 20:23:49 +00:00
William Skaggs
3c2c165b9c Bill Skaggs <weskaggs@primate.ucdavis.edu>
Trying to implement some usability recommendations from
	Peter Sikking: bigger handles, more feedback to user.

	* app/display/gimpcanvas.[ch]: add
	GIMP_CANVAS_STYLE_XOR_STIPPLED to set of styles.

	* app/tools/gimpdrawtool.[ch]
	(gimp_draw_tool_draw_rectangle_stippled): new function.
	Needs a better stipple pattern, though.

	* app/tools/gimprectangletool.c: bigger handles in corners,
	and highlight thing that user is currently moving.
2006-09-15 00:01:59 +00:00
Michael Natterer
868b8afbff Added new tool API for modifier key events while the tool is active and
2006-09-12  Michael Natterer  <mitch@gimp.org>

	Added new tool API for modifier key events while the tool
	is active and implement it in the rect select and crop tools.
	Fixes bug #316156 and bug #355302.

	* app/tools/gimptool.[ch]: added GimpTool::active_modifier_key()
	and public function gimp_tool_set_active_motifier_state(). Remember
	the active_state at button_press and reset it on button_release.
	Ignore releases of modifiers that were pressed at button_press (but
	only ignore them once).

	* app/tools/tool_manager.[ch]: added wrapper
	tool_manager_active_modifier_state_active().

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events): return FALSE for all modifiers even
	when mouse button 1 is pressed.

	(gimp_display_shell_canvas_tool_events): when bouse button 1 is
	pressed *and* the tool is active, dispatch the new active_modifier
	events to tools.

	* app/tools/gimpcroptool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.[ch]: implement active_modifier_key()
	instead of modifier_key().
2006-09-12 18:41:09 +00:00
Sven Neumann
79d3d2915c need to restart the selection here. Should fix bug #355395 and bug
2006-09-12  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c (selection_undraw):
need
	to restart the selection here. Should fix bug #355395 and bug
#355456.
2006-09-12 18:04:08 +00:00
Sven Neumann
a03e14af1a app/composite/gimp-composite-generic.c app/core/gimpimage-convert.c
2006-09-12  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-generic.c
	* app/core/gimpimage-convert.c
	* app/actions/view-actions.c
	* app/dialogs/grid-dialog.c
	* app/dialogs/offset-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/display/gimpnavigationeditor.c
	* app/tools/gimpiscissorstool.c
	* app/widgets/gimptoolbox-image-area.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/apply_lens.c
	* plug-ins/common/cubism.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/exchange.c
	* plug-ins/common/fp.c
	* plug-ins/common/gif.c
	* plug-ins/common/iwarp.c
	* plug-ins/common/laplace.c
	* plug-ins/common/mapcolor.c
	* plug-ins/common/nlfilt.c
	* plug-ins/common/nova.c
	* plug-ins/common/psp.c
	* plug-ins/common/randomize.c
	* plug-ins/common/sparkle.c
	* plug-ins/common/tga.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/unsharp.c
	* plug-ins/common/vpropagate.c
	* plug-ins/gfig/gfig-dialog.c
	* plug-ins/gflare/gflare.c
	* plug-ins/ifscompose/ifscompose.c: removed unused macros.
2006-09-12 11:46:10 +00:00
Michael Natterer
05cd50c9f6 app/display/gimpdisplayshell-callbacks.c
2006-09-12  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsourcetool.c
	* app/tools/gimpvectortool.c: back out change committed on
	2006-08-21 which passed modifier events to tools even while mouse1
	was down. This generated way too much unexpected events that would
	have to be special cased in all tools. Will implement an anternate
	solution soon.
2006-09-12 08:33:30 +00:00
Sven Neumann
7a21918c54 minor cleanup.
2006-09-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: minor cleanup.
2006-09-11 10:54:17 +00:00
Michael Natterer
0c36c0ee54 don't just unconditionally use the active tool for sample point moving if
2006-09-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_ruler_button_press): don't just
	unconditionally use the active tool for sample point moving if it
	is a GimpColorTool, use it only if it is a GimpColorTool but *not*
	a GimpPaintTool with color picking disabled. Fixed bug #355237.
2006-09-11 07:59:12 +00:00
Sven Neumann
beb9cae497 added missing include.
2006-09-09  Sven Neumann  <sven@gimp.org>

	* app/dialogs/about-dialog.c: added missing include.

	* app/display/display-enums.[ch]
	* app/dialogs/preferences-dialog.c: changed labels for
	"space-bar-action" preference. Suggestions welcome for further
	improvements.
2006-09-09 00:36:23 +00:00
Sven Neumann
fc40c485eb use coordinates from the current device when starting to scroll. Grab the
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: use coordinates from
	the current device when starting to scroll. Grab the keyboard
and
	pointer when panning with the space bar.
2006-09-08 19:36:02 +00:00
Sven Neumann
d01cef075b app/config/gimpdisplayconfig.[ch] app/config/gimprc-blurbs.h added new
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/display/display-enums.[ch]: added new gimprc option
	"space-bar-action" and default to "pan". Will add a GUI for this later.

	* app/display/gimpdisplayshell-callbacks.c: respect the new option
	and either pan the display or push the move tool. Fixes bug #349903.
2006-09-08 15:05:36 +00:00
Sven Neumann
2426755ba9 added function gimp_get_tool_info().
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added function gimp_get_tool_info().

	* app/actions/tools-commands.c
	* app/actions/vectors-commands.c
	* app/tools/gimppainttool.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c: use the new function instead of poking
	into gimp->tool_info_list.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: moved code that deals with
	the space key into separate functions. Added space_shaded_tool
	to GimpDisplayShell instead of using a static variable for it.

	* app/tools/tool_manager.c: removed unused include.
2006-09-08 13:42:00 +00:00
Sven Neumann
1b099bfde4 switch from a short timeout to an idle handler for starting the animation.
2006-09-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: switch from a short
	timeout to an idle handler for starting the animation.
2006-09-05 07:09:56 +00:00
Sven Neumann
fed784180f connect to both window state and visibility events 2006-09-04 21:23:50 +00:00
Sven Neumann
c0e4133876 app/display/gimpdisplayshell.c more code cleanup. Monitor the shell's
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-selection.c: more code cleanup.
	Monitor the shell's window visibility and don't run the timeout
if
	the shell is fully obscured.
2006-09-04 21:11:14 +00:00
Sven Neumann
16206cdacf more code cleanup. Monitor the shell's window state and don't run the
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: more code cleanup.
	Monitor the shell's window state and don't run the timeout if
the
	shell is withdrawn or iconified.
2006-09-04 20:56:14 +00:00
Sven Neumann
fb44096100 added missing include 2006-09-04 19:06:40 +00:00
Sven Neumann
cf3f63243e code cleanup. Only use a timeout if there is actually a selection and if
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: code cleanup. Only
use
	a timeout if there is actually a selection and if it is not
hidden.
2006-09-04 18:22:50 +00:00
Sven Neumann
3b92ec7406 hide the internal API.
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.[ch]: hide the internal
API.

	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpcolortool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmovetool.c: changed accordingly.

	* app/config/gimpdisplayconfig.c
	* app/dialogs/preferences-dialog.c: increased the default
marching
	ants speed.
2006-09-04 17:18:38 +00:00
Sven Neumann
969d40caf1 some cleanup. Made the Selection struct private and removed unused state
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.[ch]: some cleanup.
Made
	the Selection struct private and removed unused state member.
	Removed redundant parameter from
gimp_display_shell_selection_start().

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.c: changed accordingly.
2006-09-04 16:13:28 +00:00
Sven Neumann
297f871514 use a hash table instead of object data to maintain context ids. Saves
2006-09-01  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: use a hash table instead of object
	data to maintain context ids. Saves lots of pointless string copies.
2006-09-01 12:15:14 +00:00
Sven Neumann
14f3860b96 minor cleanup.
2006-09-01  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: minor cleanup.
2006-09-01 11:33:39 +00:00
Michael Natterer
a6dbb78dfa added GimpContext parameters and create the GimpView with that context.
2006-09-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpviewabledialog.[ch]: added GimpContext
	parameters and create the GimpView with that context.

	* app/widgets/gimpcolordialog.[ch]
	* app/dialogs/convert-dialog.[ch]
	* app/dialogs/desaturate-dialog.[ch]
	* app/dialogs/grid-dialog.[ch]
	* app/dialogs/image-properties-dialog.[ch]
	* app/dialogs/layer-add-mask-dialog.[ch]
	* app/dialogs/offset-dialog.[ch]
	* app/dialogs/print-size-dialog.[ch]
	* app/dialogs/resize-dialog.[ch]
	* app/dialogs/scale-dialog.[ch]
	* app/dialogs/stroke-dialog.[ch]
	* app/dialogs/template-options-dialog.[ch]
	* app/dialogs/vectors-options-dialog.[ch]: added GimpContext
	parameters here too and pass them to gimp_viewable_dialog_new().

	* app/actions/colormap-editor-commands.c
	* app/actions/drawable-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palette-editor-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c
	* app/dialogs/channel-options-dialog.c
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/image-merge-layers-dialog.c
	* app/dialogs/image-scale-dialog.c
	* app/dialogs/layer-options-dialog.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimpcontrollereditor.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimptoolbox-color-area.c: pass contexts to above
	dialog constructors.
2006-09-01 11:26:54 +00:00
Michael Natterer
b53aa45a76 Changed GimpViewable preview rendering to have a context to get
2006-08-29  Michael Natterer  <mitch@gimp.org>

	Changed GimpViewable preview rendering to have a context to get
	FG/BG/whatever from. Use the context to enable dynamic FG/BG
	colors in gradients. Fixes bug #127676 and bug #352214. Addresses
	bug #128367 (doesn't fix it because there's no loading/saving and
	no GUI yet).

	* app/core/core-enums.[ch]: added enum GimpGradientColor to enable
	specifying gradient colors in terms of foreground and background.

	* app/core/gimpgradient.[ch]: added color_type members to the
	GimpGradientSegment struct and honor them in
	gimp_gradient_get_color_at(). Added GimpContext parameters to all
	functions which finally call get_color_at().

	* app/core/gimp-gradients.c: use the new method to implement the
	builtin gradients.

	* app/core/gimpviewable.[ch]: added GimpContext parameters to all
	get_preview() and get_pixbuf() functions.

	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpgradient.c
	* app/core/gimpimage-preview.[ch]
	* app/core/gimpimagefile.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/text/gimpfont.c
	* app/vectors/gimpvectors-preview.[ch]: changed ::get_preview()
	and ::get_pixbuf() implementations accordingly.

	* app/core/gimpdrawable-blend.c
	* app/core/gimppalette-import.[ch]
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/resize-dialog.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimptexttool.c
	* app/actions/gradient-editor-commands.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpbrusheditor.[ch]
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcellrendererviewable.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpclipboard.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainercombobox.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerentry.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpdnd.[ch]
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimppropwidgets.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpthumbbox.[ch]
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptooloptionseditor.c
	* app/widgets/gimpundoeditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpview-popup.[ch]
	* app/widgets/gimpview.[ch]
	* app/widgets/gimpviewablebutton.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpviewrenderer.[ch]
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrendererbrush.c
	* app/widgets/gimpviewrendererbuffer.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimage.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb: added tons of GimpContext members
	and parameters, implement GimpDocked::set_context() in many
	widgets. Pass these locally remembered contexts to GimpViewable
	functions. Did some minor cleanups on the way. There are still
	some minor FIXMEs around where the code uses a NULL context (which
	is allowed by the APIs)

	* app/pdb/drawable_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/image_cmds.c: regenerated.
2006-08-29 21:44:51 +00:00
Sven Neumann
d34ff5537d libgimpbase/Makefile.am libgimpbase/gimpbase.h added new files that hold
2006-08-29  Sven Neumann  <sven@gimp.org>

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase.h
	* libgimpbase/gimprectangle.[ch]: added new files that hold
	gimp_rectangle_intersect(), factored out of the core.

	* libgimpbase/gimpbase.def: updated.

	* app/core/gimp-edit.c
	* app/core/gimp-utils.c
	* app/core/gimp-utils.h
	* app/core/gimpchannel-combine.c
	* app/core/gimpdrawable-foreground-extract.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-preview.c
	* app/core/gimplayer.c
	* app/core/gimpscanconvert.c
	* app/display/gimpdisplayshell-draw.c: changed includes accordingly.

	* libgimp/gimpdrawablepreview.c: don't duplicate
	gimp_rectangle_intersect() here, use the function in libgimpbase.

	* app/base/siox.c: use gimp_rectangle_intersect() to reduce the
	working area to the region of interest. Fixes bug #340422.
2006-08-29 14:46:32 +00:00
Sven Neumann
0e07e8a92b some adjustments to the fix for bug #346880.
2006-08-29  Sven Neumann  <sven@gimp.org>

	* app/display/gimpnavigationeditor.c: some adjustments to the fix
	for bug #346880.
2006-08-29 08:42:42 +00:00
William Skaggs
254450608e Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/display/gimpnavigationeditor.c: put zoom label next to
	scrollbar instead of above it; fixes bug #346880.
2006-08-25 17:04:14 +00:00
Sven Neumann
decefcb483 just return if gdk_drawable_get_size() returns 0 for width or height (bug
2006-08-24  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-preview.c
	(gimp_display_shell_draw_tri): just return if gdk_drawable_get_size()
	returns 0 for width or height (bug #340056).
2006-08-24 09:13:29 +00:00
William Skaggs
d4f2171301 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/display/gimpdisplayshell-callbacks.c: allow modifier key events
	for Shift and Control to be propagated even if button1 is down.

	* app/tools/gimpclonetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpvectortool.c: change  modifier_key method
	to prevent any bad consequences.

	* app/tools/gimprectangletool.[ch]:  add modifier_key handler, and use it
	to toggle "make-square" if Shift is pressed while button1 is down, and
	"fixed-center" if Control is pressed while button1 is down.

	* app/tools/gimprectangleselecttool.c (gimp_rectangle_tool_modifier_key):
	call rectangle tool modifer_key method after chaining up.
2006-08-21 17:10:29 +00:00
Hans Breuer
37e4b80204 updated
2006-08-15  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated

	* app/xcf/xcf-save.c(1464) : error C2036: 'void *' : unknown size
	pointer arithmetics on void a pointer looks like a GCC extension
	* app/tools/gimpbrightnesscontrasttool.c
	  app/tools/gimpcolorbalancetool.c
	  app/tools/gimphuesaturationtool.c
	  app/tools/gimpcolorizetool.c : #include "core/gimp.h" for gimp_message
	* app/tools/gimpiscissorstool.c : use RINT() rather than rint()
	* app/widgets/gimpcontrollerlist.c : #include "gimpwidgets-utils.h"
	for gimp_show_message_dialog
	* app/core/gimpprogress.c(229) : 'gimp_progress_message' must
	return a value
2006-08-15 15:13:08 +00:00
Sven Neumann
9d76a1734f removed unused variables 2006-08-09 17:41:26 +00:00
Sven Neumann
2b8ea21f36 added new function gimp_display_shell_transform_segments().
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-transform.[ch]: added new function
	gimp_display_shell_transform_segments().

	* app/display/gimpdisplayshell-selection.c (selection_transform_segs)
	* app/tools/gimpregionselecttool.c
	(gimp_region_select_tool_calculate): use the new function instead
	of looping over the segments.
2006-08-09 14:05:00 +00:00
Sven Neumann
f29b6c5027 use the new transform functions.
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-draw.c (gimp_display_shell_draw_pen)
	(gimp_display_shell_draw_vector): use the new transform functions.

	* app/tools/gimpdrawtool.c  (gimp_draw_tool_draw_lines)
	(gimp_draw_tool_draw_strokes): bail out early if num_points == 0.
2006-08-09 13:40:21 +00:00
Sven Neumann
1c33f14bcf renamed transform_coords() to transform_coordinate(); same for the
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-transform.[ch]: renamed
	transform_coords() to transform_coordinate(); same for the
	untransform variant. Added new functions transform_points() and
	transform_coords() that work on arrays.

	* app/display/gimpdisplayshell-autoscroll.c
	* app/display/gimpdisplayshell-callbacks.c: changed accordingly.

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_lines)
	(gimp_draw_tool_draw_strokes): use the new transform functions.
2006-08-09 13:15:49 +00:00
Sven Neumann
48d054e8d4 added new function gimp_message() as a replacement for g_message(). Part
2006-08-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added new function gimp_message() as a
	replacement for g_message(). Part of the fix for bug #347214.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/layers-commands.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimagefile.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/pdb/gimppdb.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-private.h
	* app/xcf/xcf-save.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/palette.pdb: use gimp_message() instead of
	gimp_message() whenever we have a GimpProgress.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-08-08 21:06:36 +00:00