class Fl_Button : public Fl_Object

Buttons generate callbacks when they are clicked by the user. You control exactly when and how by changing the values for type() and when().

Buttons can also generate callbacks in response to FL_SHORTCUT events. If the label() has an '&' character then the next character is a shortcut. If that letter is typed the button will trigger. FL ignores case and does not care if shift or alt are held down. Normally, if you have an input field in the same window, the user will have to hold down the Alt key so that the input field does not eat the event first as an FL_KEYBOARD event. You can also require certain combinations of shift keys, match F keys or control keys, or avoid displaying the underscore, by setting the shortcut() string.

There are some subclasses which draw the button differently:

Fl_Button(int,int,int,int,const char * = 0);

uchar type() const;
void type(uchar);

uchar when() const;
void when(uchar);

char value() const;

int value(int);
int set();
int clear();

void setonly();

Fl_Boxtype down_box() const;
void down_box(Fl_Boxtype);

uchar down_color() const;
void down_color(uchar c);

const char *shortcut() const;
void shortcut(const char *);