I cam across a construct in the FXRuby examples which I've not seen before.. ..... lots of constants..(about 47 in total I believe) ID_INSERT_FILE, ID_EXTRACT_FILE, ID_WHEELADJUST, ID_LAST = enum(FXMainWindow::ID_LAST, 47) and I'm assuming this generates a unique number for each piece of text, which is subsequently used in the rest of the code. How does it work? Graham