-/* glslideshow, Copyright (c) 2003-2012 Jamie Zawinski <jwz@jwz.org>
+/* glslideshow, Copyright (c) 2003-2014 Jamie Zawinski <jwz@jwz.org>
* Loads a sequence of images and smoothly pans around them; crossfades
* when loading new images.
*
"*showFPS: False \n" \
"*fpsSolid: True \n" \
"*useSHM: True \n" \
- "*titleFont: -*-helvetica-medium-r-normal-*-180-*\n" \
+ "*titleFont: -*-helvetica-medium-r-normal-*-*-180-*-*-*-*-*-*\n" \
"*desktopGrabber: xscreensaver-getimage -no-desktop %s\n" \
"*grabDesktopImages: False \n" \
"*chooseRandomImages: True \n"
# define DEF_MIPMAP "True"
#include "grab-ximage.h"
-#include "glxfonts.h"
+#include "texfont.h"
typedef struct {
double x, y, w, h;
Bool checked_fps_p; /* Whether we have checked for a low
frame rate. */
-# ifdef HAVE_GLBITMAP
- XFontStruct *xfont; /* for printing image file names */
- GLuint font_dlist;
-# else
- texture_font_data *font_data;
-# endif
+ texture_font_data *font_data; /* for printing image file names */
int sprite_id, image_id; /* debugging id counters */
if (do_titles &&
- img->title && *img->title)
+ img->title && *img->title &&
+ (sp->state == IN || sp->state == FULL))
{
- int x = 10;
- int y = mi->xgwa.height - 10;
- glColor4f (0, 0, 0, sp->opacity); /* cheap-assed dropshadow */
- print_gl_string (mi->dpy,
-# ifdef HAVE_GLBITMAP
- ss->xfont, ss->font_dlist,
-# else
- ss->font_data,
-# endif
- mi->xgwa.width, mi->xgwa.height, x, y,
- img->title, False);
- x++; y++;
glColor4f (1, 1, 1, sp->opacity);
- print_gl_string (mi->dpy,
-# ifdef HAVE_GLBITMAP
- ss->xfont, ss->font_dlist,
-# else
- ss->font_data,
-# endif
- mi->xgwa.width, mi->xgwa.height, x, y,
- img->title, False);
+ print_texture_label (mi->dpy, ss->font_data,
+ mi->xgwa.width, mi->xgwa.height,
+ 1, img->title);
}
}
glPopMatrix();
{
slideshow_state *ss = &sss[MI_SCREEN(mi)];
- if (event->xany.type == ButtonPress &&
- event->xbutton.button == Button1)
- {
- ss->change_now_p = True;
- return True;
- }
- else if (event->xany.type == KeyPress)
- {
- KeySym keysym;
- char c = 0;
- XLookupString (&event->xkey, &c, 1, &keysym, 0);
- if (c == ' ' || c == '\r' || c == '\n' || c == '\t')
- {
- ss->change_now_p = True;
- return True;
- }
- }
- else if (event->xany.type == Expose ||
+ if (event->xany.type == Expose ||
event->xany.type == GraphicsExpose ||
event->xany.type == VisibilityNotify)
{
fprintf (stderr, "%s: exposure\n", blurb());
return False;
}
+ else if (screenhack_event_helper (MI_DISPLAY(mi), MI_WINDOW(mi), event))
+ {
+ ss->change_now_p = True;
+ return True;
+ }
return False;
}
if (debug_p) glLineWidth (3);
-#ifdef HAVE_GLBITMAP
- load_font (mi->dpy, "titleFont", &ss->xfont, &ss->font_dlist);
-#else
- ss->font_data = load_texture_font (mi->dpy, "Font");
-#endif
+ ss->font_data = load_texture_font (mi->dpy, "titleFont");
if (debug_p)
hack_resources();