## 20.4.1 Functions Defined in Module `fl`

Module `fl` defines the following functions. For more information about what they do, see the description of the equivalent C function in the FORMS documentation:

`make_form`( | type, width, height)

  Create a form with given type, width and height. This returns a form object, whose methods are described below.

`do_forms`( | )

  The standard FORMS main loop. Returns a Python object representing the FORMS object needing interaction, or the special value `FL.EVENT`.

`check_forms`( | )

  Check for FORMS events. Returns what `do_forms()` above returns, or `None` if there is no event that immediately needs interaction.

`set_event_call_back`( | function)

  Set the event callback function.

`set_graphics_mode`( | rgbmode, doublebuffering)

  Set the graphics modes.

`get_rgbmode`( | )

  Return the current rgb mode. This is the value of the C global variable `fl_rgbmode`.

`show_message`( | str1, str2, str3)

  Show a dialog box with a three-line message and an OK button.

`show_question`( | str1, str2, str3)

  Show a dialog box with a three-line message and YES and NO buttons. It returns `1` if the user pressed YES, `0` if NO.

`show_choice`( | str1, str2, str3, but1[, but2[, but3]])

  Show a dialog box with a three-line message and up to three buttons. It returns the number of the button clicked by the user (`1`, `2` or `3`).

`show_input`( | prompt, default)

  Show a dialog box with a one-line prompt message and text field in which the user can enter a string. The second argument is the default input string. It returns the string value as edited by the user.

`show_file_selector`( | message, directory, pattern, default)

  Show a dialog box in which the user can select a file. It returns the absolute filename selected by the user, or `None` if the user presses Cancel.

`get_directory`( | )

`get_pattern`( | )

`get_filename`( | )

  These functions return the directory, pattern and filename (the tail part only) selected by the user in the last `show_file_selector()` call.

`qdevice`( | dev)

`unqdevice`( | dev)

`isqueued`( | dev)

`qtest`( | )

`qread`( | )

`qreset`( | )

`qenter`( | dev, val)

`get_mouse`( | )

`tie`( | button, valuator1, valuator2)

  These functions are the FORMS interfaces to the corresponding GL functions. Use these if you want to handle some GL events yourself when using `fl.do_events()`. When a GL event is detected that FORMS cannot handle, `fl.do_forms()` returns the special value `FL.EVENT` and you should call `fl.qread()` to read the event from the queue. Don't use the equivalent GL functions!

`color`( | )

`mapcolor`( | )

`getmcolor`( | )

  See the description in the FORMS documentation of `fl_color()`, `fl_mapcolor()` and `fl_getmcolor()`.