2007-12-19 Michael Natterer <mitch@gimp.org>
* app/core/gimp-contexts.[ch]
* app/core/gimp-documents.[ch]: add GErrors to save() and load().
* app/core/gimp.c
* app/tools/gimp-tools.c: handle the returned errors.
svn path=/trunk/; revision=24403
2006-12-22 Sven Neumann <sven@gimp.org>
* app/core/gimp-documents.c
* app/core/gimp-parasites.c
* app/core/gimp-templates.c
* app/core/gimp-units.c
* app/widgets/gimpcontrollers.c: changed the header that is
written to config files that are rewritten on exit.
* app/tools/gimpiscissorstool.c: comment.
2003-07-24 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am
* app/config/gimpconfig-error.[ch]: moved code from gimpconfig.[ch]
to these new files.
* app/config/gimpconfig-utils.[ch]: moved gimp_config_string_indent()
here from gimpconfig.[ch].
* app/config/gimpconfig.[ch]
* app/config/gimpconfigwriter.c
* app/config/gimprc.c
* app/config/gimpscanner.c
* app/core/gimp-documents.c
* app/core/gimp-parasites.c
* app/core/gimp-templates.c
* app/widgets/gimpdevices.c: changed accordingly.
2003-06-23 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig.[ch]
* app/config/gimpconfigwriter.[ch]
* app/config/gimpscanner.[ch]: added support for serializing to
and deserializing from strings. Had to do some smaller changes to
the GimpConfig API.
* app/config/test-config.c: added a simple test for the new
functions.
* app/config/gimpconfig-dump.c
* app/config/gimprc.c
* app/core/gimp-documents.c
* app/core/gimp-parasites.c
* app/core/gimp-templates.c
* app/core/gimpunits.c
* app/gui/session.c
* app/plug-in/plug-in-rc.c
* app/tools/tool_options.c
* app/widgets/gimpdevices.c: follow GimpConfig API changes.
* libgimpbase/gimpparasite.[ch]: declared the return value of
gimp_parasite_data() as gconstpointer.
2002-05-21 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am: need to link test-config against
libgimpcolor now.
* app/config/gimpconfig.c (gimp_config_serialize): write newlines
after header and before footer.
* app/config/test-config.c
* app/config/gimprc.c
* app/core/gimp-documents.c
* app/core/gimp-parasites.c
* app/gui/test-commands.c: removed the newlines here.
* app/config/gimpconfig-params.h: define GIMP_PARAM_SERIALZE flag
which can be used to mark an object property as serializable.
Make the GIMP_CONFIG_INSTALL_PROP_* macros set it.
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-serialize.c: check the GIMP_PARAM_SERIALIZE
flag.
* app/config/gimpconfig-params.c (gimp_param_color_set_default):
fixed.
* app/core/gimpcontext.c: install serializable properties using the
GIMP_CONFIG_INSTALL_PROP_* macros.
2002-05-15 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig.[ch]: added user_data pointer to serialize
and deserialize methods.
* app/config/gimprc.[ch]: implement gimp_rc_save() using
gimp_config_serialize() so it can take advantage of the file
handling magic implemented there.
* app/config/test-config.c
* app/core/gimp-documents.c
* app/core/gimp-parasites.c
* app/core/gimpdocumentlist.c
* app/core/gimpparasitelist.c: changed accordingly.
2002-05-15 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig.[ch]: added a return value to indicate
success of GimpConfigInterface::serialize. Added a GimpConfigError
value for write errors and check the return value of all write()
calls. Allow to specify file header and footer when calling
gimp_config_serialize().
* app/config/gimpconfig-serialize.[ch]
* app/config/gimprc.c: changed accordingly.
* app/core/gimp-documents.[ch]: new files with functions to handle
gimp->documents.
* app/core/gimpdocuments.[ch]: removed ...
* app/core/gimpdocumentlist.[ch]: ... and added under this name.
Implements a generic document list.
* app/core/gimp-parasites.[ch]: new files with functions to handle
gimp->parasites.
* app/core/gimpparasite.[ch]: removed.
* app/core/gimpparasitelist.[ch]: nothing more than a generic
parasite list.
* app/undo.c
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimp.c
* app/core/gimpdrawable.c
* app/core/gimpimage-merge.c
* app/core/gimpimage.c
* app/core/gimpitem.c
* app/file/file-open.c
* app/file/file-save.c
* app/gui/file-open-dialog.c
* app/pdb/parasite_cmds.c
* tools/pdbgen/pdb/parasite.pdb: changed accordingly.
2002-05-15 Sven Neumann <sven@gimp.org>
* app/core/gimpdocuments.c: misc small changes.
* app/core/gimpparasite.[ch]: reduced to a small set of wrappers
around gimp->parasites.
* app/core/gimpparasitelist.c: moved the code that reads and
writes parasite lists ala parasiterc to this file. Added a
GimpConfigInterface to GimpParasiteList.
* app/core/gimp.c: changed accordingly.
2002-05-14 Sven Neumann <sven@gimp.org>
* app/core/core-types.h
* app/core/gimpdocuments.[ch]: made the list of recently used
images an object derived from GimpList that implements the
GimpConfigInterface.
* app/core/gimp.c
* app/file/file-open.c
* app/file/file-save.c: changed accordingly.
2002-04-29 Sven Neumann <sven@gimp.org>
* app/core/core-enums.[ch]: added new enum GimpThumbnailSize.
* app/gimprc.c
* app/config/gimpcoreconfig.[ch]
* app/core/gimpcoreconfig.[ch]: replaced old gimprc value
write_thumbnails with thumbnail_size.
* app/core/gimpimagefile.[ch]: allow to specify a thumbnail size.
* app/core/gimpdocuments.c
* app/file/file-open.c
* app/file/file-save.c
* app/gui/preferences-dialog.c
* app/widgets/gimpdocumentview.c: changed accordingly.
* app/gui/file-open-dialog.c: create the preview according to the
users choice of thumbnail size. Doesn't update on changes yet.
2002-04-19 Michael Natterer <mitch@gimp.org>
* app/core/gimpdocuments.[ch] (gimp_documents_add): speak in terms
of "uri", not "filename". Return the created imagefile.
* app/core/gimpimagefile.[ch]: factored out private function
gimp_imagefile_save_png_thumb() and call it from
gimp_imagefile_create_thumbnail().
Added public function gimp_imagefile_save_thumbnail() which takes
an imagefile and an image.
* app/file/file-open.c: create thumbnails for all images opened
interactively using gimp_imagefile_save_thumbnail().
* app/xcf/xcf-load.c (xcf_load_image): set the filename with
gimp_image_set_filename() so it gets converted to an URI as for
external plug-ins.
2002-04-16 Michael Natterer <mitch@gimp.org>
* app/base/temp-buf.c: fixed temp_buf_copy() and
temp_buf_to_[color|gray]() to (1) not crash and (2) to assume the
correct pixelformat. Bugs were never noticed because the code was
never used until today...
* app/core/gimpviewable.c (gimp_viewable_get_new_preview_pixbuf):
use temp_buf_copy() to convert GRAY* TempBufs to RGB* before
creating the pixbuf.
* app/app_procs.c: don't try to open command line images if the
filename could not be converted to an URI.
* app/file/file-open.c
* app/file/file-save.c: use g_file_test() instead of stat().
* app/file/file-utils.[ch]: cleanup, changed
file_utils_filename_to_uri() to take a list of procs, not a Gimp
pointer.
* app/core/gimpimage.c: changed accordingly.
* app/core/gimpimagefile.[ch]: implemented thumbnail saving
following the thumbnail standard v0.5 (the implementation is not
yet fully standard compliant).
* app/gui/file-open-dialog.c: use the new thubmnail functions and
removed all .xvpics code. Not finished yet...
* app/core/gimpdocuments.c
* app/widgets/gimpdocumentview.c: changed accordingly.
* tools/pdbgen/pdb/fileops.pdb (file_save_thumbnail): set "success"
correctly.
* app/pdb/fileops_cmds.c: regenerated.
2002-03-28 Michael Natterer <mitch@gimp.org>
* app/config/Makefile.am
* app/config/gimpscanner.[ch]: new files containing a convenience
constructor for GScanner and some parse utility functions, mostly
cut out of app/plug-in/plug-in-rc.c
* app/plug-in/plug-in-rc.c: removed the stuff here, added scopes
to the scanner symbols.
* app/core/Makefile.am
* app/core/gimpunits.[ch]: moved the user_unit list handling and
unitrc stuff to this file. Parse unitrc here, using the new
utility functions instead of using gimprc.
* app/core/gimpunit.[ch]: removed here.
* app/core/gimpdocuments.c: same here: added a scanner for the
document history instead of using gimprc.
* app/gimprc.c: removed unitrc and document history parsing stuff
along with some old unused cruft.
* app/app_procs.c
* app/core/gimp.c
* app/gui/user-install-dialog.c: #include "core/gimpunits.h".
* app/core/gimpdrawable-bucket-fill.c: don't include "gimprc.h".
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.
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-11 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/gimpdocuments.[ch]: new file implementing the
docindex.* replacement.
* app/gimprc.c: added TT_XDOCUMENT to parse the new document
history.
* app/file-save.c
* app/gui/file-open-dialog.c: add opened & saved images to the
document history.
* app/core/gimp.c: call gimp_documents_init/exit() instead of
doing it here.
* app/core/gimpimagefile.[ch]: removed the "filename" attribute
and use GimpObject's "name" instead.
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/menus.c: added a menu entry/dockable for the document
history.
* app/widgets/gimpdnd.[ch]: make it DND-able.
* app/widgets/gimppreview.c: fix preview rendering correctly this
itme.