#ifndef COMET_BUTTON_H #define COMET_BUTTON_H #include #include // TODO: Generic button shapes/actions typedef struct Button Button; typedef void (* ButtonAction)(Button *btn); typedef struct { double r, g, b, a; } Color; struct Button { ButtonAction action; gpointer action_data; char *text; PangoAlignment align; Color background; Color foreground; Color stroke; }; Button *button_create(const char *text, PangoAlignment align); void button_set_colors(Button *btn, Color background, Color foreground, Color stroke); void button_set_action(Button *btn, ButtonAction action, gpointer data); void button_destroy(Button *btn); #endif // vim: ts=4 sw=4 et