X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2FTexture.cc;h=75283a918c7c9113fa6f814274bfd2609fec0e86;hb=87e63d53af67d5ea98f55a27007663d4c9c8fc6c;hp=caab82e83f2c87f12090da18145e129b3c9e863d;hpb=1775e867c408bbea2b7f197c0c40b26e586e9ef1;p=chaz%2Fopenbox diff --git a/src/Texture.cc b/src/Texture.cc index caab82e8..75283a91 100644 --- a/src/Texture.cc +++ b/src/Texture.cc @@ -46,14 +46,14 @@ using std::string; BTexture::BTexture(const BaseDisplay * const _display, unsigned int _screen, BImageControl* _ctrl) : c(_display, _screen), ct(_display, _screen), - lc(_display, _screen), sc(_display, _screen), t(0), + lc(_display, _screen), sc(_display, _screen), bc(_display, _screen), t(0), dpy(_display), ctrl(_ctrl), scrn(_screen) { } BTexture::BTexture(const string &d, const BaseDisplay * const _display, unsigned int _screen, BImageControl* _ctrl) : c(_display, _screen), ct(_display, _screen), - lc(_display, _screen), sc(_display, _screen), t(0), + lc(_display, _screen), sc(_display, _screen), bc(_display, _screen), t(0), dpy(_display), ctrl(_ctrl), scrn(_screen) { setDescription(d); } @@ -116,8 +116,6 @@ void BTexture::setDescription(const string &d) { addTexture(BTexture::PipeCross); else if (descr.find("elliptic") != string::npos) addTexture(BTexture::Elliptic); - else if (descr.find("diagonal") != string::npos) - addTexture(BTexture::Diagonal); else if (descr.find("horizontal") != string::npos) addTexture(BTexture::Horizontal); else if (descr.find("vertical") != string::npos) @@ -128,16 +126,17 @@ void BTexture::setDescription(const string &d) { addTexture(BTexture::Solid); } - if (descr.find("raised") != string::npos) - addTexture(BTexture::Raised); - else if (descr.find("sunken") != string::npos) + if (descr.find("sunken") != string::npos) addTexture(BTexture::Sunken); else if (descr.find("flat") != string::npos) addTexture(BTexture::Flat); else addTexture(BTexture::Raised); - if (! (texture() & BTexture::Flat)) { + if (texture() & BTexture::Flat) { + if (descr.find("border") != string::npos) + addTexture(BTexture::Border); + } else { if (descr.find("bevel2") != string::npos) addTexture(BTexture::Bevel2); else @@ -162,6 +161,7 @@ void BTexture::setDisplay(const BaseDisplay * const _display, ct.setDisplay(_display, _screen); lc.setDisplay(_display, _screen); sc.setDisplay(_display, _screen); + bc.setDisplay(_display, _screen); } @@ -170,6 +170,7 @@ BTexture& BTexture::operator=(const BTexture &tt) { ct = tt.ct; lc = tt.lc; sc = tt.sc; + bc = tt.bc; descr = tt.descr; t = tt.t; dpy = tt.dpy; @@ -183,6 +184,7 @@ BTexture& BTexture::operator=(const BTexture &tt) { Pixmap BTexture::render(const unsigned int width, const unsigned int height, const Pixmap old) { assert(display() != 0); + assert(texture() != BTexture::NoTexture); if (texture() == (BTexture::Flat | BTexture::Solid)) return None;