Commit Graph

201 Commits

Author SHA1 Message Date
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 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
Michael Natterer 5eccc36081 set the active display before showing the menu (fixes bug #109472).
2003-03-30  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_origin_menu_popup): set the active display
	before showing the menu (fixes bug #109472).
2003-03-30 13:41:03 +00:00
Sven Neumann 28fddfd554 Makefile.am removed this header file.
2003-03-25  Sven Neumann  <sven@gimp.org>

	* Makefile.am
	* gimpintl.h: removed this header file.

	* gimpmiscui.c: include libgimp-intl.h.

	* gimp.c (gimp_main): call setlocale() and bind to the libgimp
	textdomain so that plug-ins don't need to do that explicitely.

	* libgimp/stdplugins-intl.h: added the functionality that used to
	live in gimpintl.h and removed the libgimp related stuff. Got rid
	of the INIT_I18N_UI() macro.

	* plug-ins/*/*.c: removed all occurances of INIT_I18N_UI().
	Plug-ins simply call INIT_I18N() once in their run() function.

	* plug-ins/script-fu/script-fu-intl.h: added the functionality
	that used to live in gimpintl.h and removed the libgimp related
	stuff.

	* app/Makefile.am
	* app/gimp-intl.h: new file that defines the gettext macros for
	the GIMP core.

	* app/*/*.c: include gimp-intl.h instead of libgimp/gimpintl.h.

	* plug-ins/script-fu/scripts/test-sphere.scm: fixed typos.
2003-03-25 16:38:19 +00:00
Sven Neumann 6fb7877ebd don't emit the "scaled" signal from gimp_display_shell_scale_setup(). Emit
2003-03-21  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c: don't emit the "scaled"
	signal from gimp_display_shell_scale_setup(). Emit it explicitely
	from gimp_display_shell_scale_resize() instead.

	* app/display/gimpdisplayshell-scroll.c: call
	gimp_display_shell_scale_setup() after scrolling in order to
	update scrollbars and rulers.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c: emit the "scaled" signal
	explicitely.

	* app/display/gimpdisplayshell-render.c: minor optimizations.

	* app/display/gimpdisplayshell.c: minor cleanup.
2003-03-21 16:28:06 +00:00
Michael Natterer 906c5a9f38 removed gdisp->draw_guides and gdisp->snap_to_guides.
2003-03-20  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.[ch]: removed gdisp->draw_guides
	and gdisp->snap_to_guides.

	* app/display/gimpdisplayshell.[ch]: added shell->snap_to_guides.
	Added the state of guide, selection and active_layer visibility to
	the GimpDisplayShellVisibility struct so they can be configured
	separately for fullscreen mode. Update the popup_factory in
	gimp_display_shell_real_scaled() only if this is the active
	display.

	* app/display/gimpdisplayshell-appearance.[ch]: added accessors
	for selection, active_layer and guide visibility.

	* app/display/gimpdisplayshell-selection.[ch]: changed
	accordingly.  Changed the selection and active_layer toggle
	functions to *_set_hidden().

	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/image-menu.c
	* app/gui/view-commands.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmovetool.c: changed accordingly.

	* app/gui/gui.c (gui_display_new): update the menubar_factory
	*after* making the new display the active one.
2003-03-20 11:31:33 +00:00
Sven Neumann c3a4ddc616 reordered the View menu, moved all Zoom-related entries into a submenu.
2003-03-12  Sven Neumann  <sven@gimp.org>

	* app/gui/image-menu.c: reordered the View menu, moved all
	Zoom-related entries into a submenu. Use radio items for the zoom
	ratio as suggested in bug #74385.

	* app/gui/view-commands.c (view_zoom_cmd_callback): only call
	gimp_display_shell_scale() if the item is active and the current
	scale is different from the requested one.

	* app/display/gimpdisplayshell.c (gimp_display_shell_real_scaled):
	update the image menu so that the zoom ratio is displayed correctly.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_realize): don't call
	gimp_display_shell_scale_setup(), since it is done in the configure
	event handler already.
2003-03-12 17:18:25 +00:00
Michael Natterer b36590e67f app/display/Makefile.am new files implementing canvas padding, fullscreen
2003-03-11  Michael Natterer  <mitch@gimp.org>

	* app/display/Makefile.am
	* app/display/gimpdisplayshell-appearance.[ch]: new files
	implementing canvas padding, fullscreen toggling and utility
	functions to show/hide GimpDisplayShell components (menubar,
	statusbar, ...) Added the possibility to show/hide the scrollbars.

	* app/display/gimpdisplayshell.[ch]: added struct
	GimpDisplayShellVisibility which stores the GUI components'
	visibility. Added two such structs to the GimpDisplayShell struct:
	one for normal mode and one for fullscreen mode. Default to
	"everything invisible" for fullscreen.  Fixes bug #74383.

	* app/display/gimpdisplayshell-callbacks.c: fiddle with the
	two visibility structs when toggling fullscreen.

	* app/display/gimpdisplayshell-handlers.c: #include
	"gimpdisplayshell-appearance.h"

	* app/gui/image-menu.c
	* app/gui/view-commands.[ch]: added a "Show Scrollbars" menu entry,
	use the new widget show/hide utility functions.
2003-03-11 16:49:36 +00:00
Sven Neumann 2553b3cab8 app/display/gimpdisplayshell-callbacks.c app/display/gimpdisplayshell.[ch]
2003-03-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]
	* app/gui/image-menu.c
	* app/gui/view-commands.c: rewrote the fullscreen mode
	implementation so that it doesn't loop infinitely.
2003-03-11 11:53:26 +00:00
Sven Neumann 632b7f8ac6 app/display/gimpdisplayshell-callbacks.c app/display/gimpdisplayshell.[ch]
2003-03-11  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]
	* app/gui/image-menu.c
	* app/gui/view-commands.[ch]: added a fullscreen mode for the
	image display by means of gtk_window_fullscreen/unfullscreen.
	Depends on the window manager implementing _NET_WM_STATE_FULLSCREEN.

	* app/tools/gimpcroptool.c: made gimp_crop_tool_draw() static.

	* app/tools/gimptexttool.[ch]: derive from GimpDrawTool, no real
	changes yet.
2003-03-11 01:22:57 +00:00
Sven Neumann 9d25aa5350 removed debugging output.
2003-02-26  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: removed debugging output.
2003-02-26 19:03:06 +00:00
Sven Neumann 3d526e741c app/display/gimpdisplayshell-callbacks.[ch] override
2003-02-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.[ch]
	* app/display/gimpdisplayshell.c: override GtkWidget::popup_menu()
	so we popup the Image menu on the default shortcut (Shift F10).

	* app/gui/image-menu.c (image_menu_entries): removed or replaced
	shortcuts that use the Alt key. Added access keys to all toplevel
	entries of the Image menu (see bug #106991).

	* app/gui/tools-commands.[ch]: removed "Swap Contexts" functionality.

	* app/widgets/gimpselectioneditor.[ch]: moved "Invert" button.
2003-02-25 19:12:11 +00:00
Michael Natterer 5f5e0bf5d6 Refactored the GimpDisplayShell update/draw code:
2003-02-21  Michael Natterer  <mitch@gimp.org>

	Refactored the GimpDisplayShell update/draw code:

	* app/display/gimpdisplayshell.[ch]: removed the display_areas
	list which used to hold the GimpAreas to update. Instead, simply
	queue draws using gtk_widget_queue_draw[_area]() in
	gimp_display_shell_expose_area(), _expose_full() and
	_expose_guide(). Made all _draw() functions public because they
	are now called from the "expose_event" handler.  Removed rendering
	from gimp_display_shell_flush() because stuff is now flushed
	automatically by the gtk idle renderer.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_expose): draw everything here (the code
	removed from gimp_display_shell_flush() without the GimpArea list).
	(gimp_display_shell_canvas_tool_events): return "return_val", not
	TRUE if gimp->busy is TRUE. Fixes unupdated (windowk bg color)
	display areas. Fixes bug #106595.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-cursor.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-selection.c
	* app/gui/view-commands.c: changed accordingly. Removed calls to
	gimp_display_shell_flush() all over the place.

	* app/display/gimpdisplayshell-scroll.c: replaced lots of code by
	a single call to gdk_window_scroll().
