2003-11-08 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-error.h: added GIMP_CONFIG_ERROR_VERSION
to GimpConfigError enum.
* libgimpbase/gimpprotocol.h: renamed GP_VERSION to
GIMP_PROTOCOL_VERSION.
* libgimp/gimp.c
* app/plug-in/plug-in-run.c: changed accordingly.
* app/plug-in/plug-in-rc.[ch]: write the protocol version to the
pluginrc and stop parsing when a wrong protocol version is found.
* app/plug-in/plug-ins.c: pass a GError to plug_in_rc_parse().
2003-10-26 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-deserialize.c
(gimp_config_deserialize_fundamental): handle negative float and
double values similar to how this is done for integers and the
like.
* app/config/gimpconfig-params.h: added two new param flags and
documented all flags in the header file (for now).
* app/config/gimpconfig-serialize.h: handle the new param flags
GIMP_PARAM_DEFAULTS and GIMP_PARAM_IGNORE.
* app/text/text-enums.[ch]
* app/text/gimptext.[ch]: added some properties that we will need
sooner or later. Mark the new properties and a lot of the existing
ones as GIMP_PARAM_DEFAULTS so that their values are not
serialized unless changed from the default value.
* app/text/gimptextlayout.c
* app/tools/gimptextoptions.c: made all length properties in
GimpText depend on a single unit.
2003-10-25 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-utils.[ch] (gimp_config_connect): make it
a two-way connection and added a property_name parameter so it
can be used to connect only a certain property.
* app/tools/gimptexttool.c: changed accordingly.
* app/tools/gimphistogramoptions.c: use gimp_config_connect().
Changed the default histogram scale to linear.
2003-10-24 Sven Neumann <sven@gimp.org>
* themes/Default/images/Makefile.am
* themes/Default/images/stock-histogram-linear-16.png
* themes/Default/images/stock-histogram-logarithmic-16.png:
added placeholders for new icons.
* libgimpwidgets/gimpstock.[ch]: register the new icons.
* app/tools/gimphistogramtool.c: made the dialog more compact by
using a stock-box for the histogram scale.
* app/widgets/gimphistogramview.c (gimp_histogram_view_expose):
don't invert the histogram view if the full range is selected.
* app/widgets/gimphistogrambox.c: moved the range widgets below
the histogram.
* app/config/gimpconfig-params.h: added macro
GIMP_CONFIG_INSTALL_PROP_RESOLUTION() that installs a double
property with the suitable range.
* app/core/gimptemplate.c
* app/config/gimpdisplayconfig.c: use it here.
2003-10-21 Sven Neumann <sven@gimp.org>
* base/base.c (base_init)
* app/errors.c (gimp_errors_init): moved the message about
possible debug messages to gimp_errors_init() so that it appears
before any startup debug output.
* app/app_procs.c (app_init): register a log handler for the
GimpConfig log domain.
* app/widgets/gimpwidgets-utils.c (gimp_message_box)
* app/core/gimp.c (gimp_message): added an extra newline when
sending messages to stderr. Don't output the full progname for
messages; use a simple "GIMP" like the GUI message handler does.
* app/gui/user-install-dialog.c: removed function copy_file()...
* app/config/gimpconfig-utils.[ch]: ... and added it here as
gimp_config_file_copy(). Also added utility function
gimp_config_file_backup_on_error().
* app/config/gimprc.c (gimp_rc_load): if the user gimprc can't be
parsed, create a backup and if that succeeds unlink the broken one
to cure the problem.
* app/gui/session.c: create a backup if sessionrc can't be parsed.
* config/gimpconfig-deserialize.c (gimp_config_deserialize_properties):
don't set an error when token is G_TOKEN_NONE; it should already
be set then.
2003-10-15 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpdocked.c (gimp_docked_iface_base_init)
* app/config/gimpconfig.c (gimp_config_iface_base_init): they are
base_init, not just init functions. Changed implementations to not
overwrite the parent class' vtable entries with the default
implementations. Fixes derived interface methods and brings
back all dockable menus.
2003-10-15 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-utils.c (gimp_config_diff_internal): minor
cleanup.
* app/core/gimptemplate.[ch]: added a comment property.
* app/config/gimpcoreconfig.[ch]
* app/config/gimprc-blurbs.h: removed "default_comment" property
and set the default comment on the default image template.
* app/widgets/gimptemplateeditor.c: added a comment editor widget.
* app/core/gimp.c
* app/gui/file-new-dialog.c
* app/gui/preferences-dialog.c
* app/pdb/gimprc_cmds.c
* tools/pdbgen/pdb/gimprc.pdb: changed accordingly.
* libgimpwidgets/gimpmemsizeentry.c (gimp_memsize_entry_init):
increased spacing between the spinbutton and the menu.
2003-10-14 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-utils.[ch]: removed
gimp_config_copy_properties() and added the more intelligent
gimp_config_sync() instead.
* app/config/Makefile.am
* app/config/config-types.h
* app/config/gimpcoreconfig.[ch]
* app/config/gimprc-blurbs.h: replaced default image properties
with a single GimpTemplate object property. Changed the
set_property function to not replace aggregate objects but call
gimp_config_sync() instead.
* app/tools/gimptextoptions.c (gimp_text_options_set_property):
same change here.
* app/config/gimpconfig.[ch]: changed return value of
gimp_config_duplicate() to gpointer to avoid some casts that only
made the code harder to read.
* app/widgets/gimptemplateeditor.[ch]: don't keep an internal copy
here but edit the GimpTemplate passed when the editor was
constructed.
* app/gui/preferences-dialog.c: use a GimpTemplateEditor to allow
editing of the default image paramaters.
* app/config/gimprc.c
* app/core/core-types.h
* app/core/gimp.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage-grid.c
* app/core/gimpimage-new.c
* app/core/gimpimage-undo-push.c
* app/core/gimpimage.c
* app/core/gimptemplate.[ch]
* app/gui/file-new-dialog.c
* app/gui/grid-dialog.c
* app/gui/info-window.c
* app/gui/resize-dialog.c
* app/gui/templates-commands.[ch]
* app/gui/tool-options-commands.c
* app/text/gimptextlayer.c
* app/text/gimptextlayer.c
* app/tools/gimptexttool.c
* app/widgets/gimptemplateview.c
* app/xcf/xcf-load.c: changed accordingly.
2003-10-12 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am: fixed dependencies for test-config.
* app/config/gimpconfigwriter.[ch]: code cleanup and documentation.
* app/composite/gimp-composite-generic.[ch]: made prototype for
gimp_composite_color_any_any_any_generic() match the implementation.
* app/composite/gimp-composite.c: fixed some issues with the
comment templates.
2003-10-12 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-serialize.[ch]: removed function
gimp_config_serialize_comment()...
* app/config/gimpconfig-utils.[ch]: removed function
gimp_config_string_indent()...
* app/config/gimpconfigwriter.[ch]: ... and implement both here.
Added a comment mode to GimpConfigWriter.
* app/config/gimpconfig-dump.c: handle GimpConfig properties.
* doc/gimprc-1.3.5.in
* etc/gimprc: regenerated by gimpconfig-dump.
2003-10-01 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-utils.c (gimp_config_diff): make it handle
aggregate object properties by calling itself recursively.
2003-09-29 Michael Natterer <mitch@gimp.org>
Fixed handling of G_PARAM_CONSTRUCT_ONLY properties:
* app/config/gimpconfig.c (gimp_config_iface_duplicate): build
a GParameter array of G_PARAM_CONSTRUCT_ONLY properties and
use g_object_newv() instead of g_object_new() to create the
copy.
* app/config/gimpconfig-utils.c
(gimp_config_copy_properties)
(gimp_consif_reset_properties): don't try to copy/reset
G_PARAM_CONSTRUCT_ONLY properties because it is impossible.
(gimp_config_connect_notify): ditto. Also don't try to read
from unreadable or write to unwritable properties.
2003-09-23 Sven Neumann <sven@gimp.org>
* app/config/gimpscanner.c (gimp_scanner_new_file): workaround for
GLib bug #116617: set GimpConfigError before calling g_strerror().
Fixes bug #122939.
2003-09-22 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/gimprc.pdb: UTF-8 validate the value set using
gimprc_set(); mention this in the documentation.
* app/pdb/gimprc_cmds.c
* libgimp/gimpgimprc_pdb.c: regenerated.
* app/config/gimpconfig-path.c (gimp_config_path_expand): added
inline docs since this function is really not self-explanatory.
2003-09-02 Michael Natterer <mitch@gimp.org>
* app/config/gimpcoreconfig.[ch]
* app/config/gimprc-blurbs.h: removed "module-load-inhibit"
property since the GimpModuleDB stores this value.
* app/config/gimpconfigwriter.[ch] (gimp_config_writer_new):
renamed parameter "gboolean safe" to "gboolean atomic".
* app/core/gimpmodules.c: ported modulerc parsing/writing to
GimpScanner and GimpConfigWriter (apparently it was forgotten
during gimprc cleanup). Makes keeping modules from being loaded
work again. Reported by Michael Schumacher on #gimp.
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-07-17 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-params.[ch]: added "gboolean allow_percent"
to gimp_param_spec_unit() and to the GIMP_CONFIG_INSTALL_PROP_UNIT()
macro. Changed value validation accordingly.
* app/config/gimpconfig-types.c (string_to_unit): parse "percent"
correctly.
* app/widgets/gimppropwidgets.c (gimp_prop_unit_menu_new): show
the "Percent" menu entry if the param_spec allows percent.
* app/config/gimpcoreconfig.c
* app/core/gimpgrid.c
* app/core/gimptemplate.c
* app/text/gimptext.c: pass FALSE to disallow percent.
* app/paint/gimppaintoptions.c
* app/tools/gimpselectionoptions.c: pass TRUE. Brings back the
percent feature for fade_length, gradient_length and fixed_size
rect/ellipse select.
* app/tools/gimpbucketfilloptions.c
* app/tools/gimpmagnifyoptions.c
* app/tools/gimpselectionoptions.c
* app/tools/gimptransformoptions.c: don't call the the reset()
functions from the GUI constructors (and reset the options just
deserialized from disk). Instead, added set_defaults() functions
which do everything the old reset() functions did (except
upchaining) and call set_defaults() from reset() and from the GUI
constructors.
2003-07-11 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig.c (gimp_config_reset): don't return stuff
from a void function (spotted by Jimmer on #gimp). Removed
trailing whitespace.
2003-07-07 Sven Neumann <sven@gimp.org>
* libgimpbase/gimpbasetypes.h: include <libgimpmath/gimpmathtypes.h>.
* libgimpmath/gimpmathtypes.h
* libgimpmath/gimpmatrix.[ch]: added GimpMatrix2 struct definition
and new function gimp_matrix2_identity().
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-params.[ch]
* app/config/gimpconfig-serialize.c
* app/config/gimpconfig-types.[ch]
* app/config/gimpconfig.c
* app/config/gimpscanner.[ch]: added a boxed type around GimpMatrix2.
* app/text/gimptext.[ch]: added new property "transformation".
2003-06-24 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig.[ch]: added new function
gimp_config_serialize_to_fd() for the sake of completeness and
since it's a nice way to generate debugging output.
* app/text/Makefile.am
* app/text/gimptext-xlfd.[ch]: new files with routines to handle X
Logical Font Descriptions in an attempt to improve backwards
compatibility.
* app/text/gimptext-parasite.[ch]
* app/xcf/xcf-load.c: promote layers with GDynText parasite to
GimpTextLayer. Work in progress, we need to improve font matching.
2003-06-24 Sven Neumann <sven@gimp.org>
* app/config/gimpscanner.c: store file descriptor and filename in
a private struct instead of using internals of GScanner. Should
fix problems on Win32 reported by Hans Breuer.
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.
2003-04-12 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-params.h: made object properties
G_PARAM_READWRITE by default. Added flag GIMP_PARAM_AGGREGATE
which indicates that an object property is not a reference but a
real part of its owner.
* app/config/gimpconfig-deserialize.c: g_object_set_property()
object properties only if they are not GIMP_PARAM_AGGREGATE.
* app/config/gimpconfig-utils.c (gimp_config_copy_properties,
gimp_config_reset_properties): copy and reset GIMP_PARAM_AGGREGATE
object properties correctly.
* app/config/gimpconfig-serialize.c: don't call
gimp_config_writer_open/close() for properties which are handled
by a GimpConfigIface::serialize_property() implementation.
* app/core/gimpcontext.c: removed exlicit G_PARAM_WRITABLE from
object properties since that's the default now. Call
gimp_config_writer_open/close() when serializing properties.
* app/core/gimpviewable.c (gimp_viewable_get_property): use
gimp_viewable_get_stock_id().
(gimp_viewable_set_stock_id): set stock_id to NULL if the new
stock_id is the same as viewable_class->default_stock_id.
Added serialize_property() which skips stock_id serialization
if it is NULL.
* app/tools/gimptextoptions.c: made the "text" property
GIMP_PARAM_AGGREGATE. Added gimp_text_options_set_property()
(which does nothing).
* app/widgets/gimptemplateeditor.[ch]: added an optional
GimpViewableButton to change the template's icon.
* app/gui/file-new-dialog.c: create it with the icon button so it
gets some testing.
2003-04-05 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-utils.c (gimp_config_reset_properties):
reset object properties only if they are GIMP_PARAM_SERIALIZABLE.
* app/core/gimpcontext.[ch]: added a GimpTemplate property.
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c: added a template dialog.
* app/gui/dialogs-menu.c
* app/gui/image-menu.c
* app/gui/toolbox-menu.c: and menu entries to open it.
* app/widgets/gimpdnd.[ch]: added DND for GimpTemplates.
2003-03-27 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-deserialize.c
(gimp_config_deserialize_property): allow object properties to be
set again if they are G_PARAM_WRITABLE. Fixes active brush,
pattern etc. deserialization.
2003-03-25 Sven Neumann <sven@gimp.org>
* Makefile.am
* gimpintl.h: removed this header file.
* gimpmiscui.c: include libgimp-intl.h.
* gimp.c (gimp_main): call setlocale() and bind to the libgimp
textdomain so that plug-ins don't need to do that explicitely.
* libgimp/stdplugins-intl.h: added the functionality that used to
live in gimpintl.h and removed the libgimp related stuff. Got rid
of the INIT_I18N_UI() macro.
* plug-ins/*/*.c: removed all occurances of INIT_I18N_UI().
Plug-ins simply call INIT_I18N() once in their run() function.
* plug-ins/script-fu/script-fu-intl.h: added the functionality
that used to live in gimpintl.h and removed the libgimp related
stuff.
* app/Makefile.am
* app/gimp-intl.h: new file that defines the gettext macros for
the GIMP core.
* app/*/*.c: include gimp-intl.h instead of libgimp/gimpintl.h.
* plug-ins/script-fu/scripts/test-sphere.scm: fixed typos.
2003-03-17 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-utils.[ch]: added the new function
gimp_config_string_append_escaped(), see inline docs.
* app/config/gimpconfig-serialize.c
* app/config/gimpconfigwriter.c
* app/core/gimpcontainer.c: use the new function instead of
g_strescape().
2003-03-10 Sven Neumann <sven@gimp.org>
* app/config/gimpscanner.[ch]: removed gimp_scanner_parse_string_list()
since the format it read wasn't proper s-expressions syntax.
* app/config/gimpconfigwriter.c: a couple of minor cleanups.
* app/gui/color-history.[ch]
* app/gui/session.c
* app/widgets/gimpdialogfactory.[ch]: use GimpConfigWriter to
write the sessionrc. Had to do some minor changes to the file
format.
2003-03-10 Sven Neumann <sven@gimp.org>
* app/config/gimpconfigwriter.[ch]: fixed creation of config file,
added new function gimp_config_writer_string() and improved
gimp_config_writer_linefeed().
* app/config/gimpconfig-serialize.c
* app/core/gimpcontext.c
* app/core/gimpdocumentlist.c: use gimp_config_writer_string()
instead of escaping the string manually.
* app/core/gimpunits.c (gimp_unitrc_save): use a GimpConfigWriter.
* app/plug-in/plug-in-rc.[ch] (plug_in_rc_write)
* app/plug-in/plug-ins.c: use a GimpConfigWriter.
2003-02-28 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-serialize.[ch]: transparently serialize
and deserialize object properties that implement the
GimpConfigInterface.
* app/config/gimpconfig-utils.c (gimp_config_reset_properties):
call reset recursively if properties are itself objects that
implement the GimpConfigInterface.
* app/config/gimpconfig-dump.c: adapt to API changes.
* app/config/gimpconfig-params.h: made object properties installed
using GIMP_CONFIG_INSTALL_PROP_OBJECT() be not writable by default.
* app/core/gimpcontext.c (gimp_context_class_init): made objects
properties explicitely writeable.
* app/tools/gimptextoptions.c: made the GimpText object a property
of GimpTextOptions and removed lots of special handling which is
now transparently done by GimpConfigInterface.
2003-02-28 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-serialize.[ch]: renamed
gimp_config_serialize_changed_properties() to
gimp_config_serialize_properties_diff() and added a new function
gimp_config_serialize_changed_properties() that saves only
properties that have been changed from their default values.
* app/config/gimprc.c: follow the function name change.
* app/core/gimpcontext.c: override GimpConfigInterface::serialize
with gimp_config_serialize_changed_properties() so we store only
tool_options that have been changed from their default values.
2003-02-28 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-serialize.c
(gimp_config_serialize_changed_properties): simplified by using
gimp_config_serialize_property() instead of doing it all by hand.
2003-02-26 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-serialize.c (gimp_config_serialize_properties):
don't insert an extra line-break after a serialized property.
* app/config/gimpconfig-serialize.c
* app/config/gimpconfig-dump.c
* app/gui/tips-parser.c: use g_string_truncate (str, 0) instead of
assigning an empty string.
* app/tools/gimptextoptions.c: override the serialize and
deserialize methods of the GimpConfig interface and save/restore
the associated GimpText object instead of GimpTextOptions.
* app/tools/tool_options.c (gimp_tool_options_build_filename):
don't append ".default" if no extension is given.
2003-02-10 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-utils.[ch]: added new utility functions
gimp_config_connect() and gimp_config_disconnect() and documented
most functions.
* app/tools/gimptexttool.c (gimp_text_tool_connect): use the new
GimpConfig utility functions.
2003-02-08 Sven Neumann <sven@gimp.org>
* app/text/gimptext.c
* app/tools/gimpbucketfilloptions.c
* app/tools/gimpselectionoptions.c
* app/tools/gimptextoptions.c: use N_() instead of _() with blurbs
of object properties. GimpConfig wants the untranslated string as
well.
* app/widgets/gimpenummenu.c
* app/widgets/gimppropwidgets.c: added gettext() calls.
* app/config/gimpconfig-serialize.c: document the fact that
gimp_config_serialize_comment() only handles ASCII comments.
2003-02-08 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-serialize.c (gimp_config_serialize_property):
the virtual serialize_property() returning FALSE doesn't mean the
serialization failed but that the function didn't handle the
property, so don't error but continue with the default
implementation. Print newlines after properties only if
indent_level == 0.
* app/gui/tool-options-dialog.c: added tool options saving/loading
as quickly hacked proof-of-concept.
* app/paint/paint-enums.[ch]: added enum GimpInkBlobType.
* app/tools/gimpinkoptions.[ch]: ported to object properties,
cleanup.
* app/tools/gimpinktool.c: changed accordingly.
2003-02-01 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig.[ch]
* app/config/gimpconfig-utils.[ch]: added a reset method to
GimpConfigInterface. Added the new function gimp_config_reset()
* app/text/gimptext.c: added a GimpConfigInterface to GimpText.
* app/widgets/Makefile.am
* app/widgets/gimptexteditor.[ch]: new files that hold the simple
text editor dialog used by the text tool.
* app/widgets/gimppropwidgets.[ch]: added new widget constructor
gimp_prop_scale_entry_new().
* app/tools/gimptexttool.[ch]: replaced old-style ToolOptions with
a GimpText object. Connect text layers to the text tool by means
of their GimpText objects. Still work in progress ...
2003-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-26 Sven Neumann <sven@gimp.org>
* app/config/gimprc-blurbs.h: removed the description of the image
title format string from the blurb ...
* app/config/gimpconfig-dump.c: ... and added it here. Slightly
improved manpage formatting.
* app/config/gimpconfig-deserialize.c: fixed a typo.
* docs/gimprc-1.3.5.in
* etc/gimprc: regenerated.
2003-01-13 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am
* app/config/gimpconfig-dump.c
* app/config/gimpconfig-serialize.c: more work on gimpconfig-dump.
* configure.in
* docs/Makefile.am
* docs/gimprc-1.3.5.in: removed ...
* docs/gimprc-1.3.5: ... and replaced with a new version generated
using gimpconfig-dump (although it's not perfect yet).
2003-01-11 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am: always build gimpconfig-dump.
* app/config/gimpconfig-params.[ch]: added an enum to specify the
type of path with GIMP_PARAM_SPEC_PATH.
* app/config/gimpconfig-dump.c: document the different types of
paths differently.
* app/config/gimpbaseconfig.c
* app/config/gimpcoreconfig.c
* app/config/gimpguiconfig.c
* app/config/gimppluginconfig.c: register the path types.
* etc/gimprc: generated a new system gimprc.
* plug-ins/common/tiff.c: added missing spaces in warning and
removed trailing newlines in strings passed to g_message().
2002-12-29 Sven Neumann <sven@gimp.org>
* configure.in
* etc/Makefile.am
* etc/gimprc.in
* etc/gimprc_user.in: removed templates for gimprc files.
* etc/gimprc: added this file as generated by gimp-config-dump.
* app/gui/user-install-dialog.c
* data/misc/user_install: don't install an empty user gimprc.
* app/config/Makefile.am
* app/config/gimpconfig-substitute.[ch]: removed these files.
* app/config/gimpconfig-path.[ch]: and added them again with
reduced functionality. Paths found in config files are now
basically handled like standard strings by the config system.
Users of the GimpConfig path variables need to expand the path
themselves.
* app/config/gimpbaseconfig.c
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-dump.c
* app/config/gimpconfig-utils.c
* app/config/gimpconfig.c
* app/config/gimpcoreconfig.c
* app/config/gimprc.c:
* app/base/base.c
* app/base/temp-buf.c
* app/core/gimp.c
* app/core/gimpdatafactory.c
* app/core/gimpmodules.c
* app/gui/user-install-dialog.c
* app/plug-in/plug-in.c
* app/tools/tools.c
* app/widgets/gimppropwidgets.c: changed accordingly.
2002-12-01 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-blurbs.h: small cleanup.
* app/config/gimpconfig-serialize.[ch]: export more functionality.
* app/config/gimpconfig-dump.c: added some code to dump a
commented version of the system-wide gimprc with default values.
2002-12-01 Sven Neumann <neo@wintermute>
* libgimp/Makefile.am (IGNORE_HFILES): ignore gimpmiscui.h.
2002-11-30 Hans Breuer <hans@breuer.org>
* */makefile.msc */*/makefile.msc : updated
* themes/Default/images/makefile.msc : new file
* themes/Default/makefile.msc : removed
* libgimpwidgets/gimpwidgets.def : updated
* app/core/core-types.h : renamed PIXELS and POINTS
to SIZE_* to avoid clashes with system headers
* app/pdb/text_tool_cmds.c : updated ...
* tools/pdbgen/enums.py : ... by renaming here too.
* app/widgets/gimphistogrambox.c : <string.h> for memcpy()
* app/widgets/gimppropwidgets.c : <string.h> for strlen()
* app/config/gimpconfig.c : on win32 rename always fails
if the destination file exists. Delete it first.
* libgimp/gimp.def : removed all '_'-prefixed exports
* plug-ins/common/iwarp.c : replace _gimp_layer_copy()
with gimp_layer_copy(), gimp_layer_add_alpha()
* libgimp/gimpmisc.c : ported gimp_timer funcs to use
g_timer to be more portable
* libgimpbase/gimpdatafiles.c : there are no symlinks on
win32, inverted to #ifndef G_OS_WIN32 as it was meant.
* libgimpbase/gimpbase.def libgimpmodule/gimpmodule.def
libgimpwidgets/gimpwidgets.def : updated externals
* plug-ins/common/randomize.c plug-ins/common/sinus.c :
don't initialize more than the defined struct size
* plug-ins/common/warp.c : removed unneeded unistd.h and
signal.h include
* regexrepl/regexrepl.def : (new file) needed to build
as DLL
2002-11-28 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am
* app/config/gimpconfig-params-blurbs.h: removed ...
* app/config/gimpconfig-blurbs.h: ... and readded under this name.
Defined all missing blurb definitions to NULL.
* app/config/gimpconfig-params.h: added a blurb parameter to all
GIMP_CONFIG_INSTALL_PROP_* macros.
* app/config/gimpbaseconfig.c
* app/config/gimpcoreconfig.c
* app/config/gimpdisplayconfig.c
* app/config/gimpguiconfig.c: register blurbs with the GimpRc
properties.
* app/config/gimpconfig-serialize.c: do proper line-breaking for
comments.
* app/core/gimpcontext.c
* app/widgets/gimpdeviceinfo.c: register NULL blurbs here.
2002-11-28 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am
* app/config/gimpconfig-dump.c: added the basic infrastructure for
a utitily that dumps the GimpRc object.
* app/config/gimpconfig-serialize.c: dump object blurbs as comments.
2002-11-25 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-utils.[ch]: added gimp_config_diff()
which returns the difference beween two GimpConfig objects
as a GList of GParamSpecs.
* app/config/gimpconfig-params.c (gimp_param_color_cmp): compare
the colors as integers to get rid of rounding foobar.
* app/config/gimpconfig-serialize.c: use gimp_config_diff().
* app/display/gimpdisplayshell-handlers.c: only need to call
gimp_display_shell_scale_setup() on resolution change if the
display is not in dot-for-dot mode.
* app/display/gimpdisplayshell.c: changed a separator in the
padding color menu.
* app/gui/dialogs.c: made the prefs dialog a singleton again.
* app/gui/preferences-dialog.c: Should be fully functional again:
Apply GIMP_PARAM_CONFIRM properties on "OK". Save gimprc on "OK".
Parse a temporaty GimpRc on dialog creation to get the current
GIMP_PARAM_RESTART values. Use gimp_config_diff() for all config
comparisons.
2002-11-23 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-utils.[ch]: removed
gimp_config_values_equal().
* app/config/gimpconfig-serialize.c
* app/config/gimpconfig.c: use g_param_values_cmp() instead so
our registered compare methods are used.
* app/config/gimpdisplayconfig.[ch]: added "canvas_padding_mode"
and "canvas_padding_color" properties.
* app/display/display-enums.[ch]: added enum GimpDisplayPaddingMode
which can be one of { theme, light check, dark check, custom }.
* app/display/gimpdisplay.h
* app/display/gimpdisplay-handlers.c: removed cached monitor
resolution values...
* app/display/gimpdisplayshell.[ch]: ...and added them here. Added
padding state as in GimpDisplayConfig. Added utility function
gimp_display_shell_set_padding() which hides all the details.
Added the new padding modes to the padding color button's context
menu.
* app/display/gimpdisplayshell-callbacks.[ch]: don't fiddle
with colors manually but use gimp_display_shell_set_padding()
in realize() and in the color button callbacks.
* app/display/gimpdisplayshell-handlers.c: connect to
notify::monitor-[xy]resolution and
notify::canvas-padding-[mode|color] and update accordingly.
* app/widgets/gimppropwidgets.[ch]: added
gimp_prop_color_button_new().
* app/widgets/gimpdialogfactory.[ch]: added
gimp_dialog_factories_session_clear() (unimplemented).
* app/gui/preferences-dialog.c: added widgets for padding mode and
color. Removed some callbacks by connecting the functions they
called directly. Cleanup.
2002-11-20 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-params.h: added GIMP_PARAM_RESTART and
GIMP_PARAM_CONFIRM flags and changed all param spec macros
to have a "flags" parameter.
* app/config/gimpbaseconfig.c
* app/config/gimpcoreconfig.c
* app/config/gimpdisplayconfig.c
* app/config/gimpguiconfig.c: tag the values which need restart or
confirmation with the resp. flags. Changed all macro calls
accordingly.
* app/core/gimpcontext.c
* app/widgets/gimpdeviceinfo.c: changed macro calls accordingly.
2002-11-18 Sven Neumann <neo@wintermute>
* app/config/gimpconfig-deserialize.c
(gimp_config_deserialize_properties): improved error message for
the special case of store_unknown_tokens == TRUE.
2002-11-18 Sven Neumann <neo@wintermute>
* app/config/gimpconfig.c (gimp_config_add_unknown_token): try to
substitute paths of the form ${foo} in the unknown token value.
* data/environ/Makefile.am: fixed a comment.
2002-10-10 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-params.[ch]: optionally allow GIMP_UNIT_PIXEL
as value for GimpUnit params.
* app/core/gimpimage-text.[ch]
* app/core/gimptext.[ch]
* app/tools/gimptexttool.c: moved some code around.
2002-09-21 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-params.h: fixed some macros that were never used.
* data/images/gimp_splash.png: flattened the splash image. The alpha channel
crashed servers with buggy XRender extension (#93841) (and should have never
been there anyway).
2002-09-06 Hans Breuer <hans@breuer.org>
* */*/makefile.msc : updated
* libgimptool/makefile.msc : new file, libgimptool
is currently build as static lib due to references
into app/core
* themes/Default/makefile.msc : removed
* themes/Default/images/makefile.msc : new file
* libgimpwidgets/makefile.msc libgimpwidgets/gimpwidgets.c
updated (externals)
* app/paint-funcs.c : replaced gccism varibale size array on
stack with portable alloca, removed sizeof(buf) check which
must fail now.
* app/config/gimpconfig.c : get write/close protos
on win32 from io.h
* app/config/gimprc.c : dito and <string.h>
* app/config/gimpscanner.c : <string.h> only
* app/core/gimpcontainer.c : workaround for clumsy
compilers not supporting vararg macros
* app/core/gimpdocumentlist.c app/core/gimpparasitelist.c
include <io.h> on win32
* app/widgets/gimpdocumentview.c
app/widgets/gimpimagedock.c
app/widgets/gimppreview.c : add #ifdef __GNUC__
to avoid breaking on non standard pragma #warning.
* app/gui/session.c : include <string.h>
* regexrepl/makefile.msc : build as dll
* plug-ins/makefile.msc : updated
* plug-ins/common/pix.c : open file binary
* plug-ins/common/spheredesigner.c : avoid error
'incompatible types' while assigning, use memcpy()
2002-06-17 Sven Neumann <sven@gimp.org>
Obviously I disagree with Tim about the symbol_name parameter in
g_scanner_unexp_token(). As it seems it's not supposed to be used
to tell the user about the expected symbol (see bug #81850):
* gimpconfig.[ch] (gimp_config_deserialize_return): removed the
symbol_name parameter.
* app/config/gimpconfig-deserialize.c
* app/core/gimpcontainer.c
* app/core/gimpdocumentlist.c
* app/core/gimpparasitelist.c: changed the callers accordingly.
* app/core/gimpunits.c (gimp_unitrc_load): pass NULL as symbol_name
to g_scanner_unexp_token().
2002-06-09 Sven Neumann <sven@gimp.org>
* app/undo.c
* app/config/gimpconfig-deserialize.c
* app/core/gimpbrushpipe.c
* app/core/gimpcontainer.c
* app/core/gimpimagefile.c
* app/gui/paths-dialog.c
* app/tools/gimpcurvestool.c
* app/tools/gimplevelstool.c
* app/widgets/gimpcomponentlistitem.c
* app/widgets/gimpgradienteditor.c: unified translatable strings
and unmarked a few for translation since they should never be seen.
2002-06-09 Sven Neumann <sven@gimp.org>
* POTFILES.in: updated.
* de.po: updated german translation.
2002-06-02 Michael Natterer <mitch@gimp.org>
* app/gui/session.c: parse sessionrc using GScanner.
* app/config/gimpscanner.[ch]: added utility function
gimp_scanner_parse_string_list(). Fixed the color parser's parse
error detection.
* app/gimprc.c: removed the sessionrc parsing stuff.
* app/config/gimpconfig-params.c (gimp_param_spec_color): no need
to set the param_spec's value_type, it already gets set by it's
base class' instance_init() function.
2002-05-31 Michael Natterer <mitch@gimp.org>
* app/config/gimpscanner.[ch]: configure the scanner the same
way GimpConfig did (scanner->user_data is, if set, a GError).
Added gimp_scanner_parse_color(). Added "GError **error" to
gimp_scanner_new().
* app/config/gimpconfig.c: use gimp_scanner_new().
* app/config/gimpconfig-deserialize.c: use gimp_scanner_parse_color().
* app/core/gimpunits.c
* app/plug-in/plug-in-rc.c: changed accordingly.
* app/plug-in/plug-in-rc.c: made the main parse loops consistent
with the other places using GScanner.
2002-05-29 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpwidgets.[ch]: renamed gimp_mem_size_entry_new()
to gimp_memsize_entry_new() for consistency. Rewrote using bitshifts.
Should work correctly for sizeof (gulong) > 32 now. Added new unit
GigaBytes.
* app/gui/preferences-dialog.c
* app/gui/user-install-dialog.c: changed accordingly.
* app/config/gimpconfig-types.[ch]: added new function
gimp_memsize_set_from_string() that allows to check if the
conversion succeeded.
* app/config/gimpconfig-deserialize.c
(gimp_config_deserialize_memsize): use gimp_memsize_set_from_string().
2002-05-28 Sven Neumann <sven@gimp.org>
* app/config/test-config.c
* app/gui/test-commands.c: use g_error_free() so we crash if our
GimpConfig functions return FALSE and don't set an error.
* app/widgets/gimpdevices.c: don't warn if devicerc was not found.
* app/gui/preferences-dialog.c: use G_MAXULONG as upper limit for
the mem_size entries.
* libgimpwidgets/gimpwidgets.c (gimp_mem_size_entry): use gulong
and set the range of the spinbutton's adjustment properly.
2002-05-28 Michael Natterer <mitch@gimp.org>
* app/core/gimpcontext.c: override GObjectClass->constructor() and
do the setup stuff there, not in gimp_context_new(). This way we
can create properly initialized contexts with g_object_new().
* app/widgets/gimpdeviceinfo.c: Removed the "gimp" property
again. Added a constructor() implementation and moved stuff there
from gimp_device_info_set_property(PROP_GIMP).
* app/config/gimpconfig-deserialize.c: made deserialization of
value arrays work by actually using the array any not just leaking
it ;)
* app/core/gimpcontainer.c: removed debugging output. Call
config_iface->deserialize(child, ...) again instead of calling
gimp_config_deserialize_properties() directly.
* app/widgets/gimpdevices.c: switch to using the new stuff for
devicerc.
* app/widgets/gimpdeviceinfo.[ch]
* app/widgets/gimpdevices.[ch]
* app/gimprc.c: removed all old gimprc-style devicerc stuff.
* app/gui/menus.c
* app/gui/test-commands.[ch]: removed devicerc testing entries
and callbacks.
2002-05-27 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig.[ch]: added "gint nest_level" to the
deserialization functions, so nested calls to deserialize()
don't error on the trailing ')'. Made the scanner config parse
one-character identifiers and allow G_CSET_A_2_Z for all
identifiers.
Added gimp_config_deserialize_return() because returning the
correct return value from a deserialize() function is not
trivial any more with nested calls.
* app/config/gimpconfig-deserialize.[ch]
* app/config/gimprc.c
* app/core/gimpdocumentlist.c
* app/core/gimpparasitelist.c: use the new return value utility
function and made the main parsing loops simpler.
* app/core/gimpunits.c: made the main parsing loops consistent
with the stuff that uses GimpConfig.
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-serialize.c: call the
(de)serialize_property() functions only if the property's class
implements the method itself (does *not* inherit it from one of
it's parents).
* app/core/gimpcontainer.c: implemented deserialization of
containers. For each child entry encountered in the input, check
if it's already contained in the container and create it if not.
If a "gimp" pointer is passed as user_data pass it as construct
property to g_object_new() when creating the object.
* app/core/gimpcontext.c: changed deserialization of brush,
pattern etc. to honor "no_data".
* app/widgets/gimpdeviceinfo.c: added a "gimp" construct_only
property which overrides GimpContext's "gimp" property. Moved all
initialisation code from gimp_device_info_new() to
gimp_device_info_set_property(PROP_GIMP) so it is properly
performed if the object is created by GimpContainer's
deserialize() implementation.
* app/widgets/gimpdevices.c: made gimp_devices_restore_test() work.
2002-05-24 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-deserialize.c: added deserialization of
GValueArrays (untested). Added gimp_config_deserialize_value()
which is factored out from gimp_config_deserialize_property().
2002-05-24 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig.c (gimp_config_string_indent): fixed assertion
which did not check for indent_level >= 0 but > 0.
* app/config/gimpconfig-serialize.c (gimp_config_serialize_value):
serialize floats with g_ascii_formatd() to be locale independed,
added serialization of GValueArrays.
* app/widgets/gimpdeviceinfo.c: added properties for "mode",
"axes" and "keys". Their set_property() implementations are
untested.
2002-05-24 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig.[ch]
* app/config/gimpconfig-serialize.[ch]: added "gint indent_level"
to all serialization functions. Added gimp_config_string_indent()
which indents a GString.
* app/config/gimprc.c
* app/core/gimpdocumentlist.c
* app/core/gimpparasitelist.c: changed accordingly.
* app/core/gimpcontext.c: don't crash when serializing NULL object
properties.
* app/config/gimpscanner.[ch]: added gimp_scanner_parse_identifier().
* app/core/gimpcontainer.c: implement GimpConfigInterface.
Container serialization works, deserialization is not implemented yet.
* app/widgets/gimpdevices.[ch]: made
GimpDeviceManager->device_info_list a GimpList, not GList, added
testing functions for (de)serializing it.
* app/gui/menus.c
* app/gui/test-commands.[ch]: call the new test functions from
the <Toolbox>/File/Debug menu.
2002-05-22 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig.[ch]: added virtual interface methods
serialize_property() and deserialize_property() which can be used
to implement (de)serialization of special properties or to
override the default implementation.
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-serialize.c: for each property, check if
the class which added it implements the virtual functions and call
them before trying the default implementations.
* app/config/gimpconfig-params.h: added new macro
GIMP_CONFIG_INSTALL_PROP_OBJECT().
* app/core/gimpcontext.c: declare the "tool", "brush", "pattern",
"gradient" and "palette" properties as serializable and added
implementations of (de)serialize_property().
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-21 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfig-types.[ch]: added GIMP_TYPE_COLOR as boxed
type encapsulating GimpRGB.
* app/config/gimpconfig-params.[ch]: added GimpParamSpecColor
which is derived from GParamSpecBoxed and adds a default value.
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-serialize.c: added generic
(de)serialization of the new property type.
* app/core/gimpcontext.c: implement the config interface, changed
signal parameters and property types to use the new
GIMP_TYPE_COLOR.
* app/core/gimpmarshal.list: added a VOID__BOXED marshaller.
* app/gui/menus.c
* app/gui/test-commands.[ch]: some test code which (de)serializes
the user context.
2002-05-15 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig.c: fixed documentation.
* app/tools/gimppenciltool.c
* app/tools/gimpsheartool.c: assign shortcuts that don't collide with
other tools.
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-13 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig.c (gimp_config_serialize): serialize to a
temporary file and rename it to the target filename when it is
completely written.
2001-05-11 Hans Breuer <hans@breuer.org>
* app/makefile.msc : add appconfig.lib. Statically
link libgimptool/gimptool.lib.
* app/main.c : use gimp_locale_directory()
* app/config/gimpconfig-utils.c : <string.h>
* app/config/makefile.msc : add gimpscanner
* app/core/gimpimagefile.c : some G_OS_WIN32 mess to get
mkdir() and chmod()
* app/display/gimpdisplayshell.c
app/plug-in/plug-in-progrss.c
app/tool/gimpcolorpickertool.c
app/tool/gimpcroptool.c
app/tool/gimpmeasuretool.c
app/tool/gimpperspectivetool.c
app/tool/gimprotatetool.c
app/tool/gimpscaletool.c
app/tool/gimpsheartool.c
app/tool/gimptransformtool.c
app/widgets/gimpcolormapeditor.c
app/widgets/gimpcolorpanel.c
app/widgets/gimptoolbox-color-area.c
add #ifdef __GNUC__ to avoid breaking on non standard
pragma #warning
* app/tools/makefile.msc : add gimptoolcontrol remove
tools-enum
* app/tools/tool_manager.c : need to include
libgimptool/gimptoolcontrol.h after core includes
otherwise we would compile without prototypes or
break miserably
* app/gui/plug-in-menus.c : replace LOCALEDIR with
gimp_locale_directory ()
* app/gui/preferences-dialog.c (prefs_notebook_append_page) :
only try to gdk_pixbuf_new_from_file() with a valid filename.
It should simply return NULL otherwise, but fails if the
filename is an empty string.
* app/paint-funcs/makefile.msc : add -FImsvc_recommended_pragmas.h
* app/widgets/gimpcolormapeditor.c : the 'row'
allocated needs to be 'xn * cellsize * 2' (to avoid
accessing unowned memory) not only width, which has
become allocation.width by someone commenting out
the correct size calculation
* app/widgets/gimpdialogfactory.c : varargs to macros
are GCCism or at least non standard. #define DEBUG
to g_print or nothing - without arguments - does fix
it somewhat dirty as the compiler needs to tolerate
the '(blah, foo, bar);' statement than
* app/widgets/makefile.msc : updated
* app/xcf/makefile.msc : add -FImsvc_recommended_pragmas.h
* etc/gimprc.win32 : use ';' to separate theme-path
* libgimpbase/gimpenv.c : #include <stdio.h>
for sprintf()
* app/widgets/gimpdnd.c (gimp_dnd_set_file_data) :
the passed in vals chunk is not always null-terminated
(at least not on win32). Use the length parameter too
to avoid reading junk filenames.
* libgimp/gimp.def : export gimp_image_get_name()
* libgimpbase/gimpbase.def : export gimp_locale_directory()
* libgimpbase/gimpenv.[ch] : added gimp_locale_directory ()
* libgimpbase/makefile.msc : define DATADIR and SYSCONFDIR
to empty string to let gimp find its files in the common
place (win32: relative to the top level gimp dir)
* plug-ins/common/pixelize.c : <string.h>
* plug-ins/flame/cmap.c : #include <glib.h> for g_random_int()
* plug-ins/makefile.msc : -FImsvc_recommended_pragams.h
and a little hack to give imagemap the prototypes it
desires without changing the lexed source
* themes/Default/images/makefile.msc : now added (see below)
* themes/Default/images/stock-button-reset.png : made it binary
2002-05-06 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-serialize.c
* app/config/gimpconfig-utils.[ch]
* app/config/gimpconfig.[ch]
* app/config/gimprc.[ch]: added a GimpRc implementation of
gimp_config_duplicate() that also copies unknown tokens. Added new
function gimp_rc_query().
* app/config/test-config.c: added tests for gimp_rc_query().
* app/config/Makefile.am: need to link test app against libappwidgets.
2002-05-04 Sven Neumann <sven@gimp.org>
* app/arch/i386/mmx/detect_mmx.S
* app/arch/i386/mmx/paint_funcs_mmx.S: applied a patch from
iccii@hotmail.com that promises to fix build on mingw (bug #80681).
* app/config/gimpconfig-serialize.c
* app/config/gimpconfig-utils.[ch]: moved value compare function to
gimpconfig-utils.
* app/config/gimpconfig.[ch]: added duplicate and compare functions
to GimpConfigInterface so derived interfaces can override them.
* app/tools/gimptexttool.c: fixed tool cursor.
2002-04-15 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-serialize.c: serialize doubles and floats
using the locale independent g_ascii_formatd().
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".
2001-12-28 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-serialize.[ch]
* app/config/gimpconfig.h
* app/config/gimprc.[ch]: added new function to only write changes to
the personal gimprc.
* app/config/test-config.c: test the new functionality.
* tools/pdbgen/pdb/procedural_db.pdb: the change I did yesterday
wasn't overly clever; here's a better one.
* app/pdb/procedural_db_cmds.c: regenerated.
2001-12-18 Sven Neumann <sven@gimp.org>
* docs/gimptool-1.3.1.in
* gimptool-1.3.in: applied patch from Roger Leigh <rl117@york.ac.uk>
that makes gimptool respect the DESTDIR environment variable.
* app/config/Makefile.am: declare test-config as TESTS so it is build
and executed when running 'make check'.
* app/config/gimpbaseconfig.c: don't register a GimpConfig interface.
* app/config/gimpcoreconfig.c
* app/config/gimpdisplayconfig.c
* app/config/gimpguiconfig.c: no need to include "gimpconfig.h".
* app/config/gimpconfig.[ch]: removed store_unknown parameter from
deserialize method. The default implementation will bail out on
unknown tokens.
* app/config/gimprc.c: override deserialize method so it stores
unknown tokens.
2001-12-18 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am
* app/config/gimpconfig-utils.[ch]: new files with utility functions.
* app/config/gimpdisplayconfig.[ch]: new class with display config
properties so GimpGuiConfig doesn't get too large.
* app/config/gimpbaseconfig.c
* app/config/gimpcoreconfig.[ch]
* app/config/gimpguiconfig.[ch]: install path properties with
useable defaults (substituted gimpdir and friends). Moved properties
around.
* app/gui/session.c: removed outdated comment.
2001-12-17 Sven Neumann <sven@gimp.org>
* gimpconfig.[ch]: don't serialize unknown tokens; leave that to
the gimprc implementation. Create file with correct permissions.
* test-config.c: changed accordingly.
* gimpguiconfig.[ch]: added more properties.
2001-12-16 Sven Neumann <sven@gimp.org>
* app/core/gimpcoreconfig.[ch]: changed thumbnail_mode to boolean
write_thumbnails. thumbnail_mode used to have only two defined
values; if we need more later, we can change that easily when the
new GimpConfig system is in place.
* app/gimprc.c
* app/file/file-save.c
* app/gui/file-open-dialog.c
* app/gui/preferences-dialog.c: changed accordingly.
* app/config/gimpcoreconfig.[ch]: finished GimpCoreConfig class.
2001-12-12 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-deserialize.c
* app/config/gimpconfig-serialize.c
* app/config/gimpconfig-substitute.c: plugged a memleak and applied
some optimizations.
2001-12-10 Sven Neumann <sven@gimp.org>
* libgimpbase/Makefile.am
* libgimpbase/gimpenv.[ch]: added new function gimp_plug_in_directory()
to retrieve the compile_time defined plug_in directory. Declared some
functions G_GNUC_CONST and simplified code by introducing a helper
function.
* app/config/Makefile.am
* app/config/gimpcoreconfig.[ch]: started to implement GimpCoreConfig
derived from GimpBaseConfig.
* app/config/gimpbaseconfig.[ch]: misc small changes.
* app/config/gimpconfig-deserialize.c
(gimp_config_deserialize_properties): return quietly if there are no
properties.
* app/config/gimpconfig-substitute.c: more special cases.
* app/config/test-config.c: test GimpCoreConfig.
2001-12-10 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am
* app/config/gimpconfig-substitute.[ch]: new files with code to do
substitution magic on path strings. Similar to the code in gimprc.c
but UTF8 safe.
* app/config/gimpconfig-params.h
* app/config/gimpbaseconfig.c: added a bunch of convenience macros
to register config properties and use them for GimpBaseConfig.
* app/config/gimpconfig-types.h: added missing GIMP_VALUE_HOLDS_FOO()
macros.
* app/config/gimpconfig-deserialize.c: UTF8-validate all strings.
* app/config/gimpconfig-serialize.c: some code reorganisation.
2001-12-09 Sven Neumann <sven@gimp.org>
* autogen.sh: check for pkg.m4.
* configure.in: removed logic to extract GLIB CFLAGS and LDFLAGS
from the GTK CFLAGS and LDFLAGS. Use AM_PATH_GLIB_2_0() instead.
This change will break things on awfully misconfigured systems.
Simplified the checks and moved version numbers to the top to ease
maintainance. Check if gtk-doc is suffiently new.
* app/main.c: removed the GimpConfig test code.
* app/config/Makefile.am
* app/config/test-config.c: added a (yet very small) standalone test
suite for GimpConfig.
* app/config/gimpconfig.[ch]
* app/config/gimpconfig-deserialize.[ch]: allow to specify if
unknown tokens should be stored or should cause a parser error.
Changed code to store unknown tokens to use a list since a hash
table seems to be overkill here.
2001-12-09 Sven Neumann <sven@gimp.org>
* app/config/gimpconfig-params.[ch]
* app/config/gimpconfig-types.[ch]: added new param_spec
GIMP_PARAM_PATH with value_type GIMP_PATH_TYPE.
* app/config/gimpconfig.[ch]: added code to store and lookup unknown
tokens.
* app/config/gimpconfig-deserialize.c: improved logic, prepared for
special handling of GIMP_PATH_TYPE; still work in progress...
* app/config/gimpbaseconfig.c: register temp-path and swap-path as
GIMP_PARAM_PATH properties.
2001-12-08 Sven Neumann <sven@gimp.org>
* app/config/Makefile.am
* app/config/gimpconfig-params.[ch]
* app/config/gimpconfig-types.[ch]: new files implementing special
GParamSpecs and GValueTypes needed for GimpConfig.
* app/config/gimpbaseconfig.c: register tile-cache-size property
with GimpParamSpecMemsize.
* app/config/gimpconfig-deserialize.[ch]
* app/config/gimpconfig-serialize.[ch]: enable serialization and
deserialization of non-fundamental types.
2001-12-07 Sven Neumann <sven@gimp.org>
* app/core/gimpmarshal.[ch]: removed from CVS, they are generated.
* app/base/Makefile.am
* app/base/base-enums.h: new file defining enums that are to be
registered. Used to build app/base/base-enums.c.
* app/base/base-types.h: include base-enums.h.
* tools/pdbgen/Makefile.am
* tools/pdbgen/enumcode.pl
* tools/pdbgen/enums.pl: parse the new base-enums.h file and modified
the perl voodoo so it doesn't prefix enums with GIMP_ that are already
properly namespaced.
* app/core/core-types.h: don't need to chop GIMP from enum.
* app/pdb/color_cmds.c
* app/pdb/tools_cmds.c
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c: regenerated.
* app/config/gimpconfig-deserialize.[ch]
* app/config/gimpconfig-serialize.[ch]
* app/config/gimpconfig.[ch]: made GimpConfig an interface including
a reasonable default implementation that works on object properties.
* app/config/Makefile.am
* app/config/gimpbaseconfig.[ch]: new GimpBaseConfig using the
GimpConfig interface. Yet only used for testing from app/main.c.
* app/main.c: test the new GimpBaseConfig object.
* app/gimprc.c
* app/base/base-config.h
* app/base/*.c
* app/core/gimpdatafiles.c
* app/core/gimpdrawable-transform.c
* app/core/gimppreviewcache.c
* app/gui/preferences-dialog.c
* app/paint-funcs/paint-funcs.c
* app/xcf/xcf-seek.c: need to include glib-object.h since base-config
contains registered enums now. Follow name change of InterpolationType
to GimpInterpolationType.
2001-11-27 Sven Neumann <sven@gimp.org>
* configure.in
* app/Makefile.am
* app/config/gimpconfig.[ch]
* app/config/gimpconfig-serialize.[ch]
* app/config/gimpconfig-deserialize.[ch]: added new base class
GimpConfig that knows how to serialize and deserialize it's properties
in sexp format. Contains two example properties that will go into
derived classes once this is really used.
* app/main.c: deserialize and serialize the test GimpConfig object to
~/.gimp-1.3/foorc (only for debugging).
* app/widgets/widgets-types.h
* app/core/core-types.h: moved GimpPreviewSize enum to core-types.
* app/core/core-types.h: don't include gdk-pixbuf.h.
* app/core/gimptoolinfo.h
* app/core/gimpimagefile.c: include gdk-pixbuf.h.
* app/core/gimpimage.[ch]: made construct_flag a gboolean.
* app/core/gimpdrawable-invert.c
* app/core/gimpunit.c
* tools/pdbgen/pdb/plug_in.pdb
* app/pdb/plug_in_cmds.c: removed unused variables.
* app/display/Makefile.am: removed .PHONY and files cruft
* app/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am
* libgimpwidgets/Makefile.am
* plug-ins/Makefile.am: removed commented out makefile.mingw rules.
If we ever need them again, they can easily be resurrected from CVS.