X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fbutton.cc;h=f068d5a5edd03a38cde7a3432df9a7cb24c73b03;hb=213df2814b002da2c5f324210d44559f9d651e21;hp=8d63ed0c3b71a6268b353904d31040a668907ddd;hpb=99cd843fc6dc7a7f55b6c90fd1162f233853aad2;p=chaz%2Fopenbox diff --git a/otk/button.cc b/otk/button.cc index 8d63ed0c..f068d5a5 100644 --- a/otk/button.cc +++ b/otk/button.cc @@ -1,15 +1,14 @@ // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- -#ifdef HAVE_CONFIG_H -# include "../config.h" -#endif +#include "config.h" #include "button.hh" namespace otk { Button::Button(Widget *parent) - : Label(parent), _default(false), _pressed(false) + : Label(parent), + _pressed(false) { setHorizontalJustify(RenderStyle::CenterJustify); setVerticalJustify(RenderStyle::CenterJustify); @@ -39,6 +38,8 @@ void Button::release(unsigned int mouse_button) styleChanged(*RenderStyle::style(screen())); refresh(); + + clickHandler(_mouse_button); } void Button::buttonPressHandler(const XButtonEvent &e) @@ -53,16 +54,9 @@ void Button::buttonReleaseHandler(const XButtonEvent &e) release(e.button); } -void Button::setDefault(bool d) -{ - _default = d; - styleChanged(*RenderStyle::style(screen())); - refresh(); -} - void Button::styleChanged(const RenderStyle &style) { - if (_default) { + if (isHighlighted()) { if (_pressed) _texture = style.buttonPressFocusBackground(); else @@ -75,7 +69,7 @@ void Button::styleChanged(const RenderStyle &style) _texture = style.buttonUnpressUnfocusBackground(); _forecolor = style.buttonUnfocusColor(); } - Widget::styleChanged(style); + refresh(); } }