summaryrefslogtreecommitdiff
path: root/packages/sdlpango
diff options
context:
space:
mode:
authorwoglinde <heinold@inf.fu-berlin.de>2009-01-10 02:31:39 +0100
committerwoglinde <heinold@inf.fu-berlin.de>2009-01-10 02:31:39 +0100
commitb022dab4fcd59cac2225b6bdd76386e1e548ab22 (patch)
tree5a57fa505b05cda707e269bd6165a24b331c3905 /packages/sdlpango
parentb527d8f723c98c77f2f5c5358062e5348493d767 (diff)
sdlpango: new package sdlpango
* recipe was provided by gnutoo * closes bug 4966
Diffstat (limited to 'packages/sdlpango')
-rw-r--r--packages/sdlpango/files/SDL_Pango-0.1.2-API-adds.patch116
-rw-r--r--packages/sdlpango/sdlpango_0.1.2.bb18
2 files changed, 134 insertions, 0 deletions
diff --git a/packages/sdlpango/files/SDL_Pango-0.1.2-API-adds.patch b/packages/sdlpango/files/SDL_Pango-0.1.2-API-adds.patch
new file mode 100644
index 0000000000..1535a56732
--- /dev/null
+++ b/packages/sdlpango/files/SDL_Pango-0.1.2-API-adds.patch
@@ -0,0 +1,116 @@
+--- src/SDL_Pango.c 2004-12-10 10:06:33.000000000 +0100
++++ src/SDL_Pango.c 2006-09-24 22:46:24.000000000 +0200
+@@ -723,13 +723,8 @@
+ SDL_UnlockSurface(surface);
+ }
+
+-/*!
+- Create a context which contains Pango objects.
+-
+- @return A pointer to the context as a SDLPango_Context*.
+-*/
+ SDLPango_Context*
+-SDLPango_CreateContext()
++SDLPango_CreateContext_GivenFontDesc(const char* font_desc)
+ {
+ SDLPango_Context *context = g_malloc(sizeof(SDLPango_Context));
+ G_CONST_RETURN char *charset;
+@@ -743,8 +738,7 @@
+ pango_context_set_language (context->context, pango_language_from_string (charset));
+ pango_context_set_base_dir (context->context, PANGO_DIRECTION_LTR);
+
+- context->font_desc = pango_font_description_from_string(
+- MAKE_FONT_NAME (DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE));
++ context->font_desc = pango_font_description_from_string(font_desc);
+
+ context->layout = pango_layout_new (context->context);
+
+@@ -762,6 +756,17 @@
+ }
+
+ /*!
++ Create a context which contains Pango objects.
++
++ @return A pointer to the context as a SDLPango_Context*.
++*/
++SDLPango_Context*
++SDLPango_CreateContext()
++{
++ SDLPango_CreateContext_GivenFontDesc(MAKE_FONT_NAME(DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE));
++}
++
++/*!
+ Free a context.
+
+ @param *context [i/o] Context to be free
+@@ -1053,6 +1058,20 @@
+ pango_layout_set_font_description (context->layout, context->font_desc);
+ }
+
++void
++SDLPango_SetText_GivenAlignment(
++ SDLPango_Context *context,
++ const char *text,
++ int length,
++ SDLPango_Alignment alignment)
++{
++ pango_layout_set_attributes(context->layout, NULL);
++ pango_layout_set_text (context->layout, text, length);
++ pango_layout_set_auto_dir (context->layout, TRUE);
++ pango_layout_set_alignment (context->layout, alignment);
++ pango_layout_set_font_description (context->layout, context->font_desc);
++}
++
+ /*!
+ Set plain text to context.
+ Text must be utf-8.
+@@ -1067,11 +1086,7 @@
+ const char *text,
+ int length)
+ {
+- pango_layout_set_attributes(context->layout, NULL);
+- pango_layout_set_text (context->layout, text, length);
+- pango_layout_set_auto_dir (context->layout, TRUE);
+- pango_layout_set_alignment (context->layout, PANGO_ALIGN_LEFT);
+- pango_layout_set_font_description (context->layout, context->font_desc);
++ SDLPango_SetText_GivenAlignment(context, text, length, SDLPANGO_ALIGN_LEFT);
+ }
+
+ /*!
+--- src/SDL_Pango.h 2004-12-10 10:06:33.000000000 +0100
++++ src/SDL_Pango.h 2006-09-24 22:46:01.000000000 +0200
+@@ -109,12 +109,20 @@
+ SDLPANGO_DIRECTION_NEUTRAL /*! Neutral */
+ } SDLPango_Direction;
+
+-
++/*!
++ Specifies alignment of text. See Pango reference for detail
++*/
++typedef enum {
++ SDLPANGO_ALIGN_LEFT,
++ SDLPANGO_ALIGN_CENTER,
++ SDLPANGO_ALIGN_RIGHT
++} SDLPango_Alignment;
+
+ extern DECLSPEC int SDLCALL SDLPango_Init();
+
+ extern DECLSPEC int SDLCALL SDLPango_WasInit();
+
++extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext_GivenFontDesc(const char* font_desc);
+ extern DECLSPEC SDLPango_Context* SDLCALL SDLPango_CreateContext();
+
+ extern DECLSPEC void SDLCALL SDLPango_FreeContext(
+@@ -157,6 +165,12 @@
+ const char *markup,
+ int length);
+
++extern DECLSPEC void SDLCALL SDLPango_SetText_GivenAlignment(
++ SDLPango_Context *context,
++ const char *text,
++ int length,
++ SDLPango_Alignment alignment);
++
+ extern DECLSPEC void SDLCALL SDLPango_SetText(
+ SDLPango_Context *context,
+ const char *markup,
diff --git a/packages/sdlpango/sdlpango_0.1.2.bb b/packages/sdlpango/sdlpango_0.1.2.bb
new file mode 100644
index 0000000000..8a0a3c6694
--- /dev/null
+++ b/packages/sdlpango/sdlpango_0.1.2.bb
@@ -0,0 +1,18 @@
+DESCRIPTION = "connect the text rendering engine of GNOME to SDL"
+HOMEPAGE = "http://sdlpango.sourceforge.net/"
+SECTION = "libs"
+LICENSE = "GPL"
+DEPENDS = "virtual/libsdl pango"
+PR="r0"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/sdlpango/SDL_Pango-${PV}.tar.gz \
+ file://SDL_Pango-0.1.2-API-adds.patch;patch=1;pnum=0 \
+ "
+
+inherit autotools
+
+S = "${WORKDIR}/SDL_Pango-${PV}"
+
+do_stage() {
+ autotools_stage_all
+}