X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=hacks%2Fglx%2Fglsnake.c;h=2616ad273be4ad16d73e885739f19aa33f687ea2;hb=refs%2Fheads%2Fmaster2;hp=4d13a93243a70af5d5318c82555cec413eaebbbf;hpb=f8cf5ac7b2f53510f80a0eaf286a25298be17bfe;p=xscreensaver diff --git a/hacks/glx/glsnake.c b/hacks/glx/glsnake.c index 4d13a932..2616ad27 100644 --- a/hacks/glx/glsnake.c +++ b/hacks/glx/glsnake.c @@ -28,13 +28,16 @@ #ifdef HAVE_GLUT # include #else -# ifdef HAVE_COCOA +# ifdef HAVE_JWXYZ # define HAVE_GETTIMEOFDAY # else # include # include # endif #endif +# ifdef HAVE_ANDROID +# include +#endif #ifdef HAVE_JWZGLES # include "jwzgles.h" @@ -149,15 +152,15 @@ static GLfloat angvel; #define DEFAULTS "*delay: 30000 \n" \ "*count: 30 \n" \ "*showFPS: False \n" \ - "*labelfont: -*-helvetica-medium-r-normal-*-180-*\n" \ - + "*suppressRotationAnimation: True\n" \ + "*labelfont: -*-helvetica-medium-r-normal-*-*-180-*-*-*-*-*-*\n" \ #undef countof #define countof(x) (sizeof((x))/sizeof((*x))) #include "xlockmore.h" -#include "glxfonts.h" +#include "texfont.h" static XrmOptionDescRec opts[] = { { "-explode", ".explode", XrmoptionSepArg, DEF_EXPLODE }, @@ -201,12 +204,7 @@ struct model_s { struct glsnake_cfg { #ifndef HAVE_GLUT GLXContext * glx_context; -# ifdef HAVE_GLBITMAP - XFontStruct * font; - GLuint font_list; -# else - texture_font_data *font_data; -# endif + texture_font_data *font_data; #else /* font list number */ int font; @@ -1502,11 +1500,7 @@ ModeInfo * mi /* set up a font for the labels */ #ifndef HAVE_GLUT if (titles) -# ifdef HAVE_GLBITMAP - load_font(mi->dpy, "labelfont", &bp->font, &bp->font_list); -# else - bp->font_data = load_texture_font (mi->dpy, "labelFont"); -# endif + bp->font_data = load_texture_font (mi->dpy, "labelfont"); #endif /* build a solid display list */ @@ -1742,15 +1736,9 @@ static void draw_title( glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, s[i++]); } #else - print_gl_string(mi->dpy, -# ifdef HAVE_GLBITMAP - bp->font, bp->font_list, -# else - bp->font_data, -# endif - mi->xgwa.width, mi->xgwa.height, - 10.0, (float) mi->xgwa.height - 10.0, - s, False); + print_texture_label (mi->dpy, bp->font_data, + mi->xgwa.width, mi->xgwa.height, + 1, s); #endif } glPopMatrix(); @@ -2279,6 +2267,15 @@ ENTRYPOINT void glsnake_display( glRotatef(yspin, 0.0, 1.0, 0.0); glRotatef(zspin, 0.0, 0.0, 1.0); +# ifdef HAVE_MOBILE /* Keep it the same relative size when rotated. */ + { + GLfloat h = MI_HEIGHT(mi) / (GLfloat) MI_WIDTH(mi); + int o = (int) current_device_rotation(); + if (o != 0 && o != 180 && o != -180) + glScalef (1/h, 1/h, 1/h); + } +# endif + /* now draw each node along the snake -- this is quite ugly :p */ mi->polygon_count = 0; for (i = 0; i < NODE_COUNT; i++) {