2001-08-19 Sven Neumann <sven@gimp.org>
* app/devices.h
* app/disp_callbacks.c
* app/interface.c: applied a patch from <David.Odin@bigfoot.com> that
changes some function prototype to return gboolean instead of gint.
* app/tools/gimpblendtool.c: pixel_regions_register() and
pixel_regions_process() return a gpointer, not (gpointer *).
2001-08-17 Michael Natterer <mitch@gimp.org>
* configure.in: added app/display/ and app/plug-in/. Empty for
now except for the types files.
* app/Makefile.am
* app/appenums.h
* app/apptypes.h: removed.
* app/display/Makefile.am
* app/display/display-types.h
* app/plug-in/Makefile.am
* app/plug-in/plug-in-types.h
* app/gui/Makefile.am
* app/gui/gui-types.h
* app/pdb/Makefile.am
* app/pdb/pdb-types.h: new files for typedefs.
* app/appenv.h: added MessageHandlerType and StackTraceMode here.
* app/undo_types.h: moved undo struct typedefs here.
* app/tools/tools-types.h
* app/core/core-types.h: added some enums and Tattoo here
(renamed to GimpTattoo).
* app/gdisplay.h: temp_hack: #include "display/display-types.h"
* app/gimphelp.c: s/gtk_idle_add/g_idle_add/
* app/gimprc.c: don't use "gimprc" in token handlers but the
passed "val1p" and "val2p".
* app/image_map.[ch]: cleanup in preparation of making a GObject
out of it.
* app/base/pixel-region.[ch]: no need to pass the
PixelRegionIterator around as void pointer.
* app/core/gimp.[ch]
* app/core/gimpcontext.[ch]
* app/core/gimptoolinfo.[ch]
* app/tools/tool_manager.c
* app/widgets/gimpdnd.c: added the standard_tool_info to the Gimp
object.
* app/batch.c
* app/file-open.c
* app/file-save.c
* app/file-utils.c
* app/interface.c
* app/main.c
* app/path.[ch]
* app/pathP.h
* app/plug_in.h
* app/core/gimpdrawable.[ch]
* app/core/gimpimage-mask.c
* app/core/gimpimage.[ch]
* app/core/gimplayer.c
* app/gui/color-area.c
* app/gui/color-notebook.c
* app/gui/colormap-dialog.c
* app/gui/dialogs-commands.c
* app/gui/dialogs-constructors.c
* app/gui/error-console-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradient-select.c
* app/gui/indicator-area.c
* app/gui/info-dialog.c
* app/gui/palette-editor.c
* app/gui/palette-select.c
* app/gui/pattern-select.c
* app/gui/session.c
* app/gui/splash.c
* app/gui/view-commands.c
* app/tools/gimpinktool-blob.c
* app/widgets/gimpcolorpanel.c
* app/widgets/gimpdockbook.c
* app/widgets/gimppreview.c
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c
* app/xcf/xcf.c: changed accordingly: s/Tattoo/GimpTattoo/, include
the new types files, include <glib-object.h> instead of >gtk/gtk.h>.
Bad hacks to get rid of SELECTION_OFF and friends in core/ (will
be replaced ba a signal soon).
* tools/pdbgen/Makefile.am: changed list of headers scanned for
enums accordingly.
* app/pdb/procedural_db.c
* tools/pdbgen/app.pl
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/display.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/pattern_select.pdb: same fixes as above, added
hacks to ensure that all foo-types.h files are included before all
other gimp internal includes, include "pdb-types.h" unconditionally.
* tools/pdbgen/enums.pl
* app/pdb/*_cmds.c: regenerated.
2001-08-14 Michael Natterer <mitch@gimp.org>
* app/gdisplay.h: an evil temp_hack which lets GimpContext managing
the active display withoug including "gdisplay.h". Will go away as
soon ad context properties are registered dynamically.
* app/module_db.c: cleaned up the object code in preparation of
moving it to core/.
* app/path.c: connect to GimpImage's
* app/core/gimpobject.[ch]: derive it from GObject, not from
GtkObject any more (yeah :-)
* app/core/*.c: #include <glib-object.h> instead of <gtk/gtk.h>,
removed some remaining GtkObject-isms.
(left in a few #include <gtk/gtk.h> where bigger changes are needed
to get rid of the UI dependency).
* app/core/core-types.h: #include <gdk-pixbuf/gdk-pixbuf.h> here
temporarily.
* app/core/gimp.c (gimp_create_display): unref the image after
creating it's first display.
* app/core/gimpbrush.[ch]: disabled the parts of the code which
depend on GimpPaintTool.
* app/core/gimpbrushgenerated.c
* app/core/gimpbrushpipe.c: changed accordingly.
* app/core/gimpcontext.[ch]: evil hack (see above) to manage the
active display without including "gdisplay.h"
* app/core/gimpimage-mask.[ch]: pass a context to
gimage_mask_stroke() and get the current tool's PDB string from
there.
* app/core/gimpedit.c: changed accordingly.
* app/core/gimpimage.c: use gimp_image_update() instead of
gdisplays_update_full().
* app/gui/color-area.c
* app/gui/colormap-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/edit-commands.c
* app/gui/image-commands.c
* app/gui/toolbox.c: changed accordingly (don't use Gtk methods on
GObjects).
* app/gui/menus.c: fix some const warnings by explicit casting.
* app/tools/*.[ch]: ported all tools to GObject, some minor
cleanup while i was on it.
* app/widgets/gimpdialogfactory.[ch]: ported to GObject.
* app/widgets/gimplayerlistview.h: added FOO_GET_CLASS() macro.
* tools/pdbgen/app.pl: added a "widgets_eek" hack like "tools_eek"
which inserts #include "widgets/widgets-types.h" before ordinary
includes.
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/edit.pdb
* app/pdb/brush_select_cmds.c
* app/pdb/edit_cmds.c: changed according to the stuff above.
2001-08-12 Michael Natterer <mitch@gimp.org>
Switched to GObject reference counting:
* app/core/gimpcontainer.c: only ref(), not ref()/sink() children
of strong containers. Reordered gimp_container_remove() so we
don't need to ref the object while removing it.
* app/core/gimpcontext.c: misc fixes. Needs to be badly tortured...
* app/app_procs.c
* app/gdisplay.c
* app/gimprc.c
* app/core/gimp.c
* app/core/gimpbrush.c
* app/core/gimpbrushpipe.c
* app/core/gimpdatafactory.c
* app/core/gimpdocuments.c
* app/core/gimpgradient.c
* app/core/gimpimage.c
* app/core/gimplayer.c
* app/core/gimplist.c
* app/core/gimpobject.c
* app/core/gimpparasite.c
* app/core/gimppattern.c
* app/core/gimpundostack.c
* app/gui/dialogs.c
* app/tools/gimpbezierselecttool.c
* app/tools/gimpfuzzyselecttool.c: changed accordingly: don't
ref()/sink() any more, unref all (??) objects after adding them to
strong containers, misc. minor fixes.
* app/gui/dialogs-constructors.c
* app/widgets/gimpwidgets.c: use g_object_add_weak_pointer()
instead of simply crashing because g_object_weak_ref() was used
with gtk_widget_destroyed, brrr.
* app/widgets/gimpdnd.c: removed unneeded g_return_if_fail()'s.
2001-08-10 Michael Natterer <mitch@convergence.de>
* app/nav_window.c: fix compiler warning.
* app/core/gimp.[ch]: added gimp->documents which will be an MRU
list of GimpImagefile objects.
* app/core/gimpcontainer.c: added some g_return_if_fail().
* app/gui/palette-editor.c: use GtkImage instead of GtkPixmap,
s/gtk_signal_*/g_signal_*/.
* app/widgets/gimppreview.c: render the checkerboard only for
channel == -1. In particular, don't render it for channel
previews.
* app/module_db.c
* app/core/*.c
* app/gui/colormap-dialog.c
* app/tools/gimpairbrushtool.c
* app/tools/gimpdodgeburntool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimperasertool.c
* app/tools/gimppaintbrushtool.c
* app/tools/gimppenciltool.c
* app/tools/gimpsmudgetool.c
* app/tools/tool_manager.c
* app/widgets/*.c
* libgimpwidgets/*.c: s/gtk_type_new/g_object_new/
2001-08-09 Michael Natterer <mitch@gimp.org>
* app/appenums.h: removed GIMP_ZOOM_TYPE,
* app/widgets/widgets-types.h: added it here.
* app/disp_callbacks.c
* app/widgets/gimpnavigationpreview.[ch]
* app/gui/gradient-editor.c: removed old cruft which expects wheel
events as button_4 and button_5 and connect to GdkEventScroll
instead.
* app/nav_window.c: connect to GimpNavigationPreview's new
"scroll" and "zoom" signals.
* app/gui/error-console-dialog.c: remove wheel scrol stuff (done
by GtkScrolledWindow now).
* app/gui/color-notebook.c
* app/gui/gradient-editor.c: removed GtkPixmap stuff and use
GtkImage instead. Looks a bit ugly in the color_notebook (seems
we need more icon sizes).
* app/gui/indicator-area.c: GObject porting.
* app/gui/menus.c_ some more menu icons.
* app/gui/toolbox.c: pass a GimpContext around as callback data
and use context->gimp instead of accessing the global "the_gimp"
variable.
2001-08-07 Michael Natterer <mitch@gimp.org>
* app/disp_callbacks.c: removed a gdk_pointer_ungrab(), it was
only there because of buggy gtk+ 1.2.x. Cosmetic changes.
* app/undo.c: use G_N_ELEMENTS() instead of
sizeof(array)/sizeof(element).
* app/gui/menus.c: more stock icons, moved the item_factory
creation into the menus_get_foo_factory() functions, use
G_N_ELEMENTS(). This file badly needs to be spit up...
* app/core/gimpviewable.[ch]
* app/widgets/gimpcontainermenu.[ch]
* app/widgets/gimpcontainerview.[ch]
* app/widgets/gimplistitem.[ch]
* app/widgets/gimpmenuitem.[ch]
* app/widgets/gimppreview.[ch]: replaced tons of signal emissions
by virtual functions which are *much* faster. Moreover, all of
them are private implementation bits of the specific class
hierarchy and are useless or even dangerous to be exposed as
signals.
* app/widgets/gimpdrawablelistitem.c: removed the drag_motion()
implementation as it's already done in the parent class.
* app/widgets/gimplistitem.[ch]
* app/widgets/gimplayerlistitem.c: redraw the widget when the
drop_type has changed. Fixes drop_indicator drawing.
2001-08-05 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpstock.[ch]: register the button icons with
GTK_ICON_SIZE_BUTTON, but set them as scalable fallbacks for
themselves so they get scaled for menus.
* app/gui/menus.c: set stock icons for much more menu entries.
* app/widgets/gimpwidgets-utils.[ch]: new utility function
gimp_item_factory_popup_with_data().
* app/disp_callbacks.[ch]
* app/gui/brushes-commands.c
* app/gui/channels-commands.c
* app/gui/gradients-commands.c
* app/gui/layers-commands.c
* app/gui/palettes-commands.c
* app/gui/paths-dialog.c
* app/gui/patterns-commands.c: use the new function.
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcurvestool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpposterizetool.c: s/_("Reset")/GIMP_STOCK_RESET/
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpcontainerview.[ch]: moved the button_box utility
functions from the container editor to GimpContainerView itself.
* app/widgets/gimpbufferview.c
* app/widgets/gimpchannellistview.c
* app/widgets/gimpcomponentlistitem.c
* app/widgets/gimpcontainergridview.[ch]
* app/widgets/gimpdatafactoryview.c
* app/widgets/gimpdrawablelistitem.c
* app/widgets/gimpdrawablelistview.[ch]
* app/widgets/gimplayerlistitem.c
* app/widgets/gimplayerlistview.c: changed accordingly. Removed
lots of duplicated code and use stock images instead of pixmaps.
* libgimpwidgets/gimpfileselection.[ch]
* libgimpwidgets/gimppatheditor.c: use stock images instead of
pixmaps.
* pixmaps/Makefile.am: removed "yes" and "no", added "stroke".
* pixmaps/anchor.xpm
* pixmaps/delete.xpm
* pixmaps/lower.xpm
* pixmaps/new.xpm
* pixmaps/paste-as-new.xpm
* pixmaps/paste-into.xpm
* pixmaps/paste.xpm
* pixmaps/raise.xpm
* pixmaps/refresh.xpm
* pixmaps/toselection.xpm: made them all 16x16 so they are scaled
nicely in menus. Should probably be 18x18.
2001-08-01 Sven Neumann <sven@gimp.org>
* app/docindex.c
* app/gdisplay_color_ui.c
* app/gimpprogress.c
* app/nav_window.c
* app/path.c
* app/scale.c
* app/undo_history.c
* app/user_install.c
* app/gui/resolution-calibrate-dialog.[ch]: converted uses of
gtk_signal_* to g_signal_*.
Changed expose_event handlers that used to be connected using
signal_connect_after to call the default handler, do the additional
drawing, then stop the signal emission by returning TRUE.
2001-07-31 Michael Natterer <mitch@gimp.org>
* gtkrc: eek, my last change changed the width of all GtkRange
subclasses, not only GtkScale, fixed now.
* app/devices.c: use GTK_STOCK_FOO button texts.
* app/interface.c
* app/qmask.[ch]: renamed all qmask callbacks to *_callback().
* app/gui/tool-options-dialog.c: GObject stuff, use
gtk_dialog_set_has_separator() instead of poking around.
* app/widgets/gimpcolorpanel.c: set panel->color_notebook to NULL
in "destroy".
* app/widgets/gimpnavigationpreview.c: return TRUE from the
"expose_event" handler.
* app/widgets/gimppreview.c: tiny optimizatin.
2001-07-31 Sven Neumann <sven@gimp.org>
* app/core/core-types.h: removed g_signal_handlers_disconnect_by_data
again. As Owen pointed out, it's generally a bad idea to use it since
you can't be absolutely sure that no one else has a pointer to the
data you are disconnecting.
* app/gdisplay.c: added the macro here temporarily.
* app/module_db.c
* app/undo_history.c
* app/gui/brush-editor.c
* app/gui/brush-select.c
* app/gui/gradient-select.c
* app/gui/pattern-select.c: use g_signal_handlers_disconnect_by_func.
* libgimpwidgets/gimpbutton.c
* libgimpwidgets/gimpchainbutton.c
* libgimpwidgets/gimpcolorarea.c
* libgimpwidgets/gimpcolorbutton.c
* libgimpwidgets/gimpfileselection.c
* libgimpwidgets/gimphelpui.c
* libgimpwidgets/gimpoffsetarea.c
* libgimpwidgets/gimppatheditor.c
* libgimpwidgets/gimpsizeentry.c
* libgimpwidgets/gimpunitmenu.c
* libgimpwidgets/gimpwidgets.c: GObject porting.
2001-07-30 Michael Natterer <mitch@gimp.org>
* gtkrc: set the width of the scrollbar slider to the same value
as our default font size so the sliders are nicely aligned with
their descriptive labels.
* libgimpwidgets/gimpdialog.[ch]
* libgimpwidgets/gimpquerybox.[ch]: use GLib-isms and create the
dialogs' action_area buttons with gtk_dialog_add_button() so we
can use the GTK_STOCK_FOO buttons and plug in our own icon factory
later.
* app/qmask.[ch]: fixed the qmask buttons by applying proper
GdkEvent callback conventions.
* libgimpwidgets/gimpcolorbutton.c: NULLify all pointers in
"destroy".
* app/gdisplay_ops.c
* app/gimphelp.c
* app/interface.c
* app/gui/brush-editor.c
* app/gui/color-notebook.c
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/file-commands.c
* app/gui/file-new-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gradient-editor.c
* app/gui/gui.c
* app/gui/image-commands.c
* app/gui/layers-commands.c
* app/gui/offset-dialog.c
* app/gui/palette-editor.c
* app/gui/palette-import-dialog.c
* app/gui/preferences-dialog.c
* app/gui/resize-dialog.c
* app/gui/resolution-calibrate-dialog.c
* app/gui/tool-options-dialog.c
* app/widgets/gimpwidgets-utils.c
* libgimpwidgets/gimpunitmenu.c: g_signal_* and GObject stuff,
use lots of GTK_STOCK_OK and friends instead of _("OK") etc.,
misc minor cleanups.
2001-07-27 Michael Natterer <mitch@gimp.org>
* app/errorconsole.c
* app/user_install.c: use GtkTextView.
* app/gui/preferences-dialog.c: use GtkTextView correctly :)
* app/interface.c: a quick hack which enables setting the
canvas padding color via gtkrc.
* app/file-utils.c
* app/plug_in.c
* app/pdb/fileops_cmds.c
* tools/pdbgen/pdb/fileops.pdb: s/g_basename/g_path_get_basename/
* app/tools/gimpinktool.c
* app/tools/gimppainttool.c: stupid /me disabled all paint tools
by setting pressure to 0.0 instead of 1.0, fixed now.
2001-07-24 Michael Natterer <mitch@gimp.org>
Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)
* configure.in: require glib/gtk+ >= 1.3.7, commented out the
gtkxmhtml stuff.
From now on, you will need glib, pango, atk and gtk+ HEAD from CVS
to hack or use GIMP HEAD.
Beware, it crashes randomly :)
* app/core/Makefile.am
* app/core/gimpmarshal.list: new file plus rules to generate
gimpmarshal.[ch] from it.
* app/core/*
* app/tools/*
* app/widgets/*
* libgimpwidgets/*: started to use the glib object system. All
core/ objects are still gtk objects however. All signals are
created using g_signal_new(). There are many gtk+ artefacts left.
Finally, we will _not_ use the gtk_signal_foo() wrappers and
friends any more.
* app/colormaps.c
* app/devices.[ch]
* app/disp_callbacks.c
* app/errorconsole.c
* app/file-save.[ch]
* app/interface.c
* app/module_db.c
* app/nav_window.c
* app/ops_buttons.c
* app/scroll.c
* app/user_install.c
* app/gui/about-dialog.c
* app/gui/brush-editor.c
* app/gui/brushes-commands.c
* app/gui/color-notebook.c
* app/gui/colormap-dialog.c
* app/gui/dialogs-commands.c
* app/gui/dialogs-constructors.c
* app/gui/file-commands.c
* app/gui/file-dialog-utils.c
* app/gui/file-new-dialog.c
* app/gui/file-open-dialog.[ch]
* app/gui/file-save-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradients-commands.c
* app/gui/image-commands.c
* app/gui/info-dialog.[ch]
* app/gui/layer-select.c
* app/gui/layers-commands.c
* app/gui/menus.c
* app/gui/offset-dialog.c
* app/gui/palette-editor.c
* app/gui/palettes-commands.c
* app/gui/patterns-commands.c
* app/gui/preferences-dialog.c
* app/gui/resize-dialog.[ch]
* app/gui/splash.c
* app/gui/tips-dialog.c
* app/gui/tool-options-dialog.c
* app/gui/toolbox.c
* app/gui/tools-commands.c
* libgimp/gimpbrushmenu.c
* libgimp/gimpmenu.c
* libgimp/gimppatternmenu.c
* libgimp/gimpui.c
* libgimpbase/gimpenv.c: tons and tons of changes like "const
gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete
and currently disables), lots of s/gtk_signal/g_signal/,
removal/replacement of deprecated stuff,
s/GtkSignalFunc/GCallback/ and lots of small changes and fixes
while I was on it, zillions of warnings left...
* modules/Makefile.am: disabled the water color selector
temporarily (XInput issues).
* plug-ins/Makefile.am
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am
* plug-ins/common/plugin-defs.pl: simply excluded all plug-ins
which did not build (including Script-Fu). They are trivial to
fix.
2001-07-20 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/dialog_handler.[ch]: removed.
* app/widgets/gimpdialogfactory.[ch]: added the missing features
from the dialog_handler: idle/unidle all dialogs and the show_all
-> hide_all -> show_toolbox -> show_all cycling (a bit ugly
currently because the toolbox's factory and it's identifier has to
be passed to gimp_dialog_factories_toggle()).
* app/disp_callbacks.c
* app/gui/gui.c: call the new dialog factory class methods.
* app/devices.c
* app/docindex.c
* app/errorconsole.c
* app/nav_window.c
* app/undo_history.c
* app/gui/info-dialog.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c: currently "unmanaged" because they
are not yet registered with a dialog factory.
* app/gui/menus.c: ditto for the tearoff menus.
* app/gui/brush-select.c
* app/gui/colormap-dialog.c
* app/gui/gradient-select.c
* app/gui/palette-select.c
* app/gui/pattern-select.c
* app/gui/tool-options-dialog.c
* app/gui/toolbox.c: these are already factory created so toggling
and (un)idling works like before.
* app/widgets/gimpdock.c: reduced the minimal width from 280 to 250.
* app/widgets/gimplayerlistview.c: use a toggle button instead of
a check button for "Keep transp.".
2001-07-10 Michael Natterer <mitch@gimp.org>
* app/app_procs.[ch]: removed the gimp_busy boolean, check whether
user_installation is needed here, not in user_install.c, parse
gtkrc an friends only if(!no_interface), create the Gimp object
before parsing gimp's rc files an pas it to the parse functions,
many other cleanups.
* app/appenums.h: added MessageHandlerType and StackTraceMode.
* app/appenv.h: removed MessageHandlerType, declare all global
variables from main.c (no more hidden global stuff please).
* app/errors.[ch]: added the fatal message func here (from main.c),
removed the StackTraceMode enum.
* app/gimprc.[ch]: renamed functions to gimprc_*(), pass a Gimp
pointer to some functions.
* app/gimpunit.c
* app/unitrc.h: ok, this is ugly: renamed all functions to
_gimp_unit_*() and made them public. The unit list is part
of the Gimp object now, so pass a Gimp* to all functions.
* app/libgimp_glue.[ch]: added EEKy wrappers for all gimp_unit_*()
functions which are used by widgets.
* app/main.c: cleaned up the global variables, removed the fatal
message handler, call app_init() directly, not via the
user_install stuff, misc. cleanups.
* app/user_install.[ch]: removed the check if user_installation is
needed (done by app_procs.c now).
* app/core/gimp.[ch]: added the user_unit list and the "busy"
boolean. Moved gimp_[set|unset]_busy() here. Added
gimp_initialize() which is called after unitrc and gimprc are
parsed.
* app/batch.c
* app/colormaps.c
* app/devices.c
* app/disp_callbacks.c
* app/gdisplay_ops.c
* app/gimphelp.c
* app/module_db.c
* app/nav_window.c
* app/plug_in.c
* app/core/gimpcontext.c
* app/core/gimpdatafiles.c
* app/core/gimpimage-convert.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage.c
* app/core/gimpparasite.c
* app/core/gimpparasitelist.h
* app/gui/file-open-dialog.c
* app/gui/gui.[ch]
* app/gui/info-dialog.c
* app/gui/info-window.c
* app/gui/preferences-dialog.c
* app/gui/session.c
* app/gui/tips-dialog.c
* app/gui/toolbox.c
* app/tools/gimpblendtool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpfuzzyselecttool.c
* app/tools/gimptransformtool.c
* app/tools/tool_manager.c
* app/widgets/gimpcolorpanel.c
* app/widgets/gimpcursor.c
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c
* app/xcf/xcf.c
* tools/pdbgen/Makefile.am
* tools/pdbgen/app.pl
* tools/pdbgen/enums.pl
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/message.pdb
* tools/pdbgen/pdb/unit.pdb
* app/pdb/image_cmds.c
* app/pdb/message_cmds.c
* app/pdb/unit_cmds.c: changed accordingly, minor cleanups.
2001-07-08 Michael Natterer <mitch@gimp.org>
* app/disp_callbacks.c: the active_tool may change in the middle
of gdisplay_canvas_events(), so re-get it after using it for
cursor_update.
* app/base/boundary.c: made some global variables local.
* app/core/gimpdrawable.c: don't call gimp_drawable_set_visible()
in gimp_drawable_configure() because we don't want signal
emissions while configuring the drawable.
* app/gui/Makefile.am
* app/gui/brushes-commands.[ch]
* app/gui/data-commands.[ch]
* app/gui/gradients-commands.[ch]
* app/gui/palettes-commands.[ch]
* app/gui/patterns-commands.[ch]: new files for new new item
factories' callbacks.
* app/gui/menus.[ch]: added context menus for brushes, patterns, ...
* app/gui/gradient-editor.c
* app/gui/palette-editor.c: removed the "Save as POV", "Import
Palette" and "Merge Palattes" buttons as they are item factory
callbacks now.
* app/widgets/gimpbrushfactoryview.[ch]
* app/widgets/gimpbufferview.[ch]
* app/widgets/gimpcontainereditor.[ch]
* app/widgets/gimpdatafactoryview.[ch]: pass a
"GimpContainerContextFunc" pointer to all GimpContainerEditor
subclasses' constructors. Use the function to show the context
menu.
* app/widgets/gimpcontainergridview.c: dispatch the previews'
"context" signal.
* app/widgets/gimppreview.[ch]: new signal "context" which is
emitted on right-click.
* app/gui/brush-select.c
* app/gui/dialogs-constructors.c
* app/gui/gradient-select.c
* app/gui/layers-commands.c
* app/gui/palette-select.c
* app/gui/pattern-select.c
* app/gui/test-commands.c: changed accordingly.
2001-07-07 Michael Natterer <mitch@gimp.org>
* app/tools/tool_manager.[ch]: put all tool_manager variables into
a struct which is attached to a "Gimp". Pass a Gimp* to all
tool_manager functions.
* app/disp_callbacks.c
* app/gdisplay.c
* app/gimage.c
* app/scale.c
* app/scroll.c
* app/undo.c
* app/gui/convert-dialog.c
* app/gui/edit-commands.c
* app/gui/tool-options-dialog.c
* app/gui/tools-commands.c: changed accordingly.
* app/tools/gimpbezierselecttool.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpbycolorselecttool.c
* app/tools/gimpclonetool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcroptool.c
* app/tools/gimpcurvestool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimphistogramtool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpposterizetool.c
* app/tools/gimptexttool.c
* app/tools/gimpthresholdtool.c
* app/tools/gimptool.c
* app/tools/gimptransformtool.c: mostly bad hacks for tool dialogs
which exist without a real context. Needs some more review.
2001-07-07 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/context_manager.[ch]: removed.
* app/app_procs.c: call tool_mananger instead of context_manager
functions, pass "the_gimp" to some more functions.
* app/drawable.[ch]: pass a GimpContext to drawable_fill().
* app/errors.c: behave according to "stack_trace_mode" when using
the debugging signal handler.
* app/gimprc.[ch]: removed the core/ config variables.
* app/selection.c: set the selection's state to INVISIBLE in
selection_pause().
* app/core/Makefile.am
* app/core/gimpcoreconfig.[ch]: new files (the configuration
variables used by core/).
* app/core/gimpcontext.[ch]: removed the global contexts (user,
default, ...) and their functions. It's no longer possible to pass
NULL to the context functions to manipulate the current context
(gimpcontext.c doesn't know the current context any more).
* app/core/gimp.[ch]: added them here. The functions are now called
gimp_[set|get]_*_context(). Added gimp_create_context() which is
the only function to create contexts now.
* app/gui/dialogs.[ch]
* app/gui/gui.[ch]: pass "gimp" to all functions.
* app/tools/tool_manager.[ch]
* app/tools/tools.[ch]: pass "gimp" to lots of functions. Added
the "global_tool_context" logic and the global/non-global paint
options switching from the context_manager. Pass "gimp" to all
tools' "register" functions.
* app/tools/*: changed accordingly.
* app/devices.c
* app/disp_callbacks.c
* app/file-open.[ch]
* app/file-save.c
* app/gdisplay.c
* app/gimage.c
* app/libgimp_glue.c
* app/module_db.c
* app/nav_window.c
* app/plug_in.c
* app/qmask.c
* app/undo.c
* app/base/base-config.c
* app/core/gimpbrushpipe.c
* app/core/gimpdrawable-offset.c
* app/core/gimpgradient.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-mask.c
* app/core/gimpimage-new.c
* app/core/gimpimage.c
* app/core/gimppalette.c
* app/core/gimptoolinfo.[ch]
* app/core/gimpundo.c
* app/gui/brush-select.c
* app/gui/channels-commands.c
* app/gui/color-area.c
* app/gui/dialogs-constructors.c
* app/gui/file-new-dialog.c
* app/gui/file-open-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradient-select.c
* app/gui/info-window.c
* app/gui/layers-commands.c
* app/gui/menus.c
* app/gui/palette-editor.c
* app/gui/palette-import-dialog.c
* app/gui/palette-select.c
* app/gui/paths-dialog.c
* app/gui/pattern-select.c
* app/gui/preferences-dialog.c
* app/gui/resize-dialog.c
* app/gui/test-commands.c
* app/gui/tool-options-dialog.c
* app/gui/toolbox.c
* app/gui/tools-commands.c
* app/xcf/xcf-load.c
* app/xcf/xcf-save.c
* app/widgets/gimpchannellistview.c
* app/widgets/gimpdnd.c
* app/widgets/gimpdrawablelistview.[ch]
* app/widgets/gimpimagedock.c
* app/widgets/gimplayerlistview.c
* app/pdb/brushes_cmds.c
* app/pdb/drawable_cmds.c
* app/pdb/gradient_select_cmds.c
* app/pdb/gradients_cmds.c
* app/pdb/palette_cmds.c
* app/pdb/patterns_cmds.c
* app/pdb/procedural_db.c
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/palette.pdb
* tools/pdbgen/pdb/patterns.pdb: changed accordingly: remove usage
of gimp_context_[get|set]_*(NULL), create contexts with
gimp_create_context(). Get the user/current context with
gimp_get_[user|current]_context(). Added/removed access to the
global "the_gimp" variable in some places. Get the core's config
variables from "core_config".
2001-07-04 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimp.[ch]: added an "application object" called Gimp.
Currently, it contains the image list, the clipboard, the data
factories, the procedural hashtable and the tool info list. It's
the toplevel object of the core object system. Finally, creating a
Gimp object will return a standalone gimp core engine instance
with no other global states/variables involved.
* app/app_procs.[ch]: allocate a "Gimp" instance called "the_gimp" :)
Removed stuff which is now done by the "Gimp" object. Merged
gimp_init() into app_init() because gimp_init() is taken now.
* app/context_manager.[ch]: removed stuff done by "Gimp".
* app/batch.[ch]
* app/gimage.[ch]
* app/xcf/xcf-load.[ch]
* app/xcf/xcf.[ch]
* app/core/gimpedit.[ch]
* app/tools/tool_manager.[ch]: pass around an additional "Gimp"
argument.
* app/pdb/procedural_db.[ch]: pass a "Gimp" pointer as first
parameter to all internal procedures and to all procedural_db_*
functions.
* app/core/gimpcontext.[ch]
* app/core/gimpimage.[ch]: added a "Gimp" pointer to the structs.
* app/devices.c
* app/errors.c
* app/file-open.c
* app/file-save.c
* app/gimphelp.c
* app/gimpunit.c
* app/image_new.c
* app/main.c
* app/nav_window.c
* app/plug_in.c
* app/base/base.c
* app/core/gimpdatafactory.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-mask.c
* app/core/gimptoolinfo.[ch]
* app/gui/brush-select.c
* app/gui/convert-dialog.c
* app/gui/dialogs-constructors.c
* app/gui/edit-commands.c
* app/gui/file-open-dialog.c
* app/gui/file-save-dialog.c
* app/gui/gradient-editor.c
* app/gui/gradient-select.c
* app/gui/gui.c
* app/gui/image-commands.c
* app/gui/info-window.c
* app/gui/menus.c
* app/gui/palette-editor.c
* app/gui/palette-import-dialog.c
* app/gui/palette-select.c
* app/gui/paths-dialog.c
* app/gui/pattern-select.c
* app/gui/preferences-dialog.c
* app/gui/test-commands.c
* app/gui/toolbox.c
* app/gui/tools-commands.c
* app/tools/gimpbezierselecttool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimppainttool.h
* app/tools/gimptexttool.c
* app/tools/gimptransformtool.h
* app/widgets/gimpbufferview.c
* app/widgets/gimpcontainerview-utils.c
* app/widgets/gimpcursor.c
* app/widgets/gimpdnd.c
* app/widgets/gimpimagedock.c: changed accordingly. Cleaned up
lots of includes. Many files still access the global "the_gimp"
variable exported by app_procs.h.
* tools/pdbgen/app.pl
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/edit.pdb
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/palette.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/patterns.pdb
* tools/pdbgen/pdb/procedural_db.pdb: changed accordingly. Don't
use "the_gimp" here because all procedures get passed a "Gimp"
pointer now.
* app/pdb/*: regenerated.
2001-07-02 Michael Natterer <mitch@gimp.org>
* app/global_edit.c: allow a NULL gimage argument for
gimp_edit_paste_as_new() (don't set resolution and unit).
* app/disp_callbacks.[ch]
* app/interface.c: allow dropping of a GimpBuffer (pastes the
buffer).
* app/gui/toolbox.c: ditto (creates a new image).
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-20 Michael Natterer <mitch@gimp.org>
* app/gdisplay.c: same gdisplays_update_full() fix as in the
stable branch. Removed lots of commented out code and comments
about whether the code should be commented out or not.
* app/core/gimpimage-mask.c: tried to fix it here first an ended
up with a little cleanup.
2001-06-18 Michael Natterer <mitch@gimp.org>
* app/nav_window.[ch]: major cleanup. After being finished, I
decided that it needs to be factored out to a widget (see below),
so like 90% of this file will go away soon.
* app/apptypes.h: added opaque NavigationDialog typedef.
* app/gdisplay.[ch]: Added gdisplay_selection_visibility() which
is called from gdisplays_selection_visibility(). Capitalized the
SelectionControl enum values. Cleaned up the GDisplay struct and
it's initialisation while i was on it.
* app/gimage.c: gimage_size_changed_handler(): removed stuff which
is now done by GimpImage itself.
* app/scale.c
* app/scroll.c: also update the navigation popup, not only the
dialog.
* app/selection.[ch]: major indentation & cleanup attack. Maybe
found the "Selection vanishes" bug (the timeout id was assinged to
a gint, not a _guint_).
* app/undo.c: s/gimp_image_size_changed/gimp_viweable_size_changed/
* app/core/gimpdrawable.c: invalidate the image's preview from our
"invalidate_preview" implementation. This means that the image's
preview is invalidated way too often currently, which cries for
some general freeze/thaw mechanism on the GimpViewable level.
(Note that previews are rendered in the idle loop, so this is not
really a major performance impact, it's just ugly).
* app/core/gimpimage.[ch]: removed the "size_changed" signal...
* app/core/gimpviewable.[ch]: ...and added it here.
* app/core/gimplayer.c: invalidate_preview(): always chain up,
also if it's a floating selection.
* app/gui/info-dialog.[ch]
* app/gui/info-window.c: minor cleanups.
* app/gui/preferences-dialog.c: no need to invalidate the image
after we have invalidated all it's layers.
* app/core/gimpimage-mask.c
* app/gui/commands.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpinktool.c
* app/tools/gimpmovetool.c
* app/tools/gimppainttool.c: capitalized the SelectionCommand enum
values.
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpnavigationpreview.[ch]: new widget.
* app/widgets/gimppreview.[ch]: added a non-working
non-dot-for-dot mode. Added xres/yres params to the
gimp_preview_calc_size() helper function.
Cache the "size" value which was passed to the simple function
variants (gimp_preview_new() and gimp_preview_set_size()) so we
can re-calculate the preview's extents on the underlying
viewable's "size_changed" signal and on gimp_preview_set_viewable().
* app/widgets/gimpdrawablepreview.c
* app/widgets/gimpimagepreview.c: changed accordingly.
2001-06-15 Austin Donnelly <austin@gimp.org>
* app/gdisplay.c: initialise gdisp->cursor_x and gdisp->cursor_y
to 0 in gdisplay_new() so that we don't get floating point
exceptions when attempting to translate to screen co-ords in
gdisplay_update_cursor(). Fixes critical Bug #56237.
2001-06-14 Michael Natterer <mitch@gimp.org>
* app/gdisplay.c: fixed a FIXME: set the sensitivity of the
color tools' menu entries again.
* libgimp/gimpcolorselector.h
* libgimp/gimpdrawable.h
* libgimp/gimpmenu.h: removed the usage of "id" from the public
interface because it's a reserved keyword of Objective C.
* libgimp/gimpdrawable.c
* libgimp/gimptile.c
* plug-ins/[lotsa plugins].c: changed accordingly.
2001-06-14 Sven Neumann <sven@gimp.org>
* app/disp_callbacks.c
* app/gdisplay.c
* app/gui/info-window.[ch]:
applied a patch from Ralf Engels <ralf-engels@gmx.de> that adds info
about the cursor position to the Info window. Cleaned up the code a
little while I was on it and renamed info_window_update_RGB() to
info_window_update_extended().
2001-06-03 Dave Neary <dneary@eircom.net>
* app/gimprc.[ch]: Made all the global options members of one
struct, gimprc.
* lots of .c files in app, app/core, app/tools, app/widgets &
app/gui: Changed accordingly.
2001-05-21 Michael Natterer <mitch@gimp.org>
* Makefile.am
* configure.in
* gimptool-1.4.in: added new directory libgimpbase/
* app/Makefile.am: link against the new lib.
* app/appenums.h: removed the PDB enums which are in
libgimpbase/gimpbasetypes.h now. They are all "Gimp" prefixed.
* app/apptypes.h: #include "libgimpbase/gimpbasetypes.h"
* app/[lots]
* app/core/[of]
* app/gui/[files]
* app/tools/: changed includes and all PDB types.
* app/pdb/*: regenerated.
* libgimp/Makefile.am: don't build libgimpi.a uglyness any more.
* libgimp/gimpenv.[ch]
* libgimp/gimplimits.[hh]
* libgimp/gimpparasite.[ch]
* libgimp/gimpparasiteio.[ch]
* libgimp/gimpprotocol.[ch]
* libgimp/gimpsignal.[ch]
* libgimp/gimpunit.h
* libgimp/gimputils.[ch]
* libgimp/gimpwire.[ch]: removed...
* libgimpbase/*: ...and added here as new library.
* libgimp/gimp.[ch]
* libgimp/gimpdrawable.[ch]
* libgimp/gimpenums.h
* libgimp/gimpimage.[ch]
* libgimp/gimptile.c
* libgimp/gimptypes.h
* libgimp/gimpunit.c: changed accordingly. Added the
gimp_*_add_new_parasite to gimp.[ch], gimpdrawable.[ch] and
gimpimage.[ch].
* libgimpwidgets/gimppatheditor.c
* libgimpwidgets/gimpquerybox.c
* libgimpwidgets/gimpsizeentry.c
* libgimpwidgets/gimpunitmenu.c
* libgimpwidgets/gimpwidgets.c
* libgimpwidgets/gimpwidgetstypes.h: changed includes accordingly.
* plug-ins/*/Makefile.am
* plug-ins/common/mkgen.pl: link against libgimpbase.
* tools/pdbgen/Makefile.am: scan libgimpbase/gimpbasetypes.h, so
the enums are known to pdbgen...
* tools/pdbgen/enumcode.pl: ...but don't write them out to
libgimp/gimpenums.h
* tools/pdbgen/app.pl: include libgimp/gimpbase.h in all *_cmds.c
files. Added GIMP_ to the type names ganerated in app/.
* tools/pdbgen/enums.pl: regenerated.
* tools/pdbgen/pdb.pl
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/procedural_db.pdb
* tools/pdbgen/pdb/unit.pdb: changed includes.
2001-05-15 Michael Natterer <mitch@gimp.org>
* app/gimpcontextpreview.[ch]: removed (was not used).
* app/apptypes.h: removed the Guide typedef.
* app/core/core-types.h: added it here as GimpGuide (everything in
core/ must be "Gimp"-prefixed).
* app/gimage.[ch]: removed the global "next_guide_id" variable,
don't destroy the guides in the "destroy" handler.
* app/core/gimpimage.[ch]: destroy them in destroy().
* app/xcf.c: use GimpImage accessors to add the guides, so we
don't need "next_guide_id".
* app/gdisplay.[ch]
* app/undo.c
* app/core/gimpimage-duplicate.c
* app/tools/gimpcroptool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimpmovetool.[ch]
* tools/pdbgen/pdb/guides.pdb: s/Guide/GimpGuide/, cleanup.
2001-05-15 Michael Natterer <mitch@gimp.org>
* configure.in: new directory app/base/
* app/Makefile.am
* app/boundary.[ch]
* app/brush_scale.[ch]
* app/gimpchecks.h
* app/gimplut.[ch]
* app/pixel_processor.[ch]
* app/pixel_region.[ch]
* app/pixel_surround.[ch]
* app/temp_buf.[ch]
* app/tile.[ch]
* app/tile_cache.[ch]
* app/tile_manager.[ch]
* app/tile_manager_pvt.h
* app/tile_pvt.h
* app/tile_swap.[ch]: moved to base/
* app/base/Makefile.am
* app/base/base-types.h
* app/base/*: new directory for the sub-object pixel maniplation
and storage stuff. Does not include Gtk+ or anything outside
base/. Did some cleanup in all files.
* app/appenums.h
* app/apptypes.h
* app/core/gimpimage.h: removed types which are now in
base/base-types.h.
* app/base/base-config.[ch]
* app/gimprc.[ch]: put the config variables for base/ to their own
file so base/ doesn not have to include gimprc.h (does not yet
work, i.e. the variables are un-configurable right now)
* app/main.c: set a log handler for "Gimp-Base".
* app/paint-funcs/Makefile.am
* app/paint-funcs/paint-funcs.[ch]: removed the color hash which
maps RGB to color indices because it's a totally standalone system
which has nothing to do with the paint-funcs and introduced a
GimpImage dependency.
paint-funcs/ should be considered on the same sub-object
(glib-only) level as base/, only in a different directory.
* app/core/Makefile.am
* app/core/gimpimage-colorhash.[ch]: put the color hash here.
* app/gimage.c: don't invalidate the color hash here...
* app/core/gimpimage.c: ... but in the colormap_changed() default
inplementation. Initialize the hash in class_init().
* tools/pdbgen/Makefile.am: scan app/base/base-types.h for enums.
* tools/pdbgen/enums.pl: regenerated.
* app/[lots]
* app/core/[of]
* app/gui/[files]
* app/pdb/[all]
* app/tools/[over]
* app/widgets/[the]
* tools/pdbgen/pdb/[place]: changed #includes accordingly. And use
base_config->value instead of the stuff from gimprc.h.