<?xml version="1.0"?>

<st-source>
<!-- 
Name: SeasideSeaChartDemo
Notice: All rights reserved
BundleName: SeasideSeaChartDemo
Comment: SeaChartDemo for Seaside in VisualWorks

A demo application collecting the SeaChart CSS and Javascript goodies.
See <http://www.squeaksource.com/seachart.html>

Contributors : Philippe Marschall

Keywords: Web, Continuations,  HTML, XML, AJAX, Javascript, Internet, Squeak

Port from SeaChartDemo-mb.14.mcz      24 September 2007 9:08:41 pm

DevelopmentPrerequisites: #(#(#any 'SeasideBase' ''))
Parcel: #('SeasideSeaChartDemo')
ParcelName: SeasideSeaChartDemo
PrerequisiteParcels: #(#('SeasideBase' ''))
Version: 1.14
Date: 12:56:30 pm September 25, 2007
 -->
<time-stamp>From VisualWorks®, 7.5 of April 16, 2007 on September 25, 2007 at 12:56:30 pm</time-stamp>


<do-it>(Dialog confirm: 'You are filing-in a Parcel source file!\\While this is possible it will not have\the same effect as loading the parcel.\None of the Parcel''s prerequisites will\be loaded and none of its load actions\will be performed.\\Are you sure you want to file-in?' withCRs) ifFalse: [self error: 'Parcel file-in abandoned.  Choose terminate or close.']</do-it>

<class>
<name>SCDFileLibrary</name>
<environment>Seaside</environment>
<super>Seaside.WAFileLibrary</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDFrame</name>
<environment>Seaside</environment>
<super>Seaside.WAComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>mainComponents selectedMainComponent </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Core</category>
<attributes>
<package>SeaChartDemo-Core</package>
</attributes>
</class>

<class>
<name>SCDGrowlDemo</name>
<environment>Seaside</environment>
<super>Seaside.WAComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDDemoComponent</name>
<environment>Seaside</environment>
<super>Seaside.WAComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Core</category>
<attributes>
<package>SeaChartDemo-Core</package>
</attributes>
</class>

<class>
<name>SCDProtoGrowlDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDStarRaterDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>rater1 rater2 </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDReflectionDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDPlotKitDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>barChart pieChart lineChart </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDBarDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>progressBar1 progressBar2 goodBadChart </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDHome</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>frame </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDFadeInDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>image </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDListDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<class>
<name>SCDCrossFadeDemo</name>
<environment>Seaside</environment>
<super>Seaside.SCDDemoComponent</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>container </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>SeaChartDemo-Demo</category>
<attributes>
<package>SeaChartDemo-Demo</package>
</attributes>
</class>

<methods>
<class-id>Seaside.SCDFileLibrary</class-id> <category>uploaded</category>

<body package="SeaChartDemo-Demo" selector="andreas08Css">andreas08Css
	^ '/* andreas08 - an open source xhtml/css website layout by Andreas Viklund - http://andreasviklund.com . Free to use in any way and for any purpose as long as the proper credits are given to the original designer. Version: 1.0, November 28, 2005 */

/**************** Body and tag styles ****************/

*{margin:0; padding:0;}

body{
font:76% Verdana,Tahoma,Arial,sans-serif;
line-height:1.4em;
text-align:center;
color:#303030;
background:#e8eaec;
}

a{
color:#467aa7;
font-weight:bold;
text-decoration:none;
background-color:inherit;
}

a:hover{color:#2a5a8a; text-decoration:none; background-color:inherit;}
a img{border:none;}

p{padding:0 0 1.6em 0;}
p form{margin-top:0; margin-bottom:20px;}

img.left,img.center,img.right{padding:4px; border:1px solid #a0a0a0;}
img.left{float:left; margin:0 12px 5px 0;}
img.center{display:block; margin:0 auto 5px auto;}
img.right{float:right; margin:0 0 5px 12px;}

/**************** Header and navigation styles ****************/

#container{
width:760px;
margin:20px auto;
padding:1px 0;
text-align:left;
background:#ffffff;
color:#303030;
border:2px solid #a0a0a0;
}

#header{
height:110px;
width:758px;
margin:0 1px 1px 1px;
background:#467aa7;
color:#ffffff;
}

#header h1{
padding:35px 0 0 20px;
font-size:2.4em;
background-color:inherit;
color:#ffffff;
letter-spacing:-2px;
font-weight:normal;
}

#header h2{
margin:10px 0 0 40px;
font-size:1.4em;
background-color:inherit;
color:#f0f2f4;
letter-spacing:-1px;
font-weight:normal;
}

#navigation{
height:2.2em;
line-height:2.2em;
width:758px;
margin:0 1px;
background:#578bb8;
color:#ffffff;
}

#navigation li{
float:left;
list-style-type:none;
border-right:1px solid #ffffff;
white-space:nowrap;
}

#navigation li a{
display:block;
padding:0 10px;
font-size:0.8em;
font-weight:normal;
text-transform:uppercase;
text-decoration:none;
background-color:inherit;
color: #ffffff;
}

* html #navigation a {width:1%;}

#navigation .selected,#navigation a:hover{
background:#80b0da;
color:#ffffff;
text-decoration:none;
}

/**************** Content styles ****************/

#content{
float:left;
width:530px;
font-size:0.9em;
padding:20px 0 0 20px;
}

#content h2{
display:block;
margin:0 0 16px 0;
font-size:1.7em;
font-weight:normal;
letter-spacing:-1px;
color:#505050;
background-color:inherit;
}

#content h2 a{font-weight:normal;}
#content h3{margin:0 0 5px 0; font-size:1.4em; letter-spacing:-1px;}
#content a:hover,#subcontent a:hover{text-decoration:underline;}
#content ul,#content ol{margin:0 5px 16px 35px;}
#content dl{margin:0 5px 10px 25px;}
#content dt{font-weight:bold; margin-bottom:5px;}
#content dd{margin:0 0 10px 15px;}

/**************** Sidebar styles ****************/

#subcontent{
float:right;
width:170px;
padding:20px 20px 10px 0;
line-height:1.4em;
}

#subcontent h2{
display:block;
margin:0 0 15px 0;
font-size:1.6em;
font-weight:normal;
text-align:left;
letter-spacing:-1px;
color:#505050;
background-color:inherit;
}

#subcontent p{margin:0 0 16px 0; font-size:0.9em;}

/**************** Menublock styles ****************/

.menublock{margin:0 0 20px 8px; font-size:0.9em;}
.menublock li{list-style:none; display:block; padding:2px; margin-bottom:2px;}
.menublock li a{font-weight:bold; text-decoration:none;}
.menublock li a:hover{text-decoration:none;}
.menublock li ul{margin:3px 0 3px 15px; font-size:1em; font-weight:normal;}
.menublock li ul li{margin-bottom:0;}
.menublock li ul a{font-weight:normal;}

/**************** Searchbar styles ****************/

#searchbar{margin:0 0 20px 0;}
#searchbar form fieldset{margin-left:10px; border:0 solid;}

#searchbar #s{
height:1.2em;
width:110px;
margin:0 5px 0 0;
border:1px solid #a0a0a0;
}

#searchbar #searchbutton{
width:auto;
padding:0 1px;
border:1px solid #808080;
font-size:0.9em;
text-align:center;
}

/**************** Footer styles ****************/

#footer{
clear:both;
width:758px;
padding:5px 0;
margin:0 1px;
font-size:0.9em;
color:#f0f0f0;
background:#467aa7;
}

#footer p{padding:0; margin:0; text-align:center;}
#footer a{color:#f0f0f0; background-color:inherit; font-weight:bold;}
#footer a:hover{color:#ffffff; background-color:inherit; text-decoration: underline;}

/**************** Misc classes and styles ****************/

.splitcontentleft{float:left; width:48%;}
.splitcontentright{float:right; width:48%;}
.clear{clear:both;}
.small{font-size:0.8em;}
.hide{display:none;}
.textcenter{text-align:center;}
.textright{text-align:right;}
.important{color:#f02025; background-color:inherit; font-weight:bold;}

.box{
margin:0 0 20px 0;
padding:10px;
border:1px solid #c0c0c0;
background-color:#fafbfc;
color:#505050;
line-height:1.5em;
}
'</body>

<body package="SeaChartDemo-Demo" selector="dialogErrorPng">dialogErrorPng
	| xxxCache |
	xxxCache := #(nil) beMutable.
	(xxxCache at: 1) isNil ifTrue: [
		xxxCache at: 1 put: #(137 80 78 71 13 10 26 10 0 0 0 13 73 72 68 82 0 0 0 32 0 0 0 32 8 6 0 0 0 115 122 122 244 0 0 0 4 115 66 73 84 8 8 8 8 124 8 100 136 0 0 6 36 73 68 65 84 88 133 197 151 93 108 28 87 21 128 191 123 103 246 215 235 221 236 110 215 118 138 147 170 9 78 236 64 171 164 21 133 34 129 8 47 253 175 161 161 145 168 170 42 111 125 2 169 2 193 3 15 72 72 188 33 196 143 250 80 222 194 3 81 211 162 34 165 50 169 120 168 16 84 148 134 168 173 237 196 73 20 154 68 174 236 108 214 107 123 237 157 221 217 157 185 247 242 176 51 155 217 93 59 78 17 18 87 58 186 51 103 238 158 243 157 159 185 119 22 254 207 67 220 237 194 179 80 104 195 83 113 219 126 1 41 15 106 165 138 74 235 33 75 74 199 146 114 197 104 189 224 41 117 74 192 204 211 176 246 63 3 56 3 19 182 101 253 70 195 55 74 163 163 122 247 23 14 165 51 187 199 72 228 11 196 115 195 180 107 27 184 171 171 56 203 55 89 190 112 177 81 41 151 45 97 204 95 60 99 94 153 134 171 255 53 192 105 136 103 164 252 53 112 226 243 15 29 137 223 255 248 99 210 242 61 88 89 5 199 129 86 27 124 15 236 24 36 98 48 52 4 197 60 202 182 249 247 204 59 250 147 217 185 22 198 156 92 212 250 251 47 131 247 153 0 102 160 132 16 239 220 51 50 50 245 224 75 47 38 227 202 135 107 55 160 233 14 172 53 253 215 233 20 220 55 78 219 146 124 252 251 63 184 171 149 149 11 218 152 199 159 129 149 187 2 120 27 242 66 136 185 125 83 83 163 7 159 63 102 115 249 50 172 111 220 209 169 49 102 64 207 174 28 28 220 199 149 55 255 228 223 88 184 124 211 49 230 139 199 161 214 239 207 138 222 156 6 43 41 196 187 251 39 39 39 14 28 251 150 205 220 60 212 27 131 81 6 78 117 244 62 50 107 192 184 45 76 117 141 226 215 191 34 205 74 53 229 86 87 143 78 195 201 55 250 56 101 244 38 43 229 207 75 197 194 3 19 207 127 219 54 115 23 59 70 66 163 198 244 136 137 56 11 69 133 206 195 245 77 23 53 123 137 125 199 158 141 229 139 133 195 25 41 127 214 159 129 110 9 254 8 187 51 82 46 28 125 229 123 57 185 184 4 27 155 3 169 141 206 253 186 48 43 3 107 140 129 108 6 51 62 202 63 126 251 187 245 150 214 147 211 80 30 200 64 90 202 95 30 56 52 149 145 109 15 93 219 232 70 169 183 145 48 74 19 100 68 5 37 209 17 125 88 38 189 81 71 248 62 123 39 15 100 226 82 254 98 160 4 167 33 167 141 153 190 247 153 39 44 117 99 113 91 199 3 165 136 62 11 75 19 232 85 31 136 186 190 196 189 79 124 211 86 198 60 55 3 217 30 128 20 60 85 44 228 149 80 10 221 106 247 58 142 68 169 183 136 178 171 23 162 35 145 244 135 58 37 37 170 237 33 132 36 151 29 214 30 60 214 3 16 19 226 187 163 19 251 51 170 186 142 137 24 209 161 17 41 49 82 118 13 154 64 167 45 11 99 89 24 41 49 17 189 10 214 119 37 208 251 107 27 20 247 237 205 216 66 188 16 2 216 65 195 76 166 247 238 65 55 26 93 67 8 1 175 191 30 45 23 130 207 112 120 4 163 121 252 120 167 153 133 64 55 91 164 62 183 27 241 209 133 169 30 0 13 165 248 72 9 83 174 118 136 131 12 200 237 172 70 134 49 6 173 117 247 90 8 129 148 18 33 58 168 161 61 0 237 249 196 138 187 48 80 10 127 47 1 180 49 153 88 33 143 86 170 147 218 32 117 59 13 173 53 74 169 110 163 133 16 74 41 124 223 71 107 221 233 149 176 23 140 33 150 203 160 141 25 238 1 144 66 212 219 142 131 142 197 111 215 123 7 0 165 84 55 242 59 1 54 206 159 199 171 86 59 189 18 139 225 150 43 8 33 54 195 53 54 128 128 91 205 74 37 55 148 140 163 91 173 29 141 238 228 184 7 180 209 192 159 159 71 164 211 196 238 31 199 53 30 2 42 61 0 192 165 250 213 107 19 67 71 14 99 54 157 78 3 2 238 137 19 157 212 26 131 95 46 227 93 191 142 113 156 238 14 23 246 74 207 238 23 217 61 123 244 142 131 229 58 52 54 234 104 184 216 3 224 27 115 170 60 127 241 104 233 75 71 50 61 77 83 175 163 42 21 252 165 165 206 27 178 205 86 219 175 235 7 12 159 201 177 2 181 203 215 54 181 49 167 122 0 92 152 217 216 172 91 237 197 79 240 254 181 128 49 160 91 45 140 235 110 25 229 221 68 223 3 100 12 50 157 192 196 36 142 219 178 129 179 33 128 4 56 14 53 33 196 91 203 255 156 245 229 125 99 120 181 26 202 117 187 167 91 184 243 133 162 184 189 213 246 111 205 161 94 133 231 67 160 143 29 216 67 249 131 5 95 26 222 152 134 205 30 0 0 87 235 31 46 47 149 235 38 155 70 228 179 183 157 69 14 154 1 167 220 62 134 85 31 96 20 92 230 51 144 142 83 189 181 90 247 225 71 68 70 23 224 24 44 35 196 107 87 223 253 160 145 120 120 18 147 140 239 24 189 218 2 38 10 174 141 193 164 18 164 30 154 96 241 111 179 142 20 226 213 232 81 220 3 0 80 215 250 39 78 211 157 253 244 239 31 122 201 71 31 192 164 18 3 169 221 42 250 158 108 69 162 39 157 96 232 203 7 89 122 111 174 237 182 218 31 213 181 254 41 125 99 96 107 127 11 118 217 48 95 40 229 71 198 191 118 36 230 156 191 132 191 82 235 109 184 45 58 60 170 7 176 75 57 134 14 239 103 249 189 121 111 179 90 91 110 194 131 91 125 19 110 121 182 156 129 123 4 156 77 165 146 135 246 30 125 56 101 26 46 205 11 215 81 78 115 219 215 48 20 107 56 77 106 114 28 145 138 243 233 95 63 110 122 110 123 174 13 79 62 7 213 173 124 109 123 184 189 6 177 49 120 85 10 241 98 126 180 144 24 121 228 144 196 109 209 186 185 138 191 238 160 221 22 218 83 16 179 144 201 4 86 46 77 108 44 143 140 91 220 58 119 197 175 221 90 243 218 112 242 36 252 224 12 52 182 243 179 21 128 0 50 192 16 144 249 14 76 78 195 143 179 240 72 50 149 80 217 177 66 42 89 204 98 15 167 177 135 146 120 78 147 86 173 65 123 117 131 245 155 107 77 207 109 89 235 112 238 77 248 213 219 112 5 168 3 78 100 222 17 32 29 0 12 71 231 61 48 246 36 60 122 24 190 154 133 177 4 100 108 136 251 224 185 80 95 135 202 135 240 254 159 225 220 82 167 211 235 116 222 247 112 222 164 243 159 81 221 77 9 210 116 190 219 194 76 164 131 57 21 72 2 136 211 249 95 97 2 163 30 224 2 77 58 41 15 37 116 188 217 239 252 78 0 209 231 177 192 97 10 72 6 142 227 129 222 6 252 8 64 27 104 5 142 221 64 55 224 52 58 254 3 231 154 16 69 179 153 170 92 0 0 0 0 73 69 78 68 174 66 96 130) asByteArray ].
	^ xxxCache at: 1</body>

<body package="SeaChartDemo-Demo" selector="dialogInformationPng">dialogInformationPng
	| xxxCache |
	xxxCache := #(nil) beMutable.
	(xxxCache at: 1) isNil ifTrue: [
		xxxCache at: 1 put: #(137 80 78 71 13 10 26 10 0 0 0 13 73 72 68 82 0 0 0 32 0 0 0 32 8 6 0 0 0 115 122 122 244 0 0 0 6 98 75 71 68 0 255 0 255 0 255 160 189 167 147 0 0 0 9 112 72 89 115 0 0 11 19 0 0 11 19 1 0 154 156 24 0 0 0 7 116 73 77 69 7 214 5 29 20 51 56 165 102 131 162 0 0 7 3 73 68 65 84 88 195 197 150 91 108 84 215 21 134 255 181 247 217 103 110 30 207 140 7 95 48 99 67 112 13 56 16 163 36 38 82 44 5 82 85 109 26 165 17 85 43 171 37 180 64 11 69 77 85 169 141 90 69 125 169 148 23 162 190 180 36 202 67 37 231 210 54 162 74 19 171 109 26 145 160 114 105 16 74 8 16 27 156 16 219 164 216 229 98 60 30 95 230 62 115 174 251 156 221 135 12 21 15 5 60 17 85 143 180 180 165 163 125 214 255 173 127 95 206 2 254 207 15 213 51 121 224 169 167 66 145 10 182 50 30 220 166 160 250 224 201 38 0 0 215 114 4 26 246 61 235 181 106 3 254 54 180 127 191 121 199 1 190 191 231 103 123 193 248 175 90 87 173 215 83 93 189 145 182 214 86 132 195 58 52 70 240 61 23 139 139 139 184 116 241 188 113 105 98 212 86 158 252 197 43 47 253 122 240 142 0 12 12 60 163 71 19 214 80 99 178 229 75 189 253 91 35 16 13 200 228 171 200 85 13 184 210 1 200 135 208 128 229 137 48 122 82 9 68 4 240 247 131 111 26 153 233 43 71 203 249 224 192 208 208 51 206 173 242 107 183 3 140 38 236 161 101 171 214 63 178 225 254 47 7 254 53 103 194 83 121 172 106 19 184 103 117 35 98 17 225 11 206 125 203 145 170 80 117 252 201 76 78 73 87 241 129 111 111 11 31 61 246 238 87 39 206 158 25 2 240 117 0 234 102 2 252 150 182 255 224 233 31 70 91 87 62 185 254 129 199 66 159 206 152 232 78 105 216 180 54 138 182 68 192 143 134 132 20 26 147 156 147 212 57 247 34 33 225 183 55 133 213 66 217 178 206 95 201 185 143 63 124 127 112 58 51 191 178 107 213 154 236 185 179 239 15 215 13 176 107 215 79 227 164 139 55 123 31 218 22 187 186 40 177 105 77 16 157 173 58 52 14 143 49 114 25 65 18 65 50 34 23 68 18 128 7 40 47 222 16 80 87 230 202 213 217 156 161 30 221 220 23 57 115 250 100 255 198 13 125 131 163 163 167 172 255 166 195 110 6 192 116 182 189 185 115 99 216 246 5 218 147 132 150 132 6 2 36 72 185 68 228 48 78 54 39 178 25 193 230 4 75 227 100 114 70 86 88 215 236 120 67 192 40 155 78 161 108 75 187 175 127 115 152 233 108 251 77 117 110 234 63 11 236 108 237 92 23 202 85 44 172 108 211 225 195 247 136 41 151 64 14 65 57 68 176 57 35 139 49 102 50 78 22 17 44 141 51 131 115 50 3 130 85 130 58 171 94 206 148 138 125 247 221 167 129 233 59 235 223 132 190 215 213 16 141 227 90 166 138 128 8 0 32 9 69 46 227 176 25 145 195 137 57 196 148 100 32 23 128 239 51 82 202 87 176 93 207 99 68 197 160 174 133 10 85 155 86 52 167 154 161 188 213 117 3 40 229 69 53 161 193 83 54 76 199 115 130 66 115 137 224 16 200 97 140 108 198 96 127 6 65 18 32 79 3 124 87 249 84 168 184 11 193 0 87 140 200 55 93 15 186 224 164 124 63 90 55 0 49 173 4 101 39 25 147 152 94 168 90 241 136 238 1 204 33 130 205 136 44 6 178 56 35 155 24 115 25 65 42 95 249 89 211 157 119 164 180 131 26 11 17 145 34 34 174 0 159 49 170 214 189 7 136 248 88 185 148 69 83 84 119 22 10 150 145 45 90 101 0 54 129 108 206 200 100 28 38 231 100 104 12 21 71 122 179 243 37 243 188 37 229 204 154 21 137 166 160 174 85 130 140 153 203 155 194 90 174 88 182 24 211 38 235 6 240 60 243 183 215 46 142 150 87 54 55 122 92 35 231 242 98 53 191 241 174 68 42 164 19 207 149 173 116 177 236 78 45 86 236 137 185 188 57 92 49 220 113 193 89 54 98 207 127 165 50 55 249 104 64 104 134 174 51 227 11 109 137 229 31 142 140 84 165 114 95 171 251 30 24 61 123 106 108 221 218 13 223 105 93 209 25 107 111 89 230 152 174 44 180 39 66 72 37 35 45 237 77 193 110 174 92 157 60 155 251 118 57 170 193 94 29 34 123 75 50 30 237 41 148 171 83 20 108 60 159 138 55 222 173 115 213 121 224 15 191 151 220 47 238 28 25 25 113 235 59 134 128 34 215 222 58 124 244 175 182 144 229 96 87 75 60 50 60 153 29 55 28 47 59 126 181 240 22 152 42 45 139 133 187 58 219 146 15 38 227 209 30 14 202 131 107 231 34 205 119 13 166 154 98 107 155 162 250 198 23 158 127 142 219 210 219 57 56 56 104 124 238 159 209 142 61 63 233 13 233 161 127 124 115 199 110 67 137 200 228 138 166 128 34 206 51 134 233 140 69 66 90 62 28 224 37 157 11 67 144 187 129 120 208 47 89 18 209 128 254 163 125 251 158 21 165 98 241 201 87 94 252 205 159 111 149 159 221 14 224 213 151 158 255 216 117 173 239 158 124 247 136 72 54 134 18 153 156 117 213 54 10 9 70 74 10 206 28 157 11 131 152 107 95 188 56 145 116 61 231 211 134 128 232 158 24 31 55 139 133 242 224 237 196 151 4 0 0 228 211 233 185 244 181 88 88 240 144 84 158 149 158 153 45 103 231 210 73 98 76 50 93 185 239 29 59 218 158 158 157 157 212 53 81 225 196 218 174 92 153 38 5 121 118 41 185 151 4 240 242 203 251 115 82 250 31 207 92 155 161 101 13 193 213 134 83 137 125 244 225 177 175 93 250 231 123 219 46 126 114 116 231 216 248 201 39 86 175 140 234 4 74 112 98 61 167 78 125 16 211 25 62 88 74 110 109 169 29 145 237 154 123 255 242 250 129 19 223 219 179 99 85 170 37 169 47 76 11 56 118 241 110 166 128 53 221 43 16 141 69 191 232 58 85 117 240 237 195 215 28 215 25 122 113 240 185 217 59 222 19 110 223 241 248 193 88 162 231 177 135 183 108 65 79 207 90 52 70 35 224 92 3 35 32 155 91 192 59 111 31 198 248 248 196 229 249 140 190 238 208 161 23 236 59 234 0 0 180 54 231 31 218 178 217 134 175 24 222 120 227 79 200 46 148 224 74 15 13 13 1 8 205 65 62 55 229 228 22 47 120 135 14 77 216 75 205 89 23 64 122 166 194 63 25 187 128 93 187 190 129 7 251 31 128 43 61 228 22 11 152 203 100 160 148 133 11 227 89 189 144 15 118 213 147 147 213 51 217 243 228 179 11 243 6 142 31 127 31 122 64 71 34 17 67 170 163 5 93 221 41 156 56 113 26 99 19 83 112 93 247 245 255 25 0 231 180 239 222 123 59 48 48 240 99 104 92 0 0 28 71 226 194 133 171 232 237 237 197 250 158 46 132 66 226 91 117 229 172 103 114 119 119 243 211 154 166 132 97 76 161 92 54 65 76 67 161 88 130 16 192 232 185 143 48 53 121 25 217 92 241 82 60 238 255 110 102 198 148 183 234 134 235 57 5 90 45 68 127 127 199 186 198 198 208 94 33 2 79 0 42 204 57 131 82 62 148 98 80 138 103 149 50 14 159 57 147 249 229 252 124 177 252 89 147 10 23 128 172 141 238 231 113 64 7 16 168 69 112 122 186 100 78 78 102 135 59 59 123 101 115 115 119 223 238 221 63 215 54 109 122 4 211 211 101 59 157 174 28 56 114 100 228 213 106 213 22 181 239 168 182 196 215 131 106 80 75 6 160 27 170 255 143 11 0 66 233 116 122 186 163 163 227 158 177 177 177 214 209 209 81 63 159 207 143 29 63 126 252 143 158 231 121 0 252 154 208 117 7 84 237 157 95 115 163 174 37 160 154 168 94 27 69 13 68 7 16 104 111 111 111 246 125 159 103 50 153 98 77 192 5 96 215 66 214 194 1 96 221 108 9 234 185 9 175 91 170 213 156 187 209 94 220 80 229 245 74 175 187 113 203 141 248 111 77 74 60 229 108 227 134 136 0 0 0 0 73 69 78 68 174 66 96 130) asByteArray ].
	^ xxxCache at: 1</body>

<body package="SeaChartDemo-Demo" selector="dialogWarningPng">dialogWarningPng
	| xxxCache |
	xxxCache := #(nil) beMutable.
	(xxxCache at: 1) isNil ifTrue: [
		xxxCache at: 1 put: #(137 80 78 71 13 10 26 10 0 0 0 13 73 72 68 82 0 0 0 32 0 0 0 32 8 6 0 0 0 115 122 122 244 0 0 0 4 115 66 73 84 8 8 8 8 124 8 100 136 0 0 5 38 73 68 65 84 88 133 229 151 91 104 84 71 24 128 191 153 115 206 238 217 139 187 49 137 171 89 27 147 38 235 221 136 203 170 136 151 120 201 130 151 128 196 10 86 68 163 21 31 52 144 82 21 37 245 130 90 91 233 131 136 125 242 197 198 88 106 31 242 34 141 32 38 18 163 162 96 144 32 68 37 17 188 34 102 19 132 218 205 198 102 147 120 206 233 67 146 37 38 70 155 139 79 253 97 152 97 102 254 255 255 254 51 255 204 207 129 255 187 40 35 81 46 7 101 38 40 215 193 28 174 13 57 92 197 95 97 111 59 252 157 9 177 50 56 62 92 59 98 56 74 101 144 111 79 73 249 51 180 105 147 130 97 80 119 225 66 87 60 26 221 246 13 252 241 217 1 202 65 105 23 162 113 110 113 113 182 250 224 129 16 170 74 60 45 205 186 119 254 124 115 20 190 252 22 58 134 98 111 200 71 208 6 133 41 193 96 166 91 81 68 172 166 134 88 117 53 222 228 100 225 9 4 82 220 80 52 84 123 67 2 40 7 135 162 40 63 79 89 181 74 109 189 116 9 153 154 10 169 169 196 42 43 153 22 14 219 164 16 199 206 65 210 103 3 248 7 138 211 22 47 30 171 181 180 208 241 248 49 250 129 3 56 142 29 35 222 208 128 222 209 129 47 39 199 46 224 251 207 2 112 1 198 42 186 126 56 176 124 185 214 122 249 50 202 172 89 104 249 249 216 194 97 212 185 115 137 93 189 74 246 226 197 54 169 170 223 149 66 250 168 3 116 194 161 244 188 60 187 249 240 33 93 145 8 250 254 253 8 217 173 238 40 41 161 243 213 43 148 166 38 252 161 144 144 112 98 84 1 74 33 221 238 245 22 103 206 155 167 197 170 170 208 150 46 69 91 184 16 33 4 66 8 180 96 16 219 234 213 196 110 220 32 35 24 212 164 195 177 233 28 228 140 26 128 132 19 153 43 87 138 206 59 119 48 98 49 244 125 251 16 162 251 6 247 246 206 253 251 49 98 49 204 198 70 50 230 205 51 37 156 26 21 128 179 48 203 49 126 252 38 255 148 41 106 219 245 235 216 10 10 80 167 79 199 48 12 90 91 91 137 70 163 152 166 137 146 145 129 99 203 22 222 214 214 226 15 4 84 213 235 93 81 10 43 70 12 160 194 169 236 252 124 43 94 83 131 101 89 56 118 239 6 32 18 137 16 12 6 9 6 131 68 34 17 132 16 56 139 139 177 20 133 174 123 247 200 154 63 31 21 78 91 159 120 236 62 10 80 6 185 238 172 172 188 212 148 20 229 109 109 45 246 173 91 145 126 63 66 8 92 46 87 98 159 203 229 66 8 129 76 73 193 85 84 68 251 253 251 164 38 39 75 155 207 55 173 12 190 30 22 128 5 66 8 241 203 212 53 107 120 91 85 133 112 187 209 119 238 76 156 121 127 0 232 206 7 231 142 29 200 113 227 136 215 213 145 29 10 169 18 78 150 131 109 200 0 231 225 171 164 217 179 115 220 166 41 219 235 235 177 239 218 133 76 74 74 56 114 56 28 40 138 130 162 40 232 186 158 184 17 210 233 196 181 119 47 29 79 158 224 149 82 184 38 77 242 189 133 93 67 2 56 10 170 84 148 147 83 194 97 217 118 229 10 210 239 71 47 44 76 56 73 100 190 211 137 211 233 124 111 94 8 129 115 195 6 180 169 83 105 175 171 35 43 39 71 83 164 252 225 119 240 252 103 128 12 216 225 91 176 96 162 253 245 107 209 241 244 41 142 61 123 144 186 158 136 190 183 247 120 60 120 60 158 1 96 82 85 241 28 58 68 87 115 51 142 104 20 111 86 150 110 12 242 68 15 0 248 13 92 138 174 255 148 149 155 171 197 42 43 81 103 204 64 47 40 24 224 92 8 49 224 11 244 93 115 132 195 216 23 45 34 94 95 79 230 228 201 54 161 105 123 206 195 196 79 2 152 176 119 98 110 238 24 217 216 72 87 75 11 206 146 18 144 114 128 3 128 138 138 10 42 42 42 6 28 65 111 75 58 114 4 35 22 67 109 106 98 92 32 128 5 63 126 20 160 20 198 217 188 222 146 140 80 72 139 85 87 163 45 90 132 182 100 201 7 157 11 33 216 182 109 27 133 61 185 209 119 189 183 217 231 204 193 181 110 29 29 143 30 49 209 239 183 73 93 47 44 131 153 131 2 40 112 120 82 94 158 106 222 189 139 209 214 134 179 164 100 208 232 132 16 104 154 134 236 41 72 253 215 122 231 146 14 30 196 178 44 196 139 23 164 5 2 38 253 158 232 4 64 41 100 217 124 190 162 180 236 108 173 237 214 45 236 107 215 162 229 228 12 26 189 16 130 242 242 114 46 94 188 56 168 115 33 4 182 204 76 60 219 183 211 249 236 25 19 188 94 85 115 187 195 101 144 219 235 87 237 19 253 241 204 101 203 172 174 219 183 49 227 113 244 245 235 161 181 21 171 199 24 66 188 55 78 180 110 111 88 125 250 254 123 220 27 55 18 61 115 6 243 249 115 252 233 233 214 203 134 134 147 192 252 190 0 210 130 124 95 118 182 26 187 118 13 128 232 150 45 253 243 101 196 98 188 121 67 82 122 186 242 28 66 71 65 63 10 241 94 0 231 59 104 142 220 188 57 230 139 205 155 165 212 52 176 44 44 195 0 211 196 50 140 238 177 97 96 153 102 119 223 111 60 96 173 255 156 105 98 198 227 52 191 124 105 89 240 215 209 158 34 213 91 169 92 69 176 34 4 103 37 248 70 61 244 62 98 194 235 251 176 243 52 92 2 186 250 150 202 36 96 236 52 152 160 128 110 246 201 143 145 138 132 119 128 48 32 222 8 77 64 11 208 14 3 107 181 2 232 128 157 17 252 182 125 64 76 160 11 232 236 105 214 40 218 30 153 252 11 112 11 162 158 225 77 47 180 0 0 0 0 73 69 78 68 174 66 96 130) asByteArray ].
	^ xxxCache at: 1</body>
</methods>

<methods>
<class-id>Seaside.SCDFileLibrary class</class-id> <category>class initialization</category>

<body package="SeaChartDemo-Demo" selector="initialize">initialize
	self register</body>
</methods>

<methods>
<class-id>Seaside.SCDFrame</class-id> <category>actions</category>

<body package="SeaChartDemo-Core" selector="showCrossFade">showCrossFade
	self selectedMainComponent: self mainComponents eighth value</body>

<body package="SeaChartDemo-Core" selector="showCssBarGraph">showCssBarGraph
	self selectedMainComponent: self mainComponents fourth value</body>

<body package="SeaChartDemo-Core" selector="showFadeIn">showFadeIn
	self selectedMainComponent: self mainComponents seventh value</body>

<body package="SeaChartDemo-Core" selector="showPlotKit">showPlotKit
	self selectedMainComponent: self mainComponents second value</body>

<body package="SeaChartDemo-Core" selector="showProtoGrowl">showProtoGrowl
	self selectedMainComponent: self mainComponents third value</body>

<body package="SeaChartDemo-Core" selector="showReflection">showReflection
	self selectedMainComponent: self mainComponents fifth value</body>

<body package="SeaChartDemo-Core" selector="showStarRater">showStarRater
	self selectedMainComponent: self mainComponents sixth value</body>
</methods>

<methods>
<class-id>Seaside.SCDFrame</class-id> <category>initialize-release</category>

<body package="SeaChartDemo-Core" selector="initialize">initialize
	super initialize.
	self mainComponents: (OrderedCollection new
		add: 'Home' -&gt; (SCDHome frame: self);
		add: 'PlotKit' -&gt; SCDPlotKitDemo new;
		add: 'protoGrowl' -&gt; SCDProtoGrowlDemo new;
		add: 'CSS Bar Graph' -&gt; SCDBarDemo new;
		add: 'Reflection' -&gt; SCDReflectionDemo new;
		add: 'Star Rater' -&gt; SCDStarRaterDemo new;
		add: 'Fade In' -&gt; SCDFadeInDemo new;
		add: 'Crossfade' -&gt; SCDCrossFadeDemo new;	
		yourself)</body>
</methods>

<methods>
<class-id>Seaside.SCDFrame</class-id> <category>updating</category>

<body package="SeaChartDemo-Core" selector="updateRoot:">updateRoot: anHtmlRoot 
	super updateRoot: anHtmlRoot.
	anHtmlRoot title: self selectedMainComponent title.
	anHtmlRoot stylesheet url: SCDFileLibrary / #andreas08Css</body>
</methods>

<methods>
<class-id>Seaside.SCDFrame</class-id> <category>rendering</category>

<body package="SeaChartDemo-Core" selector="renderContentOn:">renderContentOn: html
	html div
		id: 'container';
		with: [
			self renderHeaderOn: html.
			self renderNavigationOn: html.
			self renderMainContentOn: html.
			self renderFooterOn: html ]</body>

<body package="SeaChartDemo-Core" selector="rendererClass">rendererClass
	^WARenderCanvas</body>

<body package="SeaChartDemo-Core" selector="renderFooterOn:">renderFooterOn: html
	html div
		id: 'footer';
		with: [
			html paragraph: [
				html text: 'Design by '.				
				html anchor
					url: 'http://andreasviklund.com';
					with: 'Andreas Viklund ' ] ]</body>

<body package="SeaChartDemo-Core" selector="renderHeaderOn:">renderHeaderOn: html
	html div
		id: 'header';
		with: [
			html heading level1; with: 'seachart'.
			html heading level2; with: 'css and javascript goodies for seaside' ]</body>

<body package="SeaChartDemo-Core" selector="renderMainContentOn:">renderMainContentOn: html
	html div
		id: 'content';
		with: self selectedMainComponent</body>

<body package="SeaChartDemo-Core" selector="renderNavigationOn:">renderNavigationOn: html
	html div
		id: 'navigation';
		with: [
			html unorderedList: [
				self mainComponents do: [ :each |
					| li |
					li := html listItem.
					each value = self selectedMainComponent ifTrue: [
						li class: 'selected' ].
					li with: [
						html anchor
							callback: [ self selectedMainComponent: each value ];
							with: each key ] ] ] ]</body>

<body package="SeaChartDemo-Core" selector="style">style
	^'
.box pre {
	font-size: 120%;
	font-family: Verdana, Arial, Helvetica;
	color: #164a77
}
#content {
	width: 79%;
}
'</body>
</methods>

<methods>
<class-id>Seaside.SCDFrame</class-id> <category>accessing</category>

<body package="SeaChartDemo-Core" selector="children">children
	^self mainComponents collect: [ :each | each value ]</body>

<body package="SeaChartDemo-Core" selector="mainComponents">mainComponents
	^mainComponents</body>

<body package="SeaChartDemo-Core" selector="mainComponents:">mainComponents: anObject
	mainComponents := anObject</body>

<body package="SeaChartDemo-Core" selector="selectedMainComponent">selectedMainComponent
	selectedMainComponent isNil ifTrue: [
		selectedMainComponent := self mainComponents first value ].
	^selectedMainComponent</body>

<body package="SeaChartDemo-Core" selector="selectedMainComponent:">selectedMainComponent: anObject
	selectedMainComponent := anObject</body>
</methods>

<methods>
<class-id>Seaside.SCDFrame class</class-id> <category>testing</category>

<body package="SeaChartDemo-Core" selector="canBeRoot">canBeRoot
	^true</body>

<body package="SeaChartDemo-Core" selector="description">description
	^'SeaChart Demo'</body>
</methods>

<methods>
<class-id>Seaside.SCDFrame class</class-id> <category>private</category>

<body package="SeaChartDemo-Core" selector="initialize">initialize
	"self initialize"
	self register</body>

<body package="SeaChartDemo-Core" selector="register">register
	| application |
	application := self registerAsApplication: 'seachart'.
	application preferenceAt: #deploymentMode put: true.
	application
		 addLibrary: SULibrary;			"pre-req Scriptaculous"
		 addLibrary: SRStyles;			"Star rater"
		 addLibrary: BGGoodBadStyles;	"CSS bar graph"
		 addLibrary: PKScriptLibrary;	"PlotKit"
		 addLibrary: CFLibrary;			"Cross fade"
		 addLibrary: PGLibrary;			"Proto growl"
		 addLibrary: RFReflectionLibrary "Reflection"</body>
</methods>

<methods>
<class-id>Seaside.SCDGrowlDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	html anchor
		onClick: (html evaluator
			triggerFormElement: 'selector';
			on: #renderInformOn: of: self;
			return: false;
			yourself);
		with: 'inform'</body>

<body package="SeaChartDemo-Demo" selector="renderInformOn:">renderInformOn: script
	script add: (PGInfoMessage new title: 'title'; message: 'a message'; yourself)</body>
</methods>

<methods>
<class-id>Seaside.SCDDemoComponent</class-id> <category>accessing</category>

<body package="SeaChartDemo-Core" selector="rendererClass">rendererClass
	^WARenderCanvas</body>

<body package="SeaChartDemo-Core" selector="resources">resources
	^ SCDFileLibrary</body>

<body package="SeaChartDemo-Core" selector="title">title
	self subclassResponsibility </body>
</methods>

<methods>
<class-id>Seaside.SCDDemoComponent</class-id> <category>rendering</category>

<body package="SeaChartDemo-Core" selector="renderMethodSourceCode:on:">renderMethodSourceCode: anArray on: html 
	| sourceCodeStream |
	html div class: 'box';
		 style: 'clear: both; margin-top: 8px;';
		
		with: [html preformatted
				with: [anArray
						do: [:aSelector | 
							sourceCodeStream := (self class sourceCodeAt: aSelector) readStream.
							html strong: sourceCodeStream nextLine;
								 break;
								 text: sourceCodeStream upToEnd]
						separatedBy: [html break; break]]]</body>
</methods>

<methods>
<class-id>Seaside.SCDProtoGrowlDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderInformationOn: html</body>

<body package="SeaChartDemo-Demo" selector="renderGrowlAnchorOn:">renderGrowlAnchorOn: html
	html anchor
		onClick: (html evaluator 
			callback: [ :script | 
				script growl beInfo
					title: 'Information';
					renderMessage: [ :r |
						r image url: (self resources / #dialogInformationPng).
						r text: 'Please note, the server time is: '.
						r strong: Time now ]];
			return: false);
		with: 'Display sever time at the bottom'.</body>

<body package="SeaChartDemo-Demo" selector="renderInformationOn:">renderInformationOn: html
	html heading level2; with: 'Information'.
	self renderGrowlAnchorOn: html.
	self renderMethodSourceCode: #(renderGrowlAnchorOn:) on: html</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html paragraph: [
		html anchor
			url: 'http://www.midgard-project.org/documentation/protogrowl/';
			with: 'protoGrowl'.
		html text: ' is a Javascript tool based on the '.
		html anchor
			url: 'http://prototype.conio.net/';
			with: 'Prototype'.
		html text:' library. It enables developers to display bubble-styled user interface messages inspired by the '.
		html anchor
			url: 'http://growl.info/about.php';
			text: 'Growl'.
		html text: ' notification system for '.
		html anchor
			url: 'http://www.apple.com/macosx/';
			with: 'OS X'.
		html text: '.'. ]</body>
</methods>

<methods>
<class-id>Seaside.SCDProtoGrowlDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="title">title
	^'protoGrowl Demo'</body>
</methods>

<methods>
<class-id>Seaside.SCDStarRaterDemo</class-id> <category>initialize-release</category>

<body package="SeaChartDemo-Demo" selector="initialize">initialize
	super initialize.
	self rater1: self starRaterOne.
	self rater2: self starRaterTwo.</body>

<body package="SeaChartDemo-Demo" selector="starRaterOne">starRaterOne
	^SRStarRater default
		clickable: false;
		rating: 3.6;
		yourself</body>

<body package="SeaChartDemo-Demo" selector="starRaterTwo">starRaterTwo
	^SRStarRater alternative: 4</body>
</methods>

<methods>
<class-id>Seaside.SCDStarRaterDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="children">children
	^Array
		with: self rater1
		with: self rater2</body>

<body package="SeaChartDemo-Demo" selector="rater1">rater1
	^rater1</body>

<body package="SeaChartDemo-Demo" selector="rater1:">rater1: anObject
	rater1 := anObject</body>

<body package="SeaChartDemo-Demo" selector="rater2">rater2
	^rater2</body>

<body package="SeaChartDemo-Demo" selector="rater2:">rater2: anObject
	rater2 := anObject</body>

<body package="SeaChartDemo-Demo" selector="title">title
	^'Star Rater Demo'</body>
</methods>

<methods>
<class-id>Seaside.SCDStarRaterDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderFirstOn: html.
	self renderSecondOn: html</body>

<body package="SeaChartDemo-Demo" selector="renderFirstOn:">renderFirstOn: html
	html render: self rater1.
	html paragraph: 'This is star rater with the default amount of stars (5) that is not clickable by the user and has a value of 3.6.'.
	self renderMethodSourceCode: #(starRaterOne) on: html.
	</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html paragraph: [		
		html text: 'A star rater made just of CSS and no JavaScript. Based on '.
		html anchor
			url: 'http://komodomedia.com/blog/index.php/2006/01/09/css-star-rating-part-deux/';
			with: 'CSS Star Rating Part Deux'.
		html text: '.'].</body>

<body package="SeaChartDemo-Demo" selector="renderSecondOn:">renderSecondOn: html
	html render: self rater2.
	html paragraph: 'This is a rater with a maximum of stars of 4, an alternative style and that is clickable by the user and thus has tooltips.'.
	self renderMethodSourceCode: #(starRaterTwo) on: html.</body>
</methods>

<methods>
<class-id>Seaside.SCDReflectionDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderReflectionOn: html.
	self renderMethodSourceCode: #(renderReflectionOn:) on: html	</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html paragraph: [		
		html text: 'A unobtrusive script that adds a reflection all images with the class "reflect". Port of '.
		html anchor
			url: 'http://cow.neondragon.net/index.php/383-Reflectionjs-Demo';
			with: 'reflection.js'.
		html text: '.'].</body>

<body package="SeaChartDemo-Demo" selector="renderReflectionOn:">renderReflectionOn: html
	html image
		class: 'reflect';
		class: 'rheight60';
		class: 'ropacity60';
		url: RFDemoFileLibrary / #esuglogoGif
</body>
</methods>

<methods>
<class-id>Seaside.SCDReflectionDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="title">title
	^'Reflection Demo'</body>
</methods>

<methods>
<class-id>Seaside.SCDPlotKitDemo</class-id> <category>initialization</category>

<body package="SeaChartDemo-Demo" selector="barChart">barChart
	| chart dataset1 dataset2 dataset3 layout |
	dataset1 := PKDataset new
			name: 'data1';
			addAll: #(5 4 3 5 6 7);
			yourself.
	dataset2 := PKDataset new
			name: 'data2';
			addAll: #(2.5 2 1.5 2.5 3 3.5);
			yourself.
	dataset3 := PKDataset new
			name: 'data3';
			addAll: #(1.25 1 0.75 1.25 1.5 1.75);
			yourself.
	layout := PKBarLayout new.
	layout addDataset: dataset1.
	layout addDataset: dataset2.
	layout addDataset: dataset3.
	chart := PKChart new
			renderer: PKSweetCanvasRenderer new;
			layout: layout;
			width: 600; height: 200;
			yourself.
	chart rendererOptions officeColors: PKOfficeColors green.
	^chart</body>

<body package="SeaChartDemo-Demo" selector="initialize">initialize
	super initialize.
	pieChart := self pieChart.
	lineChart := self lineChart.
	barChart := self barChart</body>

<body package="SeaChartDemo-Demo" selector="lineChart">lineChart
	| chart dataset1 dataset2 dataset3 layout |
	dataset1 := PKDataset new
			name: 'data1';
			addAll: #(5 4 3 5 6 7);
			yourself.
	dataset2 := PKDataset new
			name: 'data2';
			addAll: #(2.5 2 1.5 2.5 3 3.5);
			yourself.
	dataset3 := PKDataset new
			name: 'data3';
			addAll: #(1.25 1 0.75 1.25 1.5 1.75);
			yourself.
	layout := PKLineLayout new.
	layout addDataset: dataset1.
	layout addDataset: dataset2.
	layout addDataset: dataset3.
	chart := PKChart new
			renderer: PKSweetCanvasRenderer new;
			layout: layout;
			width: 600; height: 200;
			yourself.
	chart rendererOptions officeColors: PKOfficeColors red.
	^chart</body>

<body package="SeaChartDemo-Demo" selector="pieChart">pieChart
	| dataset layout |
	dataset := PKDataset new
			name: 'data1';
			addAll: #(5 4 3 5 6 7);
			yourself.
	layout := PKPieLayout new.
	layout options xTicks: (Dictionary new
			at: 0 put: 'five';
			at: 1 put: 'four';
			at: 2 put: 'three';
			at: 3 put: 'five';
			at: 4 put: 'six';
			at: 5 put: 'seven';
			yourself).
	layout addDataset: dataset.
	layout options pieRadius: 0.4.
	^PKChart new
			renderer: PKSweetCanvasRenderer new;
			layout: layout;
			width: 600; height: 200;
			yourself
</body>
</methods>

<methods>
<class-id>Seaside.SCDPlotKitDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderBarChartOn:">renderBarChartOn: html
	html heading level2 with: 'Bar Chart'.
	html render: self barChart.
	self renderMethodSourceCode: #(barChart) on: html.
</body>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderPieChartOn: html.
	self renderLineChartOn: html.
	self renderBarChartOn: html</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html paragraph: [
		html text: 'PlotKit is a Chart and Graph Plotting Library for Javascript. It has support for HTML Canvas and also SVG via '.
		html anchor
			url: 'http://www.adobe.com/svg/viewer/install/main.html';
			with: 'Adobe SVG Viewer'.
		html text: ' and native browser support. It is based on '.
		html anchor
			url: 'http://www.liquidx.net/plotkit/';
			with: 'PlotKit'.
		html text: ' 0.9.1 by Alastair Tse and supports IE emulation via '.
		html anchor
			url: 'http://excanvas.sourceforge.net/';
			with: 'excanvas'. ]</body>

<body package="SeaChartDemo-Demo" selector="renderLineChartOn:">renderLineChartOn: html
	html heading level2 with: 'Line Chart'.
	html render: self lineChart.
	self renderMethodSourceCode: #(lineChart) on: html.
</body>

<body package="SeaChartDemo-Demo" selector="renderPieChartOn:">renderPieChartOn: html
	html heading level2 with: 'Pie Chart'.
	html render: pieChart.
	self renderMethodSourceCode: #(pieChart) on: html
</body>
</methods>

<methods>
<class-id>Seaside.SCDPlotKitDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="children">children
	^Array with: self pieChart with: self lineChart with: self barChart </body>

<body package="SeaChartDemo-Demo" selector="title">title
	^'PlotKit Demo'</body>
</methods>

<methods>
<class-id>Seaside.SCDBarDemo</class-id> <category>initialize-release</category>

<body package="SeaChartDemo-Demo" selector="initialize">initialize
	super initialize.
	self progressBar1: self buildProgressBar1.
	self progressBar2: self buildProgressBar2.
	self goodBadChart: self buildGoodBadChart </body>
</methods>

<methods>
<class-id>Seaside.SCDBarDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="children">children
	^Array
		with: self progressBar1
		with: self progressBar2
		with: self goodBadChart </body>

<body package="SeaChartDemo-Demo" selector="goodBadChart">goodBadChart
	^goodBadChart</body>

<body package="SeaChartDemo-Demo" selector="goodBadChart:">goodBadChart: anObject
	goodBadChart := anObject</body>

<body package="SeaChartDemo-Demo" selector="progressBar1">progressBar1
	^progressBar1</body>

<body package="SeaChartDemo-Demo" selector="progressBar1:">progressBar1: anObject
	progressBar1 := anObject</body>

<body package="SeaChartDemo-Demo" selector="progressBar2">progressBar2
	^progressBar2</body>

<body package="SeaChartDemo-Demo" selector="progressBar2:">progressBar2: anObject
	progressBar2 := anObject</body>

<body package="SeaChartDemo-Demo" selector="title">title
	^'CSS Bar Graph Demo'</body>
</methods>

<methods>
<class-id>Seaside.SCDBarDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderProgressBarOn: html.
	self renderGoodBadOn: html</body>

<body package="SeaChartDemo-Demo" selector="renderGoodBadOn:">renderGoodBadOn: html
	html heading level2; with: 'Complex Bar Graph'.
	html paragraph: 'This is a more complex visualization, yet still following the same basic idea. Here the graph is a `bad'' to `good'' indicator with a marker that travels the length of the color scheme. A lighter bar shade also helps indicate the marker position as it travels from left to right.'.

	html render: self goodBadChart.
	self renderMethodSourceCode: #(buildGoodBadChart) on: html.
</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html paragraph: [
		html text: 'A bar graph library based on CSS and XHTML. It is based on '.
		html anchor
			url: 'http://apples-to-oranges.com/blog/article.aspx?id=55';
			with: 'CSS FOR BAR GRAPHS'.
		html text: '.' ]</body>

<body package="SeaChartDemo-Demo" selector="renderProgressBarOn:">renderProgressBarOn: html

	html heading level2; with: 'Basic Bar Graph'.
	html paragraph: 'This is a simple bar graph that displays progress. '.

	html render: self progressBar1.
	self renderMethodSourceCode: #(buildProgressBar1) on: html.

	html render: self progressBar2.
	self renderMethodSourceCode: #(buildProgressBar2) on: html.
</body>
</methods>

<methods>
<class-id>Seaside.SCDBarDemo</class-id> <category>private</category>

<body package="SeaChartDemo-Demo" selector="buildGoodBadChart">buildGoodBadChart
	^BGGoodBadChart new
		add: 'Love Life' value: 25;
		add: 'Education' value: 55;
		add: 'War Craft 3 Rank' value: 75;
		yourself</body>

<body package="SeaChartDemo-Demo" selector="buildProgressBar1">buildProgressBar1
	^BGProgressBar new
		progress: 53;
		yourself</body>

<body package="SeaChartDemo-Demo" selector="buildProgressBar2">buildProgressBar2
	^BGProgressBar new
		progress: 8;
		textColor: (Color r: 207 g: 33 b: 1  range: 256);
		yourself</body>
</methods>

<methods>
<class-id>Seaside.SCDHome</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	html heading level2; with: 'Welcome to the SeaChart Live Demo'.

	html paragraph: [
		html text: 'This is a live demo application that showcases serveral '.
		html anchor
			url: 'http://www.squeaksource.com/seachart/';
			with: 'SeaChart'.
		html text: ' components. SeaChart components are standard '.
		html anchor
			url: 'http://www.seaside.st/';
			with: 'Seaside'.
		html text: ' components that you can embed into your Seaside application. Each demo includes the rendered component and the sourcecode to crate it.' ].

	html heading level3; with: 'List of Hosted Demos:'.
	html unorderedList: [
		html listItem: [
			html anchor
				callback: [ self frame showPlotKit ];
				with: 'PlotKit'].
		html listItem: [
			html anchor
				callback: [ self frame showProtoGrowl ];
				with: 'protoGrowl'].
		html listItem: [
			html anchor
				callback: [ self frame showCssBarGraph ];
				with: 'CSS Bar Graph'].
		html listItem: [
			html anchor
				callback: [ self frame showReflection ];
				with: 'Reflection'].
		html listItem: [
			html anchor
				callback: [ self frame showStarRater ];
				with: 'Star Rater'].
		html listItem: [
			html anchor
				callback: [ self frame showFadeIn ];
				with: 'Fade In'].
		html listItem: [
			html anchor
				callback: [ self frame showCrossFade ];
				with: 'Cross Fade'] ].
	
	html paragraph: [
		html anchor
			url: 'http://www.squeaksource.com/seachart.html';
			with: 'SqueakSource project page' ]

	</body>
</methods>

<methods>
<class-id>Seaside.SCDHome</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="frame">frame
	^frame</body>

<body package="SeaChartDemo-Demo" selector="frame:">frame: aFrame 
	frame := aFrame</body>

<body package="SeaChartDemo-Demo" selector="title">title
	^'SeaChart Home'</body>
</methods>

<methods>
<class-id>Seaside.SCDHome class</class-id> <category>instance creation</category>

<body package="SeaChartDemo-Demo" selector="frame:">frame: aFrame
	^self new
		frame: aFrame;
		yourself</body>
</methods>

<methods>
<class-id>Seaside.SCDFadeInDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderImageOn: html</body>

<body package="SeaChartDemo-Demo" selector="renderImageOn:">renderImageOn: html
	html render: image.
	self renderMethodSourceCode: #(fadeInImage) on: html</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html blockquote: [
		html text: 'A function to show an `image loading'' message and subsequent fade-in of a photo. Inspired by the Flash-like effect on '.
		html anchor
			url: 'http://www.couloir.org/';
			with: 'Couloir'.
		html text: '.'].
	html paragraph: [
		html text: 'Based on '.
		html anchor
			url: 'http://clagnut.com/sandbox/imagefades/';
			with: 'Onload image fades without Flash'.
		html text: '.' ].</body>
</methods>

<methods>
<class-id>Seaside.SCDFadeInDemo</class-id> <category>initialize-release</category>

<body package="SeaChartDemo-Demo" selector="fadeInImage">fadeInImage
	^FIFadeInImage new
		image: FIDemoLibrary / #ithakaJpg;
		dimension: 450@338;
		yourself</body>

<body package="SeaChartDemo-Demo" selector="initialize">initialize
	super initialize.
	image := self fadeInImage.</body>
</methods>

<methods>
<class-id>Seaside.SCDFadeInDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="children">children
	^Array with: image</body>

<body package="SeaChartDemo-Demo" selector="title">title
	^'Fade In Demo'</body>
</methods>

<methods>
<class-id>Seaside.SCDListDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderListOn: html.
	self renderSourceOn: html</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html paragraph: [
		html text: 'Port of '.
		html anchor
			url: 'http://print.wordpress.com/2006/02/22/css-beautifully-numbered-lists/';
			with: 'Beautifully Numbered Lists'.
		html text: ' but changed so that it validates.'].</body>

<body package="SeaChartDemo-Demo" selector="renderListItem:content:on:">renderListItem: aTitleString content: aContentString on: html
	html listItem: [
		html definitionList: [
			html definitionTerm: aTitleString.
			html definitionData: aContentString ] ]</body>

<body package="SeaChartDemo-Demo" selector="renderListOn:">renderListOn: html
	html orderedList
		class: 'numberedList';
		with: [
			self titleStrings with: self contentStrings do: [ :title : content |
				self renderListItem: title content: content on: html ] ]</body>

<body package="SeaChartDemo-Demo" selector="renderSourceOn:">renderSourceOn: html
	self renderMethodSourceCode: #(renderListOn: renderListItem:content:on:) on: html.
</body>
</methods>

<methods>
<class-id>Seaside.SCDListDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="contentStrings">contentStrings
	^#(
		'Cras vel ipsum a magna luctus laoreet. Nullam et arcu. Phasellus pede enim, fringilla non, egestas et, vulputate sit amet, nisi. Vivamus dapibus tristique eros. Donec facilisis varius nulla. Morbi non turpis.'

		'Morbi lorem dolor, tincidunt a, ultricies non, pharetra aliquet, ante. Nulla ut mauris vel tellus porttitor ultricies. Morbi scelerisque. Nullam viverra. Phasellus sollicitudin diam ac enim. Nulla quam est, congue nec, pharetra in, laoreet vulputate, sem. Nullam sed orci. Morbi rutrum, mi facilisis hendrerit semper, magna diam porttitor dolor, in auctor nisi ipsum eget dolor. Praesent sodales aliquet magna. Nulla dapibus ligula et diam. Fusce et arcu. Quisque non enim.'
		'Aliquam erat volutpat. Nunc hendrerit, ante malesuada ornare imperdiet, ipsum lectus vestibulum mi, vitae congue erat enim sit amet pede. Nulla facilisi. Vestibulum nonummy pede a magna. Praesent mollis nulla tincidunt metus. Proin metus magna, lacinia in, lobortis at, auctor quis, urna. Donec commodo nisi in pede. In hac habitasse platea dictumst.'
	)</body>

