Commit Graph

179 Commits

Author SHA1 Message Date
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
Michael Natterer ee42d8f506 added still unused flags type GimpDirtyMask.
2004-07-28  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.h: added still unused flags type
	GimpDirtyMask.

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/paint/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* libgimpthumb/Makefile.am: changed calls to gimp-mkenums to
	support GTypeFlags and to make the value arrays private to the
	get_type() functions.

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/text/text-enums.c
	* app/tools/tools-enums.c
	* app/widgets/widgets-enums.c: regenerated.
2004-07-28 11:50:20 +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
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 8fc8cb487c app/gui/Makefile.am removed...
2004-07-07  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/clipboard.[ch]: removed...

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

	* app/actions/edit-commands.c
	* app/gui/gui.c: changed accordingly.
2004-07-07 14:38:23 +00:00
Michael Natterer 667de3c9f4 app/widgets/Makefile.am new files containing the code which
2004-06-28  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimpselectiondata.[ch]: new files containing the
	code which encodes/decodes all sorts of stuff to/from its
	GtkSelectionData representation. Used to live in gimpdnd.c

	* app/widgets/gimpdnd.c: use the new functions (unclutters the
	file quite a bit), converted tabs to spaces.
2004-06-28 20:39:54 +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
Michael Natterer dbc49d9a11 app/widgets/Makefile.am new toolbox area which shows the active image.
2004-05-31  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptoolbox-image-area.[ch]: new toolbox area which
	shows the active image.

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added config options to control the
	visibility of the toolbox' color, indicator and image areas.

	* app/widgets/gimptoolbox.[ch]: added the image area and honor the
	new config options. Put the various areas into their own wrap box.

	* app/widgets/gimptoolbox-dnd.c: changed accordingly.

	* app/widgets/gimphelp-ids.h: added a help ID for the image area.

	* app/widgets/gimptoolbox-indicator-area.c: made the previews
	a bit larger, cleanup.

	* app/gui/preferences-dialog.c: added a "Toolbox" page as GUI for
	the new config options.

	* themes/Default/images/preferences/Makefile.am
	* themes/Default/images/preferences/toolbox.png: a (wrong) icon
	for the "Toolbox" prefs page. Needs to be replaced.
2004-05-31 20:30:52 +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 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 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 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 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 0b8c4b3ec9 app/widgets/Makefile.am app/widgets/widgets-types.h new GtkUIManager
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpuimanager.[ch]: new GtkUIManager subclass. Adds
	API to update all action groups and knows which UIs it can create
	from which XML files.

	* app/widgets/gimpmenufactory.[ch]: register the XML file
	basenames along with path of their toplevel menus. Create
	GimpUIManagers instead of GtkUIManagers and register the
	XML files and menu paths with them.

	* app/gui/menus.c: register all XML files and their toplevel
	menu paths.

	* app/widgets/gimpeditor.[ch]: also create a GimpUIManager when
	creating the GtkItemFactory. Added "const gchar *ui_identifier"
	parameter to gimp_editor_create_menu().

	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpitemtreeview.[ch]: added "ui_identifier"
	parameters to all constructors.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimppatternfactoryview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptooloptionseditor.c
	* app/gui/dialogs-constructors.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: pass UI identifiers to the changed
	functions above.

	* app/display/gimpdisplayshell.[ch]: added a GimpUIManager for
	the menubar (menubar creating code still commented out).

	* app/display/gimpdisplay.c
	* app/gui/gui-vtable.c: update the ui manager.
2004-04-21 16:33:17 +00:00
Michael Natterer 27a2c8c0e6 More unused action stuff:
2004-04-21  Michael Natterer  <mitch@gimp.org>

	More unused action stuff:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactionfactory.[ch]: added a simple factory which
	produces GimpActionGroups.

	* app/widgets/gimpactiongroup.[ch]: added an "update_func" member
	to the GimpActionGroup struct. Added it as parameter to
	gimp_action_group_new(). Added function gimp_action_group_update().

	* app/widgets/gimpmenufactory.[ch]: added an "action_factory"
	member and constructor parameter. Added code to create
	GtkUIManagers from registered action group identifiers.

	* app/actions/Makefile.am
	* app/actions/actions.[ch]: new files: create a
	"global_action_factory" and register all action groups with it.

	* app/actions/edit-actions.c: s/edit_action_update/edit_actions_update/

	* app/actions/plug-in-actions.[ch]: added API to add/remove
	plug-in procedure actions dynamically (unfinished).

	* app/gui/menus.c (menus_init): call actions_init().
	(menus_exit): call actions_exit().
2004-04-20 23:04:50 +00:00
Sven Neumann 89cf45541a app/widgets/Makefile.am app/widgets/widgets-types.h removed GimpEnumMenu.
2004-04-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenummenu.[ch]: removed GimpEnumMenu.

	* app/widgets/gimpenumwidgets.[ch]: moved widget constructors that
	don't use GimpEnumMenu from gimpenummenu.[ch] to these new files.

	* app/widgets/gimpenumcombobox.[ch]: added a GtkComboBox widget
	using GimpEnumStore; replaces GimpEnumMenu.

	* app/widgets/gimpenumstore.[ch]: added new function
	gimp_enum_store_lookup_by_value().

	* app/widgets/gimppropwidgets.[ch]: replaced
	gimp_prop_enum_option_menu_new() with gimp_prop_enum_combo_box_new().

	* app/gui/brush-select.[ch]
	* app/gui/convert-dialog.c
	* app/gui/layers-commands.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptransformoptions.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimpstrokeeditor.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptexteditor.c: ported to GimpEnumComboBox.
2004-04-18 15:12:42 +00:00
Sven Neumann f9135400ce app/widgets/Makefile.am app/widgets/widgets-types.h added (yet unused)
2004-04-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenumstore.[ch]: added (yet unused) GimpEnumStore,
	a GtkListStore for enum values.
2004-04-18 01:20:26 +00:00
Michael Natterer 537b874750 new marshaller VOID:STRING
2004-04-16  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpmarshal.list: new marshaller VOID:STRING

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactiongroup.[ch]
	* app/widgets/gimpenumaction.[ch]
	* app/widgets/gimpstringaction.[ch]: added some completely unused
	GtkAction infrastructure.
2004-04-16 12:09:46 +00:00
Simon Budig bcd96047f8 Sort the plugin menu entries with the mnemonics stripped. Avoids weird
2004-03-17  Simon Budig  <simon@gimp.org>

	* app/gui/plug-in-menus.c: Sort the plugin menu entries with
	the mnemonics stripped. Avoids weird ordering in the "C" and
	"POSIX" locales.

	* app/widgets/gimpitemtreeview.c: make a simple click on the
	"New" Button use defaults and use shift-click for the new-dialog
	invocation.

	Some more useless button cleanup:

	* app/widgets/gimpdatafactoryview.c: only create an Edit button
	when the edit_function is set.

	* app/core/gimp.c: don't set an edit func for the patterns.

	* app/gui/patterns-menu.c: Don't create the "New", "Edit" and
	"Duplicate" Menu entries for the patterns.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppatternfactoryview.[ch]: New widget:
	gimp_pattern_factory_view. Necessary to be able to hide the
	"duplicate" button...

	* app/gui/dialogs-constructors.c: Use it.
2004-03-17 14:14:18 +00:00
Michael Natterer 1b63a05791 app/widgets/Makefile.am app/widgets/widgets-types.h added new preview
2004-03-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreviewrendererimagefile.[ch]: added new preview
	renderer class (has some disabled code from my GtkFileChooser tree
	and behaves exactly as the default implementation).

	* app/widgets/gimppreviewrenderer-utils.c: use it for GimpImagefiles.
2004-03-03 12:39:19 +00:00
Michael Natterer 527aa849cb app/widgets/Makefile.am app/widgets/widgets-types.h new widget swallowing
2004-02-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfiledialog.[ch]: new widget swallowing most
	of file-dialog-utils.[ch]'s functionality.

	* app/widgets/widgets-types.h: added "gpointer callback_data" to
	GimpItemFactorySetupFunc so the setup_funcs can create items in
	the same context as the item factory's default items.

	* app/widgets/gimpmenufactory.c (gimp_menu_factory_menu_new):
	pass "callback_data" to setup_func().

	* app/gui/file-open-menu.[ch]
	* app/gui/file-save-menu.[ch]: use the passed callback_data
	when creating the menus and attach the file_proc to the
	menu items using g_object_set_data().

	* app/gui/file-commands.[ch]: merged separate file type callbacks
	for open and save dialogs into one callback which simply
	calls gimp_file_dialog_set_file_proc().

	* app/gui/file-dialog-utils.[ch]: removed file_dialog_new()
	and file_dialog_set_proc().

	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]: use the new widget and removed
	global variables except the dialog pointer itself.

	* app/gui/image-menu.[ch]
	* app/gui/tool-options-menu.[ch]
	* app/gui/toolbox-menu.[ch]: changed accordingly.
