]> git.lizzy.rs Git - irrlicht.git/blob - include/IGUIFontBitmap.h
Fix COSOperator::getSystemMemory
[irrlicht.git] / include / IGUIFontBitmap.h
1 // Copyright (C) 2002-2012 Nikolaus Gebhardt\r
2 // This file is part of the "Irrlicht Engine".\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h\r
4 \r
5 #ifndef __I_GUI_FONT_BITMAP_H_INCLUDED__\r
6 #define __I_GUI_FONT_BITMAP_H_INCLUDED__\r
7 \r
8 #include "IGUIFont.h"\r
9 \r
10 namespace irr\r
11 {\r
12 namespace gui\r
13 {\r
14         class IGUISpriteBank;\r
15 \r
16 //! Font interface.\r
17 class IGUIFontBitmap : public IGUIFont\r
18 {\r
19 public:\r
20 \r
21         //! Returns the type of this font\r
22         virtual EGUI_FONT_TYPE getType() const _IRR_OVERRIDE_ { return EGFT_BITMAP; }\r
23 \r
24         //! returns the parsed Symbol Information\r
25         virtual IGUISpriteBank* getSpriteBank() const = 0;\r
26 \r
27         //! returns the sprite number from a given character\r
28         virtual u32 getSpriteNoFromChar(const wchar_t *c) const = 0;\r
29 \r
30         //! Gets kerning values (distance between letters) for the font. If no parameters are provided,\r
31         /** the global kerning distance is returned.\r
32         \param thisLetter: If this parameter is provided, the left side kerning for this letter is added\r
33         to the global kerning value. For example, a space might only be one pixel wide, but it may\r
34         be displayed as several pixels.\r
35         \param previousLetter: If provided, kerning is calculated for both letters and added to the global\r
36         kerning value. For example, EGFT_BITMAP will add the right kerning value of previousLetter to the\r
37         left side kerning value of thisLetter, then add the global value.\r
38         */\r
39         virtual s32 getKerningWidth(const wchar_t* thisLetter=0, const wchar_t* previousLetter=0) const _IRR_OVERRIDE_ = 0;\r
40 };\r
41 \r
42 } // end namespace gui\r
43 } // end namespace irr\r
44 \r
45 #endif\r
46 \r