view calendar.urs @ 15:8300d5f0dc19

Replace ChangePoller with SourceL, plus some other rearrangements
author Adam Chlipala <adam@chlipala.net>
date Sun, 07 Aug 2011 14:38:52 -0400
parents 0827320b0f04
children 16447dc6a68c
line wrap: on
line source
type date = {Year : int, Month : int, Day : int}
val date_eq : eq date
val date_ord : ord date
val time : date -> time
val date : time -> date
(* A type to represent calendar dates and some operations on them. *)

type t
(* Interactive calendar control widgets. The date can be set and read.
 * They support adding a change listener which will be called on 
 * the new date.  They are displayed as pictures of calendars which
 * have clickable dates. *)

val onChange : t -> (date -> transaction {}) -> transaction unit
(* Add a change listener to a calendar control. *)

val set : t -> date -> transaction unit
(* Set the date of the calendar. *)

val value : t -> signal date
(* Read the date of the calendar. *)

val gui_t : Gui.gui t
(* Witness that this is a gui widget. *)

val create : time -> transaction t
(* Get a basic interactive calendar control widget. *)

style calendar
style prev
style this
style next
style weekday
style curday
style otherday
style selday
(* Styles for the calendar panel. *)