The fltk::MultiBrowser class is a subclass of fltk::Browser which lets the user select any set of the lines. Clicking on an item selects only that one. Ctrl+click toggles items on/off. Shift+drag (or shift+arrows) will extend selections. Normally the callback is done when any item changes it's state, but you can change this with when().
The methods on fltk::Browser for controlling the "value" control which item has the keyboard focus in a multi-browser. You must use the "select" methods described here to change what items are turned on: