Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /smlnj-lib/branches/rt-transition/HTML/make-html.sml
ViewVC logotype

Annotation of /smlnj-lib/branches/rt-transition/HTML/make-html.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2980 - (view) (download)

1 : monnier 2 (* make-html.sml
2 :     *
3 :     * COPYRIGHT (c) 1996 AT&T Research.
4 :     *
5 :     * This is a collection of constructors for building some of the common
6 :     * kinds of HTML elements.
7 :     *)
8 :    
9 :     structure MakeHTML : sig
10 :    
11 :     val blockList : HTML.block list -> HTML.block
12 :     val textList : HTML.text list -> HTML.text
13 :    
14 :     val mkH : (int * HTML.pcdata) -> HTML.block
15 :    
16 :     val mkP : HTML.text -> HTML.block
17 :     val mkUL : HTML.list_item list -> HTML.block
18 :     val mkOL : HTML.list_item list -> HTML.block
19 :     val mkDL : {dt : HTML.text list, dd : HTML.block} list -> HTML.block
20 :     val HR : HTML.block
21 :     val BR : HTML.text
22 :    
23 :     val mkLI : HTML.block -> HTML.list_item
24 :    
25 :     val mkA_HREF : {href : HTML.url, content : HTML.text} -> HTML.text
26 :     val mkA_NAME : {name : HTML.cdata, content : HTML.text} -> HTML.text
27 :    
28 :     val mkTR : HTML.table_cell list -> HTML.tr
29 :     val mkTH : HTML.block -> HTML.table_cell
30 :     val mkTH_COLSPAN : {colspan : int, content : HTML.block} -> HTML.table_cell
31 :     val mkTD : HTML.block -> HTML.table_cell
32 :     val mkTD_COLSPAN : {colspan : int, content : HTML.block} -> HTML.table_cell
33 :    
34 :     end = struct
35 :    
36 :     fun blockList [b] = b
37 :     | blockList bl = HTML.BlockList bl
38 :    
39 :     fun textList [t] = t
40 :     | textList tl = HTML.TextList tl
41 :    
42 :     fun mkH (n, hdr) = HTML.Hn{n = n, align=NONE, content=HTML.PCDATA hdr}
43 :    
44 :     fun mkP content = HTML.P{align=NONE, content=content}
45 :    
46 :     fun mkUL items = HTML.UL{compact=false, ty=NONE, content=items}
47 :    
48 :     fun mkOL items = HTML.OL{compact=false, ty=NONE, start = NONE, content=items}
49 :    
50 :     fun mkDL items = HTML.DL{compact=false, content=items}
51 :    
52 :     val HR = HTML.HR{align=NONE, noshade=false, size=NONE, width=NONE}
53 :    
54 :     val BR = HTML.BR{clear = NONE}
55 :    
56 :     fun mkLI blk = HTML.LI{ty=NONE, value=NONE, content=blk}
57 :    
58 :     fun mkA_HREF {href, content} = HTML.A{
59 :     href = SOME href,
60 :     title = NONE,
61 :     name = NONE,
62 :     rel = NONE,
63 :     rev = NONE,
64 :     content = content
65 :     }
66 :    
67 :     fun mkA_NAME {name, content} = HTML.A{
68 :     href = NONE,
69 :     title = NONE,
70 :     name = SOME name,
71 :     rel = NONE,
72 :     rev = NONE,
73 :     content = content
74 :     }
75 :    
76 :     fun mkTR content = HTML.TR{
77 :     align = NONE,
78 :     valign = NONE,
79 :     content = content
80 :     }
81 :    
82 :     fun mkTH content = HTML.TH{
83 :     nowrap = false,
84 :     rowspan = NONE,
85 :     colspan = NONE,
86 :     align = NONE,
87 :     valign = NONE,
88 :     width = NONE,
89 :     height = NONE,
90 :     content = content
91 :     }
92 :     fun mkTH_COLSPAN {colspan, content} = HTML.TH{
93 :     nowrap = false,
94 :     rowspan = NONE,
95 :     colspan = SOME colspan,
96 :     align = NONE,
97 :     valign = NONE,
98 :     width = NONE,
99 :     height = NONE,
100 :     content = content
101 :     }
102 :    
103 :     fun mkTD content = HTML.TD{
104 :     nowrap = false,
105 :     rowspan = NONE,
106 :     colspan = NONE,
107 :     align = NONE,
108 :     valign = NONE,
109 :     width = NONE,
110 :     height = NONE,
111 :     content = content
112 :     }
113 :     fun mkTD_COLSPAN {colspan, content} = HTML.TD{
114 :     nowrap = false,
115 :     rowspan = NONE,
116 :     colspan = SOME colspan,
117 :     align = NONE,
118 :     valign = NONE,
119 :     width = NONE,
120 :     height = NONE,
121 :     content = content
122 :     }
123 :    
124 :     end;

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0