<body package="SeaChartDemo-Demo" selector="title">title
	^'Numbered List Demo'</body>

<body package="SeaChartDemo-Demo" selector="titleStrings">titleStrings
	^#(
		'Ut auctor libero vel justo.'
		'Duis quam leo, dapibus vel, pulvinar vitae, tristique pretium, metus.'
		'Pellentesque eros urna, suscipit vitae, fringilla sed, gravida in, eros.'
	)</body>
</methods>

<methods>
<class-id>Seaside.SCDCrossFadeDemo</class-id> <category>rendering</category>

<body package="SeaChartDemo-Demo" selector="renderContainterOn:">renderContainterOn: html
	html render: container.
	self renderMethodSourceCode: #(imageContainer) on: html
</body>

<body package="SeaChartDemo-Demo" selector="renderContentOn:">renderContentOn: html
	self renderIntroOn: html.
	self renderContainterOn: html</body>

<body package="SeaChartDemo-Demo" selector="renderIntroOn:">renderIntroOn: html
	html paragraph: [
		html text: 'Creates an sildeshow of images and crossfades between them. Based on '.
		html anchor
			url: 'http://slayeroffice.com/code/imageCrossFade/xfade2.html';
			with: 'Image Cross Fader Redux'.
		html text: '.']</body>
