view examples/popup.ur @ 32:d32fb0f7b137

Update for Ur/Web's new type class handling
author Adam Chlipala <adam@chlipala.net>
date Sun, 29 Jul 2012 12:28:46 -0400
parents 48a4180171b0
children
line wrap: on
line source
open Navbar
open PopupNav

val testNav = navAdd (mkNavItem "item 2" (bless "http://item2.org")) 
                     (navAdd (mkNavItem "item 1" (bless "http://item1.org"))
                             emptyNavBar)

val testNav' = navAdd (mkNavItem "item 3" (bless "http://item3.org")) 
                      testNav

val otherFormat = {FormatMenu = fn ctl menu => <xml><h3>A Custom {ctl} Format</h3>{menu}</xml>,
                   WrapMenu = fn menu => <xml><div><ul>{menu}</ul></div></xml>,
                   OpenCtl = fn behaviour => <xml><a href={bless "http://#"} onclick={behaviour}>View</a></xml>,
                   CloseCtl = fn behaviour => <xml><a href={bless "http://#"} onclick={behaviour}>Hide</a></xml>}


fun main () =

    defaultFormatPopUp <- create defaultFormat testNav';
    otherFormatPopUp <- create otherFormat testNav';

    return <xml>
      <head>
        <title>Navbar Based Popup Navigation.</title>
      </head>
      <body>
        <h1>Example of using Navbar to build a widget.</h1>
        <p>
          This is a widget which generates a popup list
          of links.
        </p>
        <h2>Example of the default format.</h2>
        <p>
          {render defaultFormatPopUp}
        </p>
        <h2>Example of another format.</h2>
        <p>
          {render otherFormatPopUp}
        </p>
      </body>
    </xml>