1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
#ifndef assai_H
#define assai_H
#include <QApplication>
#include <QWidget>
#include <SDL/SDL.h>
#undef main
#include <vector>
#include <cstdlib>
class SDLWidget : public QWidget
{
Q_OBJECT
public:
SDLWidget()
{
resize(320, 200);
char windowid[64];
sprintf(windowid, "SDL_WINDOWID=0x%lx", reinterpret_cast<qlonglong>(winId()));
SDL_putenv(windowid);
SDL_Init(SDL_INIT_VIDEO);
screen = SDL_SetVideoMode(width(), height(), 32, SDL_SWSURFACE);
windowInitialized = true;
image = SDL_LoadBMP("1.bmp");
posImg.x = 0;
posImg.y = 0;
SDL_BlitSurface(image, NULL, screen, &posImg);
SDL_Flip(screen);
}
virtual ~SDLWidget()
{
SDL_FreeSurface(image);
SDL_Quit();
}
private:
bool windowInitialized;
SDL_Surface *screen;
SDL_Surface *image;
SDL_Rect posImg;
};
#endif |