Guiliani  Version 2.5 revision 7293 (documentation build 13)
FntWrapGlyphLib.h
1/*
2* Copyright (C) TES Electronic Solutions GmbH,
3* All Rights Reserved.
4* Contact: info@guiliani.de
5*
6* This file is part of the Guiliani HMI framework
7* for the development of graphical user interfaces on embedded systems.
8*/
9
10#ifndef __FNT_WRAP_GLYPHLIB__H__
11#define __FNT_WRAP_GLYPHLIB__H__
12
13#include "eC_TArray.h"
14#include "FntWrap.h"
15
16#include "GUIImageData.h"
17
18#include "gui_font.h"
19
21
25// @guiliani_doxygen limitations CFntWrapGlyphLib
29// @endguiliani_doxygen
37{
38public:
42 static eC_Bool CreateInstance();
43
44public:
47 {
48 gui_font_t Font;
49 eC_UByte* Memory;
50 };
51
52public:
53 void RequiredSpace(const eC_String * const pkText, eC_Value& vWidth, eC_Value& vHeight);
54
55 void SetFont(const FontResource_t &eID);
56
57 void LoadFont(const FontResource_t &eFontID);
58
62 void UnloadFont(const FontResource_t &eFontID);
63
64protected:
66
77 virtual void RenderTextInternal(
78 const eC_String *lpString,
79 const TextOperation_t &eOperation,
80 const eC_Value& vX1,
81 const eC_Value& vY1,
82 eC_Value& vWidth,
83 eC_Value& vHeight,
84 eC_Value vWidthMax,
85 eC_UInt &uiNumFittingChars);
86
93 virtual void RenderGlyphToScreen(const eC_Value& vX1, const eC_Value& vY1, CGUIImageData& kGlyphImage);
94
95 void Text(const eC_Value& vX1, const eC_Value& vY1, const eC_String * const lpString);
96
97 virtual void GetGlyphMetrics(const eC_Char cChar, GlyphMetrics_t& kMetrics);
98
99 virtual eC_Int GetAscender() const;
100 virtual eC_Int GetDescender() const;
101 virtual eC_Int GetInternalLeading() const;
102
103 eC_Bool SetNOFFonts(const eC_UInt uiNOFFonts);
104
105protected:
107 eC_TArray<FontEntry_s> m_kFontsHandles;
108
109private:
113 CFntWrapGlyphLib(const CFntWrapGlyphLib& kSource);
114
118 CFntWrapGlyphLib& operator=(const CFntWrapGlyphLib& kSource);
119};
120
121#endif
FontResource_t
List of font resource ids.
Definition: GUIFontResource.h:54
GlyphLib (uGuiliani font) implementation of the Font Wrapper.
Definition: FntWrapGlyphLib.h:37
virtual eC_Int GetDescender() const
void UnloadFont(const FontResource_t &eFontID)
void RequiredSpace(const eC_String *const pkText, eC_Value &vWidth, eC_Value &vHeight)
virtual eC_Int GetAscender() const
void LoadFont(const FontResource_t &eFontID)
eC_UInt m_uiCurrentFontIndex
the currently used font-index
Definition: FntWrapGlyphLib.h:106
eC_TArray< FontEntry_s > m_kFontsHandles
handles of all loaded fonts
Definition: FntWrapGlyphLib.h:107
virtual void GetGlyphMetrics(const eC_Char cChar, GlyphMetrics_t &kMetrics)
eC_Bool SetNOFFonts(const eC_UInt uiNOFFonts)
static eC_Bool CreateInstance()
virtual void RenderGlyphToScreen(const eC_Value &vX1, const eC_Value &vY1, CGUIImageData &kGlyphImage)
virtual void RenderTextInternal(const eC_String *lpString, const TextOperation_t &eOperation, const eC_Value &vX1, const eC_Value &vY1, eC_Value &vWidth, eC_Value &vHeight, eC_Value vWidthMax, eC_UInt &uiNumFittingChars)
void Text(const eC_Value &vX1, const eC_Value &vY1, const eC_String *const lpString)
virtual eC_Int GetInternalLeading() const
void SetFont(const FontResource_t &eID)
The font wrapper base class.
Definition: FntWrap.h:36
TextOperation_t
Definition: FntWrap.h:69
Contains information about an image loaded by CGUIImageLoader.
Definition: GUIImageData.h:29
Definition: FntWrap.h:60
entry for font
Definition: FntWrapGlyphLib.h:47
gui_font_t Font
font-id
Definition: FntWrapGlyphLib.h:48
eC_UByte * Memory
memory
Definition: FntWrapGlyphLib.h:49