Patch title: Release 96 bulk changes
Abstract:
File: /pliant/graphic/ui/sample/run.pli
Key:
    Removed line
    Added line
   
# pliant 'precompile /binary/ui.dump module /pliant/graphic/ui/client/main.pli' module /pliant/graphic/ui/sample/run.pli command run_both
# pliant 'precompile /binary/rip.dump module /pliant/graphic/image/rip.pli' module /pliant/graphic/ui/sample/run.pli command run_both

# pliant 'precompile /binary/rip.dump module /pliant/graphic/image/rip.pli' module /pliant/graphic/ui/sample/run.pli command run_server
# PLIANT_ROOT=/second pliant 'precompile /binary/rip.dump module /pliant/graphic/image/rip.pli' module /pliant/graphic/ui/sample/run.pli command run_secured_client

module "/pliant/language/unsafe.pli"
module "/pliant/language/context.pli"

module "/pliant/graphic/ui/server/main.pli"
module "/pliant/util/pml/multiplexer.pli"
module "/pliant/language/stream/loopback.pli"
module "/pliant/graphic/ui/client/main.pli"
module "/pliant/graphic/console/http_proxy.pli"

module "/pliant/graphic/ui/server/api.pli"
module "test.pli"
module "db_test.pli"
module "filemanager.pli"
module "editor.pli"
module "document.pli"
module "status.pli"
module "wm.pli"
module "/pliant/protocol/vnc/ui_client.pli"

constant service_test false
constant service_http false
constant service_floppy false
constant heliogroup false

if heliogroup
  module "/helio/database/futur.pli"

if service_floppy
  module "/pliant/linux/kernel/device.pli"
  module "/pliant/linux/kernel/module.pli"
  module "/pliant/admin/file.pli"

if service_http
  module "/pliant/protocol/http/server.pli"
  http_server port 8080 secured detached


ui_path "/"
  window main
    section "main"
      para
        text "Welcome"
        if user_name<>""
          text " "+user_name
        text " on '"+computer_fullname+"'."
    section "errors"
      void
  window left
    button "test" key "alt t" stretch help "See the result of test.pli sample applet"
      url_call "/test"
    eol
    button "db test" key "alt b" stretch help "Another sample applet using a database"
      url_call "/db_test"
    eol
    button "documents" key "alt d" stretch
      url_call "/document/"+computer_fullname+"/document/root/"
    eol
    button "files" key "alt f" help "See and edit disk files" stretch
      url_call "/file/"
    eol
    button "VNC" key "alt v" help "A small VNC client" stretch
      url_call "/vnc"
    eol
    button "status" key "alt s" stretch help "Display controls about the computer"
      url_call "/status/"
    if service_test
      eol
      button "bug" key "alt u" over stretch help "Shortcut to test some ui bugs."
        url_call "/file/tmp/console"
    if service_floppy
      eol
      button "floppy" key "alt f" over stretch help "Build boot floppy."
        kernel_load_module "floppy"
        kernel_make_device "device:/fd0"
        file_copy "file:/backup/floppy.dd" "device:/fd0" reduced
    if heliogroup
      eol
      eol
      button "Heliogroup" key "alt g" help "Heliogroup database sample"
        url_call "/futur"
    eol
    eol
    button "recompile" key "alt c" stretch help "Try to recompile on the fly modified applets."
      var List:Str errors := ui_recompile
      section_overwrite "errors"
        para
          each err errors
            text err ; eol
  window bottom
    section "help"
      void

ui_path "/file"
  if (url url:len-1 1)="/"
    file_manager "file:"+subpath
  else
    text_editor "file:"+subpath

ui_path "/document/"
  if (subpath parse any "/" any "/" any "/" any)
    document_editor "/"+subpath
  else
    url_return

ui_path "/vnc"
  vnc_client "" "" ""



function run_server
  ui_server
  multiplexer_server
  console "Pliant ui server is running." eol
  while true
    sleep 2

function run_clear_client
  ui_server
  multiplexer_port "loopback:/server/ui" "loopback:/client/ui"
  sleep 0.1
  ui_client "url [dq]tcp://briare4.heliogroup.fr/[dq] windows_manager [dq]loopback:/windows_manager[dq] login [dq]test[dq] [dq]xxx[dq]"

function run_secured_client
  ui_server
  multiplexer_port "loopback:/server/ui" "loopback:/client/ui"
  sleep 0.1
  ui_client "url [dq]host://briare4.heliogroup.fr/[dq] autosize windows_manager [dq]loopback:/windows_manager[dq] login [dq]test[dq] [dq]xxx[dq]"

function run_both
  ui_server
  multiplexer_port "loopback:/server/ui" "loopback:/client/ui"
  sleep 0.1
  var ExtendedStatus es := ui_client "url [dq]loopback:/[dq] autosize windows_manager [dq]loopback:/windows_manager[dq]"
  if es=failure
    console "ui client failed: " es:message eol

function run_fullscreen
  ui_server
  multiplexer_port "loopback:/server/ui" "loopback:/client/ui"
  sleep 0.1
  ui_client "url [dq]loopback:/[dq] fullscreen windows_manager [dq]loopback:/windows_manager[dq]"

function run_osx
  ui_server
  multiplexer_port "loopback:/server/ui" "loopback:/client/ui"
  sleep 0.1
  var ExtendedStatus es := ui_client "display [dq]10.107.2.33:0.0[dq] osx positions [dq]azeqsdwxc[dq] url [dq]loopback:/[dq] autosize windows_manager [dq]loopback:/windows_manager[dq]"
  if es=failure
    console "ui client failed: " es:message eol

function run_framebuffer
  ui_server
  multiplexer_port "loopback:/server/ui" "loopback:/client/ui"
  sleep 0.1
  ui_client "console [dq]framebuffer[dq] terminal 2 url [dq]loopback:/[dq] fullscreen windows_manager [dq]loopback:/windows_manager[dq]"

function run_http_proxy
  ui_server
  multiplexer_port "loopback:/server/ui" "loopback:/client/ui"
  sleep 0.1
  console_http_proxy port 8080 protocol "loopback"

export run_server run_clear_client run_secured_client run_both run_fullscreen run_osx run_framebuffer run_http_proxy