Commit Graph

140 Commits

Author SHA1 Message Date
Michael Natterer 7d08450cbc Really fix bug #150593:
2005-09-12  Michael Natterer  <mitch@gimp.org>

	Really fix bug #150593:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpdockseparator.[ch]: new widget implementing the
	droppable separator bar in docks.

	* app/widgets/gimpdock.c: use it and removed local separator
	utility functions.

	* app/widgets/gimptoolbox.c: use GimpDockSeparator API to show/hide
	the label. Expand the separator initially.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: the separator height style property moved
	from GimpDock to GimpDockSeparator.
2005-09-12 17:48:40 +00:00
Michael Natterer 6dbac4fae1 app/paint/gimppencil.h app/paint/gimppenciloptions.h
2005-08-21  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppencil.h
	* app/paint/gimppenciloptions.h
	* app/widgets/widgets-types.h
	* app/widgets/gimptooldialog.h: don't simply typedef object
	instance structs which add no members as their parent instance
	structs. Give them their own instance structs.  Fixes gtk-doc
	confusion.
2005-08-21 17:28:18 +00:00
Michael Natterer c0a10c8303 app/widgets/Makefile.am app/widgets/widgets-types.h new widget which
2005-07-14  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppaletteview.[ch]: new widget which manages the
	selected palette entry itself and emits "selected", "activated"
	and "context" signals. Not used yet.

	* app/widgets/gimpviewrendererpalette.[ch]: reimplemented palette
	drawing: added optional grid drawing and APIs to configure the
	renderer. Should be ready for the palette editor now.
2005-07-14 14:41:29 +00:00
Michael Natterer 98dc0a67b7 app/widgets/Makefile.am app/widgets/widgets-types.h new view renderer,
2005-07-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpviewrendererpalette.[ch]: new view renderer,
	does nothing yet except chaining up in ::render().

	* app/widgets/gimpviewrenderer-utils.c
	(gimp_view_renderer_type_by_viewable_type): use it for palettes.
2005-07-13 20:11:24 +00:00
Sven Neumann a8318e18c5 added utility functions to copy and to free a dash pattern.
2005-05-21  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdashpattern.[ch]: added utility functions to copy
	and to free a dash pattern.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcellrendererdashes.[ch]: added a simple cell
	renderer to visualize a dash pattern.

	* app/widgets/gimpstrokeeditor.c: show previews of the dash
	presets in the combo-box.
2005-05-21 20:24:42 +00:00
Michael Natterer 1f1305c372 Some dock refactoring which separates the docking logic from active image
2005-05-11  Michael Natterer  <mitch@gimp.org>

	Some dock refactoring which separates the docking logic from
	active image and UI manager stuff:

	* app/widgets/gimpmenudock.[ch]: new widget renamed from
	GimpImageDock, zero changes except the name change.

	* app/widgets/gimpimagedock.[ch]: new widget derived from
	GimpDock. Keeps the UI manager.

	* app/widgets/gimpdock.[ch]: removed the UI manager. GimpDock only
	contains the basic docking logic again.

	* app/widgets/gimpmenudock.[ch]
	* app/widgets/gimptoolbox.[ch]: derive them from GimpImageDock.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/actions/dialogs-commands.c
	* app/actions/dock-actions.c
	* app/actions/dock-commands.c
	* app/actions/dockable-commands.c
	* app/dialogs/dialogs-constructors.c: changed accordingly.
2005-05-11 20:26:12 +00:00
Michael Natterer 92ad7c1d53 app/widgets/Makefile.am app/widgets/widgets-types.h new widget which
2005-05-09  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollerlist.[ch]: new widget which allows
	adding/removing controllers using two lists of available/active
	controllers. Work in progress...

	* app/widgets/gimpcontrollerinfo.[ch]: derive it from GimpVieable
	so it can have an icon (unfinished). Added convenience constructor
	gimp_controller_info_new().

	* app/dialogs/preferences-dialog.c: use a GimpControllerList
	instead of a notebook of GimpControllerEditors.
2005-05-09 09:35:41 +00:00
Michael Natterer dba31b149c More unfinished replacement for the info window:
2005-04-05  Michael Natterer  <mitch@gimp.org>

	More unfinished replacement for the info window:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpimagepropview.[ch]: new widget showing an image's
	size, resolution, mode, memsize etc.

	* app/dialogs/Makefile.am
	* app/dialogs/image-properties-dialog.[ch]: a dialog keeping the
	widget.

	* app/widgets/gimphelp-ids.h: a help ID for the dialog.

	* app/actions/image-actions.c
	* app/actions/image-commands.[ch]
	* menus/image-menu.xml.in: action and menu entry for the dialog.
2005-04-04 22:34:29 +00:00
Michael Natterer 0231374c86 added new signals "sample-point-added" and "sample-point-removed" and
2005-04-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.[ch]: added new signals "sample-point-added"
	and "sample-point-removed" and public functions to emit them.

	* app/core/gimpimage-sample-points.c (gimp_image_add_sample_point)
	(gimp_image_remove_sample_point): emit them accordingly.

	* app/core/gimpimage-undo-push.c (undo_pop_image_sample_point):
	ditto.

	(undo_pop_image_guide)
	(undo_pop_image_sample_point): added comments why we add/remove
	stuff manually instead of using the GimpImage APIs.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcursorview.[ch]
	* app/widgets/gimpsamplepointeditor.[ch]: new widgets.
	GimpCursorView is a replacement for the info window's "Cursor"
	page, GimpSamplePointEditor is a view on an image's sample points.
	The sample point editor does nothing yet except keeping a 2x2 grid
	of GimpColorFrames. Addresses bug #137776.

	* app/dialogs/dialogs.c
	* app/dialogs/dialogs-constructors.[ch]: register the new widgets
	as dockable dialogs.

	* app/actions/dialogs-actions.c (dialogs_dockable_actions)
	* menus/dialogs-menuitems.xml: added actions and menu items for
	the new dialogs.

	* app/display/gimpdisplayshell-cursor.c
	(gimp_display_shell_update_cursor)
	(gimp_display_shell_clear_cursor): update the new cursor view.

	* app/widgets/gimphelp-ids.h: help IDs for the new dialogs.

	* app/widgets/widgets-enums.[ch] (enum GimpColorFrameMode):
	changed description "Pixel values" to "Pixel" because the former
	was too long.
