Exemple #1
0
DynamicBitmap::DynamicBitmap(RenderObjectPtr<RenderObject> parentPtr, uint width, uint height) :
	Bitmap(parentPtr, TYPE_DYNAMICBITMAP) {
	// Das BS_Bitmap konnte nicht erzeugt werden, daher muss an dieser Stelle abgebrochen werden.
	if (!_initSuccess) return;

	_initSuccess = createRenderedImage(width, height);
}
Exemple #2
0
DynamicBitmap::DynamicBitmap(RenderObjectPtr<RenderObject> parentPtr, uint width, uint height) :
	Bitmap(parentPtr, TYPE_DYNAMICBITMAP) {
	// The BS_BITMAP could not be created, so stop.
	if (!_initSuccess)
		return;

	_initSuccess = createRenderedImage(width, height);
}
Exemple #3
0
bool DynamicBitmap::unpersist(InputPersistenceBlock &reader) {
	bool result = true;

	result &= Bitmap::unpersist(reader);

	// Ein RenderedImage mit den gespeicherten Maßen erstellen.
	result &= createRenderedImage(_width, _height);

	// Bilddaten werden nicht gespeichert (s.o.).
	BS_LOG_WARNINGLN("Unpersisting a BS_DynamicBitmap. Bitmap contents are missing.");

	// Bild mit durchsichtigen Bilddaten initialisieren.
	byte *transparentImageData = (byte *)calloc(_width * _height * 4, 1);
	_image->setContent(transparentImageData, _width * _height);
	free(transparentImageData);

	result &= RenderObject::unpersistChildren(reader);

	return reader.isGood() && result;
}
Exemple #4
0
bool DynamicBitmap::unpersist(InputPersistenceBlock &reader) {
#if 0
	bool result = true;

	result &= Bitmap::unpersist(reader);
	result &= createRenderedImage(_width, _height);

	warning("Unpersisting a BS_DynamicBitmap. Bitmap contents are missing.");

	// Initialize a transparent image.
	byte *transparentImageData = (byte *)calloc(_width * _height * 4, 1);
	_image->setContent(transparentImageData, _width * _height);
	free(transparentImageData);

	result &= RenderObject::unpersistChildren(reader);

	return reader.isGood() && result;
#endif

	error("Request to unpersist a dynamic bitmap (video) - probably a corrupted saved game or a bug");
}