# F

`+field`
  Form field base class. See +CheckBox, +Radio, +TextField, +RgbPicker.

`(field X . @)`
  Function to access another field from the current field. The first argument can be either a symbol (to access a named 'gui' component) or a positive or negative number (to access a field relative to the current one). In both cases the 'get' algorithm is applied to all following arguments.

          (gui '(+View +TextField) '(field -1 'obj 'ort) 30)

`+FixField`
  +FixField accepts and returns scaled fixpoint numbers. This field needs an argument that determines the scale factor.

          (gui '(+FixField) 3 10)

  See also +NumField, +TextField and Input fields.

`+FileField`
  This field evaluates an 'exe' to find and open/create a file, then loads/modifies/stores the text in that file. See also +TextField.

`+Focus`
  `+Focus` is a prefix class used to set the keyboard focus on a specific GUI element. For example, it can be used to put the initial focus on a specific input field in a search dialog. Examples of this usage can be found in the demo app supplied with the PicoLisp distribution, in gui.l:

          (de choCuSu (Dst)
             (diaform '(Dst)
                (<grid> "--.-.-."
                   ,"Number" (gui 'nr '(+Var +NumField) '*CuSuNr 10)
                   ,"Name" (gui 'nm '(+Focus +Var +TextField) '*CuSuNm 30)
                   ,"Phone" (gui 'tel '(+Var +TelField) '*CuSuTel 20)
                   (searchButton '(init> (: home query)))
                   ,"Zip" (gui 'plz '(+Var +TextField) '*CuSuPlz 10)
                   ,"City" (gui 'ort '(+Var +TextField) '*CuSuOrt 30)
                   ,"Mobile" (gui 'mob '(+Var +TelField) '*CuSuMob 20)
                   (resetButton '(nr nm tel plz ort mob query)) )
                   .
                   .
                   .

  In the code above, `+Focus` is used to give initial focus to the "Name" input field.

`+Force`
  Button prefix class which may force the action even if an error occurred. Without it, an 'error' will always inhibit further button handling. See also +Button.

`+Fmt`
  +Fmt is a prefix class that combines `+Set` and `+Val`, taking two functions as arguments. This example will display upper case characters, while returning lower case characters internally:

          (gui '(+Fmt +TextField) uppc lowc 30)

  See also +Set, +Val and formatting.

`form`
  The basic form function. Handles operations common to the concrete form types in the library. See idForm, diaform.