Commit Graph

322 Commits

Author SHA1 Message Date
1baa2d4581 [ I've postponed my reservations against pangoft2/fontconfig/freetype2
2003-12-12  Hans Breuer  <hans@breuer.org>

	[
	 I've postponed my reservations against pangoft2/fontconfig/freetype2
	 usage, so The Gimp should now build with msvc without patching it.
	]

	* app/makefile.msc app/text/makefile.msc : use $(PANGOFT2_CFLAGS) etc.

	* libgimpthumb/makefile.msc : (new file)
	* makefile.msc : added libgimpthumb

	* libgimpthumb/gimpthumbnail.c : include gimpwin32-io.h
	* libgimpthumb/gimpthumb-utils.c : don't compare size pointer
	with GIMP_THUMB_SIZE_FAIL but *size

	* plug-ins/makefile.msc : handle libgimpoldpreview

	* plug-ins/common/decompose.c : define cbrt() if not __GLIBC__

	* plug-ins/common/winclipboard.c : make it compile without gimpcompat.h

	* plug-ins/imagemap/imagemap_csim_lex.c : its a generated file
	but still win32/msvc has no unistd.h

	* plug-ins/pygimp/makefile.msc : (new file) to use the binary you
	need to patch glib, see bug #98737

	* plug-ins/libgimpoldpreview.c : use <libgimp/gimp.h> instead of "gimp.h"

	* **/Makefile.am : added makefile.msc to EXTRA_DIST
2003-12-13 01:35:19 +00:00
b23682bf8e still unacceptable patched to compile without FT2, see bug #113681
2003-11-16  Hans Breuer  <hans@breuer.org>

	* app/text/*.c : still unacceptable patched to compile
	without FT2, see bug #113681

	* **makefile.msc : updated

	* app/config/gimpconfig-dump.c : include gimpwin32-io.h

	* app/plug-in/plug-ins.c : don't depend on g_print handling
	%s with NULL pointers, it doesn't anymore with glib cvs at
	least not on win32

	* app/widgets/gimppropwidgets.c
	  libgimpbase/gimputils.c
	  libgimpwidgets/gimpmemsizeentry.c :
	sorry about the mess, need to work-around a stupi not able
	to cast from guint64 to double

	* app/widgets/gimppropwidgets.c (gimp_prop_memsize_entry_new) :
	avoid 'overflow in floating-point constant arithmetic' by disabling
	an imho alays questionable g_return_val_if_fail() for _MSC_VER only

	* libgimpmodule/gimpmodule.def : sorted

	* libgimpwidgets/gimpfileselection.c : removed unused S_ISDIR
	definition

	* app/gui/themes.c : filenames in rc files need to be escaped
2003-11-16 21:20:14 +00:00
fd30d5c976 app/config/gimpbaseconfig.h use gint64 for all memsize properties.
2003-11-16  Sven Neumann  <sven@gimp.org>

	* app/config/gimpbaseconfig.h
	* app/config/gimpcoreconfig.h: use gint64 for all memsize properties.

	* app/base/tile-manager.[ch] (tile_manager_get_memsize): since
	tiles can be swapped out, a tilemanager can be larger than gsize
	(on 32bit platforms). Use a gint64 to avoid an overflow.

	* app/core/gimp.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpbuffer.c
	* app/core/gimpchannel.c
	* app/core/gimpcontainer.c
	* app/core/gimpcontext.c
	* app/core/gimpdata.c
	* app/core/gimpdatafactory.c
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage-undo.[ch]
	* app/core/gimpimage.c
	* app/core/gimpitem.c
	* app/core/gimpitemundo.[ch]
	* app/core/gimplayer.c
	* app/core/gimplist.c
	* app/core/gimpobject.[ch]
	* app/core/gimppalette.c
	* app/core/gimpparasitelist.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/core/gimpundostack.c
	* app/core/gimpviewable.c
	* app/text/gimptext.c
	* app/text/gimptextlayer.c
	* app/vectors/gimpstroke.c
	* app/vectors/gimpvectors.c: use gint64 for gimp_object_get_memsize()
	and all its implementations.

	* app/display/gimpdisplayshell-title.c
	* app/gui/info-window.c: changed accordingly.
2003-11-16 17:51:36 +00:00
6eb772946b libgimpwidgets/gimpquerybox.c configure the labels in the message dialog
2003-11-14  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpquerybox.c
	* app/widgets/gimpwidgets-utils.c: configure the labels in the
	message dialog and the query boxes to do automatic word wrapping
	to be HIG compliant.

	* app/app_procs.c
	* app/batch.c
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-path.c
	* app/config/gimpconfig-utils.c
	* app/config/gimpconfigwriter.c
	* app/config/gimpscanner.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpdatafactory.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpselection.c
	* app/display/gimpdisplayshell.c
	* app/file/file-utils.c
	* app/gui/brush-select.c
	* app/gui/dialogs-commands.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/gui.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/palette-select.c
	* app/gui/palettes-commands.c
	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c
	* app/gui/select-commands.c
	* app/gui/stroke-dialog.c
	* app/gui/tool-options-menu.c
	* app/gui/vectors-commands.c
	* app/gui/view-commands.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/text/gimptextlayer-xcf.c
	* app/text/gimptextlayer.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimptransformtool.c
	* app/vectors/gimpvectors-export.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptooloptionseditor.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/image.pdb: removed explicit newlines from
	messages. Reduced number of translatable strings by making many
	file error messages the same. Quote single words and filenames
	with 'foo', not "foo". Replaced some more "drawable" by "layer".
	General message cleanup and consistency check.

	* app/pdb/image_cmds.c: regenerated.
2003-11-14 15:33:40 +00:00
4800d849ef app/text/gimptextlayout-render.c (gimp_text_layout_render) handle the case
2003-11-08  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayout-render.c (gimp_text_layout_render)
	* app/text/gimptextlayout.c (gimp_text_layout_position): handle
	the case where the ink rectangle exceeds the logical rectangle.
	Fixes bug #126480.
2003-11-08 18:36:49 +00:00
0c68062afe use GTK_STOCK_SELECT_FONT stock icon instead of text tool icon.
2003-11-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.c (gimp_text_options_gui): use
	GTK_STOCK_SELECT_FONT stock icon instead of text tool icon.

	* app/text/gimpfont.c: fixed default stock id.

	* app/text/gimp-fonts.c (gimp_fonts_load): don't leave gimp busy
	and the fonts container frozen in case of error.
2003-11-05 01:07:56 +00:00
51113c495c added new command-line option --no-fonts. Might be useful to reduce
2003-11-05  Sven Neumann  <sven@gimp.org>

	* app/main.c: added new command-line option --no-fonts. Might be
	useful to reduce startup time or if there are problems with the
	font configuration.

	* app/app_procs.[ch]
	* app/main.c
	* app/core/gimp.[ch]
	* app/text/gimp-fonts.c: don't load any fonts when gimp is started
	with --no-fonts.

	* docs/gimp-1.3.1.in: documented the new command-line option.
	Updated some outdated information.
2003-11-05 00:33:20 +00:00
ec22027964 register a log handler for the Gimp-Text domain.
2003-11-05  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c: register a log handler for the Gimp-Text domain.

	* app/text/gimpfont.c: code cosmetics.

	* app/text/gimptext-compat.c: removed debugging output.

	Let GIMP work w/o any fonts. Of course you won't get any text
	functionality then:

	* app/text/gimpfontlist.c: don't install any font aliases if no
	fonts were found.

	* app/text/gimptextlayer.c: refuse to render any text layers when
	the GIMP fonts list is empty.

	* app/tools/gimptexttool.c: removed redundant includes.

	* app/tools/gimptextoptions.c: removed the font selection widget.
	This is a temporary regression that will be cured by improving the
	GimpFontView widget.

	* app/widgets/Makefile.am
	* app/widgets/gimpfontselection-dialog.[ch]
	* app/widgets/gimpfontselection.[ch]
	* app/widgets/gimppropwidgets.[ch]: removed the font selection and
	all references to it. Fixes bug #119267.
2003-11-04 23:59:58 +00:00
d049af91e6 use recommended freetype include system of #include <ft2build.h> and
2003-11-03  Manish Singh  <yosh@gimp.org>

        * app/text/gimptext-vectors.c: use recommended freetype include
        system of #include <ft2build.h> and #include FT_GLYPH_H things.
2003-11-03 22:01:22 +00:00
c0ebe2a8a3 app/text/Makefile.am new files that load and save text layers to/from XCF.
2003-10-27  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am
	* app/text/gimptextlayer-xcf.[ch]: new files that load and save
	text layers to/from XCF.

	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* app/text/gimptextlayer.c: removed that code here and use the new
	functions instead.

	* app/text/gimptext-parasite.[ch] (gimp_text_from_parasite): added
	a GError parameter.

	* app/text/gimptextlayer.[ch]: store the name of the parasite that
	the text layer was created from (if read from XCF). Remove the
	parasite when the text layer is edited. If a text layer wasn't
	touched, the original parasite is written back to the XCF file.

	* app/text/gimptextlayout.c (gimp_text_layout_new): handle a NULL
	text string.

	* app/tools/gimptextoptions.c: implement GimpToolOptions::reset
	and save the text across a reset.
2003-10-27 21:50:41 +00:00
142d0725ce app/text/gimptext.[ch] added back "box-unit" property; it makes sense to
2003-10-26  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext.[ch]
	* app/text/gimptextlayout.c: added back "box-unit" property; it
	makes sense to have an extra unit for it.
2003-10-26 12:07:05 +00:00
d533104de7 handle negative float and double values similar to how this is done for
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-26 00:03:16 +00:00
1a246b695c added "ms" (Malay) now that all po files are there.
2003-10-25  Sven Neumann  <sven@gimp.org>

	* configure.in (ALL_LINUGUAS): added "ms" (Malay) now that all po
	files are there.

	(PANGOFT2_REQUIRED_VERSION) depend on PangoFT2 >= 1.2.2. There are
	a couple of bug-fixes that are needed to make the text tool work.
	Actually you should use at least version 1.2.4.

	(GTK_REQUIRED_VERSION): depend on GTK+ >= 2.2.2. Earlier versions
	had bugs that we don't want to work around any longer.

	* INSTALL: document this change.

	* app/gui/gui.c (gui_post_init): removed the GTK+ version check.

	* app/text/gimptext.[ch]: added properties for letter spacing and
	kerning for compatibility with future GIMP versions implementing
	these features.
2003-10-25 15:25:17 +00:00
78b6153301 added gimp_container_freeze() / _thaw() around font list reloading.
2003-10-18  Michael Natterer  <mitch@gimp.org>

	* app/text/gimp-fonts.c (gimp_fonts_load): added
	gimp_container_freeze() / _thaw() around font list reloading.

	* app/tools/gimp-tools.c (gimp_tools_init): added missing
	gimp_container_freeze().

	* app/widgets/gimpcontainerview.c: connect to the container's
	"freeze" and "thaw" signals and empty / refill the view
	accordingly. Ignore "add", "remove" and "reorder" signals while
	the container is frozen. Fixes font list sorting after refresh and
	speeds up refreshing of fonts, brushes, patterns etc.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpfontview.[ch]: new widget for the font list/grid.

	* app/widgets/gimphelp-ids.h: added GIMP_HELP_FONT_REFRESH.

	* app/gui/dialogs-constructors.c: changed accordingly.

	* app/gui/Makefile.am
	* app/gui/fonts-commands.[ch]
	* app/gui/fonts-menu.[ch]: new files: a menu for the font view.

	* app/gui/menus.c (menus_init): register the new <Fonts> menu.

	* app/gui/preferences-dialog.c (prefs_dialog_new): removed the
	fonts refreshing hack from the "Environment" page.
2003-10-18 16:23:15 +00:00
737da42437 removed gimp_config_copy_properties() and added the more intelligent
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-14 15:20:59 +00:00
a88e11afb3 app/widgets/gimpdocked.[ch] renamed GimpDockedIface to
2003-10-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdocked.[ch]
	* app/widgets/widgets-types.h: renamed GimpDockedIface to
	GimpDockedInterface.

	* app/display/gimpnavigationview.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpimageeditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly.

	* app/config/config-types.h
	* app/config/gimpconfig.[ch]
	* app/config/gimpconfig-deserialize.[ch]
	* app/config/gimpconfig-serialize.[ch]
	* app/config/gimpconfig-utils.[ch]: added a GimpConfig typedef and
	changed the GimpConfig API to take GimpConfig instead of GObject
	pointers.

	* app/config/gimpconfig-dump.c
	* app/config/gimprc.c
	* app/config/test-config.c
	* app/core/gimp-documents.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp.[ch]
	* app/core/gimpcontainer.c
	* app/core/gimpcontext.c
	* app/core/gimpdocumentlist.c
	* app/core/gimpgrid.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage.c
	* app/core/gimpparasitelist.c
	* app/core/gimptemplate.c
	* app/core/gimptooloptions.c
	* app/core/gimpviewable.c
	* app/gui/grid-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/stroke-dialog.c
	* app/gui/templates-commands.c
	* app/gui/tool-options-commands.c
	* app/paint/gimppaintcore.c
	* app/pdb/gimprc_cmds.c
	* app/text/gimptext-parasite.c
	* app/text/gimptext.c
	* app/text/gimptextlayer.c
	* app/tools/gimp-tools.c
	* app/tools/gimptexttool.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptemplateview.c
	* tools/pdbgen/pdb/gimprc.pdb: changed accordingly.
2003-10-11 14:30:18 +00:00
f0f3ea36b8 added new function gimp_object_name_collate() which compares two object
2003-10-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpobject.[ch]: added new function
	gimp_object_name_collate() which compares two object names for
	ordering using the linguistically correct rules for the current
	locale and does some caching to speed up subsequent calls.

	* app/core/gimpdatalist.c (gimp_data_list_data_compare_func): use
	gimp_object_name_collate() from here.

	* app/core/gimplist.[ch]: added convenience function
	gimp_list_sort_by_name.

	* app/text/gimpfontlist.c (gimp_font_list_restore): use
	gimp_list_sort_by_name() instead of g_utf8_collate.
2003-10-09 13:35:15 +00:00
482aa11bfb added GIMP_VIEWABLE_MAX_BUTTON_SIZE GIMP_VIEWABLE_MAX_MENU_SIZE.
2003-10-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.h: added GIMP_VIEWABLE_MAX_BUTTON_SIZE
	GIMP_VIEWABLE_MAX_MENU_SIZE.

	* app/core/gimpviewable.c (gimp_viewable_get_popup_size): smarter
	popup size limitation: limit each axis to 2 * MAX_POPUP_SIZE
	and the area to MAX_POPUP_SIZE ^ 2.

	* app/core/gimpbuffer.c
	* app/core/gimpimage-preview.c
	* app/core/gimpitem-preview.c
	* app/text/gimpfont.c (GimpViewable::get_popup_size): removed
	all limitations.

	* app/widgets/gimpcontainermenu.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimpmenuitem.c
	* app/widgets/gimpviewablebutton.c: use the new button and menu
	size defines.
2003-10-09 12:26:46 +00:00
74187d7d65 pango_font_description_set_size() takes points not pixels as the old code
2003-10-01  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayout.c: pango_font_description_set_size()
	takes points not pixels as the old code assumed.

	* app/text/gimptext.c
	* app/text/gimptextlayout-render.c: fixed includes.
2003-10-01 11:52:52 +00:00
6604b16838 set a default resolution on the fontmap since Pango doesn't seem to do
2003-10-01  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-compat.c (text_get_extents): set a default
	resolution on the fontmap since Pango doesn't seem to do this for us.
2003-10-01 01:20:40 +00:00
8240ef1ccc constrain popup size to GIMP_VIEWABLE_MAX_POPUP_SIZE but keep the aspect
2003-09-22  Sven Neumann  <sven@gimp.org>

	* app/core/gimpviewable.c (gimp_viewable_get_popup_size):
	constrain popup size to GIMP_VIEWABLE_MAX_POPUP_SIZE but keep the
	aspect ratio intact. Fixes bug #122923.

	* app/text/gimpfont.c: use a smaller font size for popups so we
	don't exceed the maximum size.
2003-09-22 14:23:03 +00:00
555038debf app/composite/gimp-composite-generic.c app/composite/gimp-composite-mmx.c
2003-09-16  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-generic.c
	* app/composite/gimp-composite-mmx.c
	* app/composite/gimp-composite-sse.c
	* app/composite/gimp-composite-sse2.c
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-path.c
	* app/config/gimpconfig-serialize.c
	* app/core/cpercep.c
	* app/core/gimpunit.c
	* app/gui/palette-import-dialog.c
	* app/gui/plug-in-menus.c
	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c
	* app/pdb/procedural_db.c
	* app/text/gimptextlayout-render.c
	* app/tools/gimpfuzzyselecttool.c
	* app/widgets/gimpcursor.c: some trivial code cleanups: avoid
	casts that discard const qualifiers and avoid useless comparisons
	on unsigned variables. Also reordered qualifiers in function
	declarations (static comes before const).
2003-09-16 13:12:50 +00:00
28d6f0a241 app/core/gimpedit.[ch] app/core/gimpmodules.[ch] app/core/gimpunits.[ch]
2003-09-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpedit.[ch]
	* app/core/gimpmodules.[ch]
	* app/core/gimpunits.[ch]
	* app/text/gimpfonts.[ch]: removed...

	* app/core/gimp-edit.[ch]
	* app/core/gimp-modules.[ch]
	* app/core/gimp-units.[ch]
	* app/text/gimp-fonts.[ch]: ...and added with new names because
	these files operate on members of a Gimp instance and are
	therefore methods of the Gimp object.

	* app/core/Makefile.am
	* app/text/Makefile.am
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/edit-commands.c
	* app/gui/module-browser.c
	* app/gui/preferences-dialog.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/app_procs.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/fonts.pdb: changed accordingly.

	* app/pdb/edit_cmds.c
	* app/pdb/fonts_cmds.c: regenerated.

	* app/core/gimp.c (gimp_init): don't create gimp->fonts.
	(gimp_initialize): call gimp_fonts_init().
	(gimp_restore): call gimp_fonts_load() instead of _init().

	* app/text/gimp-fonts.c (gimp_fonts_init): don't call
	gimp_fonts_load(), just create gimp->fonts and connect to
	"notify::font-path" of gimp->config.
2003-09-15 17:26:28 +00:00
7cf4eb467a removed "visible" and all its API...
2003-09-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: removed "visible" and all its API...

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

	* app/core/core-enums.[ch]
	* app/core/gimpimage-undo-push.[ch]: changed the drawable
	visibility undo to be an item visibility undo.

	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c: save it in PROP_VECTORS and changed channel
	and layer loading/saving accordingly.

	* app/core/gimpimage-merge.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/text/gimptextlayer.c
	* app/gui/channels-commands.c
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/channel_cmds.c
	* app/pdb/layer_cmds.c: regenerated.

	* app/widgets/gimpdrawabletreeview.[ch]: removed the eye icon...

	* app/widgets/gimpitemtreeview.[ch]: ...and added it here.
2003-09-11 19:52:29 +00:00
3169789d06 removed PANGO_DISABLE_DEPRECATED again since we have to use Pango API that
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am: removed PANGO_DISABLE_DEPRECATED again since
	we have to use Pango API that is deprecated in the HEAD branch.
2003-09-11 15:57:56 +00:00
b9d2950e8f include text-types.h instead of core-types.h
2003-09-10  Manish Singh  <yosh@gimp.org>

        * app/text/gimpfonts.c: include text-types.h instead of core-types.h
2003-09-10 22:27:43 +00:00
dce4bafc73 define PANGO_DISABLE_DEPRECATED.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am: define PANGO_DISABLE_DEPRECATED.

	* app/text/gimptext-compat.c: avoid deprecated API.
2003-09-07 19:35:07 +00:00
a4bdd93b68 app/display/Makefile.am app/gui/Makefile.am app/paint/Makefile.am
2003-09-07  Sven Neumann  <sven@gimp.org>

	* app/display/Makefile.am
	* app/gui/Makefile.am
	* app/paint/Makefile.am
	* app/pdb/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am (INCLUDES): removed $(LIBART_CFLAGS) again.
2003-09-07 19:35:07 +00:00
7a5f914866 To optimize duplicate and/or wrong image updates away, introduced new
2003-09-06  Michael Natterer  <mitch@gimp.org>

	To optimize duplicate and/or wrong image updates away, introduced
	new policy that a child object must never explicitly update or
	invalidate its parent object (just like the GUI is not updated
	explicitly by the core):

	* app/core/gimpdrawable.[ch]: added new signal
	GimpDrawable::update(). Never update or invalidate the image when
	the drawable is updated or invalidated.

	(gimp_drawable_set_visible): don't gimp_drawable_update() the
	drawable since its pixels have not changed.

	* app/core/gimpimage.[ch]: connect to the "add" and "remove"
	signals of the layers and channels containers. Also connect to the
	"update" and "visibility_changed" signals of all drawables in
	these containers (optimizes away updates issued by drawables which
	are not yet added to the image and updates of the selection
	mask). Also, don't propagate updates to the image if the emitting
	drawable is invisible (optimizes away updates issued by invisible
	drawables).

	(gimp_image_add_layer,channel)
	(gimp_image_remove_layer,channel): don't update the image since
	that's done by our "add" and "remove" handlers now.

	(gimp_image_position_layer,channel): update just the image, not
	the drawable since its pixels have not changed.

	(gimp_image_real_colormap_changed)
	(gimp_image_set_component_visible): always call
	gimp_image_update() *and* gimp_viewable_invalidate_preview() to
	get everything updated, since update and invalidate of images are
	not connected.

	* app/core/gimpimage-undo-push.c (undo_pop_layer,channel): don't
	update the drawable since (a) its pixels don't change and (b) the
	image updates itself upon adding/removing now.

	(undo_pop_layer_mod): replaced gimp_image_update() by
	gimp_drawable_update() (just for consistency with other similar
	functions).

	* app/core/gimplayer.c: connect to "update" of the layer mask and
	issue updates on the layer if the mask update has any effect on
	the projection.
	(gimp_layer_create_mask): don't set the mask's offsets here since
	they may be different when we later add the mask to the layer.

	* app/core/gimplayermask.c (gimp_layer_mask_set_layer): set the
	mask offsets here instead.

	* app/core/gimpchannel.c (gimp_channel_translate): update the
	channel even if push_undo == FALSE.

	* app/paint/gimppaintcore.c (gimp_paint_core_finish)
	* app/tools/gimpinktool.c (ink_finish): invalidate both the
	drawable and the image preview since invalidating the drawable
	doesn't invalidate the image any more.

	* app/text/gimptextlayer.c (gimp_text_layer_render_now): also
	update the new extents of the text layer, not only the old one.

	(gimp_text_layer_render_layout): don't update the drawable since
	gimp_drawable_fill() already updated it.
2003-09-06 20:06:53 +00:00
b28c23611b app/display/Makefile.am app/gui/Makefile.am app/paint/Makefile.am
2003-09-06  Michael Natterer  <mitch@gimp.org>

	* app/display/Makefile.am
	* app/gui/Makefile.am
	* app/paint/Makefile.am
	* app/pdb/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am (INCLUDES): add $(LIBART_CFLAGS) here too.
2003-09-06 17:20:02 +00:00
49179f8820 use gimp_drawable_invalidate_boundary now.
2003-09-04  Manish Singh  <yosh@gimp.org>

        * app/text/gimptextlayer-transform.c: use
        gimp_drawable_invalidate_boundary now.
2003-09-04 17:48:15 +00:00
f9f5089f91 added new pure virtual function GimpDrawable::invalidate_boundary().
2003-09-04  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: added new pure virtual function
	GimpDrawable::invalidate_boundary().

	* app/core/gimplayer.[ch]: implement it and removed public
	function gimp_layer_invalidate_boundary().

	* app/core/gimpchannel.[ch]: implement it.

	* app/core/gimpselection.[ch]: implement it and removed public
	function gimp_selection_invalidate().

	* app/core/gimpimage-mask.c (gimp_image_mask_invalidate)
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage.c
	* app/core/gimplayer-floating-sel.c
	* app/text/gimptextlayer.c: changed accordingly.

	* app/core/gimpchannel.[ch]: made gimp_channel_push_undo() a
	public function and made it call
	gimp_drawable_invalidate_boundary(). Added undo_desc strings for
	all undo pushing functions to GimpChannelClass.

	* app/core/gimpselection.[ch]: removed gimp_selection_push_undo()
	since after the change above it was identical to
	gimp_channel_push_undo().  Don't push any undo here since
	upchaining does the right thing now.  Override GimpChannelClass'
	undo_desc strings to say "Selection".

	* app/core/gimpimage-mask.c (gimp_image_mask_push_undo): changed
	accordingly.
2003-09-04 11:33:06 +00:00
22e904aace define PANGO_DISABLE_DEPRECATED.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am: define PANGO_DISABLE_DEPRECATED.

	* app/text/gimptext-compat.c: avoid deprecated API.
2003-09-03 14:22:34 +00:00
27a2f0f6de removed the _clear() wrapper.
2003-09-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-mask-select.[ch]: removed the _clear() wrapper.

	* app/core/gimpimage-mask.[ch]: changed accordingly. Added
	"const gchar *undo desc" parameter to
	gimp_image_mask_select_vectors().

	* app/core/gimpimage-qmask.c
	* app/gui/vectors-commands.c
	* app/text/gimptext-compat.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimprectselecttool.c
	* app/widgets/gimpvectorstreeview.c
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/selection.pdb: changed accordingly. Also
	replaced some wrappers which still exist.

	* tools/pdbgen/pdb/paths.pdb: stroke using gimp_item_stroke().

	* app/pdb/paths_cmds.c
	* app/pdb/selection_cmds.c: regenerated.
2003-09-03 14:22:34 +00:00
e924a1372b app/text/gimptextlayout-render.c (gimp_text_layout_render)
2003-09-02  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayout-render.c (gimp_text_layout_render)
	* app/widgets/gimpfontselection.c (gimp_font_selection_set_fontname)
	* app/widgets/gimptexteditor.c (gimp_text_editor_new)
	* app/gui/file-save-dialog.c (file_save_ok_callback): plugged
	some memleaks found using memprof.

	* app/vectors/gimpvectors.c: implemented the finalize method.

	* app/vectors/gimpstroke.c: minor code cleanup.

	* app/core/gimpdrawable.c (gimp_drawable_finalize)
	* app/core/gimplayer.c (gimp_layer_finalize)
	* app/core/gimpparasitelist.c (gimp_parasite_list_finalize):
	removed useless assertions.
2003-09-02 13:43:26 +00:00
b658e763f6 Font configuration stuff: You can rescan for fonts on the fly now. A
2003-09-01  Manish Singh  <yosh@gimp.org>

        Font configuration stuff: You can rescan for fonts on the fly now.
        A couple caveats: the text tool font dialog doesn't get updated, but
        that's supposed to be going away. The new font dock doesn't resort
        on update, but mitch is supposed to fix that. :)

        Some nice stuff for advanced font users: GIMP local font directories,
        and an optional site and user fonts.conf.

        I thought about supporting the auto-resan feature in fontconfig,
        but it might take too much time to do a scan so I haven't implemented
        it. Another thing I want to do is create fontconfig caches in the
        local dirs.

        * text/gimpfonts.[ch]: gimp_fonts_init/load/reset implementation.

        * text/Makefile.am: added gimpfonts.[ch]

        * app/core/gimp.c: use gimp_fonts_init/reset.

        * app/config/gimpcoreconfig.[ch]
        * app/config/gimprc-blurbs.h: added font-path config setting.

        * app/gui/preferences-dialog.c: Add a Font Folders section for the
        above. Also added a Rescan Font List button, which goes in the
        Environment section. Not sure if this is the right place...
        it also looks kinda ugly all by its lonesome.

        * app/gui/user-install-dialog.c: mention the fonts directory.

        * themes/Default/images/preferences/Makefile.am
        * themes/Default/images/preferences/folders-fonts.png: dummy icon for
        font folders pref, probably a folder with a little "T" in the corner
        would be good.
2003-09-01 18:20:56 +00:00
a176b8993c removed excessive path debugging output.
2003-09-01  Sven Neumann  <sven@gimp.org>

	* app/xcf/xcf-load.c: removed excessive path debugging output.

	* app/text/gimptext-vectors.c: always close strokes created from
	text outlines.
2003-08-31 23:46:05 +00:00
cf35e23578 use the new bezier stroke API.
2003-09-01  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-vectors.c: use the new bezier stroke API.

	* app/vectors/gimpbezierstroke.c (gimp_bezier_stroke_new_moveto):
	pass a NULL anchor to the first call of gimp_bezier_stroke_extend().
2003-08-31 22:33:50 +00:00
7c542ea775 app/gui/layers-commands.[ch] added "Merge Visible Layers..." and "Flatten
2003-08-31  Sven Neumann  <sven@gimp.org>

	* app/gui/layers-commands.[ch]
	* app/gui/layers-menu.c: added "Merge Visible Layers..." and
	"Flatten Image" menu entries as suggested in bug #120959.

	* app/text/gimptext-vectors.c: fixed function declaration; we are
	passing a PangoGlyph here, not a (PangoGlyph*).
2003-08-31 18:10:15 +00:00
c80ed6eff6 interpolate the position of the cubic control points correctly and set the
2003-08-28  Larry Ewing  <lewing@ximian.com>

	* app/text/gimptext-vectors.c (conicto): interpolate the position
	of the cubic control points correctly and set the previous control
	point.
	(cubicto): set the previous control point to the new value then
	add remaining points.
2003-08-29 00:48:44 +00:00
160b91e1b9 derive it from GimpObject and added GimpObject::get_memsize()
2003-08-25  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptext.[ch]: derive it from GimpObject and added
	GimpObject::get_memsize() implementation.
2003-08-25 12:24:51 +00:00
72369061b6 Oops, sorry... 2003-08-25 10:45:16 +00:00
c7d3ce61f7 app/gui/preferences-dialog.c app/text/gimptextlayer-transform.c some
2003-08-20  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c
	* app/text/gimptextlayer-transform.c
	* app/widgets/gimpitemfactory.c: some changes for legacy compilers
	based on a patch from Avi Bercovich (bug #120251).
2003-08-20 09:59:12 +00:00
86e4d32a44 app/vectors/gimpstroke.[ch] Virtualized gimp_bezier_stroke_extend, added
2003-08-17  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpbezierstroke.[ch]: Virtualized
	gimp_bezier_stroke_extend, added gimp_stroke_is_extendable.

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

	* app/vectors/gimpvectors.[ch]: added gimp_vectors_anchor_select.

	* app/tools/gimpvectoroptions.[ch]: dummy switch for future
	extensions

	* app/tools/gimpvectortool.[ch]: Major overhaul. Made use of
	gimp_vector_tool_oper_update, cleaned up
	gimp_vector_tool_button_press a lot and finally have a
	working cursor_update. Still buggy, but I wanted to have it
	in CVS.
2003-08-17 02:49:24 +00:00
5988e8967e app/text/Makefile.am new files that hold yet unused GimpItem transform
2003-08-15  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am
	* app/text/gimptextlayer-transform.[ch]: new files that hold yet
	unused GimpItem transform methods.

	* app/text/gimptextlayer.[ch]: export gimp_text_layer_render().

	* app/text/gimptext-bitmap.[ch]
	* app/text/gimptext-private.h
	* app/text/gimptext-vectors.c
	* app/text/gimptextlayout-render.c: use the transformation matrix.
	This doesn't change anything since it's still always the identity
	matrix.
2003-08-15 19:45:41 +00:00
873fe2934e removed trailing whitespace. (gimp_text_layer_render): fixed warning by
2003-08-14  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptextlayer.c: removed trailing whitespace.
	(gimp_text_layer_render): fixed warning by adding a cast.
2003-08-14 15:39:30 +00:00
4ffa2cdefa define FT_GLYPH_FORMAT_OUTLINE as ft_glyph_format_outline if it doesn't
2003-07-28  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptext-vectors.c: define FT_GLYPH_FORMAT_OUTLINE as
	ft_glyph_format_outline if it doesn't exist so it compiles with
	older freetype versions.
2003-07-28 12:51:51 +00:00
7a9e1ceb33 app/core/gimpimage-undo-push.c (gimp_image_remove_layer)
2003-07-25  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-undo-push.c (gimp_image_remove_layer)
	* app/core/gimpimage.c (undo_pop_layer)
	* app/text/gimptextlayer.c (gimp_text_layer_render):
	gimp_layer_invalidate_boundary() must be called whenever a layer
	gets translated, resized or removed. Fixes stale layer outlines in
	the canvas padding area.
2003-07-25 16:12:35 +00:00
2858305cbe set the vectors offset from the text layer's offset.
2003-07-24  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_create_vectors): set
	the vectors offset from the text layer's offset.

	* app/text/gimptext-vectors.c: removed debugging output.
2003-07-24 16:40:22 +00:00
8ea47faa35 added control points. Looks correct now.
2003-07-24  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptext-vectors.c: added control points.
	Looks correct now.
2003-07-24 13:25:31 +00:00