annotate gui/skin/font.h @ 32852:cc4db17f2d2c

Cosmetic: Limit scope of internally used Fonts array.
author ib
date Sun, 20 Feb 2011 00:04:19 +0000
parents fe8f9b5d3ba2
children 67ec52396b81
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26458
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
1 /*
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
2 * This file is part of MPlayer.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
3 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
4 * MPlayer is free software; you can redistribute it and/or modify
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
5 * it under the terms of the GNU General Public License as published by
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
7 * (at your option) any later version.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
8 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
9 * MPlayer is distributed in the hope that it will be useful,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
12 * GNU General Public License for more details.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
13 *
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
14 * You should have received a copy of the GNU General Public License along
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
17 */
b0a7b35b78d2 Add standard GPL header to individual files.
diego
parents: 26365
diff changeset
18
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25535
diff changeset
19 #ifndef MPLAYER_GUI_FONT_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25535
diff changeset
20 #define MPLAYER_GUI_FONT_H
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
21
26365
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26029
diff changeset
22 #include "gui/bitmap.h"
10dfbc523184 Add gui/ prefix to some #include paths so that compilation from the
diego
parents: 26029
diff changeset
23 #include "gui/app.h"
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
24
32734
cc58a1e919d9 Allow character in the font description file to be in UTF-8.
ib
parents: 28051
diff changeset
25 #define ASCII_CHRS 128 // number of ASCII characters
cc58a1e919d9 Allow character in the font description file to be in UTF-8.
ib
parents: 28051
diff changeset
26 #define EXTRA_CHRS 128 // (arbitrary) number of non-ASCII characters
32835
19cc523b8e15 Enlarge uchar buffer, because GLib implements 31-bit UTF-8,
ib
parents: 32787
diff changeset
27 #define UTF8LENGTH 4 // length of an UTF-8 encoding according to RFC 3629
32734
cc58a1e919d9 Allow character in the font description file to be in UTF-8.
ib
parents: 28051
diff changeset
28
32786
31f88a1387ad Define constants in a single place.
ib
parents: 32785
diff changeset
29 #define MAX_FONT_NAME 128
31f88a1387ad Define constants in a single place.
ib
parents: 32785
diff changeset
30 #define MAX_FONTS 25
31f88a1387ad Define constants in a single place.
ib
parents: 32785
diff changeset
31
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
32 #define fntAlignLeft 0
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
33 #define fntAlignCenter 1
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
34 #define fntAlignRight 2
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
35
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
36 typedef struct
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
37 {
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
38 int x,y; // location
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
39 int sx,sy; // size
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
40 } fntChar;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
41
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
42 typedef struct
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
43 {
32734
cc58a1e919d9 Allow character in the font description file to be in UTF-8.
ib
parents: 28051
diff changeset
44 fntChar Fnt[ASCII_CHRS + EXTRA_CHRS];
32835
19cc523b8e15 Enlarge uchar buffer, because GLib implements 31-bit UTF-8,
ib
parents: 32787
diff changeset
45 unsigned char nonASCIIidx[EXTRA_CHRS][UTF8LENGTH];
32734
cc58a1e919d9 Allow character in the font description file to be in UTF-8.
ib
parents: 28051
diff changeset
46 txSample Bitmap;
32786
31f88a1387ad Define constants in a single place.
ib
parents: 32785
diff changeset
47 char name[MAX_FONT_NAME];
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
48 } bmpFont;
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
49
28051
9e739bdb049c Get rid of pointless 'extern' keywords.
diego
parents: 26458
diff changeset
50 void fntFreeFont( void );
9e739bdb049c Get rid of pointless 'extern' keywords.
diego
parents: 26458
diff changeset
51 int fntFindID( char * name );
9e739bdb049c Get rid of pointless 'extern' keywords.
diego
parents: 26458
diff changeset
52 int fntTextWidth( int id, char * str );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
53
28051
9e739bdb049c Get rid of pointless 'extern' keywords.
diego
parents: 26458
diff changeset
54 int fntRead( char * path, char * fname );
32759
63844ef43932 Remove useless format argument.
ib
parents: 32734
diff changeset
55 txSample * fntRender( wItem * item, int px, char * txt );
23077
17bf4f4b0715 Gui --> gui
diego
parents:
diff changeset
56
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25535
diff changeset
57 #endif /* MPLAYER_GUI_FONT_H */