- Main Page
- Namespaces
- Data Structures
- Files

- File List
- Globals

# FTSimpleLayout.h

Go to the documentation of this file.

    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