Commit Graph

60 Commits

Author SHA1 Message Date
Robert Osfield
5cdb5c055c Added extension docs 2008-07-25 10:18:14 +00:00
Robert Osfield
275811d02a From Eric Sokolowsky, "I have made a number of changes intended to get a few things working better on OSX. However, since I'm still pretty new at Mac development and cmake I'm not entirely certain that the changes I have made are benign on other platforms. I have tested these changes on Leopard with CMake 2.6 generating Xcode 3.0 projects, compiling on ppc and i386 for 10.5 and 10.4, and on Linux (CentOS) and everything still seems to work ok. Here are the changes I made (against OSG svn as of this afternoon):
- Added osgviewerCocoa example to APPLE builds
- Fixed corrupt Xcode project generation with CMake 2.6 dealing with ADD_DEFINITIONS and CMake Policy CMP0005 on Leopard
- Resolved CMP0006 warning for examples and programs by setting BUNDLE DESTINATION to same as RUNTIME DESTINATION with CMake 2.6
- Fixed freetype plugin on Leopard to avoid OpenGL linking problem
- Figured out how to use a custom Info.plist included in the project (see osgviewerCocoa application CMakeLists.txt)"
2008-06-23 09:57:45 +00:00
Robert Osfield
e9589ebb49 From Paul Martz, "Another round of plugin enhancements.
3DC: Output now uses osg::notify.
JPEG: Now returns correct error code for empty input file.
FreeType: Prevent possible crash if Options is NULL."
2008-05-10 17:23:12 +00:00
Robert Osfield
e869200b3d Refactored the mutex usage in osgText and freetype plugin to prevent multi-thread crash 2008-02-25 12:54:54 +00:00
Robert Osfield
e7e8d48980 From Thibault Genessay, "On Dec 16 you introduced a fix to remove internal use of ref_ptr<>'s.
It contained a bug that would cause freed memory to be written again.
Specifically, in FreeTypeLibrary::~FreeTypeLibrary(), calling
font->setImplementation(0); deletes the content pointed to by the
fontImplementation pointer, while the line the immediately follows
tries to access it.

My fix is to make the second instruction part of an else clause rather
than always executed. This way, the fontImplementation->_facade = 0
instruction is only executed when the font implementation is not set
to 0 before (although I have no idea what it is here for and if this
code path is ever followed, since I don't know the plugin's internals
very well).

Attached is the modified FreeTypeLibrary.cpp file."
2008-02-18 15:10:30 +00:00
Robert Osfield
6ca573dfd3 From Jean-Sebastien Guay, Warning fixes 2008-01-08 17:18:11 +00:00
Robert Osfield
ce5388a8bc Convert osgText and freetype plugin across to keeping the font size as state that
is passed into the getGlyph and getKerning methods rather than a current state of the font itself.
2007-12-23 18:15:54 +00:00
Robert Osfield
f290b75bc9 Moved Font code across to using FontSizePair internally and on Font methods, but
still using original implemetations.
2007-12-23 13:45:37 +00:00
Robert Osfield
e29423bba9 Removed used of ref_ptr<>'s internally to avoid ciricular calls on destruction. 2007-12-16 13:20:38 +00:00
Robert Osfield
becf6c22ea Added initilizers of variables to FreeTypeFont3D constructors.
Removed unused FreeTypeFontBase class
2007-12-16 12:36:52 +00:00
Robert Osfield
f69a48e552 From David Callu, added support of 3D text to osgText and associated plugins. 2007-12-10 15:15:56 +00:00
Robert Osfield
92b1e7d53f Changed tabs to four spaces to make merges more straight forward 2007-09-05 17:03:43 +00:00
Robert Osfield
f6650dd3bf Changed the error code reporting to use hex to match up with freetype headers 2007-08-28 16:12:10 +00:00
Robert Osfield
e5a6b1a834 From Csaba Halasz, support reading "monochrome" option string and use of monocrhome FreetType support 2007-07-02 12:43:23 +00:00
Robert Osfield
b48ed1a4d4 Improved the set up of static build, added freetype plugin to plugins that support static usage 2007-06-10 09:51:29 +00:00
Robert Osfield
e3d7e6e173 Added debug code path that prints out font details. 2007-06-08 20:11:50 +00:00
Robert Osfield
dadb92ea64 Reorganised the managment of margins around glyphs so that is done entirely
with src/osgText/Font.cpp rather than the font plugins or Text.cpp
2007-05-04 12:05:29 +00:00
Robert Osfield
2e6ee4bb39 Removed old gmake and VisualStudio build files 2007-04-10 13:10:25 +00:00
Robert Osfield
5c780aada0 From Luigi Calori, "here is a patch to use Mike 3rdParty dependencies
It should not be introusive to any other palatform apart MSVC, but in order to link to debug-specific libs
I had to change plugins CMakeLists to differentiate debug/release linkage, I have used the same macro used in core libs
Now the macro used for plugin and examples linking test for existance of TARGET_LIBRARIES_VARS
that holds the names of the variables that have to be used for linking"
2007-03-27 21:44:02 +00:00
Robert Osfield
282f4ce0b9 Moved the TARGET_NAME setting into the OsgMacroUtils.cmake. 2007-03-19 17:24:19 +00:00
Robert Osfield
da64127539 Ran dos2unix on CMakeLists.txt files. 2007-03-19 13:26:34 +00:00
Robert Osfield
be3f61c49f From Luigi Calori, move to using local CMakeLists.txt files and explicit file lists.
From Robert Osfield, small ammendments of the above to seperate example and application installs, and fix the osgPlugins install directory.
2007-03-19 12:30:26 +00:00
Robert Osfield
426afa3e70 From Luigi Calori, fixed build of freetype and zlib. 2007-03-08 21:19:27 +00:00
Robert Osfield
bf3180018e From Luigi Calori, added support macro based build of plugins 2007-03-08 15:29:53 +00:00
Robert Osfield
246b28e752 From Gordon Tomlinson, "I have attached the 3 files we had to change to fix a proble we were seeing with using Symbol Fonts
// GT: fix for symbol fonts (i.e. the Webdings font) as the wrong character are being
// returned, for symbol fonts in windows (FT_ENCONDING_MS_SYMBOL in freetype) the correct
// values are from 0xF000 to 0xF0FF not from 0x000 to 0x00FF (0 to 255) as you would expect.
// becuase Microsoft uses a private field for its symbol fonts ........
 "
