Commit Graph

385 Commits

Author SHA1 Message Date
c6f63ea4e1 TILE_WIDTH is used unconditionally so always include "tile.h" WIN32 needs
2005-02-19  Hans Breuer  <hans@breuer.org>

	* app/base/pixel-processor.c : TILE_WIDTH is used unconditionally
	so always include "tile.h"
	* app/base/tile-swap.c : WIN32 needs <process.h> for _getpid()

	* app/dialogs/user-install-dialog.c : include gimpwin32-io.h
	* libgimpbase/gimpwin32-io.h : there are no group or other
	flags in msvcrt, define S_IGRP etc in terms of _S_IREAD etc

	* plug-ins/script-fu/script-fu.c plug-ins/script-fu/siod-wrapper.c :
	no script-fu server on win32, make respective function calls conditional

	* libgimpconfig/makefile.msc : new file
	* **/makefile.msc app/gimpcore.def : updated, gimp builds
	and runs once more with ms toolchain
2005-02-19 00:50:36 +00:00
9511753a02 check for gthread-2.0 unless the --disable-mp option is given.
2005-02-13  Sven Neumann  <sven@gimp.org>

	* configure.in: check for gthread-2.0 unless the --disable-mp
	option is given.

	* app/app_procs.c (app_libs_init): call g_thread_init().

	* app/base/pixel-processor.c: ported to GThread.

	* app/Makefile.am
	* app/*/Makefile.am: use @GTHREAD_CFLAGS@.
2005-02-13 15:08:08 +00:00
4bfb3e26a5 new function to workaround pango bug #166540, by tacking on a ',' to font
2005-02-09  Manish Singh  <yosh@gimp.org>

        * app/text/gimpfont-utils.[ch]: new function to workaround pango
        bug #166540, by tacking on a ',' to font names that end in numbers,
        so pango_font_description_from_string doesn't interpret it as a size.

        * app/text/Makefile.am: add above files.

        * app/text/gimpfontlist.c
        * app/text/gimptext-compat.c: use new function.

        * app/text/gimptext-xlfd.c: also make sure font names pulled out
        from XLFD don't end in numbers.

        * app/text/gimpfont.c
        * app/text/gimptextlayout.c: remove some redundant checks.
2005-02-10 05:33:01 +00:00
692669f4d8 renamed GIMP_PARAM_ #defines to GIMP_CONFIG_PARAM_.
2005-02-05  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/gimpconfig-params.h: renamed GIMP_PARAM_ #defines
	to GIMP_CONFIG_PARAM_.

	* app/config/gimpbaseconfig.c
	* app/config/gimpconfig-dump.c
	* app/config/gimpcoreconfig.c
	* app/config/gimpdisplayconfig.c
	* app/config/gimpguiconfig.c
	* app/config/gimprc-deserialize.c
	* app/config/gimprc-serialize.c
	* app/config/gimprc.c
	* app/core/gimp.c
	* app/core/gimpstrokedesc.c
	* app/dialogs/preferences-dialog.c
	* app/text/gimptext.c
	* app/tools/gimptextoptions.c
	* libgimpconfig/gimpconfig-deserialize.c
	* libgimpconfig/gimpconfig-iface.c
	* libgimpconfig/gimpconfig-serialize.c
	* libgimpconfig/gimpconfig-utils.c: changed accordingly.

	* libgimpmodule/gimpmoduletypes.h: deprecate the
	GIMP_MODULE_PARAM_SERIALIZE #define, GIMP_CONFIG_PARAM_SERIALIZE
	should be used instead.

	* modules/controller_linux_input.c
	* modules/controller_midi.c: changed accordingly.
2005-02-05 14:52:58 +00:00
1cee9b7298 continuing commit after broken pipe 2005-01-25 19:11:26 +00:00
dd9b16147f app/text/text-enums.h moved enum to libgimpbase (from app/text and
2005-01-23  Sven Neumann  <sven@gimp.org>

	* app/text/text-enums.h
	* libgimpbase/gimpbaseenums.h: moved enum to libgimpbase (from
	app/text and libgimp).

	* libgimp/gimpenums.h
	* libgimpbase/gimpbaseenums.c
	* tools/pdbgen/enums.pl: regenerated.

	* libgimpbase/gimpbase.def
	* libgimp/gimp.def: updated.
2005-01-23 00:58:22 +00:00
0d5df41904 app/core/gimpchannel-select.c app/core/gimpchannel.c
2004-11-16  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpchannel-select.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpdrawable-equalize.c
	* app/core/gimpdrawable-histogram.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpdrawable-levels.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpdrawable.c
	* app/core/gimpitem-linked.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/paint/gimppaintcore-stroke.c
	* app/text/gimptextlayer.c: in all functions which somehow
	(explicitely or implicitely) touch undo, either g_return_if_fail()
	on gimp_item_is_attached() or simply don't push an undo step if
	feasible (e.g. for simple stuff like layer opacity).

	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/paint_tools.pdb: let PDB wrappers fail
	accordingly so they don't run into the assertions added above.

	* app/pdb/color_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/paint_tools_cmds.c: regenerated.
2004-11-16 13:41:55 +00:00
5d01581069 Fix a bunch of warnings from Sparse:
2004-11-13  Manish Singh  <yosh@gimp.org>

        Fix a bunch of warnings from Sparse:

        * app/actions/dockable-commands.c
        * app/actions/layers-actions.c
        * app/actions/view-commands.c
        * app/base/pixel-surround.c
        * app/config/gimpconfig-utils.c
        * app/config/gimpscanner.c
        * app/core/gimpbrushgenerated.c
        * app/core/gimpcontainer.c
        * app/core/gimpimage.c
        * app/dialogs/palette-import-dialog.c
        * app/file/gimprecentlist.c
        * app/plug-in/plug-in-params.c
        * app/text/gimptext-compat.c
        * app/text/gimptext-parasite.c
        * app/vectors/gimpbezierstroke.c
        * app/vectors/gimpstroke.c
        * app/widgets/gimpcellrendereraccel.c
        * app/widgets/gimpselectiondata.c
        * app/xcf/xcf.c
        * libgimp/gimp.c
        * libgimpthumb/gimpthumb-utils.c
        * libgimpthumb/gimpthumbnail.c
        * modules/cdisplay_proof.c
        * plug-ins/Lighting/lighting_ui.c
        * plug-ins/common/csource.c
        * plug-ins/common/glasstile.c
        * plug-ins/common/nova.c
        * plug-ins/common/pcx.c
        * plug-ins/common/pnm.c
        * plug-ins/common/randomize.c
        * plug-ins/common/screenshot.c
        * plug-ins/common/sel_gauss.c
        * plug-ins/common/spheredesigner.c
        * plug-ins/common/wind.c
        * plug-ins/gfig/gfig-dialog.c
        * plug-ins/gfig/gfig-dobject.c
        * plug-ins/gimpressionist/gimpressionist.c
        * plug-ins/ifscompose/ifscompose.c
        * plug-ins/print/gimp_main_window.c
        * plug-ins/print/print.c: Cleanup integer vs. pointer confusion.

        * app/base/temp-buf.c
        * app/dialogs/about-dialog.c
        * plug-ins/common/bumpmap.c
        * plug-ins/common/jigsaw.c
        * plug-ins/gfig/gfig-dobject.c: Cosmetic cleanups.

        * app/config/gimpconfig-deserialize.c
        * app/config/gimpconfig-path.c
        * app/config/gimpconfigwriter.c
        * app/core/gimpgradient.c
        * app/tools/gimpdrawtool.c
        * plug-ins/common/nlfilt.c
        * plug-ins/common/unsharp.c
        * plug-ins/common/zealouscrop.c: Define inline functions before they
        are used.

        * app/core/gimpdrawable-blend.c: PixelRegion definition was changed
        some time ago, but the initialization here didn't change. Fix it.

        * app/plug-in/plug-in-rc.c (plug_in_extra_deserialize): No need to
        assign token twice in a row.

        * libgimpbase/gimpdatafiles.c (gimp_datafiles_read_directories): No
        need to initialize file_data, since the code fills out all the fields.

        * plug-ins/common/CML_explorer.c
        * plug-ins/common/vpropagate.c: Declare function pointers fully.

        * plug-ins/common/grid.c (pix_composite): G_INLINE_FUNC isn't needed,
        we assume we can use the "inline" keyword always.

        * plug-ins/common/psd_save.c
        * plug-ins/common/vinvert.c
        * plug-ins/gfig/gfig-arc.c
        * plug-ins/gfig/gfig-bezier.c
        * plug-ins/gfig/gfig-circle.c
        * plug-ins/gfig/gfig-dialog.c
        * plug-ins/gfig/gfig-dobject.c
        * plug-ins/gfig/gfig-ellipse.c
        * plug-ins/gfig/gfig-line.c
        * plug-ins/gfig/gfig-poly.c
        * plug-ins/gfig/gfig-spiral.c
        * plug-ins/gfig/gfig-star.c
        * plug-ins/gfig/gfig.c
        * plug-ins/gimpressionist/orientmap.c
        * plug-ins/gimpressionist/placement.c
        * plug-ins/gimpressionist/sizemap.c
        * plug-ins/imagemap/imap_grid.c
        * plug-ins/imagemap/imap_main.c
        * plug-ins/imagemap/imap_preferences.c
        * plug-ins/imagemap/imap_settings.c
        * plug-ins/maze/maze.c
        * plug-ins/sel2path/curve.c
        * plug-ins/sel2path/fit.c
        * plug-ins/sel2path/pxl-outline.c
        * plug-ins/sel2path/spline.c
        * plug-ins/xjt/xjt.c: Functions with no args should be declared
        with (void).

        * plug-ins/common/retinex.c (MSRCR): Initialize max_preview to quiet
        the compiler.
2004-11-14 02:50:33 +00:00
6711646648 Don't store human readable and translatable enum/flag strings in
2004-10-25  Michael Natterer  <mitch@gimp.org>

	Don't store human readable and translatable enum/flag strings in
	GEnumValue's and GTypeValue's fields but attach them to their
	GType using separate structs and utility functions:

	* tools/gimp-mkenums: added params and perl voodoo to support
	generating a second array of values, which is used by the
	Makefiles below to create and register arrays of value
	descriptions.

	* libgimpbase/gimpbasetypes.[ch]: added API to attach/retreive
	arrays of translatable strings to/from enum and flags types. Added
	structs GimpEnumDesc and GimpFlagsDesc for that purpose.

	* libgimpbase/gimputils.[ch]: changed existing enum utility
	functions, added new ones and added a symmetric API for flags.

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/paint/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* libgimp/Makefile.am
	* libgimpbase/Makefile.am: changed *-enums.c generation rules
	accordingly.

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/text/text-enums.c
	* app/tools/tools-enums.c
	* app/widgets/widgets-enums.c
	* libgimpbase/gimpbaseenums.c: regenerated.

	* app/widgets/gimpenumstore.c
	* app/widgets/gimpenumwidgets.c
	* app/widgets/gimptemplateeditor.c
	* libgimpwidgets/gimppreviewarea.c: follow the enum utility
	function API changes.
2004-10-25 17:55:25 +00:00
24f8d7e7c2 cleanup.
2004-09-27  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c: cleanup.

	* app/actions/vectors-commands.c
	* app/display/gimpdisplayshell.c
	* tools/pdbgen/pdb/paint_tools.pdb: removed unused #includes.

	* app/text/gimptext-bitmap.c
	* app/text/gimptext-parasite.c
	* app/text/gimptext-vectors.c
	* app/text/gimptext-xlfd.c
	* app/text/gimptext.c
	* app/text/gimptextlayer-xcf.c: include "text-types.h" instead
	of "text/text-types.h".

	* app/widgets/gimppatternselect.c: create a GimpPatternFactoryView
	instead of GimpDataFactoryView.

	* app/pdb/paint_tools_cmds.c: regenerated.
2004-09-27 12:30:04 +00:00
6d73b20387 workaround Pango bug #143542 (PangoFT2Fontmap leak, see also bug #148997).
2004-09-22  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayout.c (gimp_text_get_pango_context):
	workaround Pango bug #143542 (PangoFT2Fontmap leak, see also bug
	#148997). Based on a patch by Robert gren.
2004-09-21 22:39:07 +00:00
ee42d8f506 added still unused flags type GimpDirtyMask.
2004-07-28  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.h: added still unused flags type
	GimpDirtyMask.

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/paint/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* libgimpthumb/Makefile.am: changed calls to gimp-mkenums to
	support GTypeFlags and to make the value arrays private to the
	get_type() functions.

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/text/text-enums.c
	* app/tools/tools-enums.c
	* app/widgets/widgets-enums.c: regenerated.
2004-07-28 11:50:20 +00:00
caabe7f334 removed GIMP_TYPE_COLOR.
2004-07-26  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-types.h: removed GIMP_TYPE_COLOR.

	* app/config/gimpconfig-params.[ch]: renamed GimpParamSpecColor
	to GimpParamSpecRGB.

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-dump.c
	* app/config/gimpconfig-serialize.c
	* app/config/gimpscanner.c
	* app/core/gimp-utils.c
	* app/core/gimpcontext.c
	* app/core/gimpgrid.c
	* app/display/gimpdisplayoptions.c
	* app/text/gimptext.c
	* app/tools/gimpcolortool.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpcolorbar.c
	* app/widgets/gimppropwidgets.c: changed accordingly.
2004-07-26 19:56:47 +00:00
f274dce25b added new function gimp_g_value_get_memsize() that attempts to calculate
2004-07-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-utils.[ch]: added new function
	gimp_g_value_get_memsize() that attempts to calculate the memory
	requirements for a GValue.

	* app/text/gimptextundo.c (gimp_text_undo_get_memsize): use the
	new function to obtain a better estimate for the size of the text
	undo.
2004-07-13 10:09:22 +00:00
a81e96450a removed member "guint time"...
2004-07-12  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptextundo.[ch]: removed member "guint time"...

	* app/core/gimpundo.[ch]: ...and added it here.

	* app/tools/gimptexttool.c (gimp_text_tool_apply): changed
	accordingly. Reordered undo compression code to look like other
	pieces of code which do undo compression.
2004-07-12 17:10:34 +00:00
da74f1269e app/core/gimpundo.[ch] app/core/gimpitemundo.[ch] removed all _new()
2004-07-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpundo.[ch]
	* app/core/gimpitemundo.[ch]
	* app/text/gimptextundo.[ch]: removed all _new() functions and
	added properties and GObject::constructor() implementations
	instead.

	* app/core/gimpimage-undo.[ch] (gimp_image_undo_push): added
	"GType undo_gtype" parameter and allow to pass name-value pairs as
	"...". Une the new GParameter utility functions to construct the
	appropriate undo step with g_object_newv().

	(gimp_image_undo_push_item): removed.

	(gimp_image_undo_push_undo): removed. Merged its code back into
	gimp_image_undo_push(), where it originally came from.

	* app/core/gimpimage-undo-push.c
	* app/core/gimpundostack.c
	* app/paint/gimppaintcore-undo.c
	* app/tools/gimptransformtool-undo.c
	* app/widgets/gimpundoeditor.c: changed accordingly.
2004-07-12 16:59:36 +00:00
d2292ffe35 removed enum SizeType.
2004-07-05  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: removed enum SizeType.

	* app/text/text-enums.h: added it as enum GimpSizeType and added
	comment that it's for backward compatibility only.

	* tools/pdbgen/Makefile.am
	* tools/pdbgen/pdb/text_tool.pdb: changed accordingly.

	* libgimp/gimpenums.h
	* plug-ins/pygimp/gimpenums.py
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated (pdbgen insisted on
	reordering the enums).
2004-07-05 20:55:05 +00:00
bec9f9a670 app/core/core-enums.c app/display/display-enums.c app/paint/paint-enums.c
2004-06-30  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/text/text-enums.c
	* app/widgets/widgets-enums.c: regenerated.
2004-06-30 16:05:24 +00:00
8d4bdf5d60 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/*/*-enums.h: did HIG-compliant capitalization in the right
	place, instead of the auto-generated *-enums.c files.
