## class Fl_Multi_Browser

### Class Hierarchy

    Fl_Browser
       |
       +----Fl_Multi_Browser

### Include Files

    #include <FL/Fl_Multi_Browser.H>

### Description

The `Fl_Multi_Browser` class is a subclass of `Fl_Browser` which lets the user select any set of the lines. The user interface is Macintosh style: clicking an item turns off all the others and selects that one, dragging selects all the items the mouse moves over, and shift + click toggles the items. This is different then how forms did it. Normally the callback is done when the user releases the mouse, but you can change this with `when()`.

See `Fl_Browser` for methods to add and remove lines from the browser.

### Methods

- Fl_Multi_Browser
- ~Fl_Multi_Browser
- deselect
- select
- value

#### Fl_Multi_Browser::Fl_Multi_Browser(int x, int y, int w, int h, const char *label = 0)

Creates a new `Fl_Multi_Browser` widget using the given position, size, and label string. The default boxtype is `FL_DOWN_BOX` .

#### virtual Fl_Multi_Browser::~Fl_Multi_Browser()

The destructor also deletes all the items in the list.

#### int Fl_Browser::deselect()

Deselects all lines.

#### int Fl_Browser::select(int line_no,int v=1)
int Fl_Browser::selected(int line_no) const

The first version of this call selects (v=1) or deselects (v=0) a line in the browser. The second call returns the current selection state of a line.

#### void Fl_Browser::value(int)
int Fl_Browser::value() const

The first version of this call selects a single line. The second version returns the currently focused item, even if it is not selected. To find all selected items, call `Fl_Multi_Browser::selected()` for every item in question.