2005-04-03 15:48:03 +00:00
Sven Neumann 3ba107f1f9 app/widgets/Makefile.am app/widgets/gimpfgbgview.[ch] added new widget
2005-03-31  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimpfgbgview.[ch]
	* app/widgets/widgets-types.h: added new widget GimpFgBgView;
	somewhat similar to GimpFgBgEditor but a lot simpler.

	* app/widgets/gimpcoloreditor.c: use GimpFgBgView as preview widget.
	Closes bug #168592.

	* app/widgets/gimpfgbgeditor.c: gracefully handle a very small
	size allocation.
2005-03-31 13:39:18 +00:00
Sven Neumann 3069695265 app/widgets/Makefile.am app/widgets/widgets-types.h
2005-01-21  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenumcombobox.[ch]
	* app/widgets/gimpenumstore.[ch]: moved GimpEnumStore and
	GimpEnumComboBox from here ...

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.def
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpenumcombobox.[ch]
	* libgimpwidgets/gimpenumstore.[ch]: ... to libgimpwidgets.

	* app/dialogs/convert-dialog.c
	* app/dialogs/scale-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpstrokeeditor.c
	* data/images/gimp-splash.png: changed includes accordingly.
2005-01-21 22:59:51 +00:00
Michael Natterer ea1b88f580 app/widgets/Makefile.am app/widgets/widgets-types.h new widget built from
2004-10-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollereditor.[ch]: new widget built from
	preliminary code from the prefs dialog. Prerequisite for finally
	fixing bug #106920.

	* app/dialogs/preferences-dialog.c: use the new widget.
2004-10-26 12:26:47 +00:00
Sven Neumann 8300c550e3 app/widgets/Makefile.am app/widgets/widgets-types.h added a simple message
2004-10-13  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpmessagedialog.[ch]: added a simple message
	dialog to avoid code duplication.

	* app/widgets/gimpmessagebox.c: set the border width to 12 pixels.

	* app/dialogs/file-save-dialog.c
	* app/dialogs/quit-dialog.c
	* app/display/gimpdisplayshell-close.c
	* app/widgets/gimperrordialog.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpactionview.c: use the new GimpMessageDialog.
2004-10-13 14:35:28 +00:00
Sven Neumann 22a1384b5a app/widgets/Makefile.am app/widgets/widgets-types.h added new widget
2004-10-12  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpsizebox.[ch]: added new widget GimpSizeBox.

	* app/widgets/gimppropwidgets.c: the order of setting the X and Y
	properties does matter.

	* app/dialogs/Makefile.am
	* app/dialogs/scale-dialog.[ch]: added first version of a new
	Scale dialog in an attempt to address bug #151022.

	* app/actions/layers-commands.c: use the new scale dialog.
2004-10-12 14:59:14 +00:00
Michael Natterer 96a27b59cf app/actions/brushes-actions.c app/actions/gradients-actions.c
2004-09-27  Michael Natterer  <mitch@gimp.org>

	* app/actions/brushes-actions.c
	* app/actions/gradients-actions.c
	* app/actions/palettes-actions.c
	* app/actions/patterns-actions.c: made the "foo-edit" actions
	GimpStringActions and pass the identifier of the editor dialog
	to the callback.

	* app/actions/data-commands.[ch] (data_edit_data_cmd_callback):
	show the editor dialog here instead of calling view->edit_func().

	* app/dialogs/dialogs-constructors.[ch]: removed the brush,
	gradient and palette edit_funcs.

	* app/widgets/widgets-types.h: removed typedef GimpDataEditFunc.

	* app/widgets/gimpdatafactoryview.[ch]: removed the edit_func
	member and parameters and create the edit button unconditionally.

	* app/widgets/gimpbrushfactoryview.[ch]
	* app/widgets/gimppatternfactoryview.[ch]: changed accordingly.

	* app/widgets/Makefile.am
	* app/widgets/gimpdataselect.[ch]: removed this class, it's not
	needed any longer.

	* app/widgets/gimpbrushselect.[ch]
	* app/widgets/gimpgradientselect.[ch]
	* app/widgets/gimppaletteselect.[ch]
	* app/widgets/gimppatternselect.[ch]: derive them from GimpPdbDialog
	and follow the edit_func removal.

	* app/gui/gui-vtable.c (gui_pdb_dialog_new): removed edit_func
	stuff.

	* app/widgets/gimpcontainereditor.c: minor unrelated cleanup.
2004-09-27 10:45:49 +00:00
Michael Natterer ee5354e4b7 app/dialogs/Makefile.am removed...
2004-09-23  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/Makefile.am
	* app/dialogs/color-dialog.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcolordialog.[ch]: ...and added as widget.

	* app/core/gimpmarshal.list: new marshaller VOID__BOXED_ENUM.

	* app/widgets/widgets-enums.[ch]: new enum GimpColorDialogState.

	* app/widgets/gimpcolormapeditor.[ch]
	* app/widgets/gimpcolorpanel.[ch]
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimptoolbox-color-area.c
	* app/actions/gradient-editor-commands.c
	* app/actions/view-commands.c: ported to GimpColorDialog. Removes
	a whole bunch of ugly widgets/ -> dialogs/ dependencies.
