]>
Dogcows Code - chaz/openbox/blob - otk/button.cc
5 OtkButton::OtkButton(OtkWidget
*parent
)
6 : OtkFocusLabel(parent
), _pressed(false), _pressed_focus_tx(0),
7 _pressed_unfocus_tx(0), _unpr_focus_tx(0), _unpr_unfocus_tx(0)
9 setTexture(getStyle()->getButtonFocus());
10 setUnfocusTexture(getStyle()->getButtonUnfocus());
11 _pressed_focus_tx
= getStyle()->getButtonPressedFocus();
12 _pressed_unfocus_tx
= getStyle()->getButtonPressedUnfocus();
15 OtkButton::~OtkButton()
17 if (_pressed_focus_tx
) delete _pressed_focus_tx
;
18 if (_pressed_unfocus_tx
) delete _pressed_unfocus_tx
;
21 void OtkButton::press(unsigned int mouse_button
)
25 if (_pressed_focus_tx
)
26 OtkFocusWidget::setTexture(_pressed_focus_tx
);
27 if (_pressed_unfocus_tx
)
28 OtkFocusWidget::setUnfocusTexture(_pressed_unfocus_tx
);
30 _mouse_button
= mouse_button
;
33 void OtkButton::release(unsigned int mouse_button
)
35 if (_mouse_button
!= mouse_button
) return; // wrong button
37 OtkFocusWidget::setTexture(_unpr_focus_tx
);
38 OtkFocusWidget::setUnfocusTexture(_unpr_unfocus_tx
);
42 void OtkButton::setTexture(BTexture
*texture
)
44 OtkFocusWidget::setTexture(texture
);
45 _unpr_focus_tx
= texture
;
48 void OtkButton::setUnfocusTexture(BTexture
*texture
)
50 OtkFocusWidget::setUnfocusTexture(texture
);
51 _unpr_unfocus_tx
= texture
;
54 int OtkButton::buttonPressHandler(const XButtonEvent
&e
)
58 return OtkFocusWidget::buttonPressHandler(e
);
61 int OtkButton::buttonReleaseHandler(const XButtonEvent
&e
)
65 return OtkFocusWidget::buttonReleaseHandler(e
);
This page took 0.041105 seconds and 4 git commands to generate.