Commit Graph

48 Commits

Author SHA1 Message Date
Michael Natterer 6ce08f3ce7 app/gui/Makefile.am removed...
2002-03-20  Michael Natterer  <mitch@gimp.org>

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

	* app/gui/help-commands.[ch]: ...and added here.

	* app/gui/menus.c: changed accordingly and added the mem_profile
	debug callback so all debug stuff is in one place.
2002-03-20 20:08:19 +00:00
Michael Natterer 47c5473e46 badly chopped into the new files below. Pass around much more "PlugIn" and
2002-03-20  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in.[ch]: badly chopped into the new files below.
	Pass around much more "PlugIn" and "Gimp" pointers instead of
	using "current_plug_in" and "the_gimp". Needs much more hacking
	though... :(

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-def.[ch]
	* app/plug-in/plug-in-params.[ch]
	* app/plug-in/plug-in-progress.[ch]
	* app/plug-in/plug-ins.[ch]: new files.

	* app/gui/Makefile.am
	* app/gui/plug-in-commands.[ch]
	* app/gui/plug-in-menus.[ch]: ditto.

	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-in-types.h: changed accordingly.

	* app/pdb/procedural_db.c: changed procedural_db_destroy_args()
	so it can be used from plug_in_args_destroy(). Fixed a parasite
	memory leak (or introduced a new SEGV, we'll see...).

	* app/display/Makefile.am: another "truly ugly hack" until the
	plug-in menu stuff is chopped even more...

	* app/gui/commands.[ch]: removed filters_repeat_cmd_callback() here,
	it is now in plug-in-commands.[ch].

	* app/widgets/gimpitemfactory.[ch]: removed all gimp_menu_item_*()
	hacks. We have a GimpItemFactory available in most cases we used
	to call this functions, and can use gimp_item_factors_from_path()
	in all other cases. The item factory stuff needs more work
	anyway...

	* app/app_procs.c
	* app/gimphelp.c
	* app/display/gimpdisplayshell.c
	* app/gui/file-dialog-utils.c
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-save-dialog.[ch]
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/paths-dialog.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly (includes,
	renamed functions and gimp_menu_item_*() removal).

	* app/pdb/fileops_cmds.c
	* app/pdb/help_cmds.c
	* app/pdb/plug_in_cmds.c: regenerated.
2002-03-20 17:46:13 +00:00
Michael Natterer 4ecccfe916 app/core/gimp.c app/core/gimpdocuments.c app/core/gimpmodules.c fixed some
2002-01-31  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.c
	* app/core/gimpdocuments.c
	* app/core/gimpmodules.c
	* app/core/gimppalette.c: fixed some get_memsize()
	implementations, give useful names to some global objects so the
	new mem profile of "the_gimp" looks nicer.

	* app/gui/menus.c
	* app/gui/commands.[ch]: added a "Debug" menu to the toolbox,
	offer a mem profile of the global "Gimp" instance.
2002-01-31 20:08:08 +00:00
Michael Natterer a824143b20 set style properties for dockables.
2001-08-03  Michael Natterer  <mitch@gimp.org>

	* gtkrc: set style properties for dockables.

	* app/main.c: some #if 0'ed code for mem profiling.

	* app/gui/commands.[ch]
	* app/gui/menus.c: added a mem profiling menu entry + callback.

	* app/gui/palette-editor.c: added a #warning as reminder, use
	gtk_dialog_set_has_separator().

	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpcontainerview.[ch]
	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdrawablelistview.[ch]: added some style
	properties to set GimpDockable and friends' borders and spacings.

	* libgimpwidgets/gimppixmap.[ch]
	* libgimpwidgets/gimpsizeentry.[ch]
	* libgimpwidgets/gimpunitmenu.[ch]: GObject stuff, cleanup.

	* app/docindex.c
	* app/errorconsole.c
	* app/gdisplay_color_ui.c
	* app/gimpprogress.c
	* app/module_db.c
	* app/undo_history.c
	* app/user_install.c
	* app/gui/channels-commands.c
	* app/gui/gradient-editor.c
	* app/gui/info-window.c
	* app/gui/tips-dialog.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c
	* app/widgets/gimpdatafactoryview.c
	* libgimp/gimpexport.c
	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* plug-ins/[lots of files]:

	Some perl mass processing applying s/_("Foo")/GTK_STOCK_FOO/g,
	minor manual cleanup in some files.
2001-08-03 19:43:19 +00:00
Michael Natterer d81b47ce70 removed GimpFillType.
2001-06-29  Michael Natterer  <mitch@gimp.org>

	* app/appenums.h: removed GimpFillType.

	* app/gimprc.c: parse the session-info's new "aux-info" field.

	* app/global_edit.[ch]: removed the old "Paste Named" dialog and
	prefixed all functions with "gimp_".

	* app/core/core-types.h: added GimpFillType.

	* app/core/gimpbrush.[ch]: new signal "spacing_changed".

	* app/gui/Makefile.am
	* app/gui/tools-commands.[ch]: one more file cut out of commands.[ch].

	* app/gui/commands.[ch]: removed the tools stuff here.

	* app/gui/brush-select.[ch]
	* app/gui/dialogs-constructors.c: use the new GimpBrushFactoryView
	(see below).

	* app/gui/dialogs-commands.[ch]
	* app/gui/menus.[ch]:

	- Made it 64bit safe again by passing the dialog factory's
	  identifiers as GQuarks, not as guints created by GPOINTER_TO_UINT().
	- Added a "gchar *quark_string" field to GimpItemFactoryEntry
	  which gets transformed into a GQuark by menus_create_item().
	- Added SEPARATOR() and BRANCH() macros which make the *_entries[]
	  arrays more readable.
	- Added a menu item to show/hide GimpImageDock's image menu.
	- Removed file_last_opened_cmd_callback().

	* app/gui/edit-commands.c: the global_edit functions are "gimp_"
	prefixed now.

	* app/gui/file-commands.[ch]: added file_last_opened_cmd_callback()
	here.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpbrushfactoryview.[ch]: new widget: a
	GimpDataFactory subclass with a "spacing" scale.

	* app/widgets/gimpcontainereditor.[ch]:

	- Connect to the GimpContainerView's "select_item",
	  "activate_item" and "context_item" signals here once instead of
	  in each subclass and dispatch them via new virtual functions.
	- Added a convenience function which makes DND to the buttons much
	  less painful for subclasses.

	* app/widgets/gimpbufferview.c
	* app/widgets/gimpdatafactoryview.[ch]: changed accordingly.

	* app/widgets/gimpdialogfactory.[ch]:

	- Added gimp_dialog_factory_dialog_raise() which can raise
	  toplevel dialogs _and_ dockables (and creates them if they are
	  not open yet).
	- Keep track of all created dialogs (not only toplevels).
	- Added an "aux_info" field to GimpSessionInfo which is a GList of
	  gchar* and is saved in sessionrc.
	- Remember if GimpImageDock's image menu is visible by using an
	  aux_info string.
	- The code did not become nicer with all those new constraints. I
	  have to add comments before I forget how it works.

	* app/widgets/gimpdockbook.c: set the state of the "Show Image Menu"
	menu item before popping up the item factory.

	* app/widgets/gimpimagedock.[ch]: added
	gimp_image_dock_set_show_image_meu().

	* plug-ins/gdyntext/gdyntext.c
	* plug-ins/perl/examples/fit-text
	* plug-ins/perl/examples/terral_text
	* plug-ins/perl/examples/tex-to-float: register all text rendering
	plug-ins under <Image>/Filters/Text

	* app/pdb/brush_select_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/edit_cmds.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/enums.pl
	* po/POTFILES.in: changed according to all the stuff above.
2001-06-29 19:25:03 +00:00
Michael Natterer d26c26686e app/Makefile.am removed.
2001-06-26  Michael Natterer  <mitch@gimp.org>

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

	* app/tools/Makefile.am
	* app/tools/gimpcolorbalancetool-transfer.[ch]: added.

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

	* app/base/Makefile.am
	* app/base/tile-manager-crop.[ch]: formerly known as crop_buffer().

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

	* app/context_manager.[ch]: added the global clipboard and the
	named buffer list here.

	* app/app_procs.c: don't call color_transfer_init() and don't free
	the buffer stuff (done by the context manager now).

	* app/errorconsole.c: don't #include "gui/commands.h"

	* app/global_edit.[ch]: removed lots of stuff which is now done by
	gui/edit-commands.* or the new GimpBuffer object. The "paste
	named" dialog will go away and this file will be moved to core/
	soon.

	* app/image_new.c: no need to declare the global_buffer extern any
	more.

	* app/qmask.c: don't #include "global_edit.h"

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpbuffer.[ch]: new object (aka named buffer)

	* app/core/gimpcontext.[ch]: added a GimpBuffer attribute.

	* app/core/gimpimage.[ch]: one s/int/gboolean/.

	* app/core/gimppattern.c: hmm...

	* app/gui/commands.[ch]: split up in small files:

	* app/gui/Makefile.am
	* app/gui/edit-commands.[ch]
	* app/gui/file-commands.[ch]
	* app/gui/image-commands.[ch]
	* app/gui/select-commands.[ch]
	* app/gui/view-commands.[ch]: new files.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: added the named buffer list & grid.

	* app/gui/file-new-dialog.[ch]
	* app/gui/menus.c
	* app/gui/palette-editor.c
	* app/gui/test-commands.c: changed accordingly.

	* app/pdb/edit_cmds.c
	* tools/pdbgen/pdb/edit.pdb: changed for the global_edit stuff.

	* app/widgets/Makefile.am
	* app/widgets/gimpbufferpreview.[ch]
	* app/widgets/gimpbufferview.[ch]
	* app/widgets/gimpcontainereditor.[ch]: new widgets.

	* app/widgets/gimpcontainerview-utils.c
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpdnd.[ch]
	* app/widgets/gimpdrawablepreview.c
	* app/widgets/gimplayerlistview.c
	* app/widgets/gimppreview.c
	* app/widgets/widgets-types.h: changed accordingly for the new
	GimpBuffer object and it's views, misc. cleanups.

	* pixmaps/Makefile.am
	* pixmaps/paste-as-new.xpm
	* pixmaps/paste-into.xpm
	* pixmaps/paste.xpm: new pixmaps (they all look the same... Tigert? ;-)

	* po/POTFILES.in: added the new files.
2001-06-26 12:09:43 +00:00
Michael Natterer c1e2f4e21c app/Makefile.am removed.
2001-04-20  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/layers_dialogP.h: removed.

	* app/gimpui.[ch]: new function gimp_menu_position().

	* app/disp_callbacks.c
	* app/interface.c
	* app/gui/layers-dialog.c: popup the image and layers menu with
	gtk_item_factory_popup_with_data() instead of gtk_menu_popup()
	and pass the GimpImage we're operating on as data.

	For accelerators, which are invoked without context, we catch key
	press events and attach the context to the GtkItemFactory.

	* app/gui/Makefile.am
	* app/gui/layers-commands.[ch]: common layer callbacks (instead of
	separate ones in commands.c and layers-dialog.c

	* app/gui/commands.[ch]
	* app/gui/layers-dialog.[ch]: removed the menu callbacks here.

	* app/gdisplay.h
	* app/lc_dialog.c
	* app/gui/channels-dialog.c
	* app/gui/layer-select.c
	* app/gui/menus.c
	* po/POTFILES.in: changed accordingly.
2001-04-20 16:27:44 +00:00
Michael Natterer 9147176686 app/devices.[ch] app/gui/about-dialog.[ch] app/gui/preferences-dialog.[ch]
2001-04-18  Michael Natterer  <mitch@gimp.org>

	* app/devices.[ch]
	* app/gui/about-dialog.[ch]
	* app/gui/preferences-dialog.[ch]
	* app/gui/tips-dialog.[ch]: return a GtkWidget from the constructor.

	* app/gui/dialogs.c
	* app/gui/dialogs-constructors.[ch]: register them with the dialog
	factory.

	* app/gui/commands.[ch]
	* app/gui/menus.c: removed their old callbacks.

	* app/gui/brush-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-editor.[ch]: no need to show or raise the shell
	(that's done by the dialog factory now).

	* app/widgets/gimpdialogfactory.c: actually do what the
	"singleton" and "session_managed" flags say.
2001-04-18 16:39:34 +00:00
Michael Natterer f283b957b1 app/session.[ch] removed the old dialog session management code...
2001-04-17  Michael Natterer  <mitch@gimp.org>

	* app/session.[ch]
	* app/gimprc.c: removed the old dialog session management code...

	* app/widgets/gimpdialogfactory.[ch]: ...and manage all dialogs here.

	* app/gui/dialogs-constructors.[ch]: dialog factory compliant
	constructors for all session managed toplevel dialogs.

	* app/brush_select.[ch]
	* app/devices.[ch]
	* app/docindex.[ch]
	* app/errorconsole.[ch]
	* app/gradient_select.[ch]
	* app/info_dialog.c
	* app/lc_dialog.[ch]
	* app/palette.[ch]
	* app/pattern_select.[ch]
	* app/toolbox.[ch]
	* app/tools/tool_options_dialog.[ch]: all dialog constructors have
	to return the dialog now (even the legacy ones that will go away).
	Removed the session management code as this is now done for the
	dialogs, not by them.

	* app/app_procs.c
	* app/color_select.c
	* app/commands.[ch]
	* app/indicator_area.c
	* app/menus.c
	* app/palette_select.c
	* app/preferences_dialog.c
	* app/gui/dialogs.c
	* app/gui/dialogs-commands.[ch]
	* app/gui/gui.c
	* app/tools/gimptool.c
	* app/widgets/gimpdock.c: changed accordingly.
2001-04-17 16:00:27 +00:00
Michael Natterer 8e3259d084 app/apptypes.h app/Makefile.am new widget. The upcoming replacement for
2001-02-27  Michael Natterer  <mitch@gimp.org>

	* app/apptypes.h
	* app/Makefile.am
	* app/gimpdrawablelistview.[ch]: new widget. The upcoming replacement
	for the layers and channels dialogs.

	* app/test_commands.[ch]: put the test dialogs here...

	* app/commands.[ch]: ... and made this one clean again.

	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.[ch]: some signal handling fine tuning.

	* app/gimpimage.[ch]: emits "active_layer_changed" and
	"active_channel_changed" signals now. The semantics of
	gimage->active_layer and gimage->active_channel have changed a bit.
	We now have either an active layer _or_ and active channel (there
	is no active layer any more if a channel is active).

	* app/channel_ops.c
	* app/floating_sel.c
	* app/gdisplay.c
	* app/layers_dialog.c
	* app/menus.c: changed accordingly.

	* app/tools/gimpcolorpickertool.c: actually assign the draw_class
	vraiable in the class_init function.

	* app/tools/gimpdrawtool.[ch]
	* app/tools/tool.c: removed the _new() functions because these
	objects are abstract superclasses. Did some cleanup.
	Nathan, please configure you editor to _not_ produce any tabs
	in the source code.

	* app/tools/gimppaintbrushtool.[ch]: "blurb" and "help" are tagged
	with _(), not N_(). Put the register function to the header.

	* po/POTFILES.in: made it compile again.
2001-02-27 14:14:13 +00:00
Michael Natterer 04f7131848 added cmd_callbacks for the toolbox and the preferences dialog.
2001-02-24  Michael Natterer  <mitch@gimp.org>

	* app/commands.[ch]: added cmd_callbacks for the toolbox and
	the preferences dialog.

	* app/context_manager.c: cleanup.

	* app/gimppreview.[ch]: made gimp_preview_render() public.

	* app/gimptoolinfopreview.c
	* app/tools/gimptoolinfo.c: the tool previews look nice now but
	are still ugly implemented (it renders tons of temp_bufs on each
	state change).

	* app/indicator_area.[ch]: pass a context to the constructor.

	* app/menus.c: don't call the toolbox and the prefs dialog
	directly but dispatch via commands.[ch]

	* app/preferences_dialog.[ch]
	* app/toolbox.[ch]: renamed the constructor / raise function, cleanup.

	* app/tools/color_picker.c: tried to get the shortcut working again.

	* app/tools/paint_options.c: the brush dialog's paint options
	are shown/hidden from the context manager now.
2001-02-24 02:42:09 +00:00
Michael Natterer 69ba1531cb app/Makefile.am app/apptypes.h new widget.
2001-02-23  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/apptypes.h
	* app/gimptoolinfopreview.[ch]: new widget.

	* app/gimppreview.c
	* app/tools/gimptoolinfo.c
	* app/gimpdnd.c: changed for the tool info preview. Still buggy
	and looks a bit funny at the moment :-)

	* app/commands.[ch]
	* app/menus.c: small new feature: shift-X toggles the whole context.
2001-02-23 03:29:53 +00:00
Michael Natterer 8710fa8941 app/commands.[ch] first version of the new layers and channels dialogs.
2001-02-19  Michael Natterer  <mitch@gimp.org>

	* app/commands.[ch]
	* app/menus.c: first version of the new layers and channels dialogs.

	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c: allow creation with a NULL container.

	* app/gimpdnd.[ch]: added generic DND functions for all drawable
	types (not just setting the DND icon). Started to remove code
	duplication.

	* app/gimpdrawablepreview.c: with some magic calculations and ugly
	assumptions the drawable previews now look exactly like in the old
	L&C dialog.

	* app/gimpimagepreview.c: no need to say "return" at the end of a
	void function.

	* app/gimppreview.[ch]: added the "is_popup" boolean also to the
	default constructor. Call gimp_preview_set_viewable() before
	calculating the preview size.
2001-02-19 22:54:12 +00:00
Michael Natterer 1501e3cf8e app/Makefile.am po/POTFILES.in new widget which will replace the current
2001-02-13  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* po/POTFILES.in
	* app/gimpdatacontainerview.[ch]: new widget which will replace the
	current brush, pattern, ... selections. To really use it, there
	needs to be a GimpDataFactory object (coming soon...)

	* app/commands.[ch]
	* app/menus.c: added test data container views.

	* app/paint_funcs_simd.S: #include the implementation with "", not <>
2001-02-13 13:17:15 +00:00
Michael Natterer 07300cf385 app/Makefile.am app/gradientP.h removed.
2001-02-10  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gradientP.h
	* app/gradient_header.h: removed.

	* app/gimpgradient.[ch]: new object -- bye bye "gradient_t"

	* app/gradients.[ch]: new files for managing the gradient list.

	* app/gradient.[ch]: containes only the gradient editor now (which
	still badly poked aroung in the GimpGradient structure).

	* app/app_procs.c
	* app/apptypes.h
	* app/devices.c
	* app/gimpcontainerlistview.c
	* app/gimpcontext.[ch]
	* app/gimpcontextpreview.[ch]
	* app/gimpdnd.[ch]
	* app/gradient_select.[ch]
	* app/indicator_area.c
	* app/palette_import.c
	* app/pdb/gradient_select_cmds.c
	* app/pdb/gradients_cmds.c
	* app/tools/airbrush.c
	* app/tools/blend.c
	* app/tools/paint_core.c
	* app/tools/paintbrush.c
	* app/tools/pencil.c
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb: changed accordingly, some
	changes to the preview and view stuff.

	* app/gimppreview.[ch]: removed the "context" attribute again
	because it was overkill (a simple gtk_signal-connect_object does
	the same as doing the autoconnection magic inside the GimpPreview
	object).

	* app/commands.[ch]
	* app/menus.c: example views on the gradient container.
2001-02-10 19:35:29 +00:00
Michael Natterer be88b13500 added an (unused) "context" argument and a "set_viewable" function.
2001-02-08  Michael Natterer  <mitch@gimp.org>

	* app/gimppreview.[ch]: added an (unused) "context" argument
	and a "set_viewable" function.

	* app/gimpconstrainedhwrapbox.c: even more evil than before.

	* app/gimpbrushpreview.c
	* app/gimpcontainergridview.c
	* app/gimpcontainerlistview.c
	* app/gimpcontainerview.c
	* app/gimpimagepreview.c
	* app/gimppatternpreview.c: fixed lots of forgotten signal handlers

	* app/commands.[ch]
	* app/menus.c: added "Multi View" dialogs.
2001-02-08 04:16:41 +00:00
Michael Natterer f16c3aef18 app/Makefile.am new widget providing a grid view in the style of the
2001-02-05  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimpcontainergridview.[ch]: new widget providing a grid view
	in the style of the current brush and pattern selections.

	* app/gimpcontainerlistview.[ch]
	* app/gimppreview.[ch]: the constructors take "width" and "height"
	parameters now.

	* app/gimpviewable.c: if the viewable is not able to generate
	a static (cached) preview, create a new one and cache it ourselves.

	* app/gimppattern.c: produce a nice preview.

	* app/temp_buf.[ch]: changed temp_buf_copy_area() to take a
	destination offset instead of a border parameter. This function
	was not used at all before.

	* app/commands.[ch]
	* app/menus.c: test dialogs for the grid view.
2001-02-05 21:52:57 +00:00
Michael Natterer be0e7d119c app/Makefile.am some new files and data types:
2001-02-05  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/apptypes.h: some new files and data types:

	* app/gimppreview.[ch]: new widgets which provides a view
	of a GimpViewable.

	* app/gimpcontainerview.[ch]: new abstract widget base class for
	views of GimpContainers of GimpViewables

	* app/gimpcontainerlistview.[ch]: (still) simple implementation of
	a list view of the container.

	* app/gimpbrush.[ch]
	* app/gimppattern.[ch]: provide dumb implementations of the
	GimpViewable's "preview" method.

	* app/image_render.c: quick bad hack to enable preview sizes which
	are != "preview_size": Always allocate data chunks for previews up
	to 256 pixels width.

	* app/drawable.c: emit the "incalidate_preview" signal from
	drawable_update(). This may cause useless updates at the moment
	but as we want to move from explicit updates to signal-driven
	model-view stuff it's the right thing (TM).

	* app/commands.[ch]
	* app/interface.c
	* app/menus.c: Added a "Test dialogs" menu to the Toolbox.

	* app/pdb/image_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: propagated the new alpha channel stuff
	to the autogenerated files.
2001-02-05 15:22:20 +00:00
Michael Natterer 9ccab8523a app/commands.[ch] app/fileops.[ch] app/gdisplay.c Implemented "Save a Copy
2001-01-02  Michael Natterer  <mitch@gimp.org>

	* app/commands.[ch]
	* app/fileops.[ch]
	* app/gdisplay.c
	* app/menus.c: Implemented "Save a Copy as..." which saves the image
	without changing it's filename.

	* app/layers_dialogP.h: export layers_dialog_layer_merge_query()
	here instead of defining it in commands.c

	* TODO.xml: mark this entry as done :)
2001-01-01 23:55:45 +00:00
Manish Singh a7aca4cb97 disabled display filters code, since it is unfinished
-Yosh
2000-12-24 20:27:04 +00:00
Sven Neumann dfa2bed505 Last-minute cleanup:
2000-12-16  Sven Neumann  <sven@gimp.org>

	Last-minute cleanup:

	* app/gimpdrawableF.h
	* app/gimphistogramF.h
	* app/gimpimageF.h
	* app/gimplistF.h
	* app/gimplutF.h
	* app/gimpobjectF.h
	* app/gimpsetF.h
	* app/layerF.h
	* app/parasitelistF.h: removed these files

	* app/Makefile.am
	* tools/pdbgen/Makefile.am: changed accordingly

	* app/[almost every file]: include cleanup
2000-12-16 21:37:03 +00:00
Michael Natterer c53bbcab1b Made the document index a bit more like the rest of the dialogs:
2000-05-05  Michael Natterer  <mitch@gimp.org>

	Made the document index a bit more like the rest of the dialogs:

	* app/commands.[ch]
	* app/menus.c: added a cmd_callback instead of calling a function
	in docindex.c directly.

	* app/gimprc.c
	* app/session.[ch]: added proper session management.

	* app/app_procs.c
	* app/docindex.[ch]
	* app/docindexif.[ch]: removed another bunch of useless variables
	and functions. Removed the status bar because it was not telling
	very useful stuff. Removed the window position/size from the
	"ideas" file.

	Note: you have to either remove your ~/.gimp-1.1/ideas file or
	remove it's first line or experience a nice endless loop :)
2000-05-05 14:53:38 +00:00
Sven Neumann 99f85a4626 applied gimp-quinet-000308-0, gimp-quinet-000310-0 and gimp-quinet-000322-0
--Sven
2000-03-24 14:54:59 +00:00
Sven Neumann d05156aa2a Ok, Undo History actually makes more sense in the Dialogs menu.
--Sven
2000-03-09 19:58:23 +00:00
Sven Neumann 5fc0b8a9c0 moved Undo History into the Edit menu next to Undo and Redo
--Sven
2000-03-09 19:45:52 +00:00
Sven Neumann 7427a53c95 Layer to Imagesize in C
--Sven
1999-11-27 14:00:26 +00:00
Michael Natterer e46eaf8687 Reorganized the core menu items (everything except <Image>/Filters).
1999-11-20  Michael Natterer  <mitch@gimp.org>

	Reorganized the core menu items (everything except
	<Image>/Filters). Everything is of course trivial to change again,
	so please comment on the new "menu feeling" ;-)

	* app/menus.[ch]:

	- Applied the suggestions collected by Olof.
	- Added "..." to all items which open a dialog.
	- Introduced some additional separators (e.g. in "Dialogs").
	- Reorder some plugins and the color correct tools after
	  initialisation.
	- A menu entry to invoke the tooltips inspector.
	- A debugging menu entry which dumps the menu paths and their help
	  pages (will of course go away when the help sys is consistent).

	There are currently two identical "Help" menus because
	<Toolbox>/Help trashes the menu bar if the toolbox is too narrow
	(gtk doesn't seem to support multi-line menubars, any idea?)

	* app/app_procs.c: call menus_reorder_plugins() after loading the
	plugins to beautify the "Xtns" menu.

	* app/commands.[ch]: reordered some functions to match the new
	menu structure (for easier source navigation) and renamed some to
	be consistent (e.g. all help functions are now called help_*).

	Show/Hide the rulers with ordinary gtk_widget_[show|hide]()
	commands. I've tested it several times and it looks exactly the
	same as the old code which used internal gtk knowledge.

	* app/gdisplay.c: applied the menu changes to
	gdisplay_set_menu_sensitivity().

	* app/gimphelp.[ch]: new public function gimp_context_help() which
	invokes the tooltips inspector. Code cleanup.

	* app/resize.c: changed the dialogs' titles to match the menu entries.

	* app/session.c: renamed the gradient selection cmd callback to be
	consistent with brushes/patterns.

	* app/tools.c: added "..." to the menu paths of the tools which
	have dialogs.

	* app/fileops.c
	* app/channels_dialog.c
	* app/layers_dialog.c
	* app/paths_dialog.c: added some "...".

	* plug-ins/common/align_layers.c
	* plug-ins/common/autostretch_hsv.c
	* plug-ins/common/c_astretch.c
	* plug-ins/common/color_enhance.c
	* plug-ins/common/compose.c
	* plug-ins/common/decompose.c
	* plug-ins/common/mail.c
	* plug-ins/common/normalize.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/dbbrowser/dbbrowser.c
	* plug-ins/fp/fp.c
	* plug-ins/print/print.c
	* plug-ins/rcm/rcm.c: changed the menu paths and added "...".
1999-11-20 12:12:41 +00:00
Michael Natterer b3144e7ccc app_procs.c app/commands.[ch] app/interface.c app/menus.c app/session.c
1999-10-30  Michael Natterer  <mitch@gimp.org>

	* app_procs.c
	* app/commands.[ch]
	* app/interface.c
	* app/menus.c
	* app/session.c
	* app/tools.[ch]: namespace cleanups: changed the
	"tools_options_*" functions to "tool_options_*" and prefixed all
	dialog menu callbacks with "dialogs_*".
	Allow dropping a tool to the tool options dialog.

	* app/bezier_select.c: change the active tool using context
	functions.

	* app/dialog_handler.[ch]: replaced the uppercase datatype names
	by standard mixed upper/lowercase ones. Provide a function to
	register the fileload dialog instead of accessing it as global
	variable.

	* app/disp_callbacks.c: switch to the move tool using context
	functions. Fixed the drop color/pattern functions to convert the
	dropped thing to the dest. image's color space.

	* app/fileops.c: don't export the fileload dialog as global
	variable but register it with the dialog handler instead.

	* app/paths_dialog.[ch]: replaced all the uppercase struct names
	defined here by mixed upper/lowercase. Introduced a
	"set_menu_sensitivity" function like in layers/channels instead of
	calling single button on/off functions from various places.
	Added a menu entry for "Selection to Path".
1999-10-30 10:39:48 +00:00
Michael Natterer 79e27e984a More context & dnd stuff... 1999-10-28 15:05:49 +00:00
Michael Natterer 002aa905db app/Makefile.am app/gimphelp.[ch] new files
1999-09-27  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimphelp.[ch]
	* app/gimpui.[ch]: new files

	* app/interface.[ch]
	* app/preferences_dialog.[ch]

	The GIMP Help System part 1: Press "F1" in any dialog to pop up
	the help page for this dialog.

	Moved the widget constructors from preferences_dialog.[ch] and the
	query boxes from interface.[ch] to gimpui.[ch].

	The dialog constructors take a help_func and a help_data
	parameter and install the "F1" accelerator which emits the new
	"help" signal.

	The "help" signal callback calls help_func(help_data) which finally
	has to call gimp_help() which in turn invokes the help browser.

	Still have to find a proper way to (1) prevent "F1" being assigned
	to some menu item and (2) to catch "F1" while browsing the menu
	trees in order to pop up the help for the selected item.

	* app/menus.c: a <Toolbox>/File/Help... menu item.
	* app/commands.[ch]: a command callback for the "Help..." menu item.

	* app/gimprc.[ch]: new boolean gimprc variable "use_help".

	* app/info_dialog.[ch]: pass a help function and data to the info
	dialog constructor.

	* app/tools.[ch]: store the tools help page names in the tool info
	structure. Export a special tools_help_func() which shows the help
	page for the active tool.

	* app/[all files calling a dialog constructor]: pass the dialog's
	help page to the constructor.

	Most dialogs are now created by gimp_dialog_new() which also sets
	up the action_area and the WM delete event callback, so I removed
	the resp. code from these files.

	Fixed some minor bugs and did some other stuff but didn't change
	any logic except dialog creation.

	* plug-ins/helpbrowser/helpbrowser.c: don't try to call a running
	help browser and don't install any menu path (all done in
	app/gimphelp.[ch] now).
1999-09-27 17:58:10 +00:00
EDT 1999 Austin Donnelly bf8db4adc8 Honest, guv, it's not a feature - it's a tightly integrated package of
Mon Sep 20 12:51:30 EDT 1999  Austin Donnelly  <austin@gimp.org>

	Honest, guv, it's not a feature - it's a tightly integrated
	package of undo system cleanups and fixes.

	NEW FILES:
	* app/undo_history.c: window showing recent undo (and redo) steps
	    available.
	* app/undo_types.h: broken out of undo.h to fix circular includes.

	MODIFIED FILES:
	* app/Makefile.am: compile undo_history.c
	* app/channel.h: use enum for channel undo type, not just magic
	    numbers.
	* app/layer.h: same for layer undos.
	* app/commands.c: edit_show_undo_history_cmd_callback() function to
	    pull up undo history window.
	* app/commands.h: prototype for above.
	* app/gdisplay.c: make undo / redo menu items sensitive according
	    to whether they would do anything.  Would be easy to change
	    the text to say what would be undone/redone, but I don't know
	    the GTK.
	* app/gimpimage.c: new signal emitted by gimage:
	    UNDO_EVENT. gimp_image_undo_event() function to emit it.
	* app/gimpimage.h: prototype for above.
	* app/gimpimageP.h: pushing_undo_group member is now an undo_type,
	    not an int.  Keep undo history widget here too (if created).
	* app/menus.c: add "Edit/Undo history..." to image menu.
	* app/undo.c: new types: enums undo_type and undo_state rather than
	    ints and magic numbers.  All undo_pop_* and undo_free_*
	    functions made static.  New static function
	    undo_type_to_name().  Issue undo event signals on various
	    important events (eg undo pushed, undo popped etc).
	    undo_push() now takes a "dirties_image" arg to say whether
	    image should be dirtied.  Layer moves now dirty the image.  A
	    couple of g_return_if_fails () on undo_pop and undo_redo to
	    assert we're not in the middle of an undo group.
	    undo_get_{undo,redo}_name() to peek at names of top items on
	    undo and redo stacks resp.   undo_map_over_{undo,redo}_stack()
	    to run a function for each item or group on stack.  Layer and
	    channel undos use symbolic names rather than 0 or 1.  Array
	    mapping undo types to names.
	* app/undo.h: split out undo types to undo_types.h.  Prototypes
	    for functions described above.  undo_event_t enum.
	    undo_history_new() prototype lives here too.

	Random other fixes:
	* app/gimpdrawable.c
	* app/image_render.c: default labels in switches to keep egcs happy.

	* app/nav_window.c: some fixes to (sort of) cope with image res !=
	    screen res.  Still needs work to handle non-square pixels
	    properly.

	* app/paths_dialog.c: bad idea to call gimp_image_dirty()
	    directly.  Even though it's currently commented out.
1999-09-20 17:15:20 +00:00
Manish Singh 32772963f1 app/apptypes.h removed trailing enum commas
* app/apptypes.h
* app/pathsP.h: removed trailing enum commas

* app/gdisplay_color.[ch]: added a foreach function to iterate
over the display filter names

* app/gdisplay_color_ui.[ch]: display filter ui stuff (doesn't do
much yet ;)

* app/commands.[ch]
* app/menus.c: hooked the above into the menu system

* app/Makefile.am: added new files

* plug-ins/gimpressionist/preview.c: removed bogus // comment

-Yosh
1999-08-31 02:00:34 +00:00
BST 1999 Andy Thomas 2557c517b1 app/commands.c app/commands.h app/disp_callbacks.c app/gdisplay.c
Thu Aug 12 21:38:53 BST 1999 Andy Thomas <alt@gimp.org>

	* app/commands.c
	* app/commands.h
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/gdisplay.h
	* app/info_dialog.c
	* app/info_dialog.h
	* app/info_window.c
	* app/info_window.h
	* app/menus.c
	* app/scale.c
	* app/scroll.c
	* app/scroll.h
	* app/nav_window.c (new)
	* app/nav_window.h (new)
	* pixmap/dropper.xpm (new)

	New "navigator" image (accessed via <Image>/Window Nav..). This gives
	an outline of the location of the current view on an image. Eg if your
	image window is only showing part of an image then the Window Navigation	window will outline the area viewed. You can "drag" the outlined
	square around the viewport and the main image will scroll. Additional
	a single click outside the square will center the image at that
	location.

	Also started to add additional information to a new page inside the
	Window information dialog (currently only pixel value is shown).

	Both these features are currently work in progress and unfinished.
	In particular the Navigator does not keep in step with changes
	to the basic image (however it does keep in step with image size changes	and if you modify the size of the image viewing window). It also
	does not display the transparent areas of images very nicely.
1999-08-12 22:21:04 +00:00
Michael Natterer 9f92d833f0 Undo/Redo should be sensitive even if there is no layer :-)
1999-07-10  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/gdisplay.c (gdisplay_set_menu_sensitivity): Undo/Redo should
	be sensitive even if there is no layer :-)

	* app/commands.h
	* app/docindex.[ch]
	* app/docindexif.[ch]
	* app/file_new_dialog.[ch]: some #include cleanups.

	* plug-ins/helpbrowser/Makefile.classic: less primitive version.
