20 #ifndef _WIDGETS_ARDOUR_BUTTON_H_
21 #define _WIDGETS_ARDOUR_BUTTON_H_
50 IconRenderCallback = 0x100,
53 typedef void (* rendercallback_t) (cairo_t*, int, int, uint32_t,
void*);
66 OccasionalText = 0x04,
70 ExpandtoSquare = 0x40,
96 void set_text (
const std::string&,
bool markup =
false);
97 const std::string&
get_text ()
const {
return _text; }
120 std::shared_ptr<PBD::Controllable>
get_controllable() {
return binding_proxy.get_controllable(); }
140 unsigned int char_pixel_width() {
if (_char_pixel_width < 1) recalc_char_pixel_geometry() ;
return _char_pixel_width; }
141 unsigned int char_pixel_height() {
if (_char_pixel_height < 1) recalc_char_pixel_geometry() ;
return _char_pixel_height; }
142 float char_avg_pixel_width() {
if (_char_pixel_width < 1) recalc_char_pixel_geometry() ;
return _char_avg_pixel_width; }
145 void render (Cairo::RefPtr<Cairo::Context>
const&, cairo_rectangle_t*);