* app/text/gimptextlayout-render.c: remove private function which
creates the transform matrix.
* app/text/gimptextlayout.[ch]: add it here as public API. Also add
function which transform and untransform PangoRectangles, points and
distances using the transform matrix.
* app/tools/gimptexttool.c: convert coordinates using above new
transform functions when drawing selection and cursor, and when
processing mouse events.
2009-01-17 Michael Natterer <mitch@gimp.org>
* all files with a GPL header and all COPYING files:
Change licence to GPLv3 (and to LGPLv3 for libgimp).
Cleaned up some copyright headers and regenerated the parsers in
the ImageMap plugin.
svn path=/trunk/; revision=27913
2008-11-04 Sven Neumann <sven@gimp.org>
* app/text/Makefile.am
* app/text/gimptext-private.h: removed this header file.
* app/text/gimptextlayout.[ch]: added getters to access the
resolution, text and PangoLayout.
* app/text/gimptextlayout-render.c
* app/tools/gimptexttool.c: use the new getters instead of
poking
into the GimpTextLayout struct.
svn path=/trunk/; revision=27543
2008-11-04 Sven Neumann <sven@gimp.org>
* app/text/Makefile.am
* app/text/gimptext-bitmap.[ch]: removed.
* app/text/gimptext-private.h
* app/text/gimptext-vectors.c
* app/text/gimptextlayer.c
* app/text/gimptextlayout-render.[ch]
* app/text/gimptextlayout.c: removed text render abstraction as
this is now sufficiently provided by PangoCairo.
svn path=/trunk/; revision=27542
2008-10-30 Sven Neumann <sven@gimp.org>
* app/text/gimptextlayout.c: fixed order of includes.
* app/text/gimptext-compat.c: ported to PangoCairo like the rest
of the text rendering code.
svn path=/trunk/; revision=27481
2008-10-27 Sven Neumann <sven@gimp.org>
* app/text/gimptextlayout.c (gimp_text_get_pango_context): use
the
Y resolution when creating the fontmap.
svn path=/trunk/; revision=27436
2008-10-26 Michael Natterer <mitch@gimp.org>
Merge on-canvas GSoC project:
* configure.in: check for pangocairo.
* app/Makefile.am
* app/text/Makefile.am: add its CFLAGS and LIBS.
* app/text/gimptext-bitmap.[ch]
* app/text/gimptext-private.h
* app/text/gimptext-vectors.[ch]
* app/text/gimptextlayer.c
* app/text/gimptextlayout-render.c
* app/text/gimptextlayout.c: port to pangocairo.
* menus/Makefile.am
* menus/text-tool-menu.xml
* app/menus/menus.c
* app/actions/Makefile.am
* app/actions/actions.c
* app/actions/text-tool-actions.[ch]
* app/actions/text-tool-commands.[ch]: add a context menu for the
text tool similar to GtkEntry's context menu.
* app/tools/gimprectangletool.[ch]: add "narrow-mode" property.
* app/tools/gimptextoptions.[ch]
* app/widgets/gimptexteditor.[ch]: take a text buffer for the
standalone text editor window instead of creating one internally.
* app/tools/gimptexttool.[ch]: all the new wonderful on-canvas
text editing logic. Wheee!
svn path=/trunk/; revision=27419
2008-10-09 Michael Natterer <mitch@gimp.org>
Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
had a GEGL dependency (they will have in the next commit, but I
wanted to keep the commit separate).
* app/dialogs/Makefile.am
* app/file/Makefile.am
* app/gui/Makefile.am
* app/menus/Makefile.am
* app/paint/Makefile.am
* app/plug-in/Makefile.am
* app/text/Makefile.am
* app/vectors/Makefile.am
* app/widgets/Makefile.am
* app/xcf/Makefile.am: add GEGL_CFLAGS.
* app/actions/*.c
* app/core/*.c
* app/dialogs/*.c
* app/display/*.c
* app/file/*.c
* app/gui/*.c
* app/menus/*.c
* app/paint/*.c
* app/pdb/gimppdb-utils.c
* app/pdb/gimpprocedure.c
* app/plug-in/*.c
* app/text/*.c
* app/tools/*.c
* app/vectors/*.c
* app/widgets/*.c
* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
to all files which include a drawable subclass or gimpimage.h
* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
in all generated files.
* app/pdb/*-cmds.c: regenerated.
* data/images/gimp-splash.png: the goat is still sleeping.
By Aurore Derriennic.
svn path=/trunk/; revision=27202
* app/text/gimptextlayout.c
* app/tools/gimptexttool.[ch]
* app/tools/gimprectangletool.[ch]
* app/tools/gimptextoptions.c: allow resizing of text
box. This is work in progress, and needs some tweaks
and fixes. See bug #122707.
svn path=/trunk/; revision=25344
2007-03-09 Michael Natterer <mitch@gimp.org>
* app/core/core-types.h: include "libgimpmath/gimpmathtypes.h"
instead of "libgimpmath/gimpmath.h".
* app/core/gimpbrush.h
* app/paint/gimppaintcore.h
* app/paint/gimpperspectiveclone.h
* app/text/gimptext.h
* app/tools/gimptransformtool.h: include gimpvector.h and
gimpmatrix.h explicitely where they are needed in public structs.
* app/*/*.c
* tools/pdbgen/pdb/paths.pdb: include "libgimpmath/gimpmath.h"
where needed.
* app/pdb/paths_cmds.c: regenerated.
svn path=/trunk/; revision=22084
2005-12-10 Michael Natterer <mitch@gimp.org>
* app/config/*.c
* app/core/*.c
* app/display/*.c
* app/text/*.c
* app/vectors/*.c: port to G_DEFINE_TYPE() and friends. Some related
core reordering and cleanup.
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.
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-01-25 Sven Neumann <sven@gimp.org>
* app/text/gimptextlayout.c (gimp_text_layout_position): fixed
text positioning for fonts where glyphs extend the logical
rectangle (bug #132495).
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-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-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 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-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-07-20 Sven Neumann <sven@gimp.org>
Generalized text rendering and added a framework for creating
GimpVectors objects with text outlines.
* app/text/Makefile.am
* app/text/gimptext-bitmap.[ch]: new files with bitmap render
function.
* app/text/gimptext-vectors.[ch]: new files for rendering to
vectors.
* app/text/gimptextlayout-private.h: removed ...
* app/text/gimptext-private.h: ... and readded with this name.
* app/text/gimptextlayout-render.[ch]: reduced to the generic parts
of text rendering.
* app/text/gimptextlayer.c
* app/text/gimptextlayout.c: changed accordingly.
2003-07-06 Sven Neumann <sven@gimp.org>
* app/text/Makefile.am
* app/text/gimptextlayout-private.h
* app/text/gimptextlayout-render.[ch]: new files that implement
text rendering. Right now it's basically code copied from PangoFT2
but having it here will allow me to implement text transformations.
* app/text/gimptextlayout.[ch]
* app/text/gimptextlayer.c: changed accordingly.
2003-04-09 Sven Neumann <sven@gimp.org>
* app/text/text-enums.[ch]
* app/text/gimptext.[ch]
* app/text/gimptextlayout.c: added some more text properties that
can't be accessed from the GUI yet.
2003-03-31 Sven Neumann <sven@gimp.org>
* themes/Default/images/Makefile.am
* themes/Default/images/stock-text-dir-ltr-24.png
* themes/Default/images/stock-text-dir-rtl-24.png: placeholders
for new icons.
* libgimpwidgets/gimpstock.[ch]: register the new icons.
* themes/Default/gtkrc: tweak GtkDialog in "gimp-default-style".
* app/text/text-enums.[ch]
* app/text/gimptext.[ch]
* app/text/gimptextlayout.c: added new enum GimpTextDirection and
use it instead of PangoDirection.
* app/widgets/widgets-types.h
* app/widgets/gimptexteditor.[ch]: made GimpTextEditor a real widget
and added buttons to switch the text direction.
* app/tools/gimptextoptions.[ch]
* app/tools/gimptexttool.c: moved creation of the text editor to the
text tool options, take care of GimpText::base-direction here.
2003-03-28 Sven Neumann <sven@gimp.org>
* app/text/gimptext.[ch]
* app/text/gimptextlayout.c: added a "base-direction" property to
GimpText and set it on the PangoContext when rendering the text.
2003-03-28 Sven Neumann <sven@gimp.org>
* app/text/gimptext-compat.c: respect the antialias parameter.
* app/text/gimptext.[ch]
* app/text/gimptextlayout.c: added autohint property that allows
to force the use of the Freetype auto-hinter.
* app/tools/gimptextoptions.c: added check buttons for autohint
and antialias. You need to patch PangoFT2 if you want to the
antialias setting to have any effect (see #109370).
2003-03-27 Sven Neumann <sven@gimp.org>
* app/text/gimptext.[ch]: added hinting and antialias properties.
* app/text/gimptextlayout.c: rewrote some parts using the
PangoFontMap API. Respect hinting and antialias properties.
(PangoFT2 does not allow to switch antialias off, so that has no
effect yet.)
* app/tools/gimptextoptions.c: added a check button that controls
hinting.
2003-02-24 Sven Neumann <sven@gimp.org>
* app/text/gimptext.[ch]
* app/text/gimptextlayout.c: added a language property to GimpText
which defaults to the language derived from the users locale. Set
the language on the PangoContext.
2003-02-21 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplay-foreach.[ch]: added new function
gimp_displays_invalidate() which queues a redraw on all displays
by calling gimp_display_shell_expose_full().
* app/display/gimpdisplayshell-render.c (render_setup_notify):
invalidate all displays when the transparency type or size changes.
* app/tools/gimptexttool.c (text_tool_button_press): readded some
code I accidentally removed in my last commit.
* app/text/gimptextlayout.c (gimp_text_layout_new): always set the
font size but make sure it is at least 1.
2003-02-05 Sven Neumann <sven@gimp.org>
* app/core/gimpobject.[ch]
* app/text/gimptextlayer.c: improved the code that trims the text
before setting it as layer name and moved it to GimpObject as
gimp_object_set_name_safe().
* app/text/gimptext.[ch]: removed fixed_height and gravity again.
* app/text/gimptextlayout.c: much simpler positioning that has the
advantage that it actually works.
* libgimpproxy/gimpobject.[ch]: this crap was regenerated.
2003-02-05 Sven Neumann <sven@gimp.org>
* app/text/gimptext.c: added some blurbs that will show up as
tooltips in the text tool options. Tweaked default values.
* app/text/gimptextlayout.c (gimp_text_layout_position): if
gravity is none (the default), position the layout according to its
justification.
* app/widgets/gimpenummenu.[ch]: added new functions that create a
hbox of radio buttons with icons from an enum type.
* app/widgets/gimppropwidgets.[ch]: added a property widget
constructors for the new enum_stock_box.
2003-02-05 Sven Neumann <sven@gimp.org>
* app/text/text-enums.[ch]
* app/text/gimptext.[ch]: replaced GimpTextAlignment with
GimpTextJustification. Added indentation property.
* app/text/gimptextlayout.c: implemented text justification,
indentation and line spacing as far as supported by Pango.
2003-02-05 Sven Neumann <sven@gimp.org>
* app/paint/Makefile.am: fixed rules for generated sources.
* app/text/Makefile.am
* app/text/text-enums.[ch]: added new files with text-related enums.
* app/text/gimptext.[ch]: added text alignment property.
* app/text/gimptext-render.[ch]: removed
* app/text/text-types.h
* app/text/gimptextlayout.[ch]: added new files that define
GimpTextLayout, a wrapper around PangoLayout. Moved render code to
this file.
* app/text/gimptextlayer.c: changed accordingly.