diff options
Diffstat (limited to 'src/gui/window.cpp')
-rw-r--r-- | src/gui/window.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/gui/window.cpp b/src/gui/window.cpp index ab37dae8..c24b50ab 100644 --- a/src/gui/window.cpp +++ b/src/gui/window.cpp @@ -73,6 +73,7 @@ Window::Window(const std::string& caption, bool modal, Window *parent): // Set GUI alpha level dBackground->setAlpha(guiAlpha); dBorders->setAlpha(guiAlpha); + config.addListener("guialpha", this); } Window::~Window() @@ -84,6 +85,7 @@ Window::~Window() //release_bitmap(dMid); //release_bitmap(dRight); + config.removeListener("guialpha", this); delete chrome; } @@ -196,3 +198,17 @@ void Window::mouseMotion(int mx, int my) setPosition(x, y); } } + +void Window::optionChanged(const std::string &name) +{ + if (name == "guialpha") + { + guiAlpha = config.getValue("guialpha", 0.8); + + if (dBackground->getAlpha() != guiAlpha) + { + dBackground->setAlpha(guiAlpha); + dBorders->setAlpha(guiAlpha); + } + } +} |