1999-07-10 11:53:42 +00:00
MEST 1999 Sven Neumann b12614646d app/commands.[ch] app/global_edit.[ch] added "Paste As New" feature that
Tue Jul  6 22:40:16 MEST 1999 Sven Neumann <sven@gimp.org>

        * app/commands.[ch]
        * app/global_edit.[ch]
        * app/menus.c: added "Paste As New" feature that allows to paste
        the current (or a named) buffer to a new image. Still need to
        add PDB call for that...


--Sven
1999-07-06 20:43:52 +00:00
Michael Natterer f1b5e1ae47 namespace cleanups.
1999-06-21  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/context_manager.c: namespace cleanups.

	* app/commands.[ch]
	* app/menus.c: moved the "Toggle Selection" menu entry to "View",
	sprinkled some separators and made the layers/channels/paths popup
	menus consistent with Tigert's last ops buttons change.

	* app/fileops.c
	* app/plug_in.c: check for gdisplay_active() returning NULL in
	some more places.

	* app/[all tool related files]:

	- Turned the ToolAction and ToolState #define's into typedef'ed
	  enums, so the compiler can do some more sanity checking.
	- Removed one more unused global variable "active_tool_layer".
	- Removed some #include's from tools.c.
	- Standardized the individual tools' structure names.
	- Moved showing/hiding the tool options to separate functions.
	- Stuff...

	* app/commands.c
	* app/disp_callbacks.c
	* app/gdisplay.c
	* app/tools.c: fixed the segfaults which happened when the image
	of one of the tools which have dialogs (levels/posterize/...) was
	deleted. My approach was to do stricter sanity checking and to set
	some gdisplay pointers correctly where appropriate, so I can't
	tell exactly where the bug was.
	The curves tool now(??) updates on every _second_ display change
	only, which is really obscure.
	Finding/changing the display to operate on should definitely be
	done by connecting to the user context's "display_changed"
	signal.

	* app/gimpset.c: emit the "remove" signal _after_ removing the
	pointer from the set. If this was not a bug but a feature, please
	let me know, we'll need two signals then.
