- int changed = ui_colourbutton( box, k_ui_bg, 0, 0 ) == k_ui_button_click;
- if( changed )
- *data = (*data) ^ 0x1;
+ if( state == k_ui_button_holding_inside )
+ {
+ ui_fill( box, ui_colour(k_ui_bg+2) );
+ ui_outline( box, 1, ui_colour(k_ui_fg), 0 );
+ }
+ else if( state == k_ui_button_holding_outside )
+ {
+ ui_fill( box, ui_colour(k_ui_bg) );
+ ui_outline( box, 1, ui_colour(k_ui_fg), 0 );
+ }
+ else if( state == k_ui_button_hover )
+ {
+ ui_fill( box, ui_colour(k_ui_bg) );
+ ui_outline( box, 1, ui_colour(k_ui_fg), 0 );
+ }
+ else
+ {
+ ui_fill( box, ui_colour(k_ui_bg) );
+ ui_outline( box, 1, ui_colour(k_ui_bg+4), 0 );
+ }
+
+ bool changed = (state == k_ui_button_click);