2004-06-30 15:47:32 +00:00
3cc11e1b1a updated the (still unused) unused text transformation code.
2004-06-05  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer-transform.[ch]: updated the (still unused)
	unused text transformation code.

	* app/text/gimptext-bitmap.c: removed a redundant transformation.
2004-06-04 23:42:05 +00:00
281eac1ddb take both logical and ink rectangle into account to avoid clipping away
2004-05-28  Michael Natterer  <mitch@gimp.org>

	* app/text/gimpfont.c (gimp_font_get_popup_size)
	(gimp_font_get_new_preview): take both logical and ink rectangle
	into account to avoid clipping away parts of the font preview.
	Fixes bug #142277.
2004-05-28 12:46:54 +00:00
741854b58d define G*_DISABLE_DEPRECATED for all G* modules except GTK+. Don't do so
2004-05-11  Michael Natterer  <mitch@gimp.org>

	* configure.in: define G*_DISABLE_DEPRECATED for all G* modules
	except GTK+. Don't do so if compiling against GLib, GTK+ >= 2.5.0
	and Pango >= 1.5.0

	* libgimpwidgets/gimpoffsetarea.c: s/gdk_gc_unref/g_object_unref/

	* app/config/gimpconfig-deserialize.c
	* app/widgets/gimpdeviceinfo.c:
	s/g_value_set_foo_take_ownership/g_value_take_foo/

	* app/text/gimptext-vectors.c
	* app/text/gimptext-bitmap.c:
	s/pango_ft2_font_get_face/pango_fc_font_lock,unlock_face/
