src/FTFont


Log

Author Commit Date CI Message
dtremenak f2011b55 2008-05-21T00:39:04 quell warning
sammy ca7c7a81 2008-05-20T23:49:25 * First try at the FTBufferFont/FTBufferGlyph implementation.
sammy f7d00178 2008-05-19T15:45:47 * Starting the buffer font class revival. For now, it just consists in empty FTBuffer, FTBufferGlyph and FTBufferFont classes.
sammy 612c3756 2008-05-11T21:43:57 * Simplify the C bindings. 70 lines gained.
sammy a90225b5 2008-05-11T11:29:39 * Get rid of all methods in FTLayoutImpl that were accessing FTFontImpl internals, since FTFont now has all the proper public methods for that.
sammy 32ef6d1e 2008-05-11T11:29:17 * Get rid of FTFontImpl::DoRender(), one of the oldest TODOs.
sammy 20ac99b1 2008-05-11T11:28:08 * FTFont::Advance(), FTFont::Render() and FTFont::BBox() are now far more powerful, allowing for substring display and extra spacing between characters.
sammy d39c7838 2008-05-11T11:26:12 * Kill 180 lines of code by removing duplicate *::Render() functions and giving a default value to the renderMode parameter.
sammy 68738f93 2008-05-09T10:02:46 * Put a few wrapper functions into extern "C++" braces because they return references to C++ objects.
sammy e9260bbf 2008-05-08T22:35:57 * Implement C bindings for FTGlyph and FTFont subclassing. * Add subclassing to the simple C demo to show how to do similar stuff as in the C++ demo.
sammy 45c2269f 2008-05-07T16:10:28 * Some code cleanup here and there, mostly in FTGlyphContainer.
sammy 48b68f55 2008-05-07T15:06:19 * Replace FTBBox::Move() with the += operator, to make it clearer that the object is modified in the process.
sammy 8863eeeb 2008-05-07T15:03:48 * Change the += operator for bounding boxes to |=, which better represents what is happening, and avoids future confusion with "FTBBox + FTPoint" constructs.
sammy 4f44ec81 2008-05-07T15:01:47 * Make all BBox functions return an FTBBox object instead of doing countless conversions to floats or arrays of floats.
sammy 28cc198b 2008-05-07T14:58:09 * Reimplement all FTFont::BBox() variants using the same FTFontImpl::BBox() common method.
sammy 3823a30a 2008-05-07T14:56:57 * Add an overload of FTFont::BBox that returns an FTBBox object. It will save us a lot of code later.
dtremenak 948e3629 2008-05-06T06:54:51 l != 1, depending on your font of course
dtremenak eb45c699 2008-05-06T06:38:37 VC build fixes from bzflag revs 17848-17852. * size_t consistency * avoid coercing from int to bool * make casts from double to float explicit rather than implicit, mostly by way of a few new getter functions in FTPoint, or avoid if possible.
sammy f7b79437 2008-05-05T14:55:11 * Refactor FTGlyph, FTFont and FTLayout so that client applications can hopefully subclass them.
sammy 68bcaf26 2008-05-05T14:52:48 * Rename FTTextureFontImpl::MakeGlyph to FTTextureFontImpl::MakeGlyphImpl to avoid confusion.
sammy 7d3852f9 2008-05-05T14:52:17 * Rename FTFontImpl::base to FTFontImpl::intf.
brlcad 4a459132 2008-05-05T13:22:30 quell warnings, reorder initializations
sammy 0a28e5d3 2008-05-04T19:39:34 * Put MakeGlyph back into FT*Font classes instead of FT*FontImpl, and make it use as few FT*FontImpl members as possible so that external application may actually have a chance to properly subclass us.
sammy 316a7285 2008-05-04T19:38:55 * The FTFont<->FTFontImpl bridge is now complete.
sammy 54c815bb 2008-05-04T19:38:07 * Cast strings to unsigned char * before handling them to our internal methods, because the chars may be cast directly to int, causing crashes with 8-bit strings.
brlcad b7c7e131 2008-05-04T02:58:40 refer to local/private headers with local path inclusion, otherwise the search include paths are wrong
sammy 7f2bb3f1 2008-05-02T12:43:57 * Document the C bindings for FTGlyph.
sammy 92238082 2008-05-02T09:15:38 * Change a few function names in the FTFont C bindings to avoid confusion with other classes. * Document the C bindings. Since it's almost copypasta from the C++ documentation, I put the constructors back in their original files.
sammy dfa07fc3 2008-05-02T07:20:51 * Fix a small memory leak in the C bindings destructors.
sammy 822d0f8f 2008-05-01T18:30:29 * Avoid crashing when the texture size is so small that its integer size becomes zero. At the same time, round many floats instead of simply flooring them to int. First part by Sean Morrison from bzflag commit r14590.
sammy 40644e3b 2008-05-01T14:19:34 * Patches by Sean Morrison, from BzFlag commits r15755 and r14843: + Only delete textures if there is at least one of them. + Ensure that the FTTextureFont data members get set for all cases. * Added Sean to the AUTHORS file.
sammy 129a4733 2008-05-01T13:42:49 * Store FTPoints in the BBox object instead of floats. This was a todo from Henry.
sammy fa7d0739 2008-05-01T09:31:27 * Mass consistency renaming: the fonts' "FTGL" prefix is dropped in favour of "FT" because all other types use only the latter. * Rename "Extrd" types to "Extrude" because the former doesn't really make much sense. * Added appropriate #defines so that legacy applications still build.
sammy 2aa2aeb5 2008-04-30T16:27:34 * Move include/* to src/FTGL/* so the files in there can directly be referred to as "FTGL/*.h". This is convenient because they will be installed in a similar location. * Put a warning in each legacy public header to advise users to only include the generic <FTGL/ftgl.h> header instead.
sammy 1d9265ad 2008-04-30T14:10:08 * Improve constructor code in the FTFont and FTLayout C bindings. Shorter (40 lines) and more consistend code.
sammy 7f4fcafa 2008-04-29T21:35:16 * End of the pImpl refactoring task started in [972]. FTGlyph was the last class needing the change. As a consequence, FTGlyph is now also exported in the library API, and so are FTBBox and FTPoint.
sammy fa063816 2008-04-29T20:42:15 * Simplified FTFont's constructor. Since the class is kind of abstract, there is no need to export the constructor interface: only derived classes need to advertise how they are instantiated.
sammy 387dec48 2008-04-29T17:11:57 * Move FTGlyph, FTFont and FTLayout classes and their derivatives into separate subdirectories of src/ to avoid cluttering src/ with too many files. The Visual Studio solution still needs an update.