aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/gdi/font.h17
-rw-r--r--lib/gui/elabel.cpp5
-rw-r--r--lib/gui/elabel.h3
-rw-r--r--lib/python/enigma_python.i4
4 files changed, 22 insertions, 7 deletions
diff --git a/lib/gdi/font.h b/lib/gdi/font.h
index a38454d1..0f3bf714 100644
--- a/lib/gdi/font.h
+++ b/lib/gdi/font.h
@@ -1,6 +1,8 @@
#ifndef __FONT_H
#define __FONT_H
+#ifndef SWIG
+
#include <ft2build.h>
#include FT_FREETYPE_H
#include FT_CACHE_H
@@ -8,7 +10,6 @@
#include FT_CACHE_SMALL_BITMAPS_H
#include <vector>
-
#include <lib/gdi/fb.h>
#include <lib/gdi/esize.h>
#include <lib/gdi/epoint.h>
@@ -22,8 +23,10 @@ class gDC;
class gFont;
class gRGB;
+#endif
class fontRenderClass
{
+#ifndef SWIG
friend class Font;
friend class eTextPara;
fbClass *fb;
@@ -43,17 +46,21 @@ class fontRenderClass
FTC_FaceID getFaceID(const std::string &face);
FT_Error getGlyphBitmap(FTC_Image_Desc *font, FT_ULong glyph_index, FTC_SBit *sbit);
static fontRenderClass *instance;
+#endif
public:
float getLineHeight(const gFont& font);
- std::string AddFont(const std::string &filename, const std::string &name, int scale);
static fontRenderClass *getInstance();
- FT_Error FTC_Face_Requester(FTC_FaceID face_id,
- FT_Face* aface);
+#ifndef SWIG
+ std::string AddFont(const std::string &filename, const std::string &name, int scale);
+ FT_Error FTC_Face_Requester(FTC_FaceID face_id, FT_Face* aface);
int getFont(ePtr<Font> &font, const std::string &face, int size, int tabwidth=-1);
+#endif
fontRenderClass();
~fontRenderClass();
};
+#ifndef SWIG
+
#define RS_WRAP 1
#define RS_DOT 2
#define RS_DIRECT 4
@@ -178,4 +185,6 @@ public:
extern fontRenderClass *font;
+#endif // !SWIG
+
#endif
diff --git a/lib/gui/elabel.cpp b/lib/gui/elabel.cpp
index 5b1c5b0b..17239fbc 100644
--- a/lib/gui/elabel.cpp
+++ b/lib/gui/elabel.cpp
@@ -80,6 +80,11 @@ void eLabel::setFont(gFont *font)
event(evtChangedFont);
}
+gFont* eLabel::getFont()
+{
+ return m_font;
+}
+
void eLabel::setVAlign(int align)
{
m_valign = align;
diff --git a/lib/gui/elabel.h b/lib/gui/elabel.h
index 185f7c24..f3d280ae 100644
--- a/lib/gui/elabel.h
+++ b/lib/gui/elabel.h
@@ -9,7 +9,8 @@ public:
eLabel(eWidget *parent);
void setText(const std::string &string);
void setFont(gFont *font);
-
+ gFont* eLabel::getFont();
+
enum
{
alignLeft,
diff --git a/lib/python/enigma_python.i b/lib/python/enigma_python.i
index be71831c..7aa90812 100644
--- a/lib/python/enigma_python.i
+++ b/lib/python/enigma_python.i
@@ -43,9 +43,8 @@ is usually caused by not marking PSignals as immutable.
#include <lib/service/iservice.h>
#include <lib/service/service.h>
#include <lib/service/event.h>
-
+#include <lib/gdi/font.h>
#include <lib/gdi/gpixmap.h>
-
#include <lib/gui/ewidget.h>
#include <lib/gui/elabel.h>
#include <lib/gui/einput.h>
@@ -134,6 +133,7 @@ extern PSignal1<void,int> &keyPressedSignal();
%immutable eComponentScan::statusChanged;
%immutable pNavigation::m_event;
+%include <lib/gdi/font.h>
%include <lib/gdi/epoint.h>
%include <lib/gdi/erect.h>
%include <lib/gdi/esize.h>