Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Borghetti <bdiego@gmail.com>2009-02-09 10:15:22 +0300
committerDiego Borghetti <bdiego@gmail.com>2009-02-09 10:15:22 +0300
commitb9063b27a9376ca276cb80f692ef8fa923a966a7 (patch)
treeb70345fb669b481c1cf1bdec875e876d2d46f2e3 /source/blender/blenfont/intern/blf_internal_types.h
parent9dec5e8fa3a214da7ad406265204411aabda3c30 (diff)
Just commit so I can continue tomorrow from work.
All the code have #if 0 / #endif so nothing to worry about.
Diffstat (limited to 'source/blender/blenfont/intern/blf_internal_types.h')
-rw-r--r--source/blender/blenfont/intern/blf_internal_types.h147
1 files changed, 147 insertions, 0 deletions
diff --git a/source/blender/blenfont/intern/blf_internal_types.h b/source/blender/blenfont/intern/blf_internal_types.h
index 3a8c1bca3f5..b9ae9dfdac7 100644
--- a/source/blender/blenfont/intern/blf_internal_types.h
+++ b/source/blender/blenfont/intern/blf_internal_types.h
@@ -28,6 +28,149 @@
#ifndef BLF_INTERNAL_TYPES_H
#define BLF_INTERNAL_TYPES_H
+#if 0
+
+typedef struct DirBLF {
+ struct DirBLF *next;
+ struct DirBLF *prev;
+
+ /* full path where search fonts. */
+ char *path;
+} DirBLF;
+
+typedef struct _GlyphCacheBLF {
+ struct _GlyphCacheBLF *next;
+ struct _GlyphCacheBLF *prev;
+
+ /* font size. */
+ int size;
+
+ /* and dpi. */
+ int dpi;
+
+ /* and the glyphs. */
+ ListBase bucket[257];
+
+ /* texture array, to draw the glyphs. */
+ GLuint *textures;
+
+ /* size of the array. */
+ int ntex;
+
+ /* and the last texture, aka. the current texture. */
+ int cur_tex;
+
+ /* like bftgl, we draw every glyph in a big texture, so this is the
+ * current position inside the texture.
+ */
+ int x_offs;
+ int y_offs;
+
+ /* and the space from one to other. */
+ unsigned int pad;
+
+ /* and the bigger glyph in the font. */
+ int max_glyph_width;
+ int max_glyph_height;
+
+ /* next two integer power of two, to build the texture. */
+ int p2_width;
+ int p2_height;
+
+ /* number of glyphs in the font. */
+ int num_glyphs;
+
+ /* number of glyphs that we load here. */
+ int rem_glyphs;
+
+ /* ascender and descender value. */
+ float ascender;
+ float descender;
+} GlyphCacheBLF;
+
+typedef struct _GlyphBLF {
+ struct _GlyphBLF *next;
+ struct _GlyphBLF *prev;
+
+ /* and the character, as UTF8 */
+ unsigned int c;
+
+ /* Freetype2 index. */
+ FT_UInt index;
+
+ /* texture id where this glyph is store. */
+ GLuint tex;
+
+ /* position inside the texture where this glyph is store. */
+ int xoff;
+ int yoff;
+
+ /* glyph width and height. */
+ int width;
+ int height;
+
+ /* glyph bounding box. */
+ rctf box;
+
+ /* uv coords. */
+ float uv[2][2];
+
+ /* advance value. */
+ float advance;
+
+ /* X and Y bearing of the glyph.
+ * The X bearing is from the origin to the glyph left bbox edge.
+ * The Y bearing is from the baseline to the top of the glyph edge.
+ */
+ float pos_x;
+ float pos_y;
+} GlyphBLF;
+
+typedef struct FontBLF {
+ char *name;
+
+ /* reference count. */
+ int ref;
+
+ /* aspect ratio or scale. */
+ float aspect;
+
+ /* initial position for draw the text. */
+ float pos[3];
+
+ /* angle in degrees. */
+ float angle[3];
+
+ /* this is the matrix that we load before rotate/scale/translate. */
+ float mat[4][4];
+
+ /* clipping rectangle. */
+ rctf clip_rec;
+
+ /* and clipping mode. */
+ int clip_mode;
+
+ /* font dpi (default 72). */
+ int dpi;
+
+ /* font size. */
+ int size;
+
+ /* max texture size. */
+ int max_tex_size;
+
+ /* freetype2 face. */
+ FT_Face face;
+
+ /* list of glyph cache for this font. */
+ ListBase cache;
+
+ /* current glyph cache, size and dpi. */
+ GlyphCacheBLF *glyph_cache;
+} FontBLF;
+
+#endif /* zero!! */
+
typedef struct LangBLF {
struct LangBLF *next;
struct LangBLF *prev;
@@ -42,4 +185,8 @@ typedef struct LangBLF {
#define BLF_LANG_FIND_BY_LANGUAGE 1
#define BLF_LANG_FIND_BY_CODE 2
+/* font->clip_mode */
+#define BLF_CLIP_DISABLE 0
+#define BLF_CLIP_OUT 1
+
#endif /* BLF_INTERNAL_TYPES_H */