2004-05-11 17:19:24 +00:00
361b1f5677 tools/Makefile.am app/Makefile.am app, tools, and user dir bumped to
2004-04-15  Manish Singh  <yosh@gimp.org>

        * tools/Makefile.am
        * app/Makefile.am
        * configure.in: app, tools, and user dir bumped to version 2.1 names.

        * app/text/gimpfontlist.c: since we now depend on pango 1.4, we can
	use pango_fc_font_description_from_pattern() instead of our
	cut-n-paste function, gimp_font_list_font_desc_from_pattern().
2004-04-16 00:56:25 +00:00
f41e1ff5d0 added "const gchar *stroke_desc" to the GimpItemClass struct and always
2004-04-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added "const gchar *stroke_desc" to
	the GimpItemClass struct and always push an undo group
	around GimpItem::stroke().

	* app/core/gimpchannel.c
	* app/core/gimpselection.c
	* app/vectors/gimpvectors.c: set the stroke_desc accordingly
	and don't push undo groups.

	* app/text/gimptextlayer.c (gimp_text_layer_class_init): set
	all of GimpItemClass' undo_descs.

	* app/text/gimptextlayer-transform.c: don't push undo groups here.
2004-04-15 14:41:36 +00:00
18d9161eea Get rid of the "current_context" which was in fact just a bunch of global
2004-04-15  Michael Natterer  <mitch@gimp.org>

	Get rid of the "current_context" which was in fact just a bunch of
	global variables. Instead, pass the needed context all the way
	from the GUI and the PDB to the core. This is a prerequisite for
	macro recording and generally helps separating the various
	subsystems from each other. Work in progress...

	* app/core/gimp.[ch]: removed member "current_context" and
	gimp_[get|set]_current_context().

	* app/core/gimp-edit.[ch]
	* app/core/gimpdrawable-blend.[ch]
	* app/core/gimpdrawable-bucket-fill.[ch]
	* app/core/gimpdrawable-offset.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-crop.[ch]
	* app/core/gimpimage-flip.[ch]
	* app/core/gimpimage-merge.[ch]
	* app/core/gimpimage-resize.[ch]
	* app/core/gimpimage-rotate.[ch]
	* app/core/gimpimage.[ch]
	* app/core/gimpimagefile.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimplayer.[ch]
	* app/core/gimpselection.[ch]
	* app/core/gimptemplate.[ch]
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/pdb/procedural_db.[ch]
	* app/text/gimptext-compat.[ch]
	* app/text/gimptextlayer-transform.[ch]
	* app/gui/brush-select.[ch]
	* app/gui/font-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: added tons of "GimpContext *context"
	parameters and use the passed context instead of
	gimp_get_current_context().

	* app/app_procs.c
	* app/batch.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-ins.c
	* app/text/gimptextlayer.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpinktool.c
	* app/tools/gimptransformtool.c
	* app/vectors/gimpvectors.c
	* app/gui/convert-dialog.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpthumbbox.c: pass gimp_get_user_context() or
	GIMP_CONTEXT(tool_options) or whatever is the right context
	to the changed core functions.

	* tools/pdbgen/app.pl: pass "GimpContext *context" to all
	generated PDB invokers.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/paint_tools.pdb
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/palettes.pdb
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/text_tool.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: pass the new context
	parameter to the changed core functions.

	* app/pdb/*_cmds.c: regenerated.
2004-04-14 23:37:34 +00:00
84688d18d8 added a category parameter to make this function more flexible.
2004-04-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-utils.[ch] (gimp_get_default_language): added a
	category parameter to make this function more flexible.

	* app/text/gimptext.c: changed accordingly.

	* app/widgets/gimphelp.c (gimp_help): localize the help pages
	according to the value of LC_MESSAGES. Fixes bug #139917.
2004-04-13 15:07:30 +00:00
22e0f080c1 build sanity.obj app/text/makefile.msc : gimptextundo.obj
2004-04-11  Hans Breuer  <hans@breuer.org>

	* app/makefile.msc : build sanity.obj
	  app/text/makefile.msc : gimptextundo.obj
	  app/widgets/makefile.msc : gimppatternfactoryview.obj

	* plug-ins/common/winclipboard.c : don't call
	gimp_image_undo_enable() when it's not switched off.
	Otherwise the undo history would be destroyed with
	Gimp-Core-CRITICAL **: file gimpimage.c: line 1579: assertion
	`gimage->undo_freeze_count > 0' failed
2004-04-11 15:21:09 +00:00
fe3dc81387 create the initial text layer with a size of 1 x 1 since
2004-04-03  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_new): create the
	initial text layer with a size of 1 x 1 since tile_manager_new()
	does not any longer accept 0 x 0.

	* app/core/gimpdrawable.c (gimp_drawable_configure): check that
	width and height are > 0.
2004-04-03 12:03:27 +00:00
acc72b620e added undo type GIMP_UNDO_TEXT_LAYER_MODIFIED and undo group types
2004-04-01  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch] (enum GimpUndoType): added undo type
	GIMP_UNDO_TEXT_LAYER_MODIFIED and undo group types
	GIMP_UNDO_GROUP_DRAWABLE and GIMP_UNDO_GROUP_DRAWABLE_MOD.

	* app/core/gimpimage-undo-push.[ch]: added new new function
	gimp_image_undo_push_text_layer_modified() which makes
	modifications of the text_layer's "modified" boolean undoable.

	* app/core/gimpdrawable.[ch]: added new virtual function
	GimpDrawable::push_undo() and moved the actual undo pushing into
	the default implementation gimp_drawable_real_push_undo().

	* app/text/gimptextlayer.c (gimp_text_layer_push_undo): new
	function. Pushes the text_layer's modified state to the undo stack
	after upchaining and sets modified to TRUE.

	(gimp_text_layer_set_tiles): ditto.

	(gimp_lext_layer_apply_region)
	(gimp_text_layer_replace_region): removed because their default
	implementations already call gimp_drawable_push_undo().

	(gimp_text_layer_swap_pixels): removed because swap_pixels() is
	used by undo only and doesn't need to care about the text_layer's
	modified state.

	(gimp_text_layer_render): don't set modified to FALSE here because
	we can't push an undo step here.

	(gimp_text_layer_set): push the modified state to the undo stack
	and set it to FALSE here. Also push the layer's tiles if the
	layer was modified.

	* app/tools/gimptexttool.c (gimp_text_tool_apply): push "modified"
	to the undo stack and set it to FALSE here, too.

	Fixes bug #137767.
2004-04-01 14:51:58 +00:00
dd94d1cb05 validate the font name. This should work around the crashes that Windows
2004-03-28  Sven Neumann  <sven@gimp.org>

	* app/text/gimpfontlist.c (gimp_font_list_add_font): validate the
	font name. This should work around the crashes that Windows users
	were experiencing on startup (bug #132366). The real problem needs
	to be fixed elsewhere though.
2004-03-28 14:27:37 +00:00
db2dfce4b4 put some code back in that I removed accidentally.
2004-03-22  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_duplicate): put some
	code back in that I removed accidentally.
	(gimp_text_layer_render) freeze/thaw notifications to avoid that
	two "notify::modified" signals are emitted.
2004-03-22 12:05:43 +00:00
2326e1b979 added gimp_undo_type_to_name() a similar function used to live in
2004-03-21  Sven Neumann  <sven@gimp.org>

	* app/core/gimpundo.[ch]: added gimp_undo_type_to_name() a similar
	function used to live in gimpimage-undo.[ch].

	* app/core/gimpitemundo.c (gimp_item_undo_new): allow NULL as name
	and generate it from the undo_type then.

	* app/core/gimpimage-undo.[ch]: added gimp_image_undo_push_undu(),
	new function that allows to push an undo on the image.

	* app/text/Makefile.am
	* app/text/text-types.h
	* app/text/gimptextundo.[ch]: added GimpTextUndo, derived from
	GimpItemUndo.

	* app/core/gimpimage-undo-push.c (gimp_image_undo_push_text_layer):
	use the new code and simply push a text undo here.

	* app/tools/gimptexttool.c: compress text undos by peeking at the
	undo stack. Fixes bug #137766.
2004-03-21 23:14:21 +00:00
7fdd4af69a it wasn't such a good idea to let GimpConfig take care of the text when
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c: it wasn't such a good idea to let
	GimpConfig take care of the text when duplicating a text layer; it
	didn't create a copy. Do that manually again; fixes bug #137786.
2004-03-20 20:18:57 +00:00
20d03407fe avoid to set the unit property with every size change; only set it if it
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppropwidgets.c (gimp_prop_size_entry_callback):
	avoid to set the unit property with every size change; only set it
	if it actually changed.

	* app/core/gimpimage-undo-push.c (gimp_image_undo_push_text_layer):
	allow to pass a GParamSpec that identifies a single text property
	to be changed. In this case, don't store a GimpText object on the
	undo stack but only the changed value.

	* app/tools/gimptexttool.c: use the new undo feature to reduce the
	memory footprint of text undo for the common case.

	* app/text/gimptextlayer.c: changed accordingly.
2004-03-20 17:21:48 +00:00
c4c19933bc use the same undo group logic as in the text tool. Not really necessary
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_set): use the same
	undo group logic as in the text tool. Not really necessary since
	this function must not be called on modified text layers, but it's
	more consistent this way.
2004-03-20 15:53:36 +00:00
7e82e309b6 don't fiddle with the item size, gimp_drawable_set_tiles() does the right
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_render): don't fiddle
	with the item size, gimp_drawable_set_tiles() does the right thing.
2004-03-20 12:38:15 +00:00
cbbe4f3871 don't exchange the text_layer's text object but sync it with the text
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-undo-push.c (undo_pop_text_layer): don't
	exchange the text_layer's text object but sync it with the text
	object from the undo step.

	* app/text/gimptextlayer.c (gimp_text_layer_set): in case the
	layer has a mask, push an undo group around the text modifications.

	* app/tools/gimptexttool.c (gimp_text_tool_idle_apply): push a
	text layer undo before applying the text changes.
2004-03-19 23:08:24 +00:00
520ee8b3ac added gimp_text_layer_set(), a function that calls g_object_set() on the
2004-03-19  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.[ch]: added gimp_text_layer_set(), a
	function that calls g_object_set() on the text-layer's text object
	and pushes an undo step.

	* app/display/gimpdisplayshell-dnd.c (gimp_display_shell_bucket_fill):
	use the new function.
2004-03-19 22:12:18 +00:00
5420154a66 if there's a layer mask, resize it with the layer.
2004-03-19  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_render): if there's a
	layer mask, resize it with the layer.

	* app/tools/gimptexttool.c: don't change text_tool->layer before
	calling gimp_text_tool_connect().
2004-03-19 19:26:18 +00:00
2ce9ca7320 app/gui/layers-commands.c (layers_text_tool) treat modified text layers
2004-03-18  Sven Neumann  <sven@gimp.org>

	* app/gui/layers-commands.c (layers_text_tool)
	* app/gui/layers-menu.c (layers_menu_update): treat modified text
	layers like normal layers.

	* app/gui/layers-commands.c (layers_edit_layer_query): added a
	check button that gives access to the "auto-rename" property of a
	text layer.

	* app/text/gimptextlayer.c: typo.

	* app/widgets/gimppreviewrendererlayer.c
	(gimp_preview_renderer_layer_render): show the text layer icon for
	unmodified text layers only.
2004-03-18 18:00:38 +00:00
17679a610b added a missing call to gimp_image_flush().
2004-03-18  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c (gimp_display_shell_bucket_fill):
	added a missing call to gimp_image_flush().

	* app/tools/gimptexttool.c: propagate text changes to the tool
	options.

	* app/text/gimptextlayer.c: made "text", "auto-rename" and
	"modified" properties of the text layer and copy them when
	duplicating a text layer.

	* app/text/gimptextlayer-xcf.[ch]: added utility functions to
	convert the new properties to flags to be saved in the XCF file.

	* app/xcf/xcf-load.c
	* app/xcf/xcf-private.h
	* app/xcf/xcf-save.c: load and save text layer properties.
	Disabled warnings about unknown properties for stable branches.
2004-03-18 15:27:23 +00:00
ad3ec65858 I should compile before I commit! 2004-03-17 14:10:19 +00:00
4e0cb33472 Changes for help i18n in the core, the rest will take place in the help
2004-03-17  Sven Neumann  <sven@gimp.org>

	Changes for help i18n in the core, the rest will take place in the
	help plug-in:

	* app/text/gimptext.[ch]: removed gimp_text_get_default_language()

	* app/core/gimp-utils.[ch]: ... and added it here as
	gimp_get_default_language().

	* app/config/gimprc-blurbs.h
	* app/config/gimpdisplayconfig.[ch]: added property "help-locales".

	* app/widgets/gimphelp.c: use the new property and pass it to the
	help plug-in.

	* app/core/gimpselection.c (gimp_selection_invalidate_boundary):
	removed unused variable.
2004-03-17 13:59:42 +00:00
59b77c35c2 emit "update" signals from the drawable before and after setting tiles and
2004-03-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.c (gimp_drawable_set_tiles_full): emit
	"update" signals from the drawable before and after setting tiles
	and offsets.

	* app/core/gimpdrawable-offset.c (gimp_drawable_offset)
	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste)
	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod, _channel_mod)
	* app/text/gimptextlayer.c (gimp_text_layer_render)
	* app/tools/gimptransformtool.c (gimp_transform_tool_doit):
	removed calls to gimp_drawable_update().

	* app/core/gimpdrawable-offset.c (gimp_drawable_offset): don't
	push an undo step before calling gimp_drawable_set_tiles()
	but simply pass push_undo == TRUE and the undo_desc.
2004-03-15 20:05:31 +00:00
1ef5fa93ca added "offset_x" and "offset_y" parameters to GimpDrawable::set_tiles().
2004-03-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: added "offset_x" and "offset_y"
	parameters to GimpDrawable::set_tiles().

	(gimp_drawable_set_tiles): removed the "GimpImageType" parameter.

	(gimp_drawable_set_tiles_full): new function adding type, offset_x
	and offset_y parameters.

	(gimp_drawable_real_set_tiles): set the drawable's offsets from
	the offset parameters and its size from the passed TileManager's
	size. Emit "size_changed" accordingly.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimplayer.c
	* app/text/gimptextlayer.c
	* app/tools/gimptransformtool.c: changed accordingly: removed
	calls to gimp_viewable_size_changed() and all sorts of hackish
	assignments of the drawable's width/height/offset_x/offset_y
	properties.
2004-03-15 19:34:35 +00:00
7977603648 don't call gimp_image_flush().
2004-03-15  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_render): don't call
	gimp_image_flush().

	* app/tools/gimpxttool.c (gimp_text_tool_apply): call it here
	instead.

	Now that we have a common place that exchanges drawable->tiles,
	we can abstract away boundary invalidation for this operation:

	* app/core/gimpdrawable.c (gimp_drawable_real_set_tiles):
	call gimp_drawable_invalidate_boundary() before setting
	the new tiles.

	* app/core/gimpchannel.c (gimp_channel_set_tiles)
	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste)
	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod)
	* app/core/gimplayer.c (gimp_layer_scale) (gimp_layer_resize)
	(gimp_layer_flip) (gimp_layer_rotate) (gimp_layer_transform)
	* app/text/gimptextlayer.c (gimp_text_layer_render): removed
	calls to gimp_drawable_invalidate_boundary() from all functions
	which finally call gimp_drawable_real_set_tiles().

	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): no
	need to set channel->bounds_known to FALSE, because
	gimp_drawable_set_tiles() already did this.
2004-03-15 17:53:55 +00:00
434500023d Closer to text layer undo:
2004-03-15  Michael Natterer  <mitch@gimp.org>

	Closer to text layer undo:

	* app/core/gimpchannel.c (gimp_channel_set_tiles): invalidate the
	channel's boundary and bounds.

	* app/text/gimptextlayer.c: implement GimpDrawable::swap_pixels()
	and set text_layer->modified = TRUE after upchaining.

	(gimp_text_layer_render): use gimp_drawable_set_tiles() and
	set text_layer->modified = FALSE afterwards.

	* app/core/gimpimage-undo-push.c: cleaned up variable declarations
	and initializations.

	(undo_pop_layer_mod)
	(undo_pop_channel_mod): use gimp_channel_set_tiles() instead of
	touching drawable->tiles manually. Now all pixel manipulation
	(at least on layers) should be virtualized and can be detected by
	the text layer.
2004-03-15 15:18:25 +00:00
f67c16ec60 removed all idle handling here. Changes to the text-layer's text object
2004-03-14  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.[ch]: removed all idle handling here.
	Changes to the text-layer's text object all applied synchronously.

	* app/display/gimpdisplayshell-dnd.c
	* app/text/gimptextlayer-transform.c: removed now obsolete calls
	to gimp_text_layer_flush().

	* app/tools/gimptexttool.[ch]: queue up changes to the proxy text
	object and apply them in one go from a low-priority idle handler.
	This is basically what GimpTextLayer used to do.
2004-03-14 18:48:00 +00:00
f81e2f3d68 implement GimpDrawable functions that affect the tiles and mark the text
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.[ch]: implement GimpDrawable functions
	that affect the tiles and mark the text layer as modified. Added
	new function gimp_drawable_is_text_layer() that checks whether a
	drawable is an unmodified text layer.

	* app/display/gimpdisplayshell-dnd.c (gimp_display_shell_bucket_fill):
	use gimp_drawable_is_text_layer() and only set the text color if the
	text layer is unmodified. Fixes bug #136623.
2004-03-13 15:07:33 +00:00
21f26743c1 made gimp_config_sync() and gimp_config_connect() also work on objects of
2004-03-11  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig-utils.c: made gimp_config_sync() and
	gimp_config_connect() also work on objects of different types.
	Properties with the same name and the same type are synced /
	connected.

	* app/core/gimpcontext.[ch]: added convenience functions to get/set
	the font by name.

	* app/tools/gimptextoptions.[ch]: don't hold a GimpText object
	that duplicates properties like font and color which are in
	GimpContext already. Instead added all text properties that are
	controlled from the text tool options.  Handling of the foreground
	color is somewhat broken and needs a GimpContext wizard (Mitch!).

	* app/text/gimptext.c: blurbs are not any longer needed now that
	the property widgets are created from the GimpTextOptions.

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

	* app/widgets/gimptexteditor.[ch]: use an internal GtkTextBuffer
	and emit "text-changed" when it changes.
2004-03-11 18:47:37 +00:00