Texture::Texture(const std::string &filename, const Color &colorKey) { if (filename.empty()) return; assert(renderer); _surface = {filename, colorKey}; createFromSurface(); }
Texture::Texture(TTF_Font *font, const std::string &text, const Color &color) { assert(renderer); if (!font) return; _surface = {font, text, color}; createFromSurface(); }
ATexture::ATexture(SDL_Surface *sourceSurface) { mTexture = NULL; width = 0; height = 0; createFromSurface(sourceSurface); }
bool Cursor::loadFromFile(const std::string &path, const Point &p) { Surface surface; if (!surface.loadFromFile(path)) { Error() << "could not load cursor image"; } else { return createFromSurface(surface, p); } return false; }
bool Texture::createImpl() { if (_fileSource.compare("")) { auto sdlSurface = IMG_Load(_fileSource.c_str()); sdlSurface = (sdlSurface != NULL) ? sdlSurface : nullptr; if (sdlSurface == nullptr) return false; _sdlSurface = sdlSurface; } return createFromSurface(); }
Texture::Texture(const Surface &surface) { _surface = surface; createFromSurface(); }