+ if (gi->type == GD_TYPE_RADIO_BUTTON)
+ {
+ struct GadgetInfo *rgi = gadget_list_first_entry;
+
+ while (rgi)
+ {
+ if (rgi->mapped &&
+ rgi->type == GD_TYPE_RADIO_BUTTON &&
+ rgi->radio_nr == gi->radio_nr &&
+ rgi != gi)
+ {
+ rgi->radio_pressed = FALSE;
+ DrawGadget(rgi, DG_UNPRESSED, DG_DIRECT);
+ }
+
+ rgi = rgi->next;
+ }
+
+ gi->radio_pressed = TRUE;
+ }
+
+ DrawGadget(gi, DG_PRESSED, DG_DIRECT);