Guiliani  Version 2.6 revision 7293 (documentation build 12)
FntWrapGlyphLibDave.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_DAVE_H__
11#define __FNT_WRAP_GLYPHLIB_DAVE_H__
12
13#include "FntWrapGlyphLib.h"
14#include "FontCacheGlyphLib.h"
15
16#include "GUIImageData.h"
17
19
30{
31public:
39 static eC_Bool CreateInstance(
40 const eC_UInt& uiGlyphCacheInitialSize = 32,
41 const eC_Bool& bGlyphCacheAutoResize = true,
42 const eC_UInt& uiGlyphCacheResizeBy = 10);
43
44protected:
51 virtual void RenderGlyphToScreen(const eC_Value& vX1, const eC_Value& vY1, CGUIImageData& kGlyphImage);
52
53 virtual void SetFont(const FontResource_t &eID);
54
55 virtual void LoadFont(const FontResource_t &eFontID);
56
60 virtual void UnloadFont(const FontResource_t &eFontID);
61
62 virtual void GetGlyphMetrics(const eC_Char cChar, GlyphMetrics_t& kMetrics);
63
64 virtual eC_Int GetAscender() const;
65 virtual eC_Int GetDescender() const;
66 virtual eC_Int GetInternalLeading() const;
67
68 virtual eC_Bool SetNOFFonts(const eC_UInt uiNOFFonts);
69
70private:
78 const eC_UInt& uiGlyphCacheInitialSize,
79 const eC_Bool& bGlyphCacheAutoResize,
80 const eC_UInt& uiGlyphCacheResizeBy);
81
82 virtual ~CFntWrapGlyphLibDAVE();
83
84private:
89
94 CFntWrapGlyphLibDAVE& operator=(const CFntWrapGlyphLibDAVE& kSource);
95
96 void RenderTextInternal(
97 const eC_String *lpString,
98 const TextOperation_t &eOperation,
99 const eC_Value& vX1,
100 const eC_Value& vY1,
101 eC_Value& vWidth,
102 eC_Value& vHeight,
103 eC_Value vWidthMax,
104 eC_UInt &uiNumFittingChars);
105
106private:
107 eC_UInt m_uiGlyphCacheInitialSize;
108 eC_Bool m_bGlyphCacheAutoResize;
109 eC_UInt m_uiGlyphCacheResizeBy;
110
111 eC_TArray<CFontCacheGlyphLib*> m_apFontCache;
112};
113#endif
FontResource_t
List of font resource ids.
Definition: GUIFontResource.h:54
Glyphlib font wrapper specialization using DAVE-API.
Definition: FntWrapGlyphLibDave.h:30
virtual eC_Bool SetNOFFonts(const eC_UInt uiNOFFonts)
virtual eC_Int GetAscender() const
virtual void LoadFont(const FontResource_t &eFontID)
static eC_Bool CreateInstance(const eC_UInt &uiGlyphCacheInitialSize=32, const eC_Bool &bGlyphCacheAutoResize=true, const eC_UInt &uiGlyphCacheResizeBy=10)
virtual void UnloadFont(const FontResource_t &eFontID)
virtual void GetGlyphMetrics(const eC_Char cChar, GlyphMetrics_t &kMetrics)
virtual void RenderGlyphToScreen(const eC_Value &vX1, const eC_Value &vY1, CGUIImageData &kGlyphImage)
virtual eC_Int GetDescender() const
virtual eC_Int GetInternalLeading() const
virtual void SetFont(const FontResource_t &eID)
GlyphLib (uGuiliani font) implementation of the Font Wrapper.
Definition: FntWrapGlyphLib.h:37
TextOperation_t
Definition: FntWrap.h:69
Contains information about an image loaded by CGUIImageLoader.
Definition: GUIImageData.h:29
Definition: FntWrap.h:60