2007-02-05 11:48:02 +00:00
Robert Osfield
648455da34 Changed the dependency list to use -losg -losgDB instead of OSG_LIBS 2006-10-23 15:29:59 +00:00
Robert Osfield
f1c2694c17 Updated copyright years. 2006-07-18 15:21:48 +00:00
Robert Osfield
fcdf5826db Added a static_cast<std::streampos> to get round IRIX64 build problem. 2005-12-02 09:57:19 +00:00
Robert Osfield
2773d45f2a From Wang Lam,"The changes allow users of OpenSceneGraph to call a new function
readFontStream() to load fonts from a std::istream, rather than from the
local filesystem by name.  Such a call may be used, for example, if the
user has a font fetched over a network, or a font available in memory
without a correspondng filename.

The changes implement the new function by following the corresponding code
for readFontFile().  readFontStream() reads a stream into memory, and
holds that memory for FreeType.

As a basic test, I mangled the osgtext example to use
readFontStream(std::ifstream("font")) in lieu of a readFontFile call, and
the modified example ran completely."
2005-11-07 11:05:16 +00:00
Robert Osfield
84aef32552 Removed old LUMINANCE_ALPHA code pathways since they are no longer used. 2005-04-28 19:08:44 +00:00
Robert Osfield
10607dd690 Added proper handling of freeing of font implememtation either when unloading
the freetype plugin or deleting osgText::Font first.
2005-04-28 18:55:08 +00:00
Robert Osfield
7182713dcf From Garrat Potts, fixed face memory leak in FreTypeFont destructor. 2005-04-21 21:05:48 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
b401b97bce From James French, fix to header guard 2005-04-08 14:09:32 +00:00
Robert Osfield
a086a6d01b Changed Font::setSize to Font::setFontResolution 2005-01-27 11:10:50 +00:00
Robert Osfield
d9b9a6f1f8 Made read/write methods in ReaderWriter all const to facilate multi-threading 2004-11-23 15:29:52 +00:00
Robert Osfield
ce07879e2e Moved plugins across to using ReaderWriter::Options* for search paths in addition
to standard osgDB::DataFilePaths
2004-11-22 23:54:45 +00:00
Robert Osfield
2718058173 Removed the font cache from the FreeType plugin, moving the support across to
osgDB::Registry.
2004-11-02 11:10:44 +00:00
Don BURNS
dc6dc022cd Removed link to X11 2004-10-26 15:31:33 +00:00
Robert Osfield
1f5b044c71 Made ReaderWriter::className const 2004-10-26 10:26:43 +00:00
Don BURNS
12a1ef5552 don - Small changes to support Mac OSX CGL build
small unused variable warning fix.
2004-10-24 05:50:59 +00:00
Robert Osfield
e59fcfe6ce Cleaned up the gdal-config usage to work with gdal-1.1.9 2004-08-04 10:03:57 +00:00
Robert Osfield
4aa7afedf3 Removed include <iostream> where possible, replacing with istream or ostream and changing
std::cout/cerr to osg::notify().
2004-03-03 13:27:21 +00:00
Robert Osfield
bbde1b2ae7 Fixes for optional compile of GL_LUMINANCE_ALPHA and GL_ALPHA texture usage
in fonts.  Default to GL_ALPHA.
2003-12-09 12:04:14 +00:00
Robert Osfield
4c3f6004df Moved osgText across to create GL_ALPHA textures instead of GL_LUMINANCE_ALPHA 2003-12-09 11:31:33 +00:00
Robert Osfield
83bf813e58 Moved the responsibility for finding file to load on to the ReaderWriter plugins,
instead of osgDB::Registry where it original lay.  This has been done to allow
fileName strings to be encode data rather than just file names, such as one
requires when using PagedLOD along with plugins for doing dynamic tesselation.
2003-12-08 11:24:43 +00:00
Robert Osfield
7136a00b9a Changed the freetype plugin so it keeps its own ref_ptr<Font> to fonts
that it creates, rather than have osgText::Font::readFontFile() use the
osgDB::Registry object cache.

This has been done to prevent problems when users flush the object cache,
which was causing a dangling pointer.
2003-11-20 11:07:19 +00:00
Robert Osfield
8d4ab4668e From Tree, updates to osgText and freetype plugin to support are kerning paramter. 2003-06-26 16:21:49 +00:00
Don BURNS
15f88f35b2 *** empty log message *** 2003-06-24 15:40:09 +00:00
Robert Osfield
0036018507 Added -I/usr/X11R6/include to osgProducer and all the examples GNUMakefiles.
From Bob, mods to GNUMakefile and Make/makedefs for the extra includes for
freetype.
2003-04-14 19:39:22 +00:00