Make use of window.stuck.pressed.pixmap

This commit is contained in:
Vladimir A. Pavlov 2012-12-07 23:10:23 +03:00 committed by Mathias Gumz
parent 36489e4a17
commit c8d0945a8f
2 changed files with 4 additions and 1 deletions

View file

@ -151,6 +151,8 @@ Pixmap WinButton::getPressedPixmap() const {
case MINIMIZE:
return m_pressed_theme->iconifyPixmap().pixmap().drawable();
case STICK:
if (m_listen_to.isStuck())
return m_pressed_theme->stuckPixmap().pixmap().drawable();
return m_pressed_theme->stickPixmap().pixmap().drawable();
case CLOSE:
return m_pressed_theme->closePixmap().pixmap().drawable();
@ -308,7 +310,7 @@ void WinButton::updateAll() {
setBackgroundPixmap(my_pm);
// incorrect, pressed_pixmap is stateful in shade, so we'll do oneoff for now
if (m_type == SHADE) {
if (m_type == SHADE || m_type == STICK) {
Pixmap p_pm = getPressedPixmap();
if (p_pm != None)
setPressedPixmap(p_pm);

View file

@ -51,6 +51,7 @@ public:
const FbTk::PixmapWithMask &stickPixmap() const { return *m_stick_pm; }
FbTk::PixmapWithMask &stickPixmap() { return *m_stick_pm; }
const FbTk::PixmapWithMask &stuckPixmap() const { return *m_stuck_pm; }
FbTk::PixmapWithMask &stuckPixmap() { return *m_stuck_pm; }
const FbTk::PixmapWithMask &shadePixmap() const { return *m_shade_pm; }