diff options
Diffstat (limited to 'src/menu/background_image.cpp')
-rw-r--r-- | src/menu/background_image.cpp | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/src/menu/background_image.cpp b/src/menu/background_image.cpp index bb398304..451587f7 100644 --- a/src/menu/background_image.cpp +++ b/src/menu/background_image.cpp @@ -30,7 +30,7 @@ namespace usdx { BackgroundImage::BackgroundImage(const DrawableControl &control, boost::filesystem::wpath filename) : - Background(control) + Background(control), texture(NULL), size(0,0) { texture = new Disposer<Texture>(new Texture(filename)); } @@ -42,18 +42,24 @@ namespace usdx texture = NULL; } } + + void BackgroundImage::updateVertices() { + vertices[0] = 0; + vertices[1] = get_parent().get_height(); + vertices[2] = get_parent().get_width(); + vertices[3] = get_parent().get_height(); + vertices[4] = get_parent().get_width(); + vertices[5] = 0; + vertices[6] = 0; + vertices[7] = 0; } void BackgroundImage::draw(void) { - this->vertices[0] = 0; - this->vertices[1] = get_parent().get_height(); - this->vertices[2] = get_parent().get_width(); - this->vertices[3] = get_parent().get_height(); - this->vertices[4] = get_parent().get_width(); - this->vertices[5] = 0; - this->vertices[6] = 0; - this->vertices[7] = 0; + if (size != get_parent().get_size()) { + this->updateVertices(); + size = get_parent().get_size(); + } Activator<Texture> t(texture->get()); |