2004-09-23 20:41:40 +00:00
Michael Natterer c450ca1858 app/widgets/Makefile.am app/widgets/widgets-types.h added a view renderer
2004-09-14  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpviewrendererbuffer.[ch]: added a view renderer
	which knows how to preserve a GimpBuffer's aspect ratio if the
	view's aspect ratio is different.

	* app/widgets/gimpviewrenderer-utils.c
	(gimp_view_renderer_type_from_viewable_type): use it for viewables
	of type GimpBuffer. Fixes bug #152531
2004-09-14 12:06:28 +00:00
David Odin ec4cc4f897 app/widgets/gimpnavigationpreview.c renamed these files to ...
* app/widgets/gimpnavigationpreview.c
* app/widgets/gimpnavigationpreview.h: renamed these files to ...

* app/widgets/gimpnavigationview.c
* app/widgets/gimpnavigationview.h: to these.
  And renamed the GimpNavigationPreview type to GimpNavigationView.

Hopefully, this is the last change in file names for the Preview->View
renaming process.

* app/display/gimpnavigationeditor.c

* app/widgets/Makefile.am
* app/widgets/widgets-types.h: Changed accordingly.
2004-08-27 00:42:46 +00:00
David Odin 1622243213 app/widgets/gimppreviewrenderer-utils.c
* app/widgets/gimppreviewrenderer-utils.c
* app/widgets/gimppreviewrenderer-utils.h
* app/widgets/gimppreviewrendererbrush.c
* app/widgets/gimppreviewrendererbrush.h
* app/widgets/gimppreviewrendererdrawable.c
* app/widgets/gimppreviewrendererdrawable.h
* app/widgets/gimppreviewrenderergradient.c
* app/widgets/gimppreviewrenderergradient.h
* app/widgets/gimppreviewrendererimage.c
* app/widgets/gimppreviewrendererimage.h
* app/widgets/gimppreviewrendererimagefile.c
* app/widgets/gimppreviewrendererimagefile.h
* app/widgets/gimppreviewrendererlayer.c
* app/widgets/gimppreviewrendererlayer.h
* app/widgets/gimppreviewrenderervectors.c
* app/widgets/gimppreviewrenderervectors.h: Renamed all these files...

* app/widgets/gimpviewrenderer-utils.c
* app/widgets/gimpviewrenderer-utils.h
* app/widgets/gimpviewrendererbrush.c
* app/widgets/gimpviewrendererbrush.h
* app/widgets/gimpviewrendererdrawable.c
* app/widgets/gimpviewrendererdrawable.h
* app/widgets/gimpviewrenderergradient.c
* app/widgets/gimpviewrenderergradient.h
* app/widgets/gimpviewrendererimage.c
* app/widgets/gimpviewrendererimage.h
* app/widgets/gimpviewrendererimagefile.c
* app/widgets/gimpviewrendererimagefile.h
* app/widgets/gimpviewrendererlayer.c
* app/widgets/gimpviewrendererlayer.h
* app/widgets/gimpviewrenderervectors.c
* app/widgets/gimpviewrenderervectors.h: ... to these names. And also
  changed all the GimpPreviewRenderer* types to GimpViewRenderer* ones.

* app/tools/gimppaintoptions-gui.c

* app/widgets/Makefile.am
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpview.c
* app/widgets/widgets-types.h
* app/widgets/gimpviewrenderer.c
* app/widgets/gimpviewrenderer.h: modified accordingly.
2004-08-26 14:20:30 +00:00
David Odin e91187ae86 app/widgets/gimppreview-popup.c renamed these files...
* app/widgets/gimppreview-popup.c
* app/widgets/gimppreview-popup.h: renamed these files...

* app/widgets/gimpview-popup.c
* app/widgets/gimpview-popup.h: .. to these files, and changed the
  GimpPreviewPopup type to GimpViewPopup.

* app/widgets/gimppreviewrenderer.c
* app/widgets/gimppreviewrenderer.h: renamed these files...

* app/widgets/gimpviewrenderer.c
* app/widgets/gimpviewrenderer.h: .. to these files, and changed
  GimpPreviewRenderer to GimpViewRenderer.

This is the second step of the great Preview->View renaming process.

* app/display/gimpdisplayshell-layer-select.c
* app/display/gimpnavigationeditor.c

* app/widgets/Makefile.am
* app/widgets/gimpbrushfactoryview.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpcellrendererviewable.c
* app/widgets/gimpcellrendererviewable.h
* 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/gimpcontainerpopup.c
* app/widgets/gimpcontainertreeview-dnd.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimpcontainerview.c
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimpnavigationpreview.c
* app/widgets/gimppatternfactoryview.c
* app/widgets/gimppreviewrenderer-utils.c
* app/widgets/gimppreviewrendererbrush.c
* app/widgets/gimppreviewrendererbrush.h
* app/widgets/gimppreviewrendererdrawable.c
* app/widgets/gimppreviewrendererdrawable.h
* app/widgets/gimppreviewrenderergradient.c
* app/widgets/gimppreviewrenderergradient.h
* app/widgets/gimppreviewrendererimage.c
* app/widgets/gimppreviewrendererimage.h
* app/widgets/gimppreviewrendererimagefile.c
* app/widgets/gimppreviewrendererimagefile.h
* app/widgets/gimppreviewrendererlayer.c
* app/widgets/gimppreviewrenderervectors.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimptemplateview.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimptoolview.c
* app/widgets/gimpview.c
* app/widgets/gimpview.h
* app/widgets/gimpviewablebutton.c
* app/widgets/widgets-enums.h
* app/widgets/widgets-types.h: Modified accordingly.
2004-08-25 22:31:44 +00:00
Sven Neumann 80531ec936 added gimp_message_box_repeat().
2004-08-25  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpmessagebox.[ch]: added gimp_message_box_repeat().

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimperrordialog.[ch]: added new dialog that adds a new
	GimpMessageBox for each message added. Fixes bug #92604.

	* app/widgets/gimpwidgets-utils.[ch]: removed old gimp_message_box()
	functionality.

	* app/gui/gui.c (gui_abort): use a GimpMessageBox in a GimpDialog.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: manage GimpErrorDialog as singleton.

	* app/gui/gui-vtable.c (gui_message): use the new error dialog.

	* app/core/gimp-gui.c (gimp_message): substitue "GIMP" for a NULL
	domain.

	* app/widgets/gimperrorconsole.c (gimp_error_console_add): fail
	when being called with a NULL domain.