</methods>

<methods>
<class-id>Seaside.SCDCrossFadeDemo</class-id> <category>initialize-release</category>

<body package="SeaChartDemo-Demo" selector="imageContainer">imageContainer
	^CFImageContainer new
		images: ((OrderedCollection new)
			add: CFDemoLibrary / #img1Jpg;
			add: CFDemoLibrary / #img2Jpg;
			add: CFDemoLibrary / #img3Jpg;
			add: CFDemoLibrary / #img4Jpg;
			add: CFDemoLibrary / #img5Jpg;
			add: CFDemoLibrary / #img6Jpg;
			add: CFDemoLibrary / #img7Jpg;
			add: CFDemoLibrary / #img8Jpg;
			yourself);
		yourself</body>

<body package="SeaChartDemo-Demo" selector="initialize">initialize
	super initialize.
	container := self imageContainer</body>
</methods>

<methods>
<class-id>Seaside.SCDCrossFadeDemo</class-id> <category>accessing</category>

<body package="SeaChartDemo-Demo" selector="children">children
	^Array with: container</body>

<body package="SeaChartDemo-Demo" selector="title">title
	^'Cross Fade Demo'</body>
</methods>

<initialize>
<class-id>Seaside.SCDFileLibrary</class-id>
</initialize>

<initialize>
<class-id>Seaside.SCDFrame</class-id>
</initialize>

<do-it>"Imported Classes:"</do-it>

<do-it>self error: 'Attempting to file-in parcel imports.  Choose terminate or close'</do-it>

<class>
<name>WAComponent</name>
<environment>Seaside</environment>
<super>Seaside.WAPresenter</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars>decoration </inst-vars>
<class-inst-vars></class-inst-vars>
<imports></imports>
<category>Seaside-Component</category>
<attributes>
<package>Seaside-Component</package>
</attributes>
</class>

<class>
<name>WAFileLibrary</name>
<environment>Seaside</environment>
<super>Seaside.WALibrary</super>
<private>false</private>
<indexed-type>none</indexed-type>
<inst-vars></inst-vars>
<class-inst-vars>default </class-inst-vars>
<imports></imports>
<category>Seaside-Libraries</category>
<attributes>
<package>Seaside-Libraries</package>
</attributes>
</class>

</st-source>