1999-06-21 22:12:07 +00:00
Michael Natterer 01a045a4c8 app/commands.[ch] app/gdisplay.c for the pleasure of all: a deeper nested
1999-06-01  Michael Natterer  <mitschel@cs.tu-berlin.de>

	* app/commands.[ch]
	* app/gdisplay.c
	* app/menus.c: for the pleasure of all: a deeper nested	submenu ;)

	New <Image>/Layers/Stack submenu. Used the same top/bottom
	shortcuts as in the layers dialog. Bind them to PageUp/Down and
	you will never touch your mouse again to do this.
	I'm thinking of dropping the current <ctrl>+[FBTU] in favour of
	some <modifier>+PageUp/Down combinations. Test it, Tig !)
1999-06-01 20:19:49 +00:00
Austin Donnelly 43639fa0b3 iMon Jan 18 23:36:57 1999 Austin Donnelly <austin@gimp.org>
* app/menus.c: include module browser, plus re-instate the 'swap
	     colors' and other options that got killed by mistake.  Clean
	     up the odd extra separator too.

	* app/color_notebook.c: hide newly created colour selectors so we
	     know the GIMP one will be the default page.

	* app/module_db.[ch]: NEW FILEs: module database / browser.
	* app/Makefile.am: add module_db.[ch] stuff
	* app/app_procs.c: initialise the module_db
	* app/commands.[ch]: callback to create a module browser.
	* app/plug_in.c: move module loading out to module_db.c
	* libgimp/gimpmodule.h: API change: module_init() should return
	     additonal info (author, purpose, date, etc.)   Also optional
	     module_unload() function.
	* modules/colorsel_gtk.c: add module info, plus an unload function

	* modules/Makefile.am: build triangle colour selector module
	* modules/colorsel_triangle.c: NEW FILE: colour selector from
	     Simon Budig <Simon.Budig@unix-ag.org>.

	* MAINTAINERS: changed my email address