2004-08-25 17:58:52 +00:00
David Odin cddf61a3e6 app/widgets/gimppreview.c renamed these two files to...
* app/widgets/gimppreview.c
* app/widgets/gimppreview.h: renamed these two files to...

* app/widgets/gimpview.c
* app/widgets/gimpview.h: ... these files.

Also renamed GimpPreview to GimpView.
This is the first step of the great Preview->View renaming process.

* app/actions/palettes-commands.c

* app/display/gimpdisplayshell-layer-select.c
* app/display/gimpnavigationview.c

* app/gui/palette-import-dialog.c

* app/tools/gimppaintoptions-gui.c

* app/widgets/Makefile.am
* app/widgets/gimpaction.c
* app/widgets/gimpactiongroup.c
* app/widgets/gimpbrusheditor.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpcontainerbox.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainergridview.h
* app/widgets/gimpdevicestatus.c
* app/widgets/gimpdnd.c
* app/widgets/gimpdockbook.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpnavigationpreview.c
* app/widgets/gimpnavigationpreview.h
* app/widgets/gimppaletteeditor.c
* app/widgets/gimppreview-popup.c
* app/widgets/gimppropwidgets.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimpthumbbox.c
* app/widgets/gimptoolbox-image-area.c
* app/widgets/gimptoolbox-indicator-area.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimpviewabledialog.c
* app/widgets/widgets-types.h: changed accordingly.
2004-08-24 17:16:46 +00:00
Sven Neumann 578bd328e0 app/widgets/Makefile.am app/widgets/widgets-types.h added new widget
2004-08-24  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpmessagebox.[ch]: added new widget GimpMessageBox.

	* app/widgets/gimpwidgets-utils.c: use it for message dialogs.
2004-08-23 23:22:46 +00:00
Michael Natterer 06ea7dbd96 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkVBox subclass
2004-08-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpprogressbox.[ch]: new GtkVBox subclass featuring
	a label and a progressbar. Implements GimpProgressIterface.

	* app/widgets/gimpprogressdialog.[ch]: replaced label and progress
	by a GimpProgressBox. Delegate most progress functionality to it.

	* app/widgets/gimpwidgets-utils.[ch]: factored out utility
	function gimp_dialog_set_sensitive().

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_sensitive):
	use it.

	* app/gui/file-open-location-dialog.c (file_open_location_response):
	embed the called file procedure's progress using a GimpProgressBox.
