2003-02-21 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-render.c (render_image_rgb):
replaced a for-loop with a call to memcpy().
* app/display/gimpdisplay.c: use g_memdup() instead of g_new()
followed by memcpy().
2003-02-21 Michael Natterer <mitch@gimp.org>
Refactored the GimpDisplayShell update/draw code:
* app/display/gimpdisplayshell.[ch]: removed the display_areas
list which used to hold the GimpAreas to update. Instead, simply
queue draws using gtk_widget_queue_draw[_area]() in
gimp_display_shell_expose_area(), _expose_full() and
_expose_guide(). Made all _draw() functions public because they
are now called from the "expose_event" handler. Removed rendering
from gimp_display_shell_flush() because stuff is now flushed
automatically by the gtk idle renderer.
* app/display/gimpdisplayshell-callbacks.c
(gimp_display_shell_canvas_expose): draw everything here (the code
removed from gimp_display_shell_flush() without the GimpArea list).
(gimp_display_shell_canvas_tool_events): return "return_val", not
TRUE if gimp->busy is TRUE. Fixes unupdated (windowk bg color)
display areas. Fixes bug #106595.
* app/display/gimpdisplay.c
* app/display/gimpdisplayshell-cursor.c
* app/display/gimpdisplayshell-filter-dialog.c
* app/display/gimpdisplayshell-handlers.c
* app/display/gimpdisplayshell-selection.c
* app/gui/view-commands.c: changed accordingly. Removed calls to
gimp_display_shell_flush() all over the place.
* app/display/gimpdisplayshell-scroll.c: replaced lots of code by
a single call to gdk_window_scroll().
2003-02-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-18 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/procedural_db.pdb
* app/pdb/procedural_db_cmds.c: use regfree() to free the regex
pattern buffer.
* app/widgets/gimpdnd.c (gimp_dnd_data_dest_add): unref the
GtkTargetList after adding it to the widget.
* app/core/gimpimage.c (gimp_image_get_new_preview): initialize
all fields of the mask pixel_region.
* app/core/gimpviewable.c (gimp_viewable_get_new_preview_pixbuf):
pass a destroy notifier to gdk_pixbuf_new_from_data() so that the
pixel data is freed with the pixbuf.
* libgimptool/gimptool.c (gimp_tool_class_init): register a
finalizer that unrefs the GimpToolControl object.
* app/widgets/gimpenummenu.c (gimp_enum_stock_box_new_with_range):
free the generated stock_id.
2003-02-17 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.[ch] (gimp_image_position_*): added
"undo_desc" parameters.
* app/core/gimpimage-undo-push.c: changed accordingly.
* app/widgets/gimpitemlistview.[ch]: moved the item stack
manipulation function pointers from the instance to the class
struct. Added lots of descriptive strings to be used by tooltips
and undo steps.
* app/widgets/gimpchannellistview.c
* app/widgets/gimpitemlistitem.c
* app/widgets/gimplayerlistview.[ch]
* app/widgets/gimpvectorslistview.c
* app/gui/dialogs-constructors.c
* app/gui/layers-commands.[ch]
* app/gui/vectors-commands.c: changed accordingly. Cleanup.
2003-02-17 Michael Natterer <mitch@gimp.org>
* app/core/gimpedit.c (gimp_edit_fill): pass more detailed
undo_desc strings instead of always "Fill".
* app/core/gimpimage-mask-select.c: changed undo_desc strings
to match the already existing blurbs of the selection tools.
2003-02-17 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-merge.[ch]: added "const gchar *undo_desc" to
gimp_image_merge_layers() so the undo steps say "Merge Down",
"Flatten Image" etc. instead of always "Merge Layers".
2003-02-14 Michael Natterer <mitch@gimp.org>
Fixed most of the bugs the Script-Fu logo scripts triggered:
* app/core/gimpdrawable-bucket-fill.[ch]
(gimp_drawable_bucket_fill): added "gboolean do_seed_fill"
parameter instead of assuming TRUE.
(gimp_drawable_bucket_fill_full): moved "color" and "pattern"
parameters to the end.
* app/tools/gimpbucketfilltool.c
* app/display/gimpdisplayshell-dnd.c
* app/widgets/gimpdrawablelistview.c: changed accordingly.
* tools/pdbgen/pdb/misc_tools.pdb: only pass TRUE if the selection
is empty. Restores old PDB behaviour.
* app/core/gimpimage-undo.c (gimp_image_undo_group_end): return
early if gimage->undo_on is FALSE. Fixes bogus criticals.
* app/core/gimpimage.c (gimp_image_add_[layer|channel|vectors]):
clamp the passed position to sane values before calling
gimp_container_insert() (Scripts adding layers at wrong indices
are broken but should not crash the core).
* tools/pdbgen/pdb/paint_tools.pdb: need to copy the relevant
paint parameters from the current context now that the paint
options are contexts themselves.
* tools/pdbgen/pdb/palette.pdb: removed useless includes.
(Mostly) fixed text PDB functions:
* app/text/gimptext-compat.[ch] (text_render): don't set
text->font_size = -1 but get the size from the PangoFontDescrition.
(text_get_extents): return the logical_rect, not the ink_rect
because the size of the created text layer will be the logical_rect.
* tools/pdbgen/pdb/text_tool.pdb: removed text_fontname_create()
utility function and the usage of pass_through and implement all
invokers in-place, using the correct parameters.
* plug-ins/script-fu/siod-wrapper.c: fixed BG-IMAGE-FILL compat
define so we can BG fill again. Cleaned up color handling code.
* plug-ins/script-fu/scripts/coolmetal-logo.scm
* plug-ins/script-fu/scripts/glossy.scm
* plug-ins/script-fu/scripts/land.scm
* plug-ins/script-fu/scripts/lava.scm
* plug-ins/script-fu/scripts/test-sphere.scm: use new gradient names.
* app/pdb/misc_tools_cmds.c
* app/pdb/paint_tools_cmds.c
* app/pdb/palette_cmds.c
* app/pdb/text_tool_cmds.c: regenerated.
2003-02-14 Sven Neumann <sven@gimp.org>
* app/core/gimplayermask.c (gimp_layer_mask_duplicate): return the
duplicate, not the original mask. Fixes bug #106010.
2003-02-13 Sven Neumann <sven@gimp.org>
* app/core/core-enums.h: fixed use of proxy-resume and proxy-skip
trigraphs. We should get rid of these, they are so confusing.
* app/core/core-enums.c: regenerated.
* libgimpproxy/gimpproxytypes.h: this file was regenerated for no
good reason.
2003-02-12 Michael Natterer <mitch@gimp.org>
Moved the undo system to the core: Keep GimpUndoStack objects as
undo and redo stack. Use GimpUndo objects as members of the
stacks. GimpUndoStack is derived from GimpUndo and keeps undo
groups, so undo group handling is much simpler than before
(the whole group is just a single GimpUndo object on the
stack and not everything between group boundary markers).
* app/Makefile.am
* app/undo_types.h: removed.
* app/config/gimpcoreconfig.[ch]: added "gulong undo_size".
* app/config/gimprc-blurbs.h: and its blurb.
* app/core/core-enums.[ch]: added GimpUndoMode and GimpUndoType.
* app/core/core-types.h: removed UndoType, added GimpUndoAccumulator,
GimpUndoPopFunc and GimpUndoFreeFunc.
* app/core/gimpundo.[ch]: do everything the old "Undo" struct did.
Removed the virtual push() function and added free().
* app/core/gimpundostack.[ch]: keeps the new undo/redo stacks
and also acts as undo group.
* app/core/gimpimage-undo.[ch]: moved the undo apparatus here.
* app/core/gimpimage.[ch]: removed the old stuff.
* app/core/gimpmarshal.list: added marshaller needed for GimpUndo.
* app/undo.[ch]: removed the whole undo mechanism. Only the
actual undo pushing functions are left.
* app/undo_history.c
* app/gui/edit-commands.c
* app/gui/file-commands.c
* app/gui/image-menu.c
* app/gui/preferences-dialog.c
* app/tools/gimpeditselectiontool.c: changed accordingly.
2003-02-10 Manish Singh <yosh@gimp.org>
* app/plug-in/plug-in.[ch]: added hooks for running plug-ins under
a memory debugger. Also, removed the args array from the PlugIn
structure, replacing with simply a variable for the path to the
plug-in (and one for a precalculated basename).
* app/plug-in/plug-in-debug.[ch]: helper routines for the above
* app/plug-in/plug-in-message.c
* app/plug-in/plug-in-proc.c
* app/plug-in/plug-in-progress.c: reflect new and renamed args members
* app/plug-in/Makefile.am: added plug-in-debug.[ch]
* app/core/core-types.h: added forward declaration for GimpPlugInDebug
* app/core/gimp.[ch]: added structure member for GimpPlugInDebug
* devel-docs/debug-plug-ins.txt: documented new feature
2003-02-10 Michael Natterer <mitch@gimp.org>
* app/tools/tool_options.[ch]: added a "const gchar *extension"
parameter to gimp_tool_options_[de]serialize(). Default to
"default" if NULL is passed.
* app/tools/tool_manager.[ch]: load the tool_options from the
default files in tool_manager_restore(), added tool_manager_save()
which saves the default files.
* app/app_procs.c: call tool_manager_save() on app exit.
* app/gui/tool-options-dialog.c: pass "user" when loading/saving
the user defaults. Changed tooltips of the load & save buttons.
2003-02-09 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontext.[ch]: simplified everything a lot by
merging the public GimpContextPropType enum with the internal
anonymous object property id enum. Removed the internal copy_prop
functions and handle property copying in a big switch() in
gimp_context_copy_property(). Removed the separate signal
connections for each property of the parent context and do the
same using a single "notify" handler. Emit "notify" signals all
over the place. Removed internal arrays which are no longer
needed due to enum merge and copy_property simplification.
Removed the array of signal names and use g_signal_name().
Removed gimp_context_unset_parent() and allow "parent" being NULL
in gimp_context_set_parent().
* app/tools/tool_manager.c
* app/widgets/gimpdevices.c: changed accordingly.
* libgimptool/gimptooltypes.h: changed GimpToolOptionsGUIFunc to
return a GtkWidget (the created tool options widget).
* libgimptool/gimptoolmodule.c: #include <gtk/gtk.h>
* app/tools/tool_options.[ch]: removed the "main_vbox" from the
GimpToolOptions struct. Changed gimp_tool_options_gui() to create
and return the main_vbox.
* app/tools/tool_manager.c: create the "This Tool has no Options"
label here if NULL was passed as "options_gui_func". Attach the
options widget to the tool_options object using
g_object_set_data().
* app/gui/tool-options-dialog.c: changed accordingly.
* app/tools/gimpairbrushtool.c
* app/tools/gimpblendoptions.[ch]
* app/tools/gimpbucketfilloptions.[ch]
* app/tools/gimpclonetool.c
* app/tools/gimpcolorpickeroptions.[ch]
* app/tools/gimpconvolvetool.c
* app/tools/gimpcropoptions.[ch]
* app/tools/gimpdodgeburntool.c
* app/tools/gimperasertool.c
* app/tools/gimpflipoptions.[ch]
* app/tools/gimpinkoptions.[ch]
* app/tools/gimpmagnifyoptions.[ch]
* app/tools/gimpmeasureoptions.[ch]
* app/tools/gimpmoveoptions.[ch]
* app/tools/gimpselectionoptions.[ch]
* app/tools/gimpsmudgetool.c
* app/tools/gimptextoptions.[ch]
* app/tools/gimptransformoptions.[ch]
* app/tools/gimpvectoroptions.[ch]
* app/tools/paint_options.[ch]: return the options vbox from
all tool_options_gui functions.
2003-02-05 Sven Neumann <sven@gimp.org>
* libgimpbase/Makefile.am
* libgimpbase/gimputils.[ch]: added new files that hold the new
gimp_utf8_strtrim() routine; it might be useful in more places.
* libgimpbase/gimpdatafiles.c (gimp_datafiles_read_directories):
silently ignore directories in the path that can't be opened.
* app/core/gimpobject.c (gimp_object_set_name_safe): use
gimp_utf8_strtrim().
* app/widgets/gimpwidgets-utils.[ch]
* app/tools/gimptextoptions.c: try to make the text tool options
look more like all other tool options. Still needs work; I'll
leave this up to Mitch ...
This byte --> <-- is the millionth in this file!
2003-02-05 Sven Neumann <sven@gimp.org>
* app/core/gimpobject.c (gimp_object_set_name_safe): replaced with
an UTF-8 safe rewrite.
* app/widgets/gimpwidgets-utils.c (gimp_table_attach_stock): hacked
to allow being used with non-existent stock_ids (for prototyping).
* app/widgets/gimpenummenu.c: set the radio button mode correctly.
* app/widgets/gimpfontselection.c: tweaked spacing.
* app/tools/gimptextoptions.c: added controls for justification and
indentation. Removed letter-spacing control for now.
* app/text/gimptextlayer.[ch]: rerender the text layer from a low
priority idle function.
2003-02-05 Sven Neumann <sven@gimp.org>
* app/core/gimpobject.[ch]
* app/text/gimptextlayer.c: improved the code that trims the text
before setting it as layer name and moved it to GimpObject as
gimp_object_set_name_safe().
* app/text/gimptext.[ch]: removed fixed_height and gravity again.
* app/text/gimptextlayout.c: much simpler positioning that has the
advantage that it actually works.
* libgimpproxy/gimpobject.[ch]: this crap was regenerated.
2003-02-03 Michael Natterer <mitch@gimp.org>
* app/undo.c: unified some comments, some cleanup.
* app/pdb/procedural_db.c: some cleanup & comments to clarify
what GIMP_PDB_PASS_THROUGH does.
2003-02-03 Michael Natterer <mitch@gimp.org>
* app/core/gimp.[ch]: removed gimp_main_loop() and
gimp_main_loop_quit() because they were a temp_hack until plug-ins
have their own main loops. Added gimp_threads_enter() and
gimp_threads_leave() instead.
* app/gui/gui.c: ditto: removed the main loop stuff and added
functions which call GDK_THREADS_ENTER() and GDK_THREADS_LEAVE()
instead.
* app/app_procs.c: create the main GMainLoop here and use
gimp_threads_enter,leave().
* app/plug-in/plug-in.[ch]: added a ref_count per plug-in so the
plug-in is not destroyed under our feet while running a recursive
main loop. Added plug_in_ref(). Changed plug_in_destroy() to
plug_in_unref(). Don't destroy the plug-in if plug_in_open()
fails. Call gimp_threads_enter,leave() around g_main_loop_run().
Changed the way plug_in_push,pop() are used: "current_plug_in" is
no longer the plug-in which currently uses the wire, but the
plug-in which currently preforms a PDB call (the former meaning
was needed when wire callbacks had no plug-in context but needed
to get the plug-in from the global "current_plug_in" variable).
Removed all calls to plug_in_push,pop() from this file.
* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): added
plug_in_push,pop() around procedural_db_execute(). No need
to construct an error return value if the procedure was not found
because procedural_db_execute() already does this.
Removed all other plug_in_push,pop(). Added more checks to plug-in
message handlers and kill the plug-in if it misbehaves. Cleanup.
* app/plug-in/plug-in-progress.c (plug_in_progress_cancel): if the
plug-in runs synchronously, provide a GIMP_PDB_CANCEL return value
so we don't see error messages about the "failed" procedure.
* app/plug-in/plug-in-run.c: removed plug_in_push,pop() stuff.
Set the new plug_in->starting_ext boolean while starting an
extension so the extension_ack handler knows that it wasn't called
from a buggy plug-in. Cleanup.
* app/plug-in/plug-ins.c: Cleanup.
2003-01-31 Michael Natterer <mitch@gimp.org>
* app/core/gimpitem.[ch]: added gimp_item_configure() and
gimp_item_copy().
* app/core/gimpdrawable.c (gimp_drawable_configure,copy): use them.
* app/vectors/gimpvectors.[ch]: added gimp_vectors_new(),
gimp_vectors_copy() and gimp_vectors_copy_points(). Use the new
GimpItem functions just as GimpDrawable does. Added a
get_memsize() implementation.
* app/vectors/gimpstroke.[ch]: made it a GimpObject and added
a get_memsize() implementation.
* app/undo.c: implemented vectors undo as if the new GimpVectors
functions above worked.
* app/gui/dialogs-constructors.c
* app/gui/vectors-commands.c
* app/tools/gimpvectortool.c: use gimp_vectors_new,copy().
2003-01-31 Sven Neumann <sven@gimp.org>
* app/core/core-enums.[ch]: added new enum GimpGravityType.
* app/text/gimptext.[ch]
* app/text/gimptextlayer.[ch]: added support for specifying a
fixed layer size and how to position the text inside the layer.
* app/text/gimptext-compat.c
* app/tools/gimptexttool.c: changed accordingly.
2003-01-31 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-params.h
* app/config/gimpcoreconfig.c: added a pixels parameter to the
GIMP_CONFIG_INSTALL_PROP_UNIT() macro.
* app/core/Makefile.am
* app/core/gimpimage-text.[ch]: removed these two files.
* app/text/Makefile.am
* app/text/gimptext-compat.[ch]: new files with compatibility
routines that provide the old text API (solely for PDB calls).
* app/text/gimptext-render.[ch]: new files with text rendering
routines (not much yet).
* app/text/text-types.h
* app/text/gimptextlayer.[ch]: new object derived from GimpLayer.
* app/text/gimptext.[ch]: prepared for future improvements.
* app/pdb/text_tool_cmds.c
* app/tools/gimptexttool.c
* tools/pdbgen/pdb/text_tool.pdb: changed accordingly.
2003-01-29 Michael Natterer <mitch@gimp.org>
Fixed bug #97449:
* app/core/gimpchannel.c (gimp_channel_scale,resize)
* app/core/gimplayer.c (gimp_layer_scale,resize)
* app/undo.c (undo_pop_layer_mod,channel_mod): emit "size_changed"
whenever the size has changed. Cleaned up the two undo_pop
functions.
* app/core/gimpimage.c (gimp_image_size_changed): emit
"size_changed" on all layers/channels so their previews are
updated correctly on image resize and image resize undo. Don't
invalidate layers/channels previews here because it's the
layers'/channels' job to invalidate themselves if needed.
2003-01-26 Sven Neumann <sven@gimp.org>
* app/core/gimpbrushpipe.c
* app/gui/about-dialog.c: plugged some obvious memleaks related to
the use of GRand.
2003-01-24 Michael Natterer <mitch@gimp.org>
* app/core/gimpdocumentlist.[ch]
* app/core/gimpimagefile.[ch]: added "Gimp" pointers so we don't
need to use "the_gimp" from "app_procs.h".
* app/core/core-types.h
* app/core/gimp.c
* app/gui/file-open-dialog.c
* tools/pdbgen/pdb/fileops.pdb: changed accordingly.
* app/pdb/fileops_cmds.c: regenerated.
2003-01-15 Sven Neumann <sven@gimp.org>
Fixed bug #103561:
* app/base/gimphistogram.[ch]: cleaned up multi-processor code,
added a GimpBaseConfig parameter to gimp_histogram_new().
* app/core/gimpdrawable-equalize.c
* app/pdb/color_cmds.c
* app/tools/gimphistogramtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpthresholdtool.c
* tools/pdbgen/pdb/color.pdb: changed accordingly.
* app/base/pixel-processor.c: some cleanup to the multi-processor
code; use the global base_config variable :(
2003-01-10 Sven Neumann <sven@gimp.org>
* app/app_procs.c (app_init)
* app/core/gimp.c (gimp_set_config): delayed the activation of
gimprc-autosave so we don't write the monitor resolution obtained
from GDK back to the gimprc on each startup.
* app/gui/gui.c (gui_get_screen_resolution): round values to get
rid of rounding errors introduced earlier. Looks better in the
prefs dialog.
* app/display/gimpdisplayshell-scale.c (gimp_display_shell_scale):
merged fix for bug #94979 from stable branch. Go even further and
don't limit the zoom ratio between 1:16 and 16:1.
* app/display/gimpdisplayshell.c (gimp_display_shell_new): merged
fix for bug #103030 from stable branch.
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-09 Sven Neumann <sven@gimp.org>
* app/core/gimpdrawable.c (gimp_drawable_configure): use _("Unnamed")
if no name was given. Fixes bug #89328 in a more general way.
* plug-ins/common/psd.c: simply pass NULL as layer and channel
name if the PSD file provides none.
2003-01-05 Manish Singh <yosh@gimp.org>
* app/core/gimpobject.c: cast memsize to a guint instead of format
change. Problem perhaps if get_size really is > 4 GB?
2003-01-05 Manish Singh <yosh@gimp.org>
* many files in app, modules and libgimp*: cleanup, removed unecessary
G_OBJECT() casts. Should do the same for plug-ins, when more of them
get undeprecated.