1999-01-19 00:03:00 +00:00
Manish Singh 344ffe8e52 Implemented file revert
-Yosh
1999-01-12 01:31:49 +00:00
GMT 1998 Austin Donnelly ccfeb2549d app/commands.[ch] app/edit_selection.c app/gdisplay.[ch]
Sat Dec  5 21:31:57 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>

	* app/commands.[ch]
	* app/edit_selection.c
	* app/gdisplay.[ch]
	* app/gdisplay_ops.[ch]
	* app/image_render.c
	* app/info_window.c
	* app/magnify.c
	* app/menus.c
	* app/scale.c: image rendering now happens with float scale
	factors, independent in X and Y axes.  Turning on dot-for-dot in view
	menu does what gimp always used to do (ie one image pixel becomes
	one monitor pixel).  Dot-for-dot is on by default so people
	shouldn't notice any difference unless they load an image that's
	not at 72 dpi and also turn off dot-for-dot.

	* app/app_procs.c
	* app/gimprc.[ch]
	* app/preferences_dialog.c: new gimprc options
	(monitor-xresolution <float>) and corresponding
 	(monitor-yresolution <float>).  Uglyness in preferences dialog to
	add a "Monitor" page to the notebook, allowing user to set their
	monitor's resolution or take it from the X server instead.  This
	badly needs cleaned up :(

	* plug-ins/newsprint/newsprint.c: oops - this hasn't been working
	for grayscale images since my last checkin.  Now fixed.
1998-12-05 21:48:37 +00:00
Sven Neumann 6805b3be8f The statusbar can now be switched off just like the rulers.
--Sven
1998-08-05 12:38:11 +00:00
Sven Neumann 5ebfaaae74 Applied a patch from Simon.Budig@unix-ag.org (gimp-simon-220598-0).
Cosmetic changes to the script-fu dialog.

Added session-managment to the error-console.


--Sven
1998-08-02 19:05:02 +00:00
CDT 1998 Larry Ewing db79dc64df app/bezier_select.c app/commands.[ch] app/devices.c app/disp_callbacks.c
Sun Jun 21 15:16:46 CDT 1998 Larry Ewing <lewing@gimp.org>

	* app/bezier_select.c
	* app/commands.[ch]
	* app/devices.c
	* app/disp_callbacks.c
	* app/interface.c
	* app/menus.c
	* app/pixmaps.h
	* app/tools.[ch]
	* app/undo.c: Lots of changes to the way tools are intialized and
	accessed.  All information about a tool type is now contained in a
	single ToolInfo array.  There are still some small issues to
	adress about tool groups and we need some way of getting menu
	ordering/grouping to work better (plug-ins need this too).  There
	is still much to be done, but this is the next in cleaning up the
	tools.

	* app/posterize.[ch]
	* app/threshold.[ch]
	* app/histogram_tool.[ch]
	* app/hue_saturation.[ch]
	* app/levels.[ch]
	* app/brightness_contrast.[ch]
	* app/by_color_select.[ch]
	* app/color_balance.[ch]
	* app/curves.[ch]: Changed the *_initalize function prototypes from
	gpointer to GDisplay, to allow better type chacking and provide a
	uniform interface for all the dialog tools.
1998-06-21 20:17:21 +00:00
Tim Janik 11269e1e69 use GtkAccelLabel when creating a menuitems label seperatedly.
Sun Jun  7 11:04:38 1998  Tim Janik  <timj@gtk.org>

        * app/gradient.c (cpopup_create_menu_item_with_label): use GtkAccelLabel
        when creating a menuitems label seperatedly.

        * app/commands.h:
        * app/commands.c:
        (tips_dialog_cmd_callback):
        (filters_repeat_cmd_callback):
        (tools_select_cmd_callback): make use of the callback_action argument.

        * app/main.c (main): removed gtk_accelerator_table_set_mod_mask(),
        since gtk provides decent default values now.

        * app/layers_dialog.c:
        * app/interface.c:
        * app/indexed_palette.c:
        * app/channels_dialog.c:
        * app/buildmenu.c:
        conversions for use of GtkAccelGroup.

        * app/buildmenu.c:
        * app/gradient.c:
        installed accelerators are locked, because these code portions don't
        support accelerator saving.

        * ChangeLog:
        * ChangeLog.pre-1-0: ChangeLog split up.
1998-06-07 13:55:36 +00:00
Owen Taylor f6a5a9383c app/Makefile.am app/app_procs.c app/brushes.c app/commands.[ch]
Fri Jun  5 22:37:40 1998  Owen Taylor  <otaylor@gtk.org>

	* app/Makefile.am app/app_procs.c app/brushes.c app/commands.[ch]
	  app/disp_callbacks.c app/gdisplay.[ch] app/gimprc.c
	  app/interface.[ch] app/menus.c app/paint_core.[ch]
	  app/paintbrush.c app/palette.c app/scroll.c
	  app/tools.[ch] app/undo.c

	- Added two new dialogs - input devices; (GtkInputDialog)
	  and DeviceStatus - which shows the tool/color for
	  each device.

	- Added device_status_update() call that gets called
	  whenever the tool/color etc. are changed.

	- Added ~/.gimp/devicerc file to store settings

	- Code to draw cursor on canvas for non XFree86 XInput
	  where device can't control cursor and extended input
	  device simultaneously.

	- Changed input handling so that we always use the pointer
	  position from the device, not from gdk_input_window_get_cursor,
	  so that motion and cursor position sync.

	- Various changes so things work with non-integer coordinates

	- Pay attention to pressure and tilt in basic tool support.

        - New paint mode PRESSURE that changes the brush based on
	  the brush pressure

	- Left in a few XInput hacks that should be removed, but I no longer
	  remember what they are.
1998-06-06 03:49:01 +00:00
Sven Neumann 4b5f5608bb Added a "Add Alpha Channel" menu-entry to the Image-menu. To be exact, I
added it twice, once under <Image>->Layers and additionally under
<Image>->Image->Alpha

Now it is possible to work on a single-layer image without opening the
Layers-dialog for adding an alpha channel.


--Sven
1998-04-03 11:58:04 +00:00
Sven Neumann a19b750c45 Implemented gimp_palette_set_default_colors and
gimp_palette_swap_colors as pdb-calls and bound menu-entries and
keybindings to them.
(gimp-sven-980216-0.patch)

--Sven
1998-03-01 19:38:25 +00:00
Elliot Lee 32cefec8f7 Initial revision 1997-11-24 22:05:25 +00:00