2004-02-27 14:20:19 +00:00
Michael Natterer 3f9ae43250 app/widgets/Makefile.am app/widgets/widgets-types.h new widget ripped out
2004-02-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpthumbbox.[ch]: new widget ripped out of the file
	open dialog.

	* app/gui/file-open-dialog.c: use it.
2004-02-26 13:48:42 +00:00
Sven Neumann 924acb2b0d app/widgets/Makefile.am app/widgets/widgets-types.h added new widget
2004-02-19  Sven Neumann  <sven@gimp.org>

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

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimphistogrambox.[ch]: use GimpColorBar widgets.

	* app/widgets/gimpcolorframe.[ch]: fixed typos.
2004-02-19 19:56:04 +00:00
Sven Neumann 8179ef7ef2 Made 2.0pre1 release.
2004-01-07  Sven Neumann  <sven@gimp.org>

        * Made 2.0pre1 release.
2004-01-07 03:53:28 +00:00
Simon Budig c95bca30e9 Dashed stroking is here... :-)
2003-12-27  Simon Budig  <simon@gimp.org>

	Dashed stroking is here...  :-)

	* app/core/gimpdrawable-stroke.c: actually use the dash pattern
	from the options

	* app/core/gimpscanconvert.c: Normalize the dash pattern, so
	that libart does the right thing.

	* app/core/gimpstrokeoptions.c: Fix default value for dash
	offset, handle the property_get for PROP_DASH_INFO correct.

	* app/widgets/gimpdasheditor.[ch]
	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h: New widget to edit a dash
	pattern.

	* app/widgets/gimpstrokeeditor.c: Use it.
