Log

Author Commit Date CI Message
sammy 08e33f69 2008-05-06T12:14:36 * Create a C demo to show how the C bindings work.
sammy 500c67e7 2008-05-06T10:01:27 * Show how to subclass FTFont classes in the simple demo.
sammy 4ed52c55 2008-05-06T10:00:48 * Fix an unsigned int / size_t mismatch in FTVectoriser.
sammy 654d19c4 2008-05-06T08:24:45 * Move msvc/Makefile.am back to its proper place. * Add the new visual studio build files to the distribution.
sammy 15012d0f 2008-05-06T07:08:55 * Fix indentation by replacing a few tabs with spaces.
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.
JeffM2501 4fdf308c 2008-05-06T06:03:46 mention the joy of the build dir.
JeffM2501 a7b8433a 2008-05-06T06:02:51 a readme for those that like to read and learn and grow.
JeffM2501 17d2b384 2008-05-06T05:51:54 make the demos build, and pair it down to just one set of build targets, release and debug
JeffM2501 fe768541 2008-05-06T05:43:46 put our stuff in build not debug
JeffM2501 adad77b4 2008-05-06T05:43:22 build a static lib as an option
JeffM2501 d15e7a70 2008-05-06T05:12:39 start a vc7.1 build
JeffM2501 95f3b90b 2008-05-06T04:55:37 build as a VC8 DLL again
JeffM2501 c6053772 2008-05-06T04:15:12 move the config.h and demo file up so they can be shared with all MSVC builds.
brlcad fe766c64 2008-05-06T04:04:10 begone, vile beasties
JeffM2501 e56f9fdd 2008-05-06T04:03:17 fix busted line endings
JeffM2501 83bbc4b9 2008-05-06T03:59:34 move 2005 build files to VC8 dir so we can have more then one windows build system
sammy 1c9e4908 2008-05-05T22:16:02 * The FTGL "simple demo" is no longer simple. Wrote a really simple one.
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
brlcad 98bae147 2008-05-05T13:14:38 don't need to check for glu if we have the mac opengl framework
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 89585b8a 2008-05-04T19:38:41 * Put my name and Sean's in the public headers so that people know who to contact.
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 25a245db 2008-05-04T16:24:45 revert the r1027 changes related to PKG_CHECK_MODULES. provide the macro via the pkg.m4 script but still don't abort if it's not found.
brlcad 02817b9c 2008-05-04T06:23:04 quell compilation warnings about the last enum having a comma
brlcad c0e4ee1e 2008-05-04T06:04:27 remove the silly one-liner cleanup script that just removes Finder files
brlcad a0a9f44c 2008-05-04T05:45:54 sort makefiles for easier comparison
brlcad 81cda3aa 2008-05-04T05:04:25 include the changelog
brlcad 204900fe 2008-05-04T04:55:16 initial changelog through today created via svn2cl.sh -i -a
brlcad 3a0adfb5 2008-05-04T04:50:12 credit self for the precomputed glyph and kerning tables that gave a nice performance boost to the font rendering (at a mild expense of 64k memory per font face)
brlcad 6fa971ad 2008-05-04T04:46:58 annotate that sam fixed many bugs related to memory corruption, leaks, and prevented/fixed more than a handful of bugs through inspection and valgrinding
brlcad acbb6a53 2008-05-04T04:35:41 print an informative summary
brlcad 2ebf9ff3 2008-05-04T04:31:07 have to add the default include dir path to the CPPFLAGS so we can find the headers
brlcad b14c5cd1 2008-05-04T04:29:59 GLUT framework needs the OpenGL framework, use the same Xlinker hack for libtool
brlcad 05e68e0b 2008-05-04T03:59:03 add an output summary
brlcad ccef49b6 2008-05-04T03:55:24 test with LIBS instead of LDFLAGS but don't persist since that's done later
brlcad d4047e1a 2008-05-04T03:13:43 fix the gl/glut tests so that they also work on mac os x where libraries are specified through frameworks instead of libs. libtool 1.5 and earlier are unfortunately have busted behavior with -no-undefined libraries as it strips off unrecognized options, hence the use of -Xlinker
brlcad b7c7e131 2008-05-04T02:58:40 refer to local/private headers with local path inclusion, otherwise the search include paths are wrong
brlcad 1b658504 2008-05-04T02:57:13 list the libs as libs instead of flags so they get passed through as dependencies in the libtool archive
brlcad f7d38361 2008-05-03T23:40:51 use AC_PATH_PROG instead of PKG_CHECK_MODULES to keep the versions to a minimum
brlcad ea4236d4 2008-05-03T17:21:25 have to quote the AC_MSG_ERROR else the exit code is screwed up
sammy 552366af 2008-05-02T14:52:54 * Add a virtual destructor to FTLayoutImpl to make sure derived classes have their destructors called. * Make all FTLayoutImpl members protected. Only its derived classes and FTLayout need to access them.
sammy 15f659bb 2008-05-02T13:28:37 * Fix inconsistencies in the documentation install paths.
sammy e0e8e479 2008-05-02T13:27:11 * Add an implicit cast to FTGL::TextAlignment in the FTLayout::SetAlignment C wrapper.
sammy 9b3a3a8a 2008-05-02T13:18:09 * Started documenting the FTLayout C bindings.
sammy 65c77f88 2008-05-02T13:17:45 * Generate PDF documentation if a proper LaTeX installation can be found.
sammy c33efa0d 2008-05-02T12:45:21 * Use a smaller logo on the User Guide's front page.
sammy 7f2bb3f1 2008-05-02T12:43:57 * Document the C bindings for FTGlyph.
sammy d30f9095 2008-05-02T12:43:22 * Fix a potential memory leak in the FTGlyph C bindings error handler.
sammy 025860bc 2008-05-02T09:58:24 * Converted the HTML documentation to Doxygen so that everything ends up in the same document. Plus, Doxygen's C++ pretty-printer is very nice for code examples.
sammy a4023af1 2008-05-02T09:17:22 * Fixes and enhancements to ftgl.pc: + Add -I${includedir}/FTGL to Cflags because we want to support legacy application that still #include <FTGLBitmapFont.h>. + Remove @GL_CFLAGS@ from Cflags because our public headers do not use GL headers. + Add freetype2 to Requires.private since it ships its own .pc file. Not using Requires because freetype2 is only really needed for statically linking. Getting rid of @FT2_CFLAGS@ and @FT2_LIBS@ at the same time.
sammy cd3d79bb 2008-05-02T09:16:51 * Activate macro expansion in Doxygen to hide useless macros such as FTGL_EXPORT in the documentation.
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 d9cdef45 2008-05-02T09:13:14 * Add RENDER_ALL to the enum used in Font::Render() so that client applications need not worry about future extensions.
sammy 66e53f95 2008-05-02T07:21:57 * Fix a memory leak in ~FTExtrudeGlyph: only one of the three display lists was being freed.
sammy 8d4c7414 2008-05-02T07:21:39 * Fix memory leaks in the font tests due to temporary variables not being deleted. * Add a few method calls to the C test program.
sammy 80e809f1 2008-05-02T07:21:09 * Fix brown-paper-bag bug in the vector product computation: the indices were completely messed up. Thanks to valgrind for spotting it for me.
sammy dfa07fc3 2008-05-02T07:20:51 * Fix a small memory leak in the C bindings destructors.
brlcad 9fac43d3 2008-05-02T04:17:14 remove the obsolete 10.3 project builder project for mac, it's now pretty far out of date and is without maintainer
brlcad b5d42ea1 2008-05-02T03:52:14 add a utf-8 coding line for emacs, attribute full name with e-mail
brlcad fb1f8e7b 2008-05-02T03:45:01 don't ignore COPYING now that there is one
sammy e8c876bc 2008-05-01T19:31:06 * Make our base classes' destructors public. We want to prevent accidental instantiation, but direct destruction is perfectly legal.
sammy 54e3e0a6 2008-05-01T18:46:22 * Proper FTFace member initialisation to prevent destructor-time crashes.
sammy fbcf2a88 2008-05-01T18:33:44 * Optimise FTFace::KernAdvance() so that kerning for font indices < 128 is precomputed during FTFace() instantiation to avoid calling FT_Get_Kerning() too often. Patch by Sean Morrison, taken from bzflag commit r14652, reworked for safety and performance by me.
sammy b9df86a4 2008-05-01T18:31:35 * Optimize FTCharmap::FontIndex() so that font indices < 128 are precomputed during FTCharmap() instantiation to avoid repeated tt_cmap4_char_index() calls. Performance patch by Sean Morrison, taken from bzflag commit r14644.
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 56516d41 2008-05-01T12:05:27 * Remade metrics.png using Inkscape.
sammy f0705dc2 2008-05-01T10:54:28 * Inline most FTPoint methods and operators. This will probably make the code smaller instead of bigger, because most of what they do will be optimised out by the compiler. * Get rid of the weird GetNormal() method and reimplement it using the ^ operator (vector product) and Normalise() method instead.
sammy 9fa3bb52 2008-05-01T10:04:14 * Moved C constructor bindings to FTFont.h and FTLayout.h so that they appear in the same file in the generated documentation. * Various minor documentation updates.
sammy ab4586ca 2008-05-01T09:45:14 * Update demos and unit tests so that they use the newly named types.
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 69b3d506 2008-05-01T07:47:24 * Predefine __cplusplus in the Doxygen config file so that the whole headers are parsed.
sammy acff56f2 2008-05-01T07:37:56 * Generate the Doxygen configuration file at configure time so that we don't need to hardcode the package version in it. * Only generate documentation for the public classes.
sammy 7543e5d3 2008-04-30T19:59:48 * Remove deprecated html.tar.gz tarball. We may ship one later, but right now it is unusable. * Update Doxygen config file so that it sees our new header locations.
sammy 8f4cefb2 2008-04-30T16:35:23 * Remove FTGL_EXPORT specification from classes that are not actually exported.
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 24656f3c 2008-04-30T14:07:52 * Fix Makefile to add missing header files in "make dist".
sammy 8c654f07 2008-04-30T14:02:25 * Implement FTLayout::Error(). Nothing uses it yet and it's always zero, but it may come in handy later and we want a stable API.
sammy ecea190c 2008-04-29T23:08:14 * Small C test program. It does not do anything yet, but it's already a good thing to know whether all public headers can be #included from C code.
sammy 0c84f1f3 2008-04-29T22:59:41 * Wrote C bindings for the FTGlyph class.
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.
sammy ff3228e6 2008-04-29T16:47:26 * More cleanup following the private pointer refactoring: + Removed private type enums from the public ftgl.h header. + Protected all private implementation ctors and dtors. + Prevent accidental initialisation of the base classes by protecting their constructors. Derived classes can still be properly instantiated.
sammy b81733e4 2008-04-29T15:44:42 * Clean up the C bindings by splitting FTGlue.cpp into FTLayoutGlue.cpp, FTGlyphGlue.cpp (unused yet) and FTFontGlue.cpp. C methods previously scattered all around are now located in one of these 3 files. * Hide extern "C" and namespace C constructs in a single FTGL_BEGIN_C_DECLS macro. * Use namespace FTGL all around instead of a mix of C and FTGL namespaces.
sammy 8886dced 2008-04-29T14:57:06 * Fix the ftglLayoutRenderSpace C binding's prototype, which wasn't in sync with its implementation in FTGlue.cpp.
sammy 1f4a94f8 2008-04-29T14:39:28 * Since the MIT license is LGPL-compatible, there is no real point in shipping FTGL under a dual license. Consequently removing LGPL references from the code, in agreement with Sean.
sammy 4db4b05d 2008-04-29T11:30:15 * Remove dead code: FTGLBufferFont and FTBufferGlyph are the same as FTGLPixmapFont and FTPixmapGLyph, except the latter are actually used and do work.
sammy 001ebbdd 2008-04-29T11:18:48 * Remove useless overriden methods in FTGLBitmapFont that reimplemented the same thing as in FTFont.
sammy c96146ed 2008-04-29T06:44:51 * Moved header files that are not required by library clients into src/ so that they do not get installed. * Created an ftgl.h header that allows clients to #include <FTGL/ftgl.h> and be done with it.
sammy 9caaa891 2008-04-28T21:48:44 * Split Font and Layout headers into Foo.h and FooImpl.h, and taking the latter out of the include/ directory.
sammy 573770b5 2008-04-28T21:12:36 * Beginning of a new refactoring task. Classes inheriting FTFont or FTLayout now hide their private members behind a pImpl pointer. This will make the public headers smaller, and we will not break the ABI by changing private members of our public classes. This first step just splits classes but does not reorganise files.