]>
Dogcows Code - chaz/openbox/blob - otk/button.cc
1e128784f91aa4811a2efb3b3956cbce03c58e87
1 // -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
4 # include "../config.h"
11 Button::Button(Widget
*parent
)
15 setHighlighted(false);
16 setHorizontalJustify(RenderStyle::CenterJustify
);
17 setVerticalJustify(RenderStyle::CenterJustify
);
18 styleChanged(*RenderStyle::style(screen()));
25 void Button::press(unsigned int mouse_button
)
30 _mouse_button
= mouse_button
;
32 styleChanged(*RenderStyle::style(screen()));
36 void Button::release(unsigned int mouse_button
)
38 if (!_pressed
|| _mouse_button
!= mouse_button
) return; // wrong button
42 styleChanged(*RenderStyle::style(screen()));
46 void Button::buttonPressHandler(const XButtonEvent
&e
)
48 Widget::buttonPressHandler(e
);
52 void Button::buttonReleaseHandler(const XButtonEvent
&e
)
54 Widget::buttonReleaseHandler(e
);
58 void Button::styleChanged(const RenderStyle
&style
)
60 if (isHighlighted()) {
62 _texture
= style
.buttonPressFocusBackground();
64 _texture
= style
.buttonUnpressFocusBackground();
65 _forecolor
= style
.buttonFocusColor();
68 _texture
= style
.buttonPressUnfocusBackground();
70 _texture
= style
.buttonUnpressUnfocusBackground();
71 _forecolor
= style
.buttonUnfocusColor();
73 Widget::styleChanged(style
);
This page took 0.0351 seconds and 4 git commands to generate.