#pragma once
#ifndef TW_SPLASH_INCLUDED
#define TW_SPLASH_INCLUDED
//#include "tfilepath.h"
//#include "tthread.h"
#include "traster.h"
#undef DVAPI
#undef DVVAR
#ifdef TWIN_EXPORTS
#define DVAPI DV_EXPORT_API
#define DVVAR DV_EXPORT_VAR
#else
#define DVAPI DV_IMPORT_API
#define DVVAR DV_IMPORT_VAR
#endif
class TFilePath;
class DVAPI TSplashWindow
{
protected:
class TSplashWindowImp;
TSplashWindowImp *m_imp;
//TThread::Executor m_thrExecutor;
//TRasterP m_raster;
protected:
TSplashWindow(TRaster32P splash_image, unsigned int timeout_msec);
TSplashWindow(const TFilePath &splash_image, unsigned int timeout_msec);
public:
virtual ~TSplashWindow();
void close();
static TSplashWindow *create(TRaster32P splash_image, unsigned int timeout_msec);
static TSplashWindow *create(const TFilePath &splash_image, unsigned int timeout_msec);
protected:
void createWindow(TRaster32P splash_image, unsigned int timeout_msec);
void createWindow(const TFilePath &splash_image, unsigned int timeout_msec);
private:
// cloning is forbidden
TSplashWindow(const TSplashWindow &);
TSplashWindow &operator=(const TSplashWindow &);
};
#endif