2004-08-10 22:21:56 +00:00
Michael Natterer 02d2b990f5 Redid the whole internal progress stuff: don't pass around
2004-08-10  Michael Natterer  <mitch@gimp.org>

	Redid the whole internal progress stuff: don't pass around
	progress_callback and progress_data; instead, provide a
	pointer to a GimpProgressInterface which can be implemented
	by a variety of backends.

	Addresses (but not yet fixes) bugs #6010, #97266 and #135185.

	* app/display/Makefile.am
	* app/display/gimpprogress.[ch]: removed the old progress hack.

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpprogress.[ch]: implement GimpProgressInterface.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpprogressdialog.[ch]: the standalone progress
	dialog as widget implementing GimpProgressInterface.

	* app/display/gimpdisplay.c
	* app/display/gimpstatusbar.[ch]
	* app/widgets/gimpfiledialog.[ch]
	* app/widgets/gimpthumbbox.[ch]: added GimpProgressInterface
	implementation to these classes.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: replaced the old progress vtable entries
	by two new to create and destroy a GimpProgressDialog in case
	no other progress is available.

	* app/pdb/procedural_db.[ch]
	* app/plug-in/plug-in-run.[ch]
	* tools/pdbgen/app.pl: pass a GimpProgress to all PDB wrappers and
	all plug-ins.

	* app/plug-in/plug-in.[ch]
	* app/plug-in/plug-ins.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-progress.c: handle the case there the
	plug-in was crated with a progress as well as the case where it
	wasn't.

	* app/app_procs.c
	* app/batch.c
	* app/xcf/xcf.c
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/widgets/gimphelp.c
	* app/widgets/gimpbrushselect.c
	* app/widgets/gimpfontselect.c
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimppaletteselect.c
	* app/widgets/gimppatternselect.c: changed accordingly.

	* app/core/gimpimagefile.[ch]
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/file-open-dialog.c
	* app/gui/file-open-location-dialog.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c: pass a GimpProgress to all file
	related functions. Embed the progress in the file dialog where
	possible.

	* app/core/gimpdrawable-blend.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-convert.[ch]
	* app/core/gimpimage-flip.[ch]
	* app/core/gimpimage-resize.[ch]
	* app/core/gimpimage-rotate.[ch]
	* app/core/gimpimage-scale.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/vectors/gimpvectors.c: replaced callback/data by GimpProgress.

	* app/tools/gimpblendtool.c
	* app/tools/gimptransformtool.c
	* app/gui/convert-dialog.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/plug-in-commands.c
	* app/actions/vectors-commands.c
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb: changed callers accordingly.

	* app/pdb/*_cmds.c: regenerated.
2004-08-10 18:47:21 +00:00
Sven Neumann 50c962af54 themes/Default/images/Makefile.am removed ...
2004-08-04  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-brush-generated-*-16.png: removed ...

	* themes/Default/images/stock-shape-*-16.png: ... and added back
	with more generic names.

	* libgimpwidgets/gimpstock.[ch]
	* app/widgets/gimpbrusheditor.c: changed accordingly.

	* app/tools/gimpinkoptions-gui.c: use the new stock icons here as
	well.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpblobeditor.[ch]: added a simple blob shape
	editor widget factored out of app/tools/gimpinkoptions-gui.c.
2004-08-04 18:15:41 +00:00
Sven Neumann 744bebc83c app/widgets/Makefile.am moved to libgimpwidgets.
2004-07-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimpcellrenderertoggle.[ch]: moved to libgimpwidgets.

	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolview.c
	* app/widgets/widgets-types.h

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.def
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetsmarshal.list
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpcellrenderertoggle.[ch]: custom toggle cell
	renderer moved here from app/widgets.

	* libgimpwidgets/gimpcellrenderercolor.[ch]: unified code with the
	new toggle cell renderer.
2004-07-26 21:09:16 +00:00
Michael Natterer 62bf62a151 app/core/gimpmarshal.list app/widgets/Makefile.am
2004-07-21  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpmarshal.list
	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcellrendereraccel.[ch]: new cell renderer
	which displays an accelerator and allows to edit it (ripped
	out of libegg and modified).

	* app/widgets/gimpactionview.c: use the new renderer and connect
	to its "accel-edited" signal (its callback is one huge mess that
	needs to be cleaned up). Added ugly hack to work around GTK+ API
	limitation that seems to prevent implementing a shortcut editor in
	a sane way.

	* app/actions/file-actions.c
	* app/actions/image-actions.c
	* app/actions/tools-actions.c: added ugly hacks here, too.

	* app/gui/preferences-dialog.c: relaced Cancel/Ok in the shortcut
	editor by Close.
2004-07-21 00:39:46 +00:00
Michael Natterer 94fc8f15a1 app/widgets/gimpactionfactory.[ch] added "label" and "stock-id" properties
2004-07-20  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactionfactory.[ch]
	* app/widgets/gimpactiongroup.[ch]: added "label" and "stock-id"
	properties to GtkActionGroup and allow to register them in the
	GimpActionFactory.

	* app/actions/actions.c: register user visible labels and icons
	with all action groups.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactionview.[ch]: new widget which shows a
	treeview of action groups and their actions & shortcuts.

	* app/widgets/gimpaction.[ch]: added gimp_action_name_compare()
	utility function.

	* app/widgets/gimpwidgets-utils.[ch]: added
	gimp_get_accel_string() utility function.

	* app/widgets/gimpcontrollers.[ch]: added
	gimp_controllers_get_ui_manager() which will be used for setting
	up the controller mapping dialog.

	* app/gui/preferences-dialog.c: added a "Configure Keyboard
	Shortcuts" button which pops up a GimpControllerView. Work in
	progress...
2004-07-20 18:50:20 +00:00
Michael Natterer 28b3fd4a74 reordered and commented to match API docs.
2004-07-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h: reordered and commented to match
	API docs.
2004-07-19 12:08:37 +00:00
Sven Neumann ccf8ed69e7 app/widgets/Makefile.am app/widgets/widgets-types.h added new widget that
2004-07-16  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfileprocview.[ch]: added new widget that offers
	a treeview on file procedures.

	* app/widgets/gimpfiledialog.[ch]: replaced the file type option
	menu with the new GimpFileProcView widget.
	(gimp_file_dialog_set_image): reset the file type to Automatic
	(fixes bug #141535).

	* app/actions/file-commands.c
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]: changed accordingly.

	* plug-ins/common/bz2.c
	* plug-ins/common/gz.c: don't register "xcf.gz" and "xcf.bz2"
	extension. It's redundant and breaks the code that sets the
	extension from the selected file-type.

	* plug-ins/common/dicom.c: register a shorter menu label.

	* plug-ins/common/gbr.c
	* plug-ins/common/gih.c
	* plug-ins/common/pat.c
	* plug-ins/common/url.c: register stock icons.
2004-07-16 21:24:39 +00:00
Michael Natterer 8d9e362249 app/gui/Makefile.am app/gui/brush-select.[ch] app/gui/font-select.[ch]
2004-07-09  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/brush-select.[ch]
	* app/gui/font-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppdbdialog.[ch]
	* app/widgets/gimpdataselect.[ch]
	* app/widgets/gimpbrushselect.[ch]
	* app/widgets/gimpgradientselect.[ch]
	* app/widgets/gimppaletteselect.[ch]
	* app/widgets/gimppatternselect.[ch]
	* app/widgets/gimpfontselect.[ch]: ...and added here as a
	hierarchy of widgets.

	* app/widgets/gimpdatafactoryview.h: removed typdef
	GimpDataEditFunc, it's in widgets-types.h now.

	* app/gui/convert-dialog.c: changed accordingly.

	* app/core/gimp.[ch]: added vtable entries for creating, closing
	and setting PDB dialogs.

	* app/gui/gui-vtable.c: implement the vtable entries using the new
	widgets.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/pattern_select.pdb: use the new functions of
	the Gimp object to create / manage the selection dialogs. The
	generated files don't depend on GUI stuff any longer.

	* app/pdb/brush_select_cmds.c
	* app/pdb/font_select_cmds.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/palette_select_cmds.c
	* app/pdb/pattern_select_cmds.c: regenerated.
2004-07-09 19:14:59 +00:00
Michael Natterer 02b91f6628 app/tools/gimptool.[ch] added boolean return value to
2004-06-24  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]
	* app/tools/tool_manager.[ch]: added boolean return value to
	GimpTool::key_press() which indicates if the event was handled.

	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.[ch]
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: return TRUE if the key event was handled.

	* app/tools/gimppainttool.c: removed key_press() implementation.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollerkeyboard.[ch]: new controller class
	which takes GdkEventKey and emits controller events for all
	combinations of modifiers and cursor keys.

	* app/widgets/gimpcontrollers.[ch]: added new function
	gimp_controllers_get_keyboard().

	* app/display/gimpdisplayshell-callbacks.c: if a key event was not
	handled by the active tool, dispatch it to the keyboard controller.

	* etc/controllerrc: add a keyboard controller which is configured
	to do the same as the removed gimp_paint_tool_key_press().
2004-06-24 10:16:08 +00:00
Michael Natterer ba2e6c675f app/widgets/Makefile.am app/widgets/widgets-types.h made an object out of
2004-06-16  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollerinfo.[ch]: made an object out of
	the GimpControllerInfo struct.

	* app/widgets/gimpcontrollers.c: changed accordingly.
2004-06-16 11:11:32 +00:00
Michael Natterer d0117ef5b9 Started to fix bug #106920 in a more genreral way:
2004-06-16  Michael Natterer  <mitch@gimp.org>

	Started to fix bug #106920 in a more genreral way:

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpwidgetsmarshal.list
	* libgimpwidgets/gimpcontroller.[ch]: new abstract base class
	which provides an API for pluggable input controller modules
	(mouse wheel, usb/midi stuff etc.).

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollerwheel.[ch]: subclass of the above
	which maps wheel mouse scroll events to controller events.

	* app/widgets/gimpcontrollers.[ch]: manager for controllers.
	reads $(gimpdir)/controllerrc and keeps a mapping of controller
	events to GtkActions.

	* app/gui/gui.c: initialize and shut down the controller stuff.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): if a wheel controller
	exists, dispatch GdkEventScroll to it first and return if it was
	handled.
2004-06-15 22:59:26 +00:00
Sven Neumann 4c03f0156c app/widgets/Makefile.am app/widgets/widgets-types.h added new widget
2004-05-31  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerentry.[ch]: added new widget
	GimpContainerEntry, a GtkEntry with completion that implements the
	GimpContainerView interface.

	* app/tools/gimptextoptions.c (gimp_text_options_gui): added a
	GimpContainerEntry to select the font.
2004-05-31 17:53:25 +00:00
Michael Natterer 855eedf396 added enum GimpActiveColor which can be one of { FOREGROUND, BACKGROUND },
2004-05-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-enums.[ch]: added enum GimpActiveColor which
	can be one of { FOREGROUND, BACKGROUND },

	* app/widgets/Makefile.am
	* app/widgets/gimpfgbgeditor.[ch]: new widget implementing the
	FG/BG/Swap/Default color area known from the toolbox.

	* app/widgets/gimptoolbox-color-area.c: use the new widget.

	* app/widgets/gimpcoloreditor.[ch]: replaced the FG/BG buttons and
	the color area by a GimpFgBgEditor.
2004-05-27 12:41:22 +00:00
Michael Natterer 94010e8316 app/config/gimpconfigwriter.c app/core/gimpstrokeoptions.c
2004-05-24  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfigwriter.c
	* app/core/gimpstrokeoptions.c
	* app/widgets/gimpactiongroup.c
	* app/widgets/gimpcolorframe.h
	* app/widgets/gimpcolorpanel.h
	* app/widgets/gimpcontainerview.[ch]
	* app/widgets/gimptooldialog.h
	* app/widgets/gimpuimanager.c
	* app/widgets/widgets-types.h: fixed various small issues I
	stumbled across when updating the API reference for app/.
2004-05-24 14:51:15 +00:00
Michael Natterer 43cdd54dd1 reoedered to somehow reflect the class hierarchy.
2004-05-23  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h: reoedered to somehow reflect the
	class hierarchy.

	Some dockable context handling cleanup:

	* app/widgets/gimpdocked.[ch]: removed "prev_context" parameter
	from GimpDocked::set_context(). Widgets which need the old context
	to disconnect from should remember it themselves.

	* app/widgets/gimpdockable.c (gimp_dockable_set_context): don't
	pass the old context to gimp_docked_set_context().
	Some cleanup.

	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainereditor.c: changed accordingly.

	* app/display/gimpnavigationview.[ch]
	* app/widgets/gimpimageeditor.[ch]
	* app/widgets/gimpitemtreeview.[ch]: added a "context" member
	which holds the context set by GimpDocked::set_context().

	* app/widgets/gimpdrawabletreeview.c: use the view's context
	instead of gimp_get_user_context().

	* app/widgets/gimpcoloreditor.[ch]: removed separate API to
	set the context because it implements the GimpDockedInterface.

	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimperrorconsole.c: pass "menu-factory",
	"menu-identifier" and "ui-path" to g_object_new() instead of
	calling gimp_editor_create_menu() later.

	Action cleanup partly related to the context stuff above:

	* app/actions/actions.c (action_data_get_gimp): get the Gimp from
	context->gimp, not gimage->gimp because gimage may be NULL.

	(action_data_get_context): changed to use the new context members
	added above.

	* app/actions/channels-actions.c (channels_actions_update): cleanup.

	* app/actions/edit-actions.c (edit_actions_update): fixed
	sensitivity of "edit-undo-clear".

	* app/actions/vectors-actions.c (vectors_actions_update): make
	"vectors-merge-visible" sensitive only if there is more than one
	GimpVectors in the image.

	* app/actions/colormap-editor-actions.c
	* app/actions/gradient-editor-actions.c
	* app/actions/palette-editor-actions.c: added FG/BG color previews
	to actions which take colors from them. Changed code to be safe
	against "context" being NULL.

	* app/actions/drawable-commands.c:
	s/active_drawable/drawable/g. Makes the code more readable.

	* app/actions/select-commands.[ch]
	* app/actions/vectors-commands.[ch]: removed public stroke utility
	functions and other stuff which is not needed any more because
	dialog buttons invoke the correct actions now. Moved the
	functions' code to the resp. action callbacks.
2004-05-23 10:04:41 +00:00
Michael Natterer 2849cf23e5 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkAction subclass
2004-05-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpaction.[ch]: new GtkAction subclass which can
	show either a color or viewable preview in GtkImageMenuItem
	proxies.

	* app/widgets/gimpenumaction.[ch]
	* app/widgets/gimppluginaction.[ch]
	* app/widgets/gimpstringaction.[ch]: derive them from GimpAction.

	* app/widgets/gimpactiongroup.c (gimp_action_group_add_actions):
	add GimpActions, not GtkActions.

	(gimp_action_group_set_action_color)
	(gimp_action_group_set_action_viewable): removed all hacks and
	simply set the "color" or "viewable" properties of the GimpAction
	to change. Fixes color/viewable previews in menus.

	* app/actions/file-actions.c: show previews in the "Open Recent"
	menu items.

	Unrelated:

	* app/widgets/widgets-types.h: removed GimpDockedInterface typedef...

	* app/widgets/gimpdocked.h: ...and added it here. We don't have
	class struct typedefs in the types header either.

	* app/actions/edit-actions.c: added <Ctrl>+semicolon as shortcut
	for "edit-fill-pattern".

	* app/actions/gradient-editor-actions.c: added some stock IDs.
	Please comment.
2004-05-19 20:56:37 +00:00
Michael Natterer 2632cd8f64 app/actions/documents-actions.c app/actions/documents-commands.c
2004-05-12  Michael Natterer  <mitch@gimp.org>

	* app/actions/documents-actions.c
	* app/actions/documents-commands.c
	* app/actions/edit-actions.c
	* app/actions/edit-commands.[ch]
	* app/actions/layers-actions.c
	* app/actions/layers-commands.c
	* app/actions/select-actions.c
	* app/actions/select-commands.[ch]
	* app/actions/vectors-actions.c
	* app/actions/vectors-commands.[ch]: added tooltips for actions
	which are now used for dialog buttons, added callback
	implementations which formerly lived in various widgets, moved
	some actions around and did some general cleanups.

	* menus/image-menu.xml.in: s/edit-stroke/select-stroke/

	* menus/Makefile.am
	* menus/selection-editor-menu.xml: new popup menu.

	* app/menus/menus.c: register <SelectionEditor> and <UndoEditor>
	UI managers.

	* app/widgets/gimpeditor.[ch]: added construct properties
	"menu-factory", "menu-identifier", "ui-path" and "popup-data".
	Implement GObject::constructor() and create the UI manager
	if all needed properties were set. Enables creating action
	buttons at widget construction time because they need a
	UI manager.

	(gimp_editor_add_action_button): changed to take a va_list of
	"extended" actions which are invoked if the resp. button emits
	"extended_clicked". Store the actions and their modifier masks in
	a list attached to the button.

	* app/widgets/gimpcontainerview.c
	(gimp_container_view_item_selected): if the view has container
	*and* context, simply change the context and return.

	(gimp_container_view_context_changed): don't emit "select_item"
	manually but simply call gimp_container_view_select_item().

	(gimp_container_view_viewable_dropped): use
	gimp_container_view_item_selected() instead of changing the
	context directly.

	* app/widgets/gimpcontainereditor.c
	(gimp_container_editor_select_item): update the UI manager.

	* app/widgets/gimpdockable.c: don't try to fiddle with the
	dialog's menu if it doesn't have a ui_path (happens if the UI
	manager is just a collection of actions for the dialog buttons and
	has no menu registered).

	* app/widgets/gimpimageeditor.c: connect to the image's "flush"
	signal and update the UI manager in the callback.

	* app/widgets/gimpitemtreeview.c: use GimpEditor's construct
	properties to create the UI manager so GimpItemTreeView subclasses
	can have action buttons. Update the UI manager in
	gimp_item_tree_view_select_item().

	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptoolview.c: changed calls to
	gimp_editor_add_action_button() accordingly and removed some
	unneeded select_item() implementations.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpvectorstreeview.[ch]
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpselectioneditor.[ch]
	* app/widgets/gimpundoeditor.[ch]: use action buttons and removed
	lots of callbacks which went to the resp. action callbacks.

	* app/widgets/widgets-types.h: removed some now unneeded function
	prototypes.

	* app/gui/dialogs-constructors.c: changed (simplified) many dialog
	constructors accordingly.
2004-05-12 18:36:33 +00:00
Michael Natterer 8fbc7e2daf app/widgets/Makefile.am app/widgets/widgets-types.h
2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainermenu.[ch]
	* app/widgets/gimpcontainermenuimpl.[ch]
	* app/widgets/gimpmenuitem.[ch]: removed. Obsoleted by
	GimpContainerViewInterface implemented by GimpContainerComboBox.
2004-05-11 16:14:03 +00:00
Sven Neumann 5de9756f9a app/widgets/Makefile.am app/widgets/widgets-types.h added new widget,
2004-05-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainercombobox.[ch]: added new widget, almost
	finished.

	* app/widgets/gimpcontainerview.[ch]: added convenience functions
	to get and set the GimpContainerView properties.

	* app/widgets/gimpcontainerbox.c: use the convenience functions.

	* app/gui/file-new-dialog.c: use the new GimpContainerComboBox.

	* etc/templaterc: use "pixels" as the unit for pixel sized templates.
2004-05-11 12:13:31 +00:00
Michael Natterer 930b621b8c app/widgets/widgets-types.h made GimpContainerView an interface. Added
2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerview.[ch]: made GimpContainerView an
	interface. Added accessors for all members in the private struct
	and made it really private.

	* app/widgets/gimpcontainerbox.[ch]: derive it from GimpEditor and
	implement GimpContainerViewInterface and its properties.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcontainertreeview-dnd.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpvectorstreeview.c: implement
	GimpContainerViewInterface and use the new accessor functions.

	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpdocumentview.c: changed accordingly.

	* app/widgets/gimptemplateview.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpundoeditor.c
	* app/actions/palettes-commands.c: #include "gimpcontainerview.h"
2004-05-10 23:22:39 +00:00
Michael Natterer d8d2c84d39 Prepare for making an interface out of GimpContainerView:
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Prepare for making an interface out of GimpContainerView:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerbox.[ch]: new GimpContainerView
	subclass which implements GimpDocked interface and contains the
	vbox-with-scrolled-window stuff common to GimpContainerGridView
	and GimpContainerTreeView.

	* app/widgets/gimpcontainerview.[ch]: removed that functionality
	here.

	* app/widgets/gimpcontainergridview.[ch]
	* app/widgets/gimpcontainertreeview.[ch]: derive them from
	GimpContainerBox.

	* app/gui/brush-select.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/widgets/gimpcontainerpopup.c: changed accordingly.
2004-05-10 11:08:51 +00:00
Michael Natterer da0de0873f Started making the toolbox configurable. Addresses bug #105764. Not
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Started making the toolbox configurable.
	Addresses bug #105764. Not finished yet.

	* app/core/gimptoolinfo.[ch]: renamed "in_toolbox" to "visible"
	and made it a GObject property.

	* app/tools/gimp-tools.[ch]: added new function
	gimp_tools_get_default_order() which returns a GList of tool
	identifiers.

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: added actions & callbacks for
	toggling the "visible" boolean and for resetting all tools.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolview.[ch]: new widget which allows to
	toggle a tool's visibility and to reorder the tools.

	* app/widgets/gimptoolbox.[ch]: removed member "GtkWidget *trash"
	and pack all tool buttons into the same wrap box. Connect to
	"reoder" of the tool container and to "notify::visible" of all
	tool infos and update the toolbox accordingly.

	* app/gui/dialogs-constructors.c: create a GimpToolView for the
	tools list/grid.

	* app/menus/menus.c: register a <Tools> menu for the dialog above.

	* menus/Makefile.am
	* menus/tools-menu.xml: added the menu.
2004-05-10 00:41:57 +00:00
Sven Neumann ebdd4fb738 app/widgets/Makefile.am app/widgets/widgets-types.h
2004-05-08  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpunitcombobox.[ch]
	* app/widgets/gimpunitstore.[ch]: added a prototype of a unit menu
	based on GtkComboBox. Will move this to libgimpwidgets later...

	* app/display/gimpstatusbar.[ch]: use the new GimpUnitComboBox and
	GimpUnitStore.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: hardcode the appearance of the
	GimpUnitComboBox. It uses a hack that doesn't work in list mode.
2004-05-07 22:16:15 +00:00
Michael Natterer 9377b26ebc added help IDs to all actions representing the toplevel popups and menus
2004-05-02  Michael Natterer  <mitch@gimp.org>

	* app/actions/*-actions.c: added help IDs to all actions
	representing the toplevel popups and menus (as fallbacks for the
	still-to-be-written help system intrgration of GimpUIManager).

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): removed
	call to gtk_ui_manager_ensure_update() because that's done by
	gimp_ui_manager_ui_get() now.

	* app/widgets/gimpmenufactory.[ch]: removed API to register and
	create item factories.

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

	* app/gui/dialogs.c
	* app/actions/plug-in-commands.c
	* app/gui/file-dialog-utils.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpimagedock.c
	* app/widgets/gimpitemtreeview.c: removed leftover item factory
	cruft.

	* app/widgets/widgets-types.h: removed item factory typedefs...

	* app/widgets/gimpitemfactory.h: ...and added them here.

	* app/widgets/gimpactiongroup.[ch]: added new function
	gimp_action_group_add_plug_in_actions().

	* app/actions/plug-in-actions.c: use it here instead of adding
	the actions manually.

	* app/widgets/gimptoolbox.c: ported the code which dynamically
	updates the tool button tooltips on accelerator changes to
	GtkAction. Disabled the whole stuff because GTK+ lacks
	gtk_action_get_accel_closure().
2004-05-02 08:56:07 +00:00
Michael Natterer aae726ee94 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkAction subclass
2004-04-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppluginaction.[ch]: new GtkAction subclass which
	remembers the PlugInProcDef.

	* app/widgets/gimpactiongroup.[ch]: added "gpointer user_data" to
	the GimpActionGroup struct and to gimp_action_group_new(). Removed
	the user_data parameter from gimp_action_group_add_*_actions().

	* app/widgets/gimpactionfactory.[ch]: changed accordingly.

	* app/actions/*-actions.[ch]: removed user_data from all setup_funcs.

	* app/actions/plug-in-actions.c: use a GimpPlugInAction and
	finally use the right user_data for the callback so plug-in
	callbacks have a proper context.

	* app/gui/plug-in-menus.[ch]: renamed plug_in_menus_create2() to
	plug_in_menus_setup().

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: changed accordingly.
2004-04-27 13:55:26 +00:00
Michael Natterer bb0f359ac4 added GimpUIManagerSetupFunc typedef.
2004-04-26  Michael Natterer  <mitch@gimp.org>

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

	* app/widgets/gimpuimanager.[ch]: added the setup_func to the
	GimpUIManagerUIEntry struct and to gimp_ui_manager_ui_register().
	Call the setup_func after creating the UI. Replaced the term
	"identifier" by "ui_path".

	* app/widgets/gimpmenufactory.c: ditto.

	* app/gui/menus.c (menus_init): register the new setup_funcs below.

	* app/gui/menus.[ch] (menus_open_recent_add)
	* app/gui/image-menu.[ch] (image_menu_setup2)
	* app/gui/toolbox-menu.[ch] (toolbox_menu_setup2): new setup_funcs
	which add the "Open Recent" menu items.

	* app/actions/file-actions.c: removed "file-open-recent-empty"
	action because it's not needed.

	* menus/image-menu.xml
	* menus/toolbox-menu.xml: removed "file-open-recent-empty" menu
	items and added <placeholder>s for the "Open Recent" menu items.
2004-04-26 15:51:21 +00:00