2003-02-21 12:16:43 +00:00
Michael Natterer e34df4d8d0 fixed the "TAB toggles dialogs" feature.
2003-02-03  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: fixed the "TAB toggles
	dialogs" feature.

	(gimp_display_shell_get_event_coords,device_coords): CLAMP() all
	extended axes to be safe against crappy XInput drivers and provide
	default values for not existing axes.
2003-02-03 15:03:11 +00:00
Michael Natterer f44500aa69 pass the GimpItemListView as "data" to the item_factory callbacks, not
2003-01-12  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpitemlistview.c: pass the GimpItemListView as
	"data" to the item_factory callbacks, not just a "Gimp" pointer.

	* app/display/gimpdisplayshell.c: use
	gtk_window_add_accel_group(), not gimp_window_add_accel_group()
	because we now attach the menubar's accel group, which has the
	GimpDisplay as callback data.

	* app/display/gimpdisplayshell-callbacks.c: pass the GimpDisplay
	as "popup_data" to *_item_factory_popup_with_data().

	* app/gui/channels-commands.c
	* app/gui/drawable-commands.c
	* app/gui/layers-commands.c
	* app/gui/vectors-commands.c: changed accordingly.

	* app/widgets/gimpwidgets-utils.[ch]: removed
	gimp_window_[add|remove]_accel_group() and
	gimp_widget_get_callback_context() because they were evil hacks
	which are no longer needed now that all item_factories have proper
	callback data (no just Gimp pointers).
2003-01-12 12:35:00 +00:00
Michael Natterer 8d86ec25e0 Move away from creating all item_factories statically in menus_init() but
2003-01-10  Michael Natterer  <mitch@gimp.org>

	Move away from creating all item_factories statically in
	menus_init() but create a new one for each place where one is
	needed:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpmenufactory.[ch]: new factory which creates and
	configures the GimpItemFactories it knows about on-the-fly.

	* app/widgets/gimpitemfactory.[ch]: added
	gimp_item_factory_update() which calls the "update_func". Added
	"gboolean update_on_popup" so item_factories can be configured to
	require manual updates (used for the <Image> factory).

	* app/gui/menus.[ch]: create a "global_menu_factory" and register
	all menus we have with it. Added various setup functions which
	do stuff like adding the "Open Recent" menu or reorder plug-in
	menu entries. Removed the debugging stuff...

	* app/gui/Makefile.am
	* app/gui/debug-commands.[ch]: ...and added it here.

	* app/gui/gui.c: create the <Toolbox>, the popup-<Image> and the
	<Paths> factories here because they are still global.

	* app/gui/plug-in-menus.[ch]: changed the "image_factory"
	parameters to "item_factory" and create/update the entries for the
	passed item_factory only. Makes the whole stuff much more
	straightforward.

	* app/plug-in/plug-ins.c: don't call plug_in_make_menu().

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell.[ch]: added "menu_factory" and
	"popup_factory" parameters to gimp_display_new() and
	gimp_display_shell_new(). Create the menubar_factory and the
	qmask_factory dynamically. Pass the shell, not a Gimp to the QMask
	callbacks. Changed gimp_display_shell_set_menu_sensitivity() to
	gimp_display_shell_menu_update() and don't call it directly (it's
	a GimpItemFactory update_func now). Call gimp_item_factory_update()
	on the resp. factories instead.

	* app/gui/qmask-commands.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpimagemaptool.c: changed accordingly.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.[ch]
	* app/widgets/gimpbufferview.[ch]
	* app/widgets/gimpcolormapeditor.[ch]
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpdialogfactory.[ch]
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpimageview.[ch]
	* app/widgets/gimpitemlistview.[ch]
	* app/widgets/gimppaletteeditor.[ch]: pass around lots of
	GimpMenuFactory pointers and menu_identifiers so all views can
	create their item_factories themselves. Unref the factories when
	they are no longer needed because they belong to the views now.

	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/brush-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: changed accordingly.

	* app/gui/file-dialog-utils.[ch] (file_dialog_new): require
	menu_factory and menu_identifier parameters.

	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]: removed file_*_dialog_menu_init()
	(they went to menus.c as setup_funcs). Added file_*_dialog_set_type()
	and moved the <Load> and <Save> factory callbacks to file-commands.c

	* app/gui/file-commands.[ch]: changed accordingly.

	* app/gui/view-commands.c: changed the statusbar, menubar, rulers
	and guides callbacks to do their job only if the setting has
	actually changed. Don't update whole item factories afterwards.
	Instead, just change the state of the items that actually need
	update.

	Unrelated:

	* app/core/gimpchannel.c (gimp_channel_init): set "bounds_known"
	and friends to FALSE since we don't know that the new channel will
	be empty (fixes QMask and probably other stuff).

	* app/gui/image-commands.c
	* app/gui/vectors-commands.c: cleanup.
2003-01-10 17:55:53 +00:00
Michael Natterer 3e83578bbd Fixed bug #13296:
2003-01-07  Michael Natterer  <mitch@gimp.org>

	Fixed bug #13296:

	* app/display/gimpdisplayshell.c (gimp_display_shell_shrink_wrap):
	don't do evil stuff but simply call gtk_window_resize(). Gtk+ will
	automatically place the window onscreen if it would be invisible
	after resizing.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_configure): don't call
	gimp_dislpay_shell_scale_resize() to avoid recursion but do the
	two needed calls manually.
2003-01-07 18:57:58 +00:00
Manish Singh 1a44f2126c cleanup, removed unecessary G_OBJECT() casts. Should do the same for
2003-01-05  Manish Singh  <yosh@gimp.org>

        * many files in app, modules and libgimp*: cleanup, removed unecessary
        G_OBJECT() casts. Should do the same for plug-ins, when more of them
        get undeprecated.
2003-01-05 22:07:10 +00:00
Sven Neumann ec6c98656e bumped the version number to 1.3.12.
2003-01-03  Sven Neumann  <sven@gimp.org>

	* configure.in: bumped the version number to 1.3.12.

	* app/display/Makefile.am
	* app/display/gimpdisplayshell-cursor.[ch]
	* app/display/gimpdisplayshell-title.[ch]
	* app/display/gimpdisplayshell-transform.[ch]: new files with code
	that used to live in gimpdisplayshell.c.

	* app/display/gimpdisplay-foreach.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpdrawtool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimptool.c: changed accordingly.
2003-01-03 18:01:30 +00:00
Michael Natterer f03b6b6d75 Changed menubar showing/hiding to work like rulers and statusbar:
2002-12-14  Michael Natterer  <mitch@gimp.org>

	Changed menubar showing/hiding to work like rulers and statusbar:

	* app/config/gimpconfig-blurbs.h
	* app/config/gimpdisplayconfig.[ch]: renamed "menu_bar_per_display"
	to "show_menubar". Removed GIMP_PARAM_RESTART flag.

	* app/display/gimpdisplayshell.[ch]: chaged shell->item_factory to
	shell->menubar_factory plus shell->popup_factory and always create
	both of them. Added "gboolean update_popup" to
	gimp_display_shell_set_menu_sensitivity() and call it recursively
	with update_popup == TRUE if the display it is called for is the
	active one.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c: changed accordinly.

	* app/gui/gui.c: ditto. Set the menu sensitivity of new displays.

	* app/gui/menus.c: added "<Image>/View/Toggle Menubar" menu item.
	Moved some factory initialization code from gimpdisplayshell.c
	here.

	* app/gui/view-commands.[ch]: added
	view_toggle_menubar_cmd_callback(). Update the menu sensitivity
	manually in all callbacks which don't call gimp_image_flush().

	* app/gui/preferences-dialog.c (prefs_dialog_new): moved the "Show
	Menubar" toggle to the "Appearance" frame of the "Image Windows"
	page. Added an own frame for the display zoom/scaling settings.

	(preferences_dialog_create): Attach config_copy and config_orig
	using g_object_set_data_full() instead of just g_object_set_data()
	plus a g_object_weak_ref().

	(prefs_default_resolution_callback): set the resolution for both
	fields of the "size_sizeentry" instead of setting it for "x"
	twice.
