Approximate Progress List (Incomplete) Overall estimate: ???% Done: FLTK.Images FLTK.Images.Bitmaps FLTK.Images.Bitmaps.XBM FLTK.Images.RGB FLTK.Images.RGB.BMP FLTK.Images.RGB.JPEG FLTK.Images.RGB.PNG FLTK.Images.RGB.PNM FLTK.Widgets.Boxes FLTK.Widgets.Buttons.Enter FLTK.Widgets.Buttons.Light FLTK.Widgets.Buttons.Light.Check FLTK.Widgets.Buttons.Light.Radio FLTK.Widgets.Buttons.Light.Round FLTK.Widgets.Buttons.Light.Round.Radio FLTK.Widgets.Buttons.Radio FLTK.Widgets.Buttons.Repeat FLTK.Widgets.Buttons.Toggle FLTK.Widgets.Clocks FLTK.Widgets.Clocks.Updated FLTK.Widgets.Clocks.Updated.Round FLTK.Widgets.Groups.Scrolls FLTK.Widgets.Groups.Tabbed FLTK.Widgets.Groups.Text_Displays.Text_Editors FLTK.Widgets.Groups.Windows.Double FLTK.Widgets.Groups.Windows.Single FLTK.Widgets.Groups.Windows.Single.Menu FLTK.Widgets.Groups.Wizards FLTK.Widgets.Inputs.Float FLTK.Widgets.Inputs.Integer FLTK.Widgets.Inputs.Multiline FLTK.Widgets.Inputs.Outputs FLTK.Widgets.Inputs.Outputs.Multiline FLTK.Widgets.Inputs.Secret FLTK.Widgets.Menus.Menu_Bars FLTK.Widgets.Progress_Bars FLTK.Widgets.Valuators.Adjusters FLTK.Widgets.Valuators.Counters FLTK.Widgets.Valuators.Counters.Simple FLTK.Widgets.Valuators.Dials FLTK.Widgets.Valuators.Dials.Fill FLTK.Widgets.Valuators.Dials.Line FLTK.Widgets.Valuators.Rollers FLTK.Widgets.Valuators.Sliders.Fill FLTK.Widgets.Valuators.Sliders.Hor_Fill FLTK.Widgets.Valuators.Sliders.Hor_Nice FLTK.Widgets.Valuators.Sliders.Horizontal FLTK.Widgets.Valuators.Sliders.Nice Partially Done: FLTK FLTK.Dialogs FLTK.Menu_Items FLTK.Text_Buffers; FLTK.Widgets FLTK.Widgets.Buttons (70%) FLTK.Widgets.Groups FLTK.Widgets.Groups.Text_Displays (94%) FLTK.Widgets.Groups.Windows FLTK.Widgets.Inputs FLTK.Widgets.Inputs.File FLTK.Widgets.Menus FLTK.Widgets.Menus.Menu_Buttons FLTK.Widgets.Valuators FLTK.Widgets.Valuators.Sliders To-Do: FL_Pixmap FL_GIF_Image FL_XPM_Image FL_Shared_Image FL_Tiled_Image FL_Chart FL_Browser FL_Check_Browser FL_File_Browser FL_Hold_Browser FL_Multi_Browser FL_Select_Browser FL_Color_Chooser FL_Help_View FL_Input_Choice FL_Pack FL_Spinner FL_Table FL_Table_Row FL_Tile FL_Tree FL_Scrollbar FL_Value_Slider FL_Hor_Value_Slider Never: FL_FormsBitmap FL_FormsPixmap FL_FormsText FL_Free FL_Sys_Menu_Bar FL_Positioner FL_Timer A note on callbacks and overriding: As part of its normal operation, FLTK calls a Widget's Draw and Handle methods from its main loop to deal with draw and input events. Since it's another part of the program that is invoking them, even if it's a part the programmer has no direct control over, this binding is set up so that if you override Draw or Handle, the behaviour will change. On the other hand, something like the Push method in tabbed groups is usually invoked from within that same tabbed group widget's Handle method. Therefore, keeping consistency with Ada semantics, overriding the Push method will NOT change the behaviour of the corresponding Handle method. You must also override Handle.