"*wireframe: False \n" \
"*suppressRotationAnimation: True\n" \
-# define refresh_cage 0
+# define free_cage 0
# define release_cage 0
-# define cage_handle_event 0
+# define cage_handle_event xlockmore_no_events
# include "xlockmore.h" /* from the xscreensaver distribution */
#else /* !STANDALONE */
# include "xlock.h" /* from the xlockmore distribution */
#if 0
#include "e_textures.h"
#else
-#include "xpm-ximage.h"
-#include "../images/wood.xpm"
+#include "ximage-loader.h"
+#include "images/gen/wood_png.h"
#endif
ENTRYPOINT ModeSpecOpt cage_opts =
{
cagestruct *cp = &cage[MI_SCREEN(mi)];
int i;
+ int y = 0;
- glViewport(0, 0, cp->WindW = (GLint) width, cp->WindH = (GLint) height);
+ if (width > height * 5) { /* tiny window: show middle */
+ height = width * 9/16;
+ y = -height/2;
+ }
+
+ glViewport(0, y, cp->WindW = (GLint) width, cp->WindH = (GLint) height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glFrustum(-1.0, 1.0, -1.0, 1.0, 5.0, 15.0);
check_gl_error("mipmapping");
#else
{
- XImage *img = xpm_to_ximage (mi->dpy,
- mi->xgwa.visual,
- mi->xgwa.colormap,
- wood_texture);
+ XImage *img = image_data_to_ximage (mi->dpy, mi->xgwa.visual,
+ wood_png, sizeof(wood_png));
glTexImage2D (GL_TEXTURE_2D, 0, GL_RGBA,
img->width, img->height, 0,
- GL_RGBA,
- /* GL_UNSIGNED_BYTE, */
- GL_UNSIGNED_INT_8_8_8_8_REV,
- img->data);
+ GL_RGBA, GL_UNSIGNED_BYTE, img->data);
check_gl_error("texture");
XDestroyImage (img);
}
{
cagestruct *cp;
- MI_INIT (mi, cage, NULL);
+ MI_INIT (mi, cage);
cp = &cage[MI_SCREEN(mi)];
cp->step = NRAND(90);