FTGL 2.1.3~rc5
|
00001 /* 00002 * FTGL - OpenGL font library 00003 * 00004 * Copyright (c) 2001-2004 Henry Maddocks <ftgl@opengl.geek.nz> 00005 * Copyright (c) 2008 Sam Hocevar <sam@zoy.org> 00006 * Copyright (c) 2008 Sean Morrison <learner@brlcad.org> 00007 * 00008 * Permission is hereby granted, free of charge, to any person obtaining 00009 * a copy of this software and associated documentation files (the 00010 * "Software"), to deal in the Software without restriction, including 00011 * without limitation the rights to use, copy, modify, merge, publish, 00012 * distribute, sublicense, and/or sell copies of the Software, and to 00013 * permit persons to whom the Software is furnished to do so, subject to 00014 * the following conditions: 00015 * 00016 * The above copyright notice and this permission notice shall be 00017 * included in all copies or substantial portions of the Software. 00018 * 00019 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 00020 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 00021 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 00022 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 00023 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 00024 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 00025 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 00026 */ 00027 00028 #ifndef __ftgl__ 00029 # warning This header is deprecated. Please use <FTGL/ftgl.h> from now. 00030 # include <FTGL/ftgl.h> 00031 #endif 00032 00033 #ifndef __FTSimpleLayout__ 00034 #define __FTSimpleLayout__ 00035 00036 #ifdef __cplusplus 00037 00038 00039 class FTFont; 00040 00049 class FTGL_EXPORT FTSimpleLayout : public FTLayout 00050 { 00051 public: 00056 FTSimpleLayout(); 00057 00061 ~FTSimpleLayout(); 00062 00073 virtual FTBBox BBox(const char* string, const int len = -1, 00074 FTPoint position = FTPoint()); 00075 00086 virtual FTBBox BBox(const wchar_t* string, const int len = -1, 00087 FTPoint position = FTPoint()); 00088 00099 virtual void Render(const char *string, const int len = -1, 00100 FTPoint position = FTPoint(), 00101 int renderMode = FTGL::RENDER_ALL); 00102 00113 virtual void Render(const wchar_t *string, const int len = -1, 00114 FTPoint position = FTPoint(), 00115 int renderMode = FTGL::RENDER_ALL); 00116 00124 void SetFont(FTFont *fontInit); 00125 00129 FTFont *GetFont(); 00130 00136 void SetLineLength(const float LineLength); 00137 00141 float GetLineLength() const; 00142 00149 void SetAlignment(const FTGL::TextAlignment Alignment); 00150 00154 FTGL::TextAlignment GetAlignment() const; 00155 00162 void SetLineSpacing(const float LineSpacing); 00163 00167 float GetLineSpacing() const; 00168 }; 00169 00170 #endif //__cplusplus 00171 00172 FTGL_BEGIN_C_DECLS 00173 00174 FTGL_EXPORT FTGLlayout *ftglCreateSimpleLayout(void); 00175 00176 FTGL_EXPORT void ftglSetLayoutFont(FTGLlayout *, FTGLfont*); 00177 FTGL_EXPORT FTGLfont *ftglGetLayoutFont(FTGLlayout *); 00178 00179 FTGL_EXPORT void ftglSetLayoutLineLength(FTGLlayout *, const float); 00180 FTGL_EXPORT float ftglGetLayoutLineLength(FTGLlayout *); 00181 00182 FTGL_EXPORT void ftglSetLayoutAlignment(FTGLlayout *, const int); 00183 FTGL_EXPORT int ftglGetLayoutAlignement(FTGLlayout *); 00184 00185 FTGL_EXPORT void ftglSetLayoutLineSpacing(FTGLlayout *, const float); 00186 FTGL_EXPORT float ftglGetLayoutLineSpacing(FTGLlayout *); 00187 00188 FTGL_END_C_DECLS 00189 00190 #endif /* __FTSimpleLayout__ */ 00191