1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
4
<title>Dial: Show Range Cases</title>
6
<!-- Source File and Seed for YUI3-->
7
<link rel="stylesheet" type="text/css" href="../../../../build/cssreset/reset-min.css">
8
<link type="text/css" rel="stylesheet" href="../../../../build/cssfonts/fonts-min.css">
10
<script src="../../../../build/yui/yui.js"></script>
27
border:solid 1px #abc;
35
border-top:solid 50px #0f0;
38
border-top-color:#f00;
40
.angle-lines li.range{
41
border-top-color: #458042;
42
border-top-width: 8px;
63
/*border:solid 1px #f00;*/
70
/*border:solid 1px #f00;*/
86
em {font-weight:bold;}
90
<body class="yui3-skin-sam">
91
<div class="hd">Test on Dials with different value ranges</div>
97
<div class="width-container">
98
<span id="dial_container1"></span>
99
<span id="dial_container2"></span>
100
<span id="dial_container3"></span>
101
<span id="dial_container4"></span>
102
<span id="dial_container5"></span>
103
<span id="dial_container6"></span>
105
<li><img src="assets/images/clock.png" width="200" height="200"/><div>Range is one revolution</div><div class="num">1</div></li>
106
<li><img src="assets/images/wrapper.png" width="200" height="200"/><div>Range wraps around the dial one or more times</div><div class="num">2</div></li>
107
<li><img src="assets/images/needle.png" width="200" height="200"/><div>Range is < one revolution. The wrap point is in the range</div><div class="num">3</div></li>
108
<li><img src="assets/images/gas.png" width="200" height="200"/><div>Range is < one revolution. No wrap point in either the range nor out of range section</div><div class="num">4</div></li>
109
<li><img src="assets/images/ship.png" width="200" height="200"/><div>Range is < one revolution. wrap point found in out of range section</div><div class="num">5</div></li>
115
YUI({lang:'en', filter:'raw'}).use("dial", function(Y) {
119
function drawMinMaxLines(dialObj){
121
var min = dialObj.get('min'),
122
max = dialObj.get('max'),
124
rangeDashNum = range / 5,
125
angMax, angMin, thisVal = min, angThis, newUl, newLi, label;
127
newUl = Y.Node.create('<ul class="angle-lines"></ul>')
128
dialObj._ringNode.append(newUl);
130
for(var i = 1; i < rangeDashNum; i++){
131
thisVal = min + ((range / rangeDashNum) * i);
132
angThis = dialObj._getAngleFromValue(thisVal);
133
newLi = Y.Node.create('<li class="range" style="-moz-transform: rotate(' + angThis + 'deg); -moz-transform-origin: center center;"></li>');
137
angMin = dialObj._getAngleFromValue(dialObj.get('min'));
138
newLi = Y.Node.create('<li class="min" style="-moz-transform: rotate(' + angMin + 'deg); -moz-transform-origin: bottom center;"></li>');
141
angMax = dialObj._getAngleFromValue(dialObj.get('max'));
142
newLi = Y.Node.create('<li class="max" style="-moz-transform: rotate(' + angMax + 'deg); -moz-transform-origin: bottom center;"></li>');
146
label = Y.Node.create('<div class="min-max-label">min: ' + dialObj.get('min') + '<br>max: ' + dialObj.get('max') + '</div>');
147
dialObj._ringNode.append(label);
150
var dial_00 = new Y.Dial({
153
stepsPerRevolution:100,
158
dial_00.render("#dial_container1");
159
drawMinMaxLines(dial_00);
161
var dial_01 = new Y.Dial({
164
stepsPerRevolution:100,
169
dial_01.render("#dial_container2");
170
drawMinMaxLines(dial_01);
172
var dial_02 = new Y.Dial({
177
stepsPerRevolution:100,
182
strings:{label:'Monkeys in barrel:', resetStr: 'Reset', tooltipHandle: 'my tool tip text'}
185
dial_02.render("#dial_container3");
186
drawMinMaxLines(dial_02);
188
var dial_03 = new Y.Dial({
191
stepsPerRevolution:100,
195
strings:{label:'Altitude in Kilometers:', resetStr: 'Reset', tooltipHandle: 'Drag to set'}
198
dial_03.render("#dial_container4");
199
drawMinMaxLines(dial_03);
201
//////////////////////////////////////////////////////////////////
202
var dial_04 = new Y.Dial({
205
stepsPerRevolution:100,
210
dial_04.render("#dial_container5");
211
drawMinMaxLines(dial_04);
212
//////////////////////////////////////////////////////////////////
213
var dial_05 = new Y.Dial({
216
stepsPerRevolution:100,
221
dial_05.render("#dial_container6");
222
drawMinMaxLines(dial_05);
224
var dial_05 = new Y.Dial({
227
stepsPerRevolution:100,
232
dial_05.render("#dial_container");
233
drawMinMaxLines(dial_05);
235
var dial_06 = new Y.Dial({
238
stepsPerRevolution:100,
243
dial_06.render("#dial_container");
244
drawMinMaxLines(dial_06);
245
///////////////////////////////////////////////////////