2003-12-27 19:25:19 +00:00
Hans Breuer 1baa2d4581 [ I've postponed my reservations against pangoft2/fontconfig/freetype2
2003-12-12  Hans Breuer  <hans@breuer.org>

	[
	 I've postponed my reservations against pangoft2/fontconfig/freetype2
	 usage, so The Gimp should now build with msvc without patching it.
	]

	* app/makefile.msc app/text/makefile.msc : use $(PANGOFT2_CFLAGS) etc.

	* libgimpthumb/makefile.msc : (new file)
	* makefile.msc : added libgimpthumb

	* libgimpthumb/gimpthumbnail.c : include gimpwin32-io.h
	* libgimpthumb/gimpthumb-utils.c : don't compare size pointer
	with GIMP_THUMB_SIZE_FAIL but *size

	* plug-ins/makefile.msc : handle libgimpoldpreview

	* plug-ins/common/decompose.c : define cbrt() if not __GLIBC__

	* plug-ins/common/winclipboard.c : make it compile without gimpcompat.h

	* plug-ins/imagemap/imagemap_csim_lex.c : its a generated file
	but still win32/msvc has no unistd.h

	* plug-ins/pygimp/makefile.msc : (new file) to use the binary you
	need to patch glib, see bug #98737

	* plug-ins/libgimpoldpreview.c : use <libgimp/gimp.h> instead of "gimp.h"

	* **/Makefile.am : added makefile.msc to EXTRA_DIST
2003-12-13 01:35:19 +00:00
Michael Natterer 06c12d9727 libgimpwidgets/gimpwidgetsmarshal.list added signals ::added(),
2003-11-22  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpwidgetsmarshal.list
	* libgimpwidgets/gimpcolordisplaystack.[ch]: added signals
	::added(), ::removed() and ::reordered() and emit them in the
	resp. functions.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcolordisplayeditor.[ch]: new widget implementing
	an editable view on a GimpColorDisplayStack. Most code taken from
	below...

	* app/display/gimpdisplayshell-filter-dialog.c: ...and removed
	here. Only creates a GimpDialog around a GimpColorDisplayEditor
	now.
2003-11-22 15:54:12 +00:00
Sven Neumann ec22027964 register a log handler for the Gimp-Text domain.
2003-11-05  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c: register a log handler for the Gimp-Text domain.

	* app/text/gimpfont.c: code cosmetics.

	* app/text/gimptext-compat.c: removed debugging output.

	Let GIMP work w/o any fonts. Of course you won't get any text
	functionality then:

	* app/text/gimpfontlist.c: don't install any font aliases if no
	fonts were found.

	* app/text/gimptextlayer.c: refuse to render any text layers when
	the GIMP fonts list is empty.

	* app/tools/gimptexttool.c: removed redundant includes.

	* app/tools/gimptextoptions.c: removed the font selection widget.
	This is a temporary regression that will be cured by improving the
	GimpFontView widget.

	* app/widgets/Makefile.am
	* app/widgets/gimpfontselection-dialog.[ch]
	* app/widgets/gimpfontselection.[ch]
	* app/widgets/gimppropwidgets.[ch]: removed the font selection and
	all references to it. Fixes bug #119267.
2003-11-04 23:59:58 +00:00
Sven Neumann dcf50dc2a9 Replaced the histogram tool by a histogram dialog:
2003-11-01  Sven Neumann  <sven@gimp.org>

	Replaced the histogram tool by a histogram dialog:

	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-histogram-[16|22].png:
	removed here ...

	* themes/Default/images/stock-histogram-[16|22].png: ,,, and added
	under these new names.

	* libgimpwidgets/gimpstock.[ch]: register the icons as
	GIMP_STOCK_HISTOGRAM and removed the histogram tool stock icons.

	* app/base/gimphistogram.c: don't crash when uncalculated values
	are requested from a GimpHistogram. Allow to reset the histogram
	by calling gimp_histogram_calculate() with a NULL region.

	* app/widgets/gimphistogrambox.[ch]: renamed the GimpHistogramView
	struct member to "view".

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

	* app/widgets/gimphistogramview.[ch] (gimp_histogram_view_events):
	return TRUE when events were handled.

	* app/tools/Makefile.am
	* app/tools/gimp-tools.c
	* app/tools/gimphistogramtool.[ch]: removed the histogram tool.

	* app/widgets/Makefile.am
	* app/widgets/gimphelp-ids.h
	* app/widgets/widgets-types.h
	* app/widgets/gimphistogrameditor.[ch]: added GimpHistogramEditor.
	Has some rough edges still...

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/image-menu.c: register the new dialog instead of the
	histogram tool.
2003-11-01 02:39:34 +00:00
Sven Neumann 445d6bfc9f app/widgets/Makefile.am added a simple utility function
2003-10-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptooldialog.[ch]: added a simple utility function
	gimp_tool_dialog_new() that creates a GimpVieawableDialog based on
	GimpToolInfo and registers it with the toplevel dialog factory.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool.[ch]
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c: use the new functionality; removed
	the shell_identifier since it can be created from the tool name.

	* app/tools/gimpperspectivetool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptransformtool.[ch]: removed the shell_identifier
	here as well. Should also be ported to gimp_tool_dialog_new().

	* NEWS: removed stuff that isn't new at all.
2003-10-20 21:27:34 +00:00
Michael Natterer 78b6153301 added gimp_container_freeze() / _thaw() around font list reloading.
2003-10-18  Michael Natterer  <mitch@gimp.org>

	* app/text/gimp-fonts.c (gimp_fonts_load): added
	gimp_container_freeze() / _thaw() around font list reloading.

	* app/tools/gimp-tools.c (gimp_tools_init): added missing
	gimp_container_freeze().

	* app/widgets/gimpcontainerview.c: connect to the container's
	"freeze" and "thaw" signals and empty / refill the view
	accordingly. Ignore "add", "remove" and "reorder" signals while
	the container is frozen. Fixes font list sorting after refresh and
	speeds up refreshing of fonts, brushes, patterns etc.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfontview.[ch]: new widget for the font list/grid.

	* app/widgets/gimphelp-ids.h: added GIMP_HELP_FONT_REFRESH.

	* app/gui/dialogs-constructors.c: changed accordingly.

	* app/gui/Makefile.am
	* app/gui/fonts-commands.[ch]
	* app/gui/fonts-menu.[ch]: new files: a menu for the font view.

	* app/gui/menus.c (menus_init): register the new <Fonts> menu.

	* app/gui/preferences-dialog.c (prefs_dialog_new): removed the
	fonts refreshing hack from the "Environment" page.
2003-10-18 16:23:15 +00:00
Michael Natterer e78c87b228 new enum GimpColorFrameMode.
2003-10-15  Michael Natterer  <mitch@gimp.org>

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

	* app/widgets/Makefile.am
	* app/widgets/gimpcolorframe.[ch]: new widget GimpColorFrame which
	shows a picked color in an optionmenu-selectable color space.
	Helps getting rid in InfoDialog.

	* app/gui/info-window.c: use it for the "extended" page. Cleaned
	up that page a lot so it can be made dockable in the next step.

	* app/tools/gimpcolorpickertool.[ch]: use it here too. Don't use
	InfoDialog any more (and do not depend on gui/ any more).
2003-10-15 15:16:50 +00:00
Michael Natterer 99746e1d6c app/widgets/Makefile.am app/widgets/widgets-types.h new files implementing
2003-10-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpdocked.[ch]: new files implementing
	GimpDockedInterface, a GTypeInterface which must be implemented by
	all widgets which want to be packed into a GimpDockable. Has
	virtual functions similar to the ones GimpDockable had.

	* app/widgets/gimpdockable.[ch]: removed all virtual functions and
	all function pointers from the instance struct (also the ones just
	added in the commit below). Make sure only widgets implementing
	the GimpDockedIface are added and simply call the child's
	GimpDocked functions where we used to call our own virtual
	functions and function pointers.

	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpimageeditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimpsessioninfo.c
	* app/widgets/gimptooloptionseditor.c
	* app/display/gimpnavigationview.c: implement GimpDockedIface.

	* app/gui/dialogs-constructors.c: removed all that get_preview_func(),
	set_context_func() etc. cruft since that's done by GimpDockedIface.
	It's really a file of constructors now.

	* app/gui/dialogs-menu.c: changed accordingly.

	* app/widgets/gimpimagedock.c: forgotten in the commit below.
2003-10-10 21:24:12 +00:00
Michael Natterer 87480880c3 Cleaned up session management and changed the format of sessionrc in a way
2003-10-10  Michael Natterer  <mitch@gimp.org>

	Cleaned up session management and changed the format of sessionrc
	in a way that allows extensions without changing the format during
	the 2.0 cycle:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpsessioninfo.[ch]: new files implementing the whole
	GimpSessionInfo stuff (parsing, saving, restoring, utility functions).
	Save / parse the position of GimpDock's panes (bug #122964).

	* app/widgets/gimpdialogfactory.[ch]: removed saving, restoring
	and session related utility functions and use the ones from
	the new files above.

	* app/gui/session.c: removed parsing and use the new stuff.

	* app/widgets/gimpdock.[ch]: added new virtual functions
	GimpDock::set_aux_info() and GimpDock::get_aux_info():

	* app/widgets/gimpimagedock.c: implement them and handle the
	"auto_follow_active" and "show_image_menu" properties.

	* app/widgets/gimpdockable.[ch]: added the same virtual functions
	to the GimpDockable class. Enables forward-compatible per-dockable
	session management (bug #122964).

	* app/gui/dialogs-commands.c
	* app/gui/gui.c: changed accordingly.

	* etc/sessionrc: ditto. Look at this file and update your own
	sessionrc manually if you don't want to lose it.
2003-10-10 15:59:12 +00:00
Henrik Brix Andersen 4ac8c82501 removed the grid parasite related functions from here ...
2003-10-10 Henrik Brix Andersen <brix@gimp.org>

* app/core/gimpimage-grid.[ch]: removed the grid parasite related
functions from here ...

* app/core/gimpgrid.[ch]: ... and added them here. While I was at
it I also changed PROP_TYPE to PROP_STYLE and added blurbs to the
properties

* app/xcf/xcf-load.c
* app/display/gimpdisplayshell.c: changed accordingly

* app/widgets/Makefile.am
* po/POTFILES.in
* app/widgets/widgets-types.h
* app/widgets/gimpgrideditor.[ch]: added a new GimpGridEditor
widget - with a work-around for the fact that
gimp_prop_coordinated_new() doesn't accept boundaries

* app/gui/grid-dialog.h
* app/gui/grid-dialog.c (grid_dialog_new): use the new
GimpGridEditor widget, take a GimpImage as function parameter,
assume GimpImages always have a GimpGrid. This simplifies the grid
dialog.

* app/gui/image-commands.c
(image_configure_grid_cmd_callback): changed accordingly

* app/core/core-types.h: moved typedef GimpGrid from here ...

* app/config/config-types.h: ... to here to be able to use it in
GimpCoreConfig

* app/config/gimprc-blurbs.h
* app/config/gimpcoreconfig.[ch]: added default_grid member

* app/widgets/gimphelp-ids.h
* themes/Default/images/preferences/Makefile.am
* themes/Default/images/default-grid.png
* app/gui/preferences-dialog.c: added UI for specifying default
image grid

* app/core/gimpimage.c (gimp_image_new): create a GimpGrid from
core_config->default_grid

* app/gui/image-menu.c (image_menu_update): the grid/guide entries
in <Image>/View/ should always be sensitive ...

* app/display/gimpdisplayshell.c (gimp_display_shell_init):
... but the grid entries should be disabled by default
2003-10-10 14:11:47 +00:00
Michael Natterer d1ba870458 added a GimpContainer of tool options presets.
2003-09-29  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.[ch]: added a GimpContainer of tool
	options presets.

	* app/core/gimptooloptions.[ch] (gimp_tool_options_set_property):
	silently accept setting the *same* tool_info again.

	(gimp_tool_options_build_filename): is public now.

	* app/tools/gimp-tools.c (gimp_tools_restore,save): load and save
	the presets container.

	* app/gui/tool-options-dialog.[ch]: removed.

	* app/gui/tool-options-commands.[ch]
	* app/gui/tool-options-menu.[ch]: new files implementing a menu
	for the new GimpToolOptionsEditor widget. Has submenus for saving,
	loading, and deleting tool options to/from the
	tool_info->options_presets container.

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

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptooloptionseditor.[ch]: the tool options dialog
	as proper widget. The "Load" and "Save" buttons still do the same
	stuff as before. Will make them use the new presets since making
	them do something useful was the reason for this whole change.

	* app/widgets/gimphelp-ids.h: added missing help IDs for the tool
	options dialog.
2003-09-29 20:26:09 +00:00
Simon Budig 7c3b455924 "The last of the Oldenburg commits"
2003-09-28  Simon Budig  <simon@gimp.org>

	"The last of the Oldenburg commits"

	Thanks to the team of the Oldenburg Linux Developers Meeting 2003
	for providing a nice hacking environment.

	* app/vectors/gimpvectors.c: Add a default stock_id.

	* app/widgets/gimppreviewrenderervectors.[ch]: New Widget
	to render the preview of vectors. Just renders a stock item
	now, since I was unable to figure out how to properly draw
	in the GtkWidget.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h: Changed accordingly.

	* app/widgets/gimppreviewrenderer-utils.c: Use the new widget.

	* app/core/gimpscanconvert.c
	* app/core/gimpdrawable-stroke.c: Use higher prescision for
	libart-stroking vectors. Reduces artefacts.

	* app/pdb/paths_cmds.c
	* libgimp/gimppaths_pdb.c: Regenerated after Tors changes.
2003-09-28 04:00:50 +00:00
Sven Neumann a411575e18 app/widgets/Makefile.am app/widgets/widgets-types.h added a (yet
2003-09-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpstrokeeditor.[ch]: added a (yet rudimentary)
	widget to view/edit a GimpStrokeOption.

	* app/widgets/gimptemplateeditor.[ch]: derive it directly from
	GtkVBox; it doesn't need any GimpEditor functionality.
2003-09-26 17:33:49 +00:00
Sven Neumann 6f1a0df89f app/display/Makefile.am app/gui/Makefile.am app/paint/Makefile.am
2003-09-07  Sven Neumann  <sven@gimp.org>

	* app/display/Makefile.am
	* app/gui/Makefile.am
	* app/paint/Makefile.am
	* app/pdb/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am (INCLUDES): removed $(LIBART_CFLAGS) again.
2003-09-07 19:35:10 +00:00
Michael Natterer 6031629bd3 removed.
2003-09-06  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppreviewrenderertextlayer.[ch]: removed.

	* app/widgets/gimppreviewrendererlayer.[ch]: new renderer which
	renders all kinds of layers and uses GIMP_STOCK_FLOATING_SELECTION
	for floating selections.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreviewrenderer-utils.c: changed accordingly.
2003-09-06 22:02:12 +00:00
Michael Natterer b28c23611b app/display/Makefile.am app/gui/Makefile.am app/paint/Makefile.am
2003-09-06  Michael Natterer  <mitch@gimp.org>

	* app/display/Makefile.am
	* app/gui/Makefile.am
	* app/paint/Makefile.am
	* app/pdb/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am (INCLUDES): add $(LIBART_CFLAGS) here too.
2003-09-06 17:20:02 +00:00
Michael Natterer a319c455d9 app/widgets/Makefile.am new file defining the available help topics. Work
2003-08-21  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimphelp-ids.h: new file defining the available help
	topics. Work in progress and totally unusable for matching to the
	help system. Stay tuned...

	* app/gui/about-dialog.c
	* app/gui/brushes-menu.c
	* app/gui/buffers-menu.c
	* app/gui/channels-commands.[ch]
	* app/gui/channels-menu.c
	* app/gui/edit-commands.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/gradients-commands.c
	* app/gui/gradients-menu.c
	* app/gui/image-menu.c
	* app/gui/layers-commands.[ch]
	* app/gui/layers-menu.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palettes-menu.c
	* app/gui/patterns-menu.c
	* app/gui/resize-dialog.c
	* app/gui/select-commands.c
	* app/gui/templates-menu.c
	* app/gui/tips-dialog.c
	* app/gui/toolbox-menu.c
	* app/gui/vectors-commands.[ch]
	* app/gui/vectors-menu.c: replaced literal HTML file paths by help
	IDs from gimphelp-ids.h. Renamed some menu callbacks to be
	consistent with similar ones. This is just an intermediate commit
	and not finished.

	While browsing all the menus, I noticed that our "x to selection"
	functions are not consistent at all. They should all offer the
	REPLACE,ADD,SUBTRACT,INTERSECT options:

	* app/core/gimpchannel.[ch]: added new function
	gimp_channel_new_from_alpha(). Removed gimp_channel_layer_alpha()
	and gimp_channel_layer_mask().

	* app/core/gimpimage-mask.[ch]: added
	gimp_image_mask_select_alpha() and
	gimp_image_mask_select_component() which offer the full set of
	operation, feather and feather_radius parameters as the other
	selection functions.

	* app/core/gimpimage-mask-select.[ch]: removed
	gimp_image_mask_layer_alpha() and gimp_image_mask_layer_mask().

	* app/gui/channels-commands.c (channels_channel_to_selection): use
	gimp_image_mask_select_component() instead of implementing it
	here.

	* app/gui/image-menu.c
	* app/gui/layers-commands.[ch]: offer the full choice of
	REPLACE,ADD,SUBTRACT,INTERSECT with "Alpha to Selection" and "Mask
	to Selection".

	* tools/pdbgen/pdb/selection.pdb: changed accordingly.

	* app/pdb/selection_cmds.c: regenerated.
2003-08-21 15:54:47 +00:00
Michael Natterer 878ee7b03e app/gui/Makefile.am removed...
2003-07-07  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/device-status-dialog.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpdevicestatus.[ch]: ...added here as widget. The
	thing is narrower now but not nicer and needs some polishing.

	* app/widgets/gimppropwidgets.[ch]: added gimp_prop_color_area_new()
	and gimp_prop_stock_image_new() (the latter is still unused).

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: made the device status a dockable.

	* app/gui/dialogs-menu.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: changed accordingly.

	* app/gui/gui.c: update the device status dialog indirectly now
	using the new gui_device_change_notify() callback.
2003-07-07 13:37:19 +00:00
Michael Natterer 5e950b5501 Cleaned up and improved the message system:
2003-06-13  Michael Natterer  <mitch@gimp.org>

	Cleaned up and improved the message system:

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

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

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

	* app/pdb/message_cmds.c: regenerated.

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

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

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

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

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

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

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

	Unrelated:

	- Cleaned up indentation, spacing, #includes, coding style and
	  other stuff while I was at all these files.
2003-06-13 14:37:00 +00:00
Michael Natterer 98bdd5c0f3 app/widgets/Makefile.am new files containing the toolbox' drop callbacks.
2003-06-06  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptoolbox-dnd.[ch]: new files containing the
	toolbox' drop callbacks. Exports gimp_toolbox_dnd_init().

	* app/widgets/gimptoolbox.c: removed the callbacks and all the
	"core/" includes they needed and call gimp_toolbox_dnd_init().
2003-06-06 15:14:47 +00:00
Michael Natterer d47eedc279 app/widgets/Makefile.am app/widgets/widgets-types.h new widget chopped out
2003-04-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptemplateeditor.[ch]: new widget chopped out
	of file-new-dialog.c

	* app/gui/file-new-dialog.c: use it.
2003-04-11 13:17:23 +00:00
Michael Natterer 2598142564 added gimp_context_type_to_prop_name().
2003-04-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.[ch]: added gimp_context_type_to_prop_name().

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpviewablebutton.[ch]: new widget implementing
	the wheel-scrollable preview button.

	* app/tools/gimptextoptions.c
	* app/tools/paint_options.[ch]: removed the code implementing the
	same and use GimpViewableButton.

	* app/tools/tool_manager.c: added the font to the context
	properties which are remembered per tool. Added an evil hack
	using g_object_set_data() to pass the global_dock_factory to
	tool option GUI constructors.
2003-04-10 10:34:56 +00:00
Michael Natterer 9827ceac0e added gimp_list_uniquefy_name() utility function.
2003-04-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplist.[ch]: added gimp_list_uniquefy_name() utility
	function.

	* app/core/gimpdatalist.c
	* app/core/gimpitem.c: use it here instead of duplicating almost
	the same code.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptemplateview.[ch]: new widget for editing the
	template list.

	* app/gui/dialogs-constructors.c: use it.

	* app/gui/Makefile.am
	* app/gui/templates-commands.[ch]
	* app/gui/templates-menu.[ch]: new files implementing the context
	menu for the template list.

	* app/gui/menus.c: register the new menu with the menu factory.

	* app/gui/file-commands.c (file_new_template_callback): uniquefy
	the new template's name.

	* app/gui/documents-commands.c: fixed typo.
2003-04-06 11:21:56 +00:00
Sven Neumann 208915d468 include locale.h for setlocale().
2003-03-25  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext.c: include locale.h for setlocale().

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/widgets/Makefile.am: changed rules that generate enums code
	to include gimp-intl.h instead of libgimp-intl.h.

	* tools/pdbgen/app.pl
	* tools/pdbgen/pdb/*.pdb: include gimp-intl.h.
2003-03-25 17:39:01 +00:00
Michael Natterer d1c99beeb4 allow to create a GimpContainerEditor without a popup menu.
2003-03-22  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainereditor.c: allow to create a
	GimpContainerEditor without a popup menu.

	* app/widgets/gimpcellrendererviewable.c: free the event we
	got from gdk_get_current_event().

	* app/widgets/gimpcontainerview.c: check view->hash_table for
	being non-NULL before using it. Be prepared to be destroyed by as
	a result of calling gimp_context_set_foo(view->context, foo).

	* app/widgets/gimpcontainertreeview.[ch]: added
	tree_view->editable_cells and handle *all* mouse clicks in
	gimp_container_tree_view_button_press() (by returning TRUE). Start
	editing on double-click only. Use gtk_tree_view_set_cursor()
	instead of gtk_tree_selection_select_path() to avoid
	selected/focus confusion when the focus enters the widget. Be
	prepeared to be destroyed as a result of item selection.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerpopup.[ch]: new GtkWindow derived
	widget which pops up a selection of any GimpContainer/GimpContext
	combo.

	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpitemtreeview.c: add the name cell to
	tree_view->editable_cells so it becomes editable.

	* app/tools/gimpblendoptions.c
	* app/tools/paint_options.c: use the new container popup for
	selecting brushes and gradients.
2003-03-22 16:26:11 +00:00
Michael Natterer c1dffc05e0 Removed deprecated and broken list views based on GtkList[Item] (fixes bug
2003-03-20  Michael Natterer  <mitch@gimp.org>

	Removed deprecated and broken list views
	based on GtkList[Item] (fixes bug #90965):

	* app/widgets/gimpchannellistitem.[ch]
	* app/widgets/gimpchannellistview.[ch]
	* app/widgets/gimpcontainerlistview.[ch]
	* app/widgets/gimpdrawablelistitem.[ch]
	* app/widgets/gimpdrawablelistview.[ch]
	* app/widgets/gimpitemlistitem.[ch]
	* app/widgets/gimpitemlistview.[ch]
	* app/widgets/gimplayerlistitem.[ch]
	* app/widgets/gimplayerlistview.[ch]
	* app/widgets/gimplistitem.[ch]
	* app/widgets/gimpvectorslistview.[ch]: removed.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/widgets-enums.h
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerview-utils.c
	* app/widgets/gimpdatafactoryview.c
	* app/gui/channels-commands.c
	* app/gui/channels-menu.c
	* app/gui/drawable-commands.c
	* app/gui/layers-commands.c
	* app/gui/layers-menu.c
	* app/gui/palettes-commands.c
	* app/gui/test-commands.c
	* app/gui/vectors-commands.c
	* app/gui/vectors-menu.c: changed accordingly.

	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c: removed the term "tree" from all user visible
	places and create tree views when lists are requested.

2003-03-20  Michael Natterer  <mitch@gimp.org>

	* POTFILES.in: app/widgets/*list* -> *tree*
2003-03-20 13:05:52 +00:00
Michael Natterer 0b401af44f app/widgets/gimpcellrenderertoggle.[ch] added public functions to emit the
2003-03-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcellrenderertoggle.[ch]
	* app/widgets/gimpcellrendererviewable.[ch]: added public
	functions to emit the "clicked" signal.

	* app/widgets/gimpcontainertreeview.c: use them instead of
	g_signal_emit_by_name().

	* app/widgets/Makefile.am
	* app/widgets/gimpcontainertreeview-dnd.[ch]: new files
	implementing DND for tree views.

	* app/widgets/gimpcontainertreeview.[ch]: added virtual
	functions drop_possible() and drop().

	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c: implement drop_possible()
	and drop().
2003-03-19 15:17:13 +00:00
Michael Natterer 205cdf1353 Added GtkTreeView versions of layers/channels/vectors:
2003-03-16  Michael Natterer  <mitch@gimp.org>

	Added GtkTreeView versions of layers/channels/vectors:

	* app/core/core-enums.[ch]: renamed GIMP_UNDO_GROUP_LAYER_PROPERTIES
	to GIMP_UNDO_GROUP_ITEM_PROPERTIES.

	* app/core/gimpcontainer.c (gimp_container_reorder): don't try
	to reorder containers with num_children == 1.

	* app/core/gimpmarshal.list: added VOID: STRING, UINT marshaller.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpchanneltreeview.[ch]
	* app/widgets/gimpdrawabletreeview.[ch]
	* app/widgets/gimpitemtreeview.[ch]
	* app/widgets/gimplayertreeview.[ch]
	* app/widgets/gimpvectorstreeview.[ch]: new widgets.

	* app/widgets/gimpcellrenderertoggle.c: draw the frame only if the
	cell is prelit.

	* app/widgets/gimpcellrendererviewable.[ch]: added "clicked"
	signal, unref the renderer in finalize(). Set the renderer's
	border color to black if the cell is not selected (a hack that
	saves tons of code in GimpLayerTreeView).

	* app/widgets/gimpcomponenteditor.c: no need to gtk_list_store_set()
	stuff we just got from the store.

	* app/widgets/gimpcontainertreeview.[ch]: added lots of state used
	by the new subclasses to the GimpContainerTreeView struct.  Create
	the GtkListStore/GtkTreeView in GObject::constructor() and only
	collect parameters in init() so subclasses can modify store/view
	creation. Do most of the button_press_event stuff manually and
	return TRUE from the handler.

	* app/widgets/gimpcontainerview.c: cleanup.

	* app/widgets/gimpitemlistview.h
	* app/widgets/gimpvectorslistview.h: temp hacks before they die.

	* app/widgets/gimppreviewrenderer.[ch]: added
	gimp_preview_renderer_update_idle() which idle-emits "update"
	without invalidating.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: added constructors for the new dialogs.

	* app/gui/channels-commands.c
	* app/gui/channels-menu.c
	* app/gui/layers-commands.c
	* app/gui/layers-menu.c
	* app/gui/vectors-commands.c
	* app/gui/vectors-menu.c: accept tree views as callback data.
2003-03-16 11:14:29 +00:00
Sven Neumann a83554d056 app/widgets/Makefile.am app/widgets/widgets-types.h added a new
2003-03-12  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcellrenderertoggle.[ch]: added a new cell_renderer
	derived from GtkCellRendererToggle.

	* app/widgets/gimpcomponenteditor.c: use the new cell_renderer.

	* app/widgets/gimpcellrendererviewable.[ch]: fixed a few typos and
	removed some redundant casts.
2003-03-12 19:02:51 +00:00
Michael Natterer f2ca257438 added descriptions to the GimpChannelType enum.
2003-03-12  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch]: added descriptions to the
	GimpChannelType enum.

	* app/core/gimpimage.[ch]: added gimp_image_get_component_index()
	utility function which does the GIMP_RED_CHANNEL -> RED_PIX etc.
	mapping. Use it in all component getters/setters.

	* app/widgets/gimpcomponenteditor.[ch]: new widget implementing
	the component list using GtkListStore/GtkTreeView. Still a bit
	ugly because it uses the standard check instead of the eye icon.

	* app/widgets/gimpcomponentlistitem.[ch]: removed.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpvectorslistview.c: changed accordingly.

	* app/widgets/gimpchannellistview.[ch]: create a GimpComponentEditor
	and removed the old GtkList based stuff.

	* app/widgets/gimpitemlistview.[ch]: keep around a pointer to the
	GimpMenuFactory passed to the constructor.

	* app/gui/channels-menu.c (channels_menu_update): do the right
	thing if "data" is a GimpComponentEditor.

	* app/gui/channels-commands.[ch]: ditto. Implemented duplicating
	of components and component to selection (bug #61018).
2003-03-12 17:12:01 +00:00
Michael Natterer 1522b841fa added "gboolean data_editable" which gets set in
2003-03-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdataeditor.[ch]: added "gboolean data_editable"
	which gets set in gimp_data_editor_real_set_data(). Set the name
	entry insensitive if the data is not editable.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimpgradienteditor.c: look at editor->data_editable
	instead of duplicating the logic in all subclasses.

	* app/widgets/gimppreview.[ch]: added "gboolean expand" and
	gimp_preview_set_expand() like in GtkPreview bacause smooth auto
	resizing can only be done by the widget itself, not via external
	callbacks.

	* app/display/gimpnavigationview.c
	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpselectioneditor.c: set expand == TRUE. Removed
	"size_allocate" callbacks. They resize *much* smoother now.
	Various cleanups.

	* app/widgets/gimpnavigationpreview.c: recalculate the preview
	coordinates when the size changes.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreviewrenderer-utils.c
	* app/widgets/gimppreviewrenderergradient.[ch]: new renderer which
	is much faster because it projects the gradient without creating
	intermediate buffers. Rendering can be restricted to an interval
	from [left...right].

	* app/widgets/gimpgradienteditor.[ch]: undeprecated by using
	GimpPreview instead of GtkPreview. Cleanup.

	* app/gui/gradient-editor-commands.c: changed accordingly.
2003-03-10 14:07:22 +00:00
Michael Natterer 6bfa4f54a0 made the default buffer and stock rendering functions public so derived
2003-03-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimppreviewrenderer.[ch]: made the default buffer
	and stock rendering functions public so derived renderers
	can use them. Renamed gimp_preview_renderer_render_preview()
	to gimp_preview_renderer_render_buffer().

	* app/widgets/gimppreviewrendererbrush.c
	* app/widgets/gimppreviewrendererdrawable.c
	* app/widgets/gimppreviewrendererimage.c: changed accordingly.

	* app/widgets/gimppreviewrenderertextlayer.[ch]: new renderer
	for text layers which always renders the stock icon.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreviewrenderer-utils.c: changed accordingly.
2003-03-03 17:19:30 +00:00
Michael Natterer 48bf4fb7b2 don't scale the preview up if the buffer is too small.
2003-03-01  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpbuffer.c: don't scale the preview up if the
	buffer is too small.

	* app/core/gimppattern.c: don't add a white border around the
	preview if the pattern is too small.

	* app/widgets/gimppreviewrenderer.[ch]: new object. A buffer
	that updates itself on GimpViewable changes and can render
	itself to any widget. Basically GimpPreview reduced to the
	render and draw code.

	* app/widgets/gimppreview.[ch]: removed all rendering and drawing
	code and keep a GimpPreviewRenderer instance. Connect to its
	"update" signal for queuing draws on the preview.

	* app/widgets/gimpcellrendererviewable.[ch]
	* app/widgets/gimpcontainertreeview.c: same here: removed
	rendering and drawing code and keep GimpPreviewRenderers in the
	list store.  Delays preview creation for GtkTreeViews until the
	buffer is really needed for drawing and adds idle preview updating
	on viewable changes.

	* app/widgets/gimppreview-utils.[ch]
	* app/widgets/gimpbrushpreview.[ch]
	* app/widgets/gimpbufferpreview.[ch]
	* app/widgets/gimpdrawablepreview.[ch]
	* app/widgets/gimpimagepreview.[ch]: removed...

	* app/widgets/gimppreviewrenderer-utils.[ch]
	* app/widgets/gimppreviewrendererbrush.[ch]
	* app/widgets/gimppreviewrendererdrawable.[ch]
	* app/widgets/gimppreviewrendererimage.[ch]: ...and converted to
	GimpPreviewRenderer subclasses.

	* app/display/gimpnavigationview.c
	* app/gui/palette-import-dialog.c
	* app/widgets/Makefile.am
	* app/widgets/widgets-enums.h
	* app/widgets/widgets-types.h
	* app/widgets/gimpchannellistview.c
	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimplayerlistitem.c
	* app/widgets/gimplistitem.c
	* app/widgets/gimpnavigationpreview.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpvectorslistview.c: changed accordingly.
2003-03-01 03:53:41 +00:00
Michael Natterer 0614aa5329 added virtual function get_popup_size() which returns a boolean indicating
2003-02-27  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.[ch]: added virtual function
	get_popup_size() which returns a boolean indicating if a popup is
	needed and its size.

	* app/core/gimpbrush.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpundo.c: implement it.

	* app/widgets/gimppreview.[ch]: removed virtual functions
	needs_popup() and create_popup(). Removed the code which creates
	the popup and the popup members of the GimpPreview struct.

	* app/widgets/gimppreview-popup.[ch]: new files providing the
	utility function gimp_preview_popup_show() which can show popups
	from any widget, not just from a GimpPreview. Checks if a popup is
	needed using gimp_viewable_get_popup_size().

	* app/widgets/gimpcellrendererviewable.c: show popups here too.

	* app/widgets/gimpbrushpreview.c
	* app/widgets/gimpbufferpreview.c
	* app/widgets/gimpdrawablepreview.c
	* app/widgets/gimpimagepreview.c: removed needs_popup() and
	create_popup() implementations.

	* app/widgets/gimpnavigationpreview.c: removed empty render()
	implementation.

	* app/widgets/gimpundoeditor.c: use a tree instead of a list view.

	* app/widgets/gimpgradientpreview.[ch]
	* app/widgets/gimppalettepreview.[ch]
	* app/widgets/gimppatternpreview.[ch]: removed because they only
	implemented the removed popup functions.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpmenuitem.c
	* app/widgets/gimppreview-utils.c: changed accordingly
2003-02-27 13:59:41 +00:00
Michael Natterer 305db405b2 added "gchar *stock_id" to the GimpViewable struct. It is used by the GUI
2003-02-26  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.[ch]: added "gchar *stock_id" to the
	GimpViewable struct. It is used by the GUI if the get_preview()
	functions return NULL. Default to GTK_STOCK_DIALOG_QUESTION.

	* app/core/gimptoolinfo.[ch]: set the tool's stock_id. Removed
	the cached GdkPixbuf. Don't implement any preview function
	so the GUI uses the stock_id.

	* app/tools/tool_manager.c: removed GdkPixbuf creation, removed
	the #warning about the buggy way we created the pixbuf.

	* app/gui/dialogs-constructors.c
	* app/gui/image-menu.c
	* app/tools/gimpcroptool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimptoolbox.c: use viewable->stock_id instead
	of tool_info->stock_id.

	* app/core/gimpbrush.c
	* app/core/gimpgradient.c
	* app/core/gimpimagefile.c
	* app/core/gimpundo.c: simplified get_preview() implementations:

	- never scale previews up, only down.
	- don't render white or checks backgrounds but simply return
	  TempBufs with alpha and let the preview system do its job.
	- don't add padding but simply return previews smaller than
	  requested.

	* app/display/gimpdisplayshell-render.[ch]: added
	"render_blend_white", a 2d lookup table for blending on white,
	just as the check lookup tables. Added "render_white_buf".

	* app/widgets/gimppreview.[ch]: changed a lot:

	- don't render the preview's border into the buffer.
	- added "GdkGC *border_gc" and draw the preview's border in expose()
	  using gdk_draw_rectangle().
	- added "GdkPixbuf *no_preview_pixbuf" and create it in
	  gimp_preview_real_render() if gimp_viewable_get_preview()
	  returned NULL.
	- factored the actual preview rendering out to
	  gimp_preview_render_to_buffer(). Added configurable background
	  rendering for the preview itself and it's padding area
	  (the area the preview is larger than the buffer returned
	  by gimp_viewable_get_preview()).
	- changed gimp_preview_render_and_flush() to
	  gimp_preview_render_preview() and added "inside_bg" and
	  "outside_bg" parameters.
	- use the new render buffers for blending on white.

	* app/widgets/gimpbrushpreview.c
	* app/widgets/gimpbufferpreview.c
	* app/widgets/gimpdrawablepreview.c
	* app/widgets/gimpgradientpreview.c
	* app/widgets/gimpimagepreview.c
	* app/widgets/gimppalettepreview.c
	* app/widgets/gimppatternpreview.c: don't create large white
	TempBufs to center the previews in but simply set the TempBuf's
	offsets to get them centered. Simplified & cleaned up many preview
	render functions. Pass the correct GimpPreviewBG modes to
	gimp_preview_render_preview().

	* app/widgets/gimpcellrendererviewable.[ch]: new GtkCellRenderer
	class derived from GtkCellRendererPixbuf which knows how
	to use gimp_viewable_get_preview_size() and renders the
	viewable's stock item if no preview can be created.

	* app/widgets/gimpcontainertreeview.c: added a GtkTreeCellDataFunc
	which creates the preview pixbuf if needed so we don't create it
	unconditionally upon item insertion. Fixed preview size assertion
	to use GIMP_PREVIEW_MAX_SIZE, not "64". Block "selection_changed"
	while reordering the selected item.

	* app/widgets/gimpcontainerview.c: cosmetic.

	* app/widgets/gimpimagefilepreview.[ch]
	* app/widgets/gimptoolinfopreview.[ch]
	* app/widgets/gimpundopreview.[ch]: removed because the default
	implementation is good enough.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreview-utils.c: changed accordingly.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: register grid and tree view variants
	of the document history.

	Unrelated:

	* app/gui/gui.c (gui_exit_finish_callback): disconnect from
	signals earlier.

	* app/gui/user-install-dialog.c: create the "tool-options" subdir
	of the user's ~/.gimp-1.3 directory.
2003-02-26 16:17:10 +00:00
Michael Natterer 9ee632a656 Started migration from GtkList to GtkTreeView:
2003-02-21  Michael Natterer  <mitch@gimp.org>

	Started migration from GtkList to GtkTreeView:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainertreeview.[ch]; new GimpContainerView
	subclass using GtkListStore/GtkTreeView.

	* app/widgets/widgets-enums.h: added GIMP_VIEW_TYPE_TREE to
	thje GimpViewType enum.

	* app/widgets/gimpcontainereditor.c: added GimpContainerTreeView
	to the switch() which selects the view type.

	* app/gui/dialogs-commands.c
	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c: added tree view versions of many dialogs.

	* app/widgets/gimppreview.[ch]: removed the get_size() virtual
	function and gimp_preview_calc_size().

	* app/core/gimpviewable.[ch]: added virtual function
	get_preview_size() and gimp_viewable_calc_preview_size().

	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage.c
	* app/core/gimppalette.c: added get_preview_size() implementations.

	* app/widgets/gimpbufferpreview.c
	* app/widgets/gimpdrawablepreview.c
	* app/widgets/gimpgradientpreview.c
	* app/widgets/gimpimagepreview.c
	* app/widgets/gimppalettepreview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpundopreview.c
	* app/display/gimpnavigationview.c: changed accordingly, removed
	get_size() implementations.

	* app/widgets/widgets-types.h: changed the first param of
	GimpItemGetNameFunc from GtkWidget to GObject.

	* app/widgets/gimpcontainerview-utils.c: accept a GimpViewable as
	object in the built-in get_name funcs.

	* app/widgets/gimpcomponentlistitem.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimplistitem.c
	* app/widgets/gimpmenuitem.c: changed accordingly.
2003-02-21 19:03:19 +00:00
Michael Natterer 94bdcbcc01 app/widgets/Makefile.am app/widgets/widgets-types.h new GimpEditor
2003-02-20  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpimageeditor.[ch]: new GimpEditor subclass adding
	a GimpImage pointer and a virtual set_image() function.

	* app/widgets/gimpcolormapeditor.[ch]
	* app/widgets/gimpselectioneditor.[ch]
	* app/widgets/gimpundoeditor.[ch]: derive them from GimpImageEditor.
	Removed the public set_image() functions.

	* app/gui/colormap-editor-commands.c
	* app/gui/colormap-editor-menu.c: changed accordingly.

	* app/gui/dialogs-constructors.c: removed lots of code duplication
	and use the uniform GimpImageEditor API. Misc cleanups.
2003-02-20 15:40:15 +00:00
Michael Natterer c8b4394d71 Reimplemented the undo history:
2003-02-20  Michael Natterer  <mitch@gimp.org>

	Reimplemented the undo history:

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

	Changes/cleanups to the undo system to enable/simplify the new
	undo history implementation:

	* app/core/core-types.h: removed enum undo_event_t. Removed the
	GimpImage parameter from GimpUndoPopFunc and GimpUndoFreeFunc
	because GimpUndo has a GimpImage pointer now (see below).

	* app/core/core-enums.[ch]: added enum GimpUndoEvent. Added an
	enum value for REDO_EXPIRED.

	* app/core/gimpimage.[ch]: added a GimpUndo pointer to the
	"undo_event" signal which needs to be passed for all events except
	UNDO_FREE.

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

	* app/core/gimpundo.[ch]: added a GimpImage pointer to the
	GimpUndo struct. Removed GimpImage parameters all over the
	place. Added preview stuff. The preview creation needs to be
	triggered explicitly using gimp_undo_create_preview() because the
	GimpUndo can't know when it's possible to create the preview.

	* app/core/gimpimage-undo-push.c
	* app/paint/gimppaintcore-undo.c
	* app/tools/gimptransformtool-undo.c: changed accordingly, cleanup.

	* app/core/gimpundostack.[ch]: ditto. Return the freed undo from
	gimp_undo_stack_free_bottom(). Removed unused container signal
	handlers.

	* app/core/gimpimage-undo.c: free the redo stack the same way old
	undos are freed (from bottom up). Emit "undo_event" with event ==
	REDO_EXPIRED for each removed redo.

	* app/core/gimpmarshal.list: added new marshallers.

	New undo history implementation:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpundoeditor.[ch]
	* app/widgets/gimpundopreview.[ch]: new widgets for the undo
	step previews and the history itself.

	* app/widgets/gimppreview-utils.c: added GimpUndoPreview to the
	list of possible preview types.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: removed the old and added the new undo
	history to the dialog factory and the various dialog menus.

	* app/widgets/gimpdnd.[ch]: don't warn if a GType has no
	corresponding DND type. Instead, return FALSE from the function
	that failed.

	* app/widgets/gimppreview.c: check the return value of gimpdnd
	functions.  Not only add drag sources but also remove them when no
	longer needed.

	* app/widgets/gimpselectioneditor.h: removed unneeded inclusion of
	"gui/gui-types.h".
2003-02-20 12:47:42 +00:00
Michael Natterer f7a911173f removed the "truly ugly hack"...
2003-02-03  Michael Natterer  <mitch@gimp.org>

	* app/display/Makefile.am: removed the "truly ugly hack"...

	* app/Makefile.am: ...and changed the linking order instead.

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/paint/Makefile.am
	* app/widgets/Makefile.am: fixed typo.
2003-02-03 13:39:55 +00:00
Sven Neumann 47f2a7f8d9 app/config/gimpconfig.[ch] added a reset method to GimpConfigInterface.
2003-02-01  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig.[ch]
	* app/config/gimpconfig-utils.[ch]: added a reset method to
	GimpConfigInterface. Added the new function gimp_config_reset()

	* app/text/gimptext.c: added a GimpConfigInterface to GimpText.

	* app/widgets/Makefile.am
	* app/widgets/gimptexteditor.[ch]: new files that hold the simple
	text editor dialog used by the text tool.

	* app/widgets/gimppropwidgets.[ch]: added new widget constructor
	gimp_prop_scale_entry_new().

	* app/tools/gimptexttool.[ch]: replaced old-style ToolOptions with
	a GimpText object. Connect text layers to the text tool by means
	of their GimpText objects. Still work in progress ...
2003-02-01 21:50:21 +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 0005b5d2e5 app/widgets/Makefile.am new files containing constructors for views on
2002-11-20  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimppropwidgets.[ch]: new files containing
	constructors for views on GObject properties.

	* app/gui/Makefile.am: the build preferences-dialog again.

	* app/gui/dialogs-constructors.c
	* app/gui/dialogs.c
	* app/gui/menus.c: added it back to the dialog system (as a non
	signleton to get the new model <-> view stuff some testing).

	* app/gui/preferences-dialog.c: here it is again, using property
	view widgets. Lots of stuff removed & simplified. Some things
	still #if 0'ed and/or non-working. No saving yet, stuff...
2002-11-20 19:45:03 +00:00
Michael Natterer 2743f9fae1 added virtual functions set_toggles_visible() and set_toggles_sensitive().
2002-11-05  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolorselector.[ch]: added virtual functions
	set_toggles_visible() and set_toggles_sensitive(). Added a
	stock_id. Emit "color_changed" and "channel_changed" on
	set_color() and set_channel() resp.

	* libgimpwidgets/gimpcolornotebook.[ch]: implement the new
	methods.  Added gimp_color_notebook_set_has_page() to control
	which selectors a notebook contains.

	* libgimpwidgets/gimpcolorscales.[ch]: removed the toggle
	API and implement the new methods.

	* libgimpwidgets/gimpcolorselect.c: added toggle buttons for the
	channels so the widget doesn't need external ones.

	* app/gui/color-notebook.c: changed accordingly.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-color-triangle-16.png: added a
	(bad) icon for the triangle color selector.

	* modules/colorsel_triangle.c: use the new icon.
	* modules/colorsel_water.c: use the "Paintbrush" icon for now.

	* app/widgets/gimpcoloreditor.[ch]: new widget for editing the
	FG/BG color featuring a color notebook, stock buttons for
	selecting the pages and a GimpPickButton.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h: changed accordingly.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: added a dockable wrapper for GimpColorEditor.

	* app/gui/menus.c: added it to the menus. Also added separate
	Layers, Channels and Paths entries. Bind <ctrl>L to the new
	callback so it doesn't always create a new layers dialog.
2002-11-05 00:02:56 +00:00
Michael Natterer f54912e108 Histogram cleanup:
2002-09-07  Michael Natterer  <mitch@gimp.org>

	Histogram cleanup:

	* app/base/gimphistogram.c: Added g_return_if_fail() to all public
	functions, reordered stuff, cleanup (no logic changed).

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimphistogrambox.[ch]: new widget containing a
	GimpHistogramView and two range spinbuttons (as known from the
	threshold tool). Users only need to connect to the histogram
	view's "range_changed" signal. The spinbuttons are handled
	internally.

	* app/widgets/gimphistogramview.[ch]: define it's default size in
	the header. Make sure "start" is always smaller than "end". Emit
	"range_changed" in gimp_histogram_view_set_range().

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

	* app/tools/gimpthresholdtool.[ch]: removed the code which
	did the same and use the new widget.

	* app/tools/gimphistogramtool.[ch]: ditto. Removed the "intensity"
	info label. Cleanup.
2002-09-07 17:27:32 +00:00
Michael Natterer cc3bdec2c9 app/widgets/Makefile.am app/widgets/widgets-types.h new dialog widget
2002-08-30  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpviewabledialog.[ch]: new dialog widget featuring
	a title bar containing a stock icon, a description, the viewable's
	name and a preview. Will be used for all viewable related dialogs
	and serves as a common place to control their look & feel.

	* app/tools/gimpimagemaptool.[ch]: removed the code which did
	almost the same and use GimpViewableDialog.

	* app/gui/info-dialog.[ch]: extended the API so it has enough
	information to create a GimpViewableDialog.

	* app/gui/channels-commands.c
	* app/gui/convert-dialog.c
	* app/gui/gradient-editor-commands.c
	* app/gui/image-commands.c
	* app/gui/info-window.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/qmask-commands.c
	* app/gui/resize-dialog.c
	* app/gui/vectors-commands.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: use GimpViewableDialogs

	* themes/Default/gtkrc: apply the dialog style to "*Gimp*Dialog*",
	not only "*GimpDialog*" so it covers GimpViewableDialog.
2002-08-30 21:00:42 +00:00
Michael Natterer e62c2c58c7 bumped version number to 1.3.9
2002-08-22  Michael Natterer  <mitch@gimp.org>

	* configure.in: bumped version number to 1.3.9

	* app/tools/gimpbycolorselecttool.[ch]: removed the ByColorDialog
	and cleaned up the code.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpselectioneditor.[ch]: added new widget
	GimpSelectionEditor with same same functionality as the old
	ByColorDialog which can be open all the time (independent of the
	active tool).

	* app/widgets/gimppreview.[ch]: added gimp_preview_new_by_type()
	so previews can be created without a viewable.

	* app/widgets/gimppreview-utils.[ch]: changed
	gimp_preview_type_from_viewable() to
	gimp_preview_type_from_viewable_type().

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c
	* app/gui/menus.c: register the new dialog type.
2002-08-22 12:49:01 +00:00
Sven Neumann 3aae39405e app/base/Makefile.am automake-1.6 seems to use yet another variable to
2002-06-08  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/paint-funcs/Makefile.am: automake-1.6 seems to use yet another
	variable to pass flags to the assembler (bug #84514). Define
	AM_CCASFLAGS like AM_ASFLAGS to satisfy all versions of automake.

	* configure.in
	* all Makefiles: removed STRIP_BEGIN and STRIP_END since it's a
	GNU make extension that we don't really need and newer versions of
	automake don't seem to like it.
2002-06-07 23:00:46 +00:00
Michael Natterer ff722d0cff removed unused commented out prototype.
2002-05-08  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.h: removed unused commented out prototype.

	* app/core/gimpimage.c (gimp_image_set_tattoo_state): fixed it
	again after I have b0rked it when using vectors instead of paths.

	* app/display/gimpdisplay.c: some comments and one more
	g_return_val_if_fail().

	* app/widgets/gimpimagedock.c: more fixes for the subtle
	active_image <-> active_display difference.

	* tools/pdbgen/pdb/display.pdb (gimp_display_delete): call
	gimp_display_delete() instead of just destroying it's shell (eek).

	* app/pdb/display_cmds.c: regenerated.

	Added a special view type for the image list so we can implement
	stuff like deleting images which are left over from crashed
	plug-ins:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpimageview.[ch]: new widget: a view on the image
	container.

	* app/gui/Makefile.am
	* app/gui/images-commands.[ch]: new callbacks for it's context menu.

	* app/gui/dialogs-constructors.c: use the new widget instead of
	plain GimpContainerViews.

	* app/gui/menus.c: added an item_factory for it.
2002-05-08 12:39:01 +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 adef3095c1 app/widgets/Makefile.am new file containing
2002-03-22  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimppreview-utils.[ch]: new file containing
	gimp_preview_type_from_viewable() so we don't need to include
	*all* vieable and preview subclasses in gimppreview.c

	* app/widgets/gimppreview.c: gimp_preview_set_viewable: never
	unset the drag source if the viewable is set to NULL (fixes dock
	tabs, thanks to sjburges), also check the passed viweable's type.

	* themes/Default/gtkrc: set the paned handle_size to 6 pixels, so
	it has the same size as the dock_separator.

	* etc/gtkrc_user: set both to 5 here, also fiddle around with
	the global focus padding and the GtkOptionMenu indicator.
2002-03-22 15:47:59 +00:00
Sven Neumann 3db3dff47e app/base/Makefile.am app/base/base-enums.c app/core/Makefile.am
2002-03-19  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/base/base-enums.c
	* app/core/Makefile.am
	* app/core/core-enums.c
	* app/widgets/Makefile.am
	* app/widgets/widgets-enums.c: purely cosmetic change.

	* app/paint/Makefile.am
	* app/paint/paint-enums.[ch]: generate paint-enums.c with registered
	enums. Skip GIMP_BRUSH_PRESSURE and GIMP_CUSTOM_CONVOLVE so they
	don't get exported to libgimp and are not registered as enum values.

	* tools/pdbgen/pdb/paint_tools.pdb: removed special casing of
	GimpBrushApplicationMode and GimpConvolveType since the forbidden
	values are now skipped anyway.

	* libgimp/gimpcompat.h: removed compat defines for the forbidden
	enum values. They shouldn't have been used.

	* app/tools/Makefile.am
	* app/tools/tools-enums.[ch]: generate tools-enums.c with registered
	enums.

	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.

	* app/paint/gimpclone.[ch]
	* app/paint/gimpconvolve.h
	* app/paint/gimpdodgeburn.h
	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.[ch]
	* app/tools/gimpdodgeburntool.c
	* app/tools/paint_options.c: changed accordingly. Added more enum
	radio frames and enum option menus.
2002-03-19 19:17:31 +00:00
Sven Neumann b4768836c7 app/widgets/Makefile.am use gimp_mkenums to create widgets-enums.c, added
2002-03-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-enums.[ch]: use gimp_mkenums to create
	widgets-enums.c, added it to CVS since it contains translatable
	messages now.

	* app/widgets/gimpenummenu.[ch]: added new functions
	gimp_enum_radio_box_new() and gimp_enum_radio_frame_new() that create
	groups of radio buttons out of enum types.

	* app/core/core-enums.[ch]: registered more enums.

	* app/paint/gimpdodgeburn.h
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/transform_options.[ch]: use gimp_enum_radio_frame_new()
	for some tool options.
2002-03-18 22:26:41 +00:00
Sven Neumann 26578e757c define GIMP_MKENUMS for use in Makefile.am.
2002-03-17  Sven Neumann  <sven@gimp.org>

	* configure.in: define GIMP_MKENUMS for use in Makefile.am.

	* tools/Makefile.am
	* tools/gimp-mkenums: a modified version of glib-mkenums that parses
	literal descriptions for enum values out of the header file.

	* app/base/Makefile.am
	* app/base/base-enums.h: added descriptions for the InterpolationType.

	* app/base/base-enums.c: added to CVS although it is generated since
	translatable messages are extracted from this file and translators
	shouldn't need to build stuff.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenummenu.[ch]: new widget to create a GtkMenu or a
	GtkOptionMenu directly from a registered enum.

	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/transform_options.c: use gimp_enum_option_menu_new() for
	the Interpolation menus.
2002-03-17 14:07:54 +00:00
Michael Natterer ef6c0e6b67 app/gui/Makefile.am removed...
2002-03-16  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/colormap-dialog.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcolormapeditor.[ch]: ...and added here.

	* app/gui/dialogs-constructors.c: changed accordingly.

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-menu-convert-grayscale.png
	* themes/Default/images/stock-menu-convert-indexed.png
	* themes/Default/images/stock-menu-convert-rgb.png
	* themes/Default/images/stock-menu-merge-down.png
	* themes/Default/images/stock-menu-reshow-filter.png
	* themes/Default/images/stock-menu-rotate-180.png
	* themes/Default/images/stock-menu-rotate-270.png
	* themes/Default/images/stock-menu-rotate-90.png
	* themes/Default/images/stock-menu-scale.png: new icons from Jimmac.

	* themes/Default/images/stock-menu-resize.png: my own doing. Someone
	needs to look at it :)

	* themes/Default/imagerc
	* libgimpwidgets/gimpstock.[ch]: added them.

	* app/gui/menus.c: use them.
2002-03-16 17:58:19 +00:00
Michael Natterer bb30140a6e treeviewized and undeprecated.
2002-03-16  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-filter-dialog.c: treeviewized
	and undeprecated.

	* app/widgets/Makefile.am
	* app/widgets/gimpconstrainedhwrapbox.[ch]: removed this hack.

	* app/widgets/gimpcontainergridview.[ch]: added "rows" and
	"columns" fields, connect to the viewport's "size_allocate" signal
	and set the size_request of the wrap_box in the callback.
2002-03-16 15:02:23 +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