Patch title: Release 96 bulk changes
Abstract:
File: /pliant/graphic/ui/sample/db_test.pli
Key:
    Removed line
    Added line
module "/pliant/graphic/ui/server/api.pli"
module "/pliant/storage/database.pli"
module "/pliant/admin/file.pli"


ui_type SampleRecord
  field Str an_str
  field Int an_int <- undefined

ui_type SampleDatabase
  field Str a_field
  field Str a_text
  field Str a_select
  field Set:SampleRecord records
  
file_tree_create "data:/pliant/sample/"
(gvar Database:SampleDatabase sample_database) load "data:/pliant/sample/database.pdb" mount "/pliant/sample"


ui_path "/db_test/record/"
  window left
    button "back" key "alt b"
      url_return
  window main
    title "record "+subpath
    var Data:SampleRecord r :> sample_database:data:records subpath
    para
      input "string value: " r:an_str
    para
      input "int value: " r:an_int

ui_path "/db_test"
  ovar Str k
  section "all" dynamic
    window left
      section "menu" dynamic
        button "records" key "alt r"
          focus_save
          section_overwrite "menu"
            input "Key: " k focus true
            eol
            button "create" key "alt c"
              sample_database:data:records create k
              section_replay "all"
              focus_set "row "+k 0
            eol
            button "delete" key "alt d"
              sample_database:data:records delete k
              section_replay "all"
            eol
            button "create many records" key "alt m"
              for (var Int i) 1 100
                sample_database:data:records create (right string:i 3 "0")
              section_replay "all"
            eol
            button "escape" key "escape"
              section_replay "menu"
        eol
        button "exit" key "alt x"
          url_return
    window main
      title
        text "Database sample form"
      para
        section "sample field"
          input "Sample field: " sample_database:data:a_field
        button "display value"
          section_overwrite "help"
            text "Current field value is: "+sample_database:data:a_field
          focus_set "sample field" 0
      para
        input "Sample multiline text field: " sample_database:data:a_text multiline
      para
        select "Sample select: " sample_database:data:a_select
          option "value 1" "v1"
          option "value 2" "v2"
          option "value 3" "v3"
      table
        row
          cell header
            text "key"
          cell header
            text "string"
          cell header
            text "value"
        each r sample_database:data:records
          row
            cell
              link keyof:r
                url_call "/db_test/record/"+keyof:r
            cell
              section "row "+keyof:r
                input "" r:an_str
            cell
              input "" r:an_int
    window bottom
      section "help"
        void
  # focus_set "sample field" 0