2002-12-14 14:13:54 +00:00
Michael Natterer b1ebd9cddf The unbelievable happened: a menu bar per display (optionally)
2002-12-10  Michael Natterer  <mitch@gimp.org>

	The unbelievable happened: a menu bar per display (optionally)

	* app/widgets/gimpitemfactory.[ch]: Added the possibility to have
	more than one item factory per <Prefix>. Added
	gimp_item_factories_set_foobar() variants of all functions which
	set menu item properties (label, sensitive, ...). Removed
	the #ifndef ENABLE_NLS code since that's no longer possible.

	* app/widgets/gimptoolbox.c: made it robust againt the <Image>
	factory not existing at the time of toolbox creation.

	* app/config/gimpconfig-blurbs.h
	* app/config/gimpdisplayconfig.[ch]: added boolean
	"menu_bar_per_display" property.

	* app/gui/preferences-dialog.c: added a toggle for the new option.

	* app/gui/menus.[ch]: added menus_get_new_image_factory() as
	temporary solution. Will add a GimpMenuFactory which creates the
	item factories soon.

	* app/display/gimpdisplayshell.c: add the menu bar if requested.
	Changed widget packing slightly for the menu bar case.

	* app/display/gimpdisplayshell-callbacks.c: changed accordingly.
	Currently there is no right-click popup menu when we have a menu
	bar. This will change soon.

	* app/gui/file-dialog-utils.c
	* app/gui/gui.c: use gimp_item_factories_set_foo().

	* app/gui/channels-commands.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/plug-in-commands.c
	* app/gui/select-commands.c
	* app/gui/tools-commands.c
	* app/gui/vectors-commands.c
	* app/gui/view-commands.c: per-display item factories pass the
	GimpDisplay as user_data to callbacks, not a Gimp. Changed all
	return_if_no_foo() macros to handle both cases.

	Cleaned up the plug-in menu stuff:

	* app/plug-in/plug-in-types.h: removed PlugInMenuEntry type.

	* app/plug-in/plug-ins.[ch]: added plug_ins_proc_def_add() as
	counterpart to plug_ins_proc_def_remove(). Added
	plug_ins_locale_domain() as counterpart to plug_ins_help_path().
	Remember the locale domains just as the help paths. Changed
	plug-in initialization so that their menus can be created multiple
	times.

	* app/plug-in/plug-in.[ch]: use plug_ins_proc_def_add() instead of
	doing it manually.

	* app/gui/plug-in-menus.[ch]: added plug_in_menus_init() which
	just registers the locale domains. Changed plug_in_make_menu() to
	take a list of proc_defs, not plug_ins_defs so it can be used
	after plug-in query.
2002-12-10 16:38:16 +00:00
Sven Neumann b23e1fb582 fixed menu path.
2002-11-24  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_color_button_press): fixed menu path.
2002-11-24 12:49:19 +00:00
Michael Natterer bf53c3b2b7 removed GIMP_PARAM_RESTART from "marching-ants-speed".
2002-11-24  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpdisplayconfig.c: removed GIMP_PARAM_RESTART from
	"marching-ants-speed".

	* app/display/gimpdisplayshell-selection.[ch]: removed the "speed"
	parameter from the constructor and get the speed from
	GimpDisplayConfig when starting the ants.

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

	* app/display/gimpdisplayshell-handlers.c: connect to
	notify::marching-ants-speed and restart the ants in the handler.

	* app/gui/preferences-dialog.c: Added an own frame for the
	canvas padding color. Even more cleanup.

	* themes/Default/images/preferences/Makefile.am
	* themes/Default/images/preferences/image-title.png: new image
	for the new page. copied image-windows.png
2002-11-24 00:03:42 +00:00
Michael Natterer 4ce4adf87d removed gimp_config_values_equal().
2002-11-23  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-utils.[ch]: removed
	gimp_config_values_equal().

	* app/config/gimpconfig-serialize.c
	* app/config/gimpconfig.c: use g_param_values_cmp() instead so
	our registered compare methods are used.

	* app/config/gimpdisplayconfig.[ch]: added "canvas_padding_mode"
	and "canvas_padding_color" properties.

	* app/display/display-enums.[ch]: added enum GimpDisplayPaddingMode
	which can be one of { theme, light check, dark check, custom }.

	* app/display/gimpdisplay.h
	* app/display/gimpdisplay-handlers.c: removed cached monitor
	resolution values...

	* app/display/gimpdisplayshell.[ch]: ...and added them here. Added
	padding state as in GimpDisplayConfig. Added utility function
	gimp_display_shell_set_padding() which hides all the details.
	Added the new padding modes to the padding color button's context
	menu.

	* app/display/gimpdisplayshell-callbacks.[ch]: don't fiddle
	with colors manually but use gimp_display_shell_set_padding()
	in realize() and in the color button callbacks.

	* app/display/gimpdisplayshell-handlers.c: connect to
	notify::monitor-[xy]resolution and
	notify::canvas-padding-[mode|color] and update accordingly.

	* app/widgets/gimppropwidgets.[ch]: added
	gimp_prop_color_button_new().

	* app/widgets/gimpdialogfactory.[ch]: added
	gimp_dialog_factories_session_clear() (unimplemented).

	* app/gui/preferences-dialog.c: added widgets for padding mode and
	color. Removed some callbacks by connecting the functions they
	called directly. Cleanup.
2002-11-23 22:22:21 +00:00
Sven Neumann 073e533a8a Finally landed the new GimpConfig based gimprc parser. It's not finished
2002-11-18  Sven Neumann  <sven@gimp.org>

	Finally landed the new GimpConfig based gimprc parser. It's not
	finished yet but we need to start somewhere. This release removes
	the old gimprc.[ch] files. The gimprc format changes slightly, but
	the changes are minimal. The Preferences dialog is temporarily
	disabled since it still needs to be ported. If you are are afraid,
	stay away from CVS for a few days ;-)

	* app/Makefile.am
	* app/gimprc.[ch]: removed the old gimprc system.

	* app/base/Makefile.am
	* app/base/base-config.[ch]: removed these files in favor of
	config/gimpbaseconfig.[ch].

	* app/core/Makefile.am
	* app/core/gimpcoreconfig.[ch]: removed these files in favor of
	config/gimpcoreconfig.[ch].

	* app/config/Makefile.am
	* app/config/config-types.h: moved typedefs into this new file.

	* app/config/gimpbaseconfig.[ch]
	* app/config/gimpcoreconfig.[ch]
	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc.[ch]
	* app/config/test-config.c: brought into shape for real use.

	* app/base/base-types.h: include config/config-types.h here. Added
	a global GimpBaseConfig *base_config variable to ease migration.

	* app/gui/Makefile.am: temporarily disabled the preferences dialog.

	* app/app_procs.c
	* app/undo.c
	* app/undo_history.c
	* app/base/base.[ch]
	* app/base/gimphistogram.c
	* app/base/pixel-processor.c
	* app/base/temp-buf.c
	* app/base/tile-cache.c
	* app/core/core-types.h
	* app/core/gimp-documents.c
	* app/core/gimp.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpcontext.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimpmodules.c
	* app/core/gimppattern.c
	* app/display/Makefile.am
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpnavigationview.c
	* app/file/file-save.c
	* app/gui/device-status-dialog.c
	* app/gui/dialogs-constructors.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/paths-dialog.c
	* app/gui/resize-dialog.c
	* app/gui/session.c
	* app/gui/test-commands.c
	* app/gui/tips-dialog.c
	* app/gui/tips-dialog.h
	* app/gui/user-install-dialog.c
	* app/gui/view-commands.c
	* app/paint/gimppaintcore.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimptexttool.[ch]
	* app/tools/selection_options.c
	* app/tools/tools.c
	* app/tools/transform_options.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpitemfactory.c
	* app/widgets/gimpselectioneditor.c
	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/gimprc.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: use the new config system
	instead of the old gimprc stuff.

	* etc/gimprc.in
	* etc/gimprc_user.in: adapted to the new gimprc format. Will update
	the man-page later...

	* app/pdb/fileops_cmds.c
	* app/pdb/gimprc_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/transform_tools_cmds.c
	* libgimp/gimpgimprc_pdb.c: regenerated.
2002-11-18 20:50:31 +00:00
Michael Natterer fa537489d7 removed gdisp->scale, gdisp->dot_for_dot, the scaling marcos and the
2002-06-27  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.[ch]: removed gdisp->scale,
	gdisp->dot_for_dot, the scaling marcos and the
	gdisplay_[un]transform[_f]() functions.

	* app/display/gimpdisplayshell.[ch]: added them here. Named the
	transform functions gimp_display_shell_[un]transform_xy[_f]().

	Made the gimp_display_shell_[un]transform_coords() functions copy
	all values of the GimpCoords struct, not just x and y.

	* app/display/gimpstatusbar.[ch]: keep a pointer to
	GimpDisplayShell, not GimpDisplay.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpnavigationview.c
	* app/gui/image-commands.c
	* app/gui/info-window.c
	* app/gui/select-commands.c
	* app/gui/view-commands.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpdrawtool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpvectortool.c: changed accordingly.

	* app/gui/layers-commands.c: if(gimage->selection_mask) is always
	TRUE, use if(!gimp_image_mask_is_empty(gimage)) instead.

	* app/tools/gimpfuzzyselecttool.[ch]: moved global variables
	to the object struct.
2002-06-26 22:16:59 +00:00
Michael Natterer 53a4fafe3b Fix for #85202:
2002-06-19  Michael Natterer  <mitch@gimp.org>

	Fix for #85202:

	Updating the active tool's modifier state on GTK_ENTER_NOTIFY and
	GTK_LEAVE_NOTIFY was a bad idea because this only works with
	focus-follows-mouse.  Instead, update it during the whole time the
	canvas can receive key events, namely from FOCUS_IN until
	FOCUS_OUT. As an ugly side condition, click-to-focus leads to
	GDK_BUTTON_PRESS arriving before GDK_FOCUS_CHANGE(in).

	* app/display/gimpdisplayshell-callbacks.[ch]: removed the
	separate focus_in and focus_out callbacks and handle them in
	gimp_display_shell_canvas_tool_events(). Moved tool state updating
	from the ENTER/LEAVE code to FOCUS_CHANGE. Added an ugly static
	variable "button_press_before_focus" and take care of the side
	condition mentioned above.

	* app/display/gimpdisplayshell.c: changed accordingly.
2002-06-19 21:19:49 +00:00
Michael Natterer 3a7654ec7c copied some code from gtk+/gtk/gtkmenubar.c:window_key_press_handler()
2002-05-24  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: copied some code from
	gtk+/gtk/gtkmenubar.c:window_key_press_handler() which pops up the
	<Image> menu on F10 (or whatever is configured in GtkSettings).
2002-05-24 02:20:20 +00:00
Michael Natterer 7cc03fd30d New feature: pressing <space> in the image window temporary switches to
2002-05-15  Michael Natterer  <mitch@gimp.org>

	New feature: pressing <space> in the image window temporary
	switches to the move tool (so that releasing <space> switches back
	to the old tool).

	* app/display/gimpdisplayshell.[ch]: added booleans
	shell->space_pressed and shell->space_release_pending. Connect
	more events to gimp_display_shell_events() so they can be blocked
	there if needed.

	* app/display/gimpdisplayshell-callbacks.c: beautified and
	uglified at the same time:

	beauty:
	- moved the checks if gimp is busy or button1 is down to
	  gimp_display_shell_events() so they don't clutter
	  gimp_display_shell_canvas_tool_events().
	- factored tool modifer updating out to a separate function.
	- indentation/spacing cleanup.

	ugly:
	- added more static variables to track the state of <space>
	- added the actual move tool toggling code.
2002-05-15 16:28:41 +00:00
Michael Natterer a3bb0b0dad Started to get rid of the gdisplays_foo() functions in
2002-05-08  Michael Natterer  <mitch@gimp.org>

	Started to get rid of the gdisplays_foo() functions in
	app/display/gimpdisplay-foreach.[ch]. Work in progress...

	* app/core/gimp.[ch]: added the display list to the Gimp object
	(as a GimpList of GimpObjects). This way we get more independent
	from whether there is GUI or not, as gimp->displays will simply
	be an empty list for the --no-interface case.

	* app/display/gimpdisplay.[ch]: Removed the global "display_list"
	and "display_num" variables. Use gimp->displays instead.

	* app/display/gimpdisplay-foreach.[ch]: renamed most functions
	from gdisplays_foo() to gimp_displays_foo() and pass them a Gimp
	pointer.

	* app/core/gimpimage.[ch]: added a "flush" signal.

	* app/display/gimpdisplay-handlers.c: connect to "flush" and call
	gimp_display_flush() in the callback.

	* tools/pdbgen/pdb/display.pdb: use gimp_displays_flush(gimp)
	here and only here.

	* app/pdb/display_cmds.c: regenerated.

	* app/app_procs.c
	* app/gui/gui.c
	* app/gui/preferences-dialog.c:
	s/gdislays_foo()/gimp_displays_foo(gimp)/

	* app/image_map.c
	* app/undo_history.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-scale.c
	* app/gui/channels-commands.c
	* app/gui/colormap-editor-commands.c
	* app/gui/convert-dialog.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/paint/gimpairbrush.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpdrawablelistitem.c
	* app/widgets/gimpdrawablelistview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimpitemlistitem.c
	* app/widgets/gimpitemlistview.c
	* app/widgets/gimplayerlistitem.c
	* app/widgets/gimplayerlistview.c
	* app/widgets/gimpvectorslistview.c: replaced gdisplays_flush()
	with calls to gimp_image_flush(gimage). Removed inclusion of
	"display/gimpdisplay-foreach.h" from most files.
2002-05-08 17:48:24 +00:00
Michael Natterer b6c56ff9ac app/Makefile.am removed.
2002-05-07  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/nav_window.[ch]: removed.

	* app/display/Makefile.am
	* app/display/display-types.h
	* app/display/gimpnavigationview.[ch]: new widget partially based
	on the removed nav_window.

	* libgimpproxy/gimpproxytypes.h: regnenerated.

	* app/display/gimpdisplay-foreach.[ch]: removed
	gdisplays_nav_preview_resized(). The new config system will allow
	us to get notified of changes.

	* app/display/gimpdisplayshell.[ch]: added "scaled" and "scrolled"
	signals.

	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c: emit "scaled" and
	"scrolled" appropriately. Removed nav_window stuff.

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

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/menus.c: made the navigation dialog dockable.

	* app/gui/view-commands.c: changed the nav_dialog callback accordingly.

	* app/gui/preferences-dialog.c
	* app/gimprc.[ch]
	* app/config/gimpguiconfig.[ch]: removed "nav_window_per_display"
	as it's now a dockable and it's state is saved in sessionrc.

	* app/widgets/gimpnavigationpreview.[ch]: added context sensitive
	mouse cursors.

	* app/widgets/gimpimagedock.c: made it capable of holding
	display-related dialogs (like GimpNavigationView) by connecting
	to the context's "display_changed" signal.

	* app/widgets/widgets-types.h: removed inclusion of
	"display/display-types.h".

	* app/widgets/gimpbufferview.c
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpdrawablelistitem.c
	* app/widgets/gimpdrawablelistview.c
	* app/widgets/gimpitemlistitem.c
	* app/widgets/gimpitemlistview.c
	* app/widgets/gimplayerlistitem.c
	* app/widgets/gimplayerlistview.c
	* app/widgets/gimppreview.c
	* app/widgets/gimpvectorslistview.c: warn about inclusion of
	"display/display-types.h".
2002-05-07 16:23:14 +00:00
Michael Natterer c86ca2da6a app/Makefile.am removed...
2002-05-05  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimphelp.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/gimphelp.[ch]: ...and added here.

	* app/widgets/widgets-enums.[ch]: added GimpHelpBrowserType here
	as registered enum. Added an evil hack with GimpCursorType so
	app/config/gimpguiconfig.h can include this file.

	* app/widgets/gimpcursor.c: added an assertion because of the
	changed GimpCursorType.

	* app/config/gimpguiconfig.[ch]: added a property for the help
	browser type.

	* app/gimprc.c
	* app/libgimp_glue.c
	* app/gui/preferences-dialog.c
	* tools/pdbgen/pdb/help.pdb

	* app/pdb/help_cmds.c: regenerated.

	Some nav_window cleanup before chopping:

	* app/nav_window.[ch]: removed the old preview code and use
	GimpNavigationPreviews only. Namespaceified all functions. Speak
	in terms of GimpDisplayShell, not GimpDisplay. Lots of internal
	cleanup.

	* app/gui/gui-types.h: removed NadiagtionDialog here...

	* app/display/display-types.h: ...and added it here.

	* app/display/gimpdisplayshell-callbacks.[ch]: added a callback
	for the navigation button and call nav_window_show_popup() from there.

	* app/display/gimpdisplayshell.c: free shell->nav_dialog
	unconditionally, connect to the new callback.

	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/gui/view-commands.c: changed accordingly.

	* app/widgets/gimppreview.c (gimp_preview_set_viewable): the
	assertion introduced recently was too tight, breaking
	GimpNavigationPreview. Changed it to do an "is a" check, not exact
	preview type matching.

	* app/widgets/gimpimagepreview.c: added quick-hack support for
	xres != yres.

	* app/widgets/gimpnavigationpreview.[ch]: made
	gimp_navigation_preview_grab_pointer() public so the nav_window
	can call it.

	Unrelated:

	* app/display/gimpdisplay.c: removed the gui/ dependency from this
	file by removing info_window stuff.

	* app/display/gimpdisplayshell.c (gimp_display_shell_flush): update
	the info_window here.

	* app/gui/dialogs-constructors.c (dialogs_indexed_palette_new): call
	gimp_dockable_set_context() like all other constructors.

	* app/undo.c
	* app/paint/gimppaintcore.h: some more include cleanup.
2002-05-05 19:17:41 +00:00
Michael Natterer a74a8997b4 devel-docs/Makefile.am new file documenting the core's include policy.
2002-05-03  Michael Natterer  <mitch@gimp.org>

	* devel-docs/Makefile.am
	* devel-docs/includes.txt: new file documenting the core's
	include policy.

	* HACKING: mention it here.

	* libgimptool/gimptooltypes.h: removed GimpToolOptions here.

	* app/core/core-types.h: and added it here. This is a temp hack
	needed because GimpToolInfo needs to know the GimpToolOptions
	type.

	* libgimpproxy/gimpproxytypes.h: regenerated.

	* libgimptool/gimptoolmodule.h: don't include gimptooltypes.h here...
	* libgimptool/gimptoolmodule.c: ...but here.

	* app/config/gimpconfig-params.c: include "libgimpbase/gimpbase.h"
	entirely, not single files from it.

	* app/core/gimp.c
	* app/core/gimpcontext.c
	* app/core/gimpcoreconfig.c
	* app/core/gimpdatafactory.c
	* app/core/gimpdocuments.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpdrawable.c
	* app/core/gimpedit.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-guides.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage-qmask.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage.c
	* app/core/gimpitem.c
	* app/core/gimpmodules.c
	* app/core/gimppaintinfo.c
	* app/core/gimpparasite.c
	* app/core/gimppreviewcache.c
	* app/core/gimptoolinfo.c
	* app/core/gimpunit.c: include "core-types.h" and no other types file.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.c: include "tools/tools-types.h"
	instead of "libgimptool/gimptooltypes.h", warn about inclusion
	on "gui/gui-types.h"

	* app/file/file-open.c
	* app/file/file-save.c: don't include "libgimptool/gimptooltypes.h".

	* app/gui/about-dialog.c
	* app/gui/brush-select.c
	* app/gui/brushes-commands.c
	* app/gui/color-select.c
	* app/gui/data-commands.c
	* app/gui/device-status-dialog.c
	* app/gui/dialogs.c
	* app/gui/gradients-commands.c
	* app/gui/help-commands.c
	* app/gui/info-window.c
	* app/gui/palettes-commands.c
	* app/gui/patterns-commands.c
	* app/gui/resize-dialog.c
	* app/gui/tips-dialog.c
	* app/gui/tool-options-dialog.c: include "gui-types.h" and no
	other types file.

	* app/paint/gimpairbrush.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/paint/gimppaintcore-stroke.c
	* app/paint/gimppaintcore.c
	* app/paint/gimppaintoptions.c
	* app/paint/gimppencil.c
	* app/paint/gimpsmudge.c
	* app/paint/paint.c: include "paint-types.h" and no other types file.

	* app/pdb/pdb-types.h: don't include "libgimptool/gimptooltypes.h".

	* app/plug-in/plug-in-progress.c: warn about inclusion of
	"display/display-types.h"

	* app/tools/tools-types.h: include "libgimptool/gimptooltypes.h".

	* app/tools/gimpairbrushtool.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpdrawtool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptoolcontrol.c
	* app/tools/gimptoolcontrol.h
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/tools/tools.c: include "tools-types.h" and no other types file,
	warn about inclusion of "gui/gui-types.h".

	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimptoolbox-color-area.c: warn about inclusion of
	"gui/gui-types.h".

	* app/xcf/xcf-load.c
	* app/xcf/xcf.c: don't include "libgimptool/gimptooltypes.h".

	Split tool-safe-mode up in two files, one including libgimpproxy,
	one libgimp.

	* plug-ins/tools/Makefile.am
	* plug-ins/tools/tool-safe-mode-plug-in.[ch]: new files including
	libgimp/ stuff only.

	* plug-ins/tools/tool-safe-mode.[ch]: include libgimpproxy/ and
	libgimptool/ but don't include libgimp/ because of conflicting
	declarations.

	Unrelated:

	* app/tools/gimpclonetool.c: create the clone core so we don't crash.

	* app/gui/file-open-dialog.c: changed the way we create previews
	so that only out-of-date previews are created on a click in the
	preview area. Unconditional creation can still be forced by
	<Ctrl>+click. Changed the tooltip to document this.
2002-05-03 12:45:22 +00:00
Nate Summers 810b983110 app/tools/gimptoolcontrol.[ch] resurrected the motion hints and cursor
* app/tools/gimptoolcontrol.[ch]
 	* libgimptool/gimptool.c: resurrected the motion hints and cursor
 	changing code.

 	app/tools/gimpairbrushtool.c
	app/tools/gimpbezierselecttool.c
 	app/tools/gimpblendtool.c
 	app/tools/gimpbucketfilltool.c
 	app/tools/gimpbycolorselecttool.c
 	app/tools/gimpclonetool.c
 	app/tools/gimpcolorbalancetool.c
 	app/tools/gimpcolorpickertool.c
 	app/tools/gimpconvolvetool.c
 	app/tools/gimpcroptool.c
 	app/tools/gimpcurvestool.c
 	app/tools/gimpdodgeburntool.c
 	app/tools/gimpeditselectiontool.c
 	app/tools/gimpellipseselecttool.c
 	app/tools/gimperasertool.c
 	app/tools/gimpfliptool.c
 	app/tools/gimpfuzzyselecttool.c
 	app/tools/gimphistogramtool.c
 	app/tools/gimphuesaturationtool.c
 	app/tools/gimpimagemaptool.c
 	app/tools/gimpinktool.c
 	app/tools/gimpiscissorstool.c
 	app/tools/gimplevelstool.c
 	app/tools/gimpmagnifytool.c
 	app/tools/gimpmeasuretool.c
 	app/tools/gimpmovetool.c
 	app/tools/gimppaintbrushtool.c
 	app/tools/gimppainttool.c
 	app/tools/gimppathtool.c
 	app/tools/gimppenciltool.c
 	app/tools/gimpperspectivetool.c
 	app/tools/gimprectselecttool.c
 	app/tools/gimprotatetool.c
 	app/tools/gimpscaletool.c
 	app/tools/gimpselectiontool.c
 	app/tools/gimpsheartool.c
 	app/tools/gimpsmudgetool.c
 	app/tools/gimptexttool.c
 	app/tools/gimptransformtool.c
 	app/tools/gimpvectortool.c: set the motion mode; fix a few parameters

 	* app/tools/gimpinktool.c (gimp_ink_tool_button_press): uncommented
 	some code I had temporarily commented out and didn't uncomment before
 	committing

 	* libgimptool/gimptoolcontrol.h
 	* app/tools/gimptoolcontrol-displayshell.[ch]: merged with
 	gimptoolcontrol.[ch].  The distinction was fairly arbitrary.

 	* plug-ins/tools/gimptoolcontrol.c: added some stubs

        * app/tools/Makefile.am
 	* app/tools/tool_manager.c
 	* app/display/gimpdisplayshell-callbacks.c: changed accordingly

 	* libgimp/gimpimage_pdb.c: applied a patch from Pippen to correct
 	documentation on the undo operations
2002-04-21 07:31:12 +00:00
Nate Summers 69ccb4d370 massive tool plugin changes 2002-03-29 03:50:29 +00:00
Michael Natterer ffcb0bfa3f ./mitch --sanitize-identifier-namespace
2002-03-20  Michael Natterer  <mitch@gimp.org>

	./mitch --sanitize-identifier-namespace

	* app/core/gimpcontext.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/edit-commands.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/vectors-commands.c
	* app/gui/view-commands.c
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppathtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptoolbox.c: s/gimp:/gimp-/g and s/_/-/g for all
	identifier strings (e.g. gimp:eraser_tool -> gimp-eraser-tool,
	gimp:layer-list -> gimp-layer-list, ...)

	* plug-ins/tools/common/gimpbrushselecttool.c:
	s/gimp:brush_select_tool/gimp-brush-select-tool-module/

	Don't quite remember why I introduced the "gimp:" prefix in the
	first place, but we can always add it back if we need it (for
	whatever reason)

	You may want to edit your ~/.gimp-1.3/sessionrc and devicerc or
	all session settings will be lost due to parse errors.
2002-03-21 12:17:17 +00:00
Michael Natterer 3ff5cee9fb added enum GimpMotionMode which can be one of { EXACT, HINT, COMPRESS }.
2002-03-19  Michael Natterer  <mitch@gimp.org>

	* app/tools/tools-types.h: added enum GimpMotionMode which can be
	one of { EXACT, HINT, COMPRESS }.

	* app/tools/gimptool.[ch]: removed tool->perfectmouse and added
	tool->motion_mode. Default to GIMP_MOTION_MODE_HINT.

	* app/tools/gimpinktool.c
	* app/tools/gimppainttool.c: set GIMP_MOTION_MODE_EXACT.

	* app/tools/gimpfuzzyselecttool.c: set GIMP_MOTION_MODE_COMPRESS.

	* app/tools/gimpeditselectiontool.[ch]: ditto. Removed
	gtkutil_compress_motion().

	* app/display/gimpdisplayshell-callbacks.c: look at
	active_tool->motion_mode and perform pointer grabbing and motion
	compression accordingly. Also, don't request motion hints from
	XInput devices because the wacom driver sends crap (fixes #6901).
	This change also brings hints and ordinary motions back in sync
	albeit compression, so IMHO it also fixes #68542 and #22375, but
	this needs further investigation.
2002-03-19 13:14:25 +00:00
Michael Natterer b879840890 g_strdup() the stock_id passed to gimp_tool_info_new() because the
2002-03-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.c: g_strdup() the stock_id passed to
	gimp_tool_info_new() because the caller's memory may disappear
	after registering the tool (tool modules).

	Made a GimpDock out of the toolbox:

	* app/gui/Makefile.am
	* app/gui/color-area.[ch]
	* app/gui/indicator-area.[ch]
	* app/gui/toolbox.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolbox-color-area.[ch]
	* app/widgets/gimptoolbox-indicator-area.[ch]
	* app/widgets/gimptoolbox.[ch]: ...and added here.

	* app/widgets/gimpdock.[ch]: don't set a minimal width. Added a
	"destroy_if_empty" boolean so we can prevent destruction of the
	toolbox if it's last dockable is removed. Added gimp_dock_construct()
	which is called from GimpImageDock and GimpToolbox.

	* app/widgets/gimpimagedock.[ch]: Default to not showing the image
	menu, set a minimal width here, misc. minor cleanup.

	* app/widgets/gimpdockbook.c: some more GIMP_IS_IMAGE_DOCK()
	checks, fixed dnd widget creation.

	* app/widgets/gimpdialogfactory.[ch]: changed
	gimp_dialog_factories_toggle() to take just the toolbox_factory as
	parameter. When restoring the session use the created dock's
	dialog factory to create dockables, not the the factory we
	created the dock from (for the toolbox).

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

	* app/gui/dialogs.[ch]: create an own dialog factory for the toolbox
	and set dialogs_toolbox_new() as it's new_dock_func.

	* app/gui/dialogs-constructors.[ch]: changed dialogs_toolbox_get()
	accordingly.

	* app/gui/dialogs-commands.[ch]: added dialogs_show_toolbox(), ckeck
	if a dock is really a GimpImageDock before casting.

	* app/gui/gui.c
	* app/gui/menus.c
	* app/widgets/gimppaletteeditor.c: changed accordingly.

	* app/gui/color-notebook.c
	* app/gui/color-select.c
	* app/gui/colormap-dialog.c
	* app/gui/palette-editor-commands.c: removed useless inclusion of
	"gui/color-area.h".

	* themes/Default/gtkrc: set "gimp-dock-style" for GimpToolbox widgets.
2002-03-14 17:07:02 +00:00
Michael Natterer 744726d4c3 Sven Naumann <sven@gimp.org>
2002-02-28  Michael Natterer  <mitch@gimp.org>
            Sven Naumann  <sven@gimp.org>

	* configure.in
	* themes/Default/images/Makefile.am
	* themes/Default/images/preferences/Makefile.am: new directory
	for themeable preferences icons.

	* themes/Default/images/preferences/default-comment.png
	* themes/Default/images/preferences/display.png
	* themes/Default/images/preferences/environment.png
	* themes/Default/images/preferences/folders.png
	* themes/Default/images/preferences/help-system.png
	* themes/Default/images/preferences/image-windows.png
	* themes/Default/images/preferences/interface.png
	* themes/Default/images/preferences/monitor.png
	* themes/Default/images/preferences/new-image.png
	* themes/Default/images/preferences/session.png
	* themes/Default/images/preferences/tool-options.png: added some
	GPL icons from Jimmac's site (http://jimmac.musichall.cz/).

	* app/gui/gui.[ch]: added gui_themes_get_theme_dir() so we can find
	icons which are loaded on demand.

	* app/gui/preferences-dialog.c: added the icons to the tree and
	the notebook page headers. Cleaned up and reduced the code a lot
	by adding utility functions prefs_table_new() and
	prefs_check_button_new().

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-callbacks.[ch]: added a "Default"
	menu entry to the display's color button context menu so we can
	reset the padding color to the theme's bg color.
2002-02-28 13:47:03 +00:00
Michael Natterer 758de05b72 made the gimp_object_get_memsize() debugging output configurable by a
2002-02-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpobject.c: made the gimp_object_get_memsize()
	debugging output configurable by a global "gimp_debug_memsize"
	boolean.

	* app/display/gimpdisplay.c: removed duplicated prototype.

	* app/display/gimpdisplayshell.[ch]: renamed the various cursor
	functions to be more consistent and shorter. Compress window title
	updates by adding a "gboolean title_dirty" and updating the title
	in gimp_display_shell_flush().  Added "%m" (memory size) to the
	possible title string substitutions.

	* app/display/gimpdisplay-foreach.c
	* app/display/gimpdisplayshell-handlers.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimptool.c: changed accordingly.

	* app/display/gimpdisplayshell-callbacks.c: forgot to grab the
	pointer when dragging guides from the rulers. Coincidentially,
	this also fixes the buggy offset between guide and mouse
	pointer...
	Cleaned up the main tool event callback a but more.

	* app/widgets/gimppreview.c
	* app/gui/commands.c: set the new global "gimp_debug_memsize"
	toggle to TRUE while calling gimp_object_get_memsize().

	* app/gui/preferences-dialog.c: added a image title example
	containing the new "%m" feature.

	* docs/gimprc-1.3.5.in: document "%m" in the manpage.

	* app/tools/gimpbezierselecttool.c: reordered some statements.

	* app/tools/gimpdrawtool.[ch]: store the GimpDisplay passed to
	gimp_draw_tool_start() in draw_tool->gdisp and use it for
	coordinate transfomration. This way we can paint on a display
	which is not tool->gdisp.

	* app/tools/gimppainttool.c: changed the gimp_draw_tool_foo()
	calls needed to make the straight_line preview work in a way
	that does not interfere with paint_tool subclasses which want
	to do their own drawing (like the clone tool).

	Also changed the paint_tools PRETRACE_PAINT and POSTTRACE_PAINT
	flags usage in a way that subclasses can use them without major
	hackery: don't simply wrap gimp_display_flush_now() with
	PRETRACE/POSTTRACE calls, but wrap the actual painting calls, so
	subclasses are able to do useful things with paint_tool->*_coords.

	* app/tools/gimpclonetool.c: removed poking around in draw_tool
	internals and simply suspend()/resume() it in
	PRETRACE_PAINT/POSTTRACE_PAINT to get the clone_src indicator
	drawn correctly.
2002-02-07 11:33:01 +00:00
Michael Natterer 967d3e4ef1 Removed pointer grabbing from all tools:
2002-02-05  Michael Natterer  <mitch@gimp.org>

	Removed pointer grabbing from all tools:

	* app/tools/gimptool.[ch]: added "gboolean perfectmouse" which
	defaults to FALSE but can be set to TRUE in a tool's instance_init
	function.

	* app/display/gimpdisplayshell-callbacks.c: look at
	active_tool->perfectmouse and gimprc.perfectmouse and do the
	pointer grab/ungrab here. The pointer is now grabbed right before
	dispatching the button_press to the tool and ungrabbed after
	the tool's button_release has returned. It is also grabbed
	*always*, not only if tool->state got ACTIVE by button_press,
	which makes it all much simpler...

	* 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/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c: removed
	gdk_pointer_grab()/ungrab() calls all over the place. Also removed
	inclusion of "display/gimpdisplayshell.h" from most of them.
2002-02-05 11:35:03 +00:00
Michael Natterer 0440bbbf5a app/display/Makefile.am app/display/display-types.h new widget derived
2002-02-03  Michael Natterer  <mitch@gimp.org>

	* app/display/Makefile.am
	* app/display/display-types.h
	* app/display/gimpstatusbar.[ch]: new widget derived from
	GtkStatusbar.  Contains the coordinates display, a progress bar
	which is also used for status message display and a cancel button.
	Added a simplified API for pushing/popping messages which takes a
	string as context_id and does the conversion to guint internally
	on each call.

	* app/display/gimpdisplayshell.[ch]: removed the status bar code.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-scale.c
	* app/gui/view-commands.c
	* app/gimpprogress.c: changed accordingly.

	Removed knowledge about GimpDisplayShell from tools:

	* app/tools/gimptool.[ch]: added gimp_tool_push_status() and
	gimp_tool_pop_status() so tools don't need to fiddle with
	display details.

	* app/tools/gimpdrawtool.[ch]: pass a GimpDisplay instead of
	a GdkWindow to gimp_draw_tool_start() (the window passed was
	always gdisp->shell->canvas->window).

	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpblendtool.[ch]
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.[ch]
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.[ch]
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.[ch]
	* app/tools/gimppathtool.c
	* app/tools/gimprectselecttool.[ch]
	* app/tools/gimptransformtool.c: changed accordingly:

	- pass GimpDisplay to gimp_draw_tool_start().
	- use GimpTool's new status push/pop functions.
	- removed the statusbar context_id from all tool structs.

	* app/gui/dialogs-constructors.[ch]: a bit cleanup in preparation
	of dockable editor dialogs.
2002-02-03 12:10:23 +00:00
Michael Natterer 9dd403f7b2 CPPFLAGS: added -DGTK_DISABLE_DEPRECATED
2002-01-25  Michael Natterer  <mitch@gimp.org>

	* configure.in: CPPFLAGS: added -DGTK_DISABLE_DEPRECATED

	* libgimpwidgets/gimpdialog.c: still use the deprecated
	gtk_window_set_policy() but spit out a #warning.

	* app/widgets/widgets-types.h
	* app/widgets/gimpitemfactory.[ch]: made it a GtkItemFactory
	subclass. This way we can reproduce the effect of
	gtk_item_factory_get_from_path() which is deprectated for good
	reasons.  For GIMP, using it its perfectly OK since we only have
	one item factory per "<prefix>".

	* app/widgets/gimpbrushfactoryview.[ch]
	* app/widgets/gimpbufferview.[ch]
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpdialogfactory.[ch]
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockbook.c
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimpdrawablelistview.[ch]
	* app/widgets/gimppreview.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: pass around GimpItemFactory
	pointers instead of "const gchar *" item factory identifiers.
	Replaced gtk_window_set_policy() by gtk_window_set_resizable()
	and other recommended stuff.

	* app/gui/about-dialog.c
	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gradient-editor.c
	* app/gui/menus.c
	* app/gui/offset-dialog.c
	* app/gui/splash.c
	* app/gui/tips-dialog.c
	* app/gui/toolbox.c: lots of
	s/gtk_item_factory_from_path/gimp_item_factory_from_path/,
	gtk_window_set_policy() replacements, misc fixes.

	* plug-ins/gdyntext/charmap_window.c
	* plug-ins/gdyntext/gdyntext_ui.c
	* plug-ins/gdyntext/message_window.c
	* plug-ins/imagemap/imap_main.c: replaced gtk_window_set_policy().
2002-01-25 18:34:33 +00:00
Michael Natterer bcd208d9f4 app/Makefile.am removed, chopped...
2001-12-07  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/devices.[ch]: removed, chopped...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/gui/Makefile.am

	* app/widgets/gimpdeviceinfo.[ch]
	* app/widgets/gimpdevices.[ch]
	* app/gui/device-status-dialog.[ch]
	* app/gui/input-dialog.[ch]: ...and added here.

	Made GimpToolInfo a GimpContext subclass. Create a GimpDeviceManager
	struct in gimpdevices.c and attach it to the Gimp instance.

	* app/core/gimp.[ch]: removed gimp_create_context(). It was a bad
	idea in the first place beause it prevented GimpContext subclasses
	from being be properly registered with their Gimp instance.

	* app/core/gimpcontext.c: moved the stuff which used to be in
	gimp_create_context() back here. Added a "gimp" property which
	must be set on construction. Added a "dispose" implementation
	which removes the context from it's Gimp's context_list.

	* app/gimprc.c
	* app/core/gimptoolinfo.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/brush-select.c
	* app/gui/dialogs-constructors.c
	* app/gui/gradient-editor.c
	* app/gui/gradient-select.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/palette-editor.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/gui/toolbox.c
	* app/tools/gimppainttool.c
	* app/tools/tool_manager.c
	* app/widgets/gimpimagedock.c: changed accordingly.

	* app/gui/tools-commands.[ch]: made all callback signatures
	the same.

	* app/gui/preferences-dialog.c: cleaned up the
	display_format_string GtkCombo code.
2001-12-07 17:39:51 +00:00
Michael Natterer f77c7ade89 app/main.c moved "message_handler" from here...
2001-12-01  Michael Natterer  <mitch@gimp.org>

	* app/main.c
	* app/appenv.h: moved "message_handler" from here...

	* app/core/gimp.[ch]: ...to here. Added gimp_message() and a
	"gui_message_func" pointer...

	* app/gui/gui.c: ...which gets set here to gui_message().

	* app/errors.c: don't include any gui stuff but simply call
	gimp_message().

	* app/app_procs.c: don't set "message_handler" here, it's done in
	gui.c now.

	* app/gui/error-console-dialog.[ch]: use gimp->message_handler.

	* app/gui/dialogs-constructors.c: pass a Gimp pointer to
	error_console_create().

	* app/widgets/gimpwidgets-utils.[ch]: made the "message" parameter
	of gimp_message_box() a const gchar*, not just gchar*.

	* tools/pdbgen/pdb/message.pdb: use gimp->message_handler, don't
	include "appenv.h".

	* app/pdb/message_cmds.c: regenerated.

	* app/devices.[ch]: cleanup before chopping: removed global
	variable "current_device", added devices_get_current(), pass lots
	of Gimp pointers around.

	* app/gimprc.c: pass a Gimp pointer to devices_rc_update().

	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/toolbox.c
	* app/tools/gimppainttool.c: use devices_get_current(), pass Gimp
	pointers to all devices_foo() functions.

	* app/core/gimpimage-mask.c: no need to include "pdb/pdb-types.h".
2001-12-01 21:02:34 +00:00
Michael Natterer 57157b4041 app/display/Makefile.am removed. It was a wrapper around nothing since we
2001-11-30  Michael Natterer  <mitch@gimp.org>

	* app/display/Makefile.am
	* app/display/gximage.[ch]: removed. It was a wrapper around
	nothing since we use GdkRGB.

	* app/display/gimpdisplayshell-render.[ch]: added the render
	buf size defines here, added the #if 0'ed display filter stuff
	and the actual GdkRGB render stuff here too.

	* app/display/gimpdisplayshell.[ch]: added shell->render_buf as
	replacement for the global gximage buffer, renamed shell->scroll_gc
	to shell->render_gc and use it all over the place when rendering
	image data.

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

	* app/gui/gui.c: don't call gximage init/exit stuff.
2001-11-30 18:23:49 +00:00
Michael Natterer cacbd302e8 app/Makefile.am removed.
2001-11-30  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/colormaps.[ch]: removed.

	* app/app_procs.c: don't call it.

	* app/gui/gui.c: configure GdkRGB here.

	* app/display/gimpdisplayshell.c
	* app/display/gximage.c
	* app/gui/color-notebook.c
	* app/gui/color-select.c
	* app/gui/colormap-dialog.c
	* app/gui/info-window.c
	* app/gui/preferences-dialog.c
	* app/tools/gimpmovetool.c
	* app/display/gimpdisplayshell-selection.c: changed accordingly
	(simply removed the unneded include or use
	gdk_gc_set_rgb_[fg|bg]_color() instead).

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-callbacks.[ch]: chopped
	gimp_display_shell_canvas_events() in smaller callbacks. Only the
	events that trigger tool actions are handled in a single callback.
2001-11-30 16:39:40 +00:00
Michael Natterer bba8413773 app/core/Makefile.am new files: the QMask stuff stripped from GUI code.
2001-11-30  Michael Natterer  <mitch@gimp.org>

	* app/core/Makefile.am
	* app/core/gimpimage-qmask.[ch]: new files: the QMask stuff
	stripped from GUI code. Added gimp_image_qmask_invert().

	* app/core/gimpimage.[ch]: removed the QMask functions.

	* app/display/Makefile.am
	* app/display/gimpdisplayshell-qmask.[ch]: removed.

	* app/gui/Makefile.am
	* app/gui/qmask-commands.[ch]: new files for the new QMask item
	factory callbacks and the qmask query dialog.

	* app/gui/menus.c: added a context menu for the QMask button.

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-handlers.c: don't include the qmask
	stuff.

	* app/display/gimpdisplayshell-callbacks.[ch]: Moved the 2 qmask
	callbacks here. Don't popup the dialog on double_click. Show
	the contect menu on right-click.

	* app/display/gimpdisplayshell-callbacks.[ch]:
	gimp_display_shell_canvas_events(): removed the hack of
	conntecting "key_press_event" to gtk_true() while a tool is
	active. Instead, check for (event & GDK_BUTTON1_MASK) in the
	key_press and key_release handlers and stop signal emission. Save
	the modifier state on "button_press" and restore it after
	"button_release".

	Changed the way context menus are updated/shown:

	- removed GimpContainerContextFunc.
	- pass around item factory identifiers (e.g. "<Brushes>")
	- added voodoo to update the menus before showing them.

	* app/widgets/gimpitemfactory.[ch]: gimp_item_factory_new(): take
	a GimpItemFactoryUpdateFunc parameter, attach it as data to the
	factory and use it to update the menu in
	gimp_item_factory_popup_with_date().

	* app/widgets/gimpwidgets-utils.[ch]: removed
	gimp_item_factory_popup_with_data() here.

	* app/widgets/gimpbrushfactoryview.[ch]
	* app/widgets/gimpbufferview.[ch]
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimpdrawablelistview.[ch]: use item_factory
	identifier strings all over the place.

	* app/widgets/gimpdockbook.c: removed the menu update code, it's
	now in gui/dialogs-commands.c.

	* app/gui/brushes-commands.[ch]
	* app/gui/buffers-commands.[c]
	* app/gui/channels-commands.[ch]
	* app/gui/dialogs-commands.[ch]
	* app/gui/documents-commands.[ch]
	* app/gui/gradient-editor-commands.[ch]
	* app/gui/gradients-commands.[ch]
	* app/gui/layers-commands.[ch]
	* app/gui/palettes-commands.[ch]
	* app/gui/patterns-commands.[ch]: removed all show_context_menu()
	functions and made the update functions public. Changed all
	update functions to use the gimp_item_factory_set_foo() methods
	instead of gimp_menu_item_set_foo().

	* app/gui/menus.c: pass the update functions to the
	gimp_item_factory_new().

	* app/gui/dialogs-constructors.c: pass item factory identifiers to
	all view constructors.

	* app/gui/gradient-editor.c: show the context menu using the new
	method.

	* app/gui/toolbox.c: no need to include "dialogs-commands.h".
2001-11-30 14:41:56 +00:00