jsxgraph 1.6.0 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/CHANGELOG.md +25 -2
  2. package/distrib/docs/files.html +2 -2
  3. package/distrib/docs/index.html +2 -2
  4. package/distrib/docs/static/jsxgraph.css +24 -22
  5. package/distrib/docs/static/jsxgraphcore.js +2 -2
  6. package/distrib/docs/symbols/Angle.html +2 -2
  7. package/distrib/docs/symbols/Arc.html +2 -2
  8. package/distrib/docs/symbols/Arrow.html +2 -2
  9. package/distrib/docs/symbols/Arrowparallel.html +2 -2
  10. package/distrib/docs/symbols/Axis.html +2 -2
  11. package/distrib/docs/symbols/Bisector.html +2 -2
  12. package/distrib/docs/symbols/Bisectorlines.html +2 -2
  13. package/distrib/docs/symbols/Boxplot.html +2 -2
  14. package/distrib/docs/symbols/Button.html +4 -4
  15. package/distrib/docs/symbols/Cardinalspline.html +2 -2
  16. package/distrib/docs/symbols/Chart.html +2 -2
  17. package/distrib/docs/symbols/Checkbox.html +17 -17
  18. package/distrib/docs/symbols/Circle.html +2 -2
  19. package/distrib/docs/symbols/Circumcenter.html +4 -4
  20. package/distrib/docs/symbols/Circumcircle.html +2 -2
  21. package/distrib/docs/symbols/CircumcircleArc.html +2 -2
  22. package/distrib/docs/symbols/CircumcircleSector.html +2 -2
  23. package/distrib/docs/symbols/Comb.html +5 -5
  24. package/distrib/docs/symbols/Conic.html +2 -2
  25. package/distrib/docs/symbols/Constants.html +2 -2
  26. package/distrib/docs/symbols/Curve.html +2 -2
  27. package/distrib/docs/symbols/Curve3D.html +2 -2
  28. package/distrib/docs/symbols/CurveDifference.html +2 -2
  29. package/distrib/docs/symbols/CurveIntersection.html +2 -2
  30. package/distrib/docs/symbols/CurveUnion.html +2 -2
  31. package/distrib/docs/symbols/Derivative.html +2 -2
  32. package/distrib/docs/symbols/Ellipse.html +2 -2
  33. package/distrib/docs/symbols/ForeignObject.html +4 -4
  34. package/distrib/docs/symbols/Functiongraph.html +2 -2
  35. package/distrib/docs/symbols/Functiongraph3D.html +2 -2
  36. package/distrib/docs/symbols/Glider.html +4 -4
  37. package/distrib/docs/symbols/Grid.html +2 -2
  38. package/distrib/docs/symbols/Group.html +2 -2
  39. package/distrib/docs/symbols/Hatch.html +2 -2
  40. package/distrib/docs/symbols/Hyperbola.html +2 -2
  41. package/distrib/docs/symbols/Image.html +4 -4
  42. package/distrib/docs/symbols/Incenter.html +4 -4
  43. package/distrib/docs/symbols/Incircle.html +2 -2
  44. package/distrib/docs/symbols/Inequality.html +2 -2
  45. package/distrib/docs/symbols/Input.html +4 -4
  46. package/distrib/docs/symbols/Integral.html +2 -2
  47. package/distrib/docs/symbols/Intersection.html +4 -4
  48. package/distrib/docs/symbols/JXG.AbstractRenderer.html +2 -2
  49. package/distrib/docs/symbols/JXG.Board.html +144 -11
  50. package/distrib/docs/symbols/JXG.Board.infobox.html +2 -2
  51. package/distrib/docs/symbols/JXG.C.html +2 -2
  52. package/distrib/docs/symbols/JXG.CA.html +2 -2
  53. package/distrib/docs/symbols/JXG.CanvasRenderer.html +2 -2
  54. package/distrib/docs/symbols/JXG.Chart.html +2 -2
  55. package/distrib/docs/symbols/JXG.Circle.html +2 -2
  56. package/distrib/docs/symbols/JXG.Complex.html +2 -2
  57. package/distrib/docs/symbols/JXG.Composition.html +2 -2
  58. package/distrib/docs/symbols/JXG.Coords.html +2 -2
  59. package/distrib/docs/symbols/JXG.CoordsElement.html +54 -2
  60. package/distrib/docs/symbols/JXG.Curve.html +2 -2
  61. package/distrib/docs/symbols/JXG.Curve3D.html +2 -2
  62. package/distrib/docs/symbols/JXG.Dump.html +2 -2
  63. package/distrib/docs/symbols/JXG.EventEmitter.html +2 -2
  64. package/distrib/docs/symbols/JXG.ForeignObject.html +3 -3
  65. package/distrib/docs/symbols/JXG.GeometryElement.html +2 -2
  66. package/distrib/docs/symbols/JXG.GeometryElement3D.html +2 -2
  67. package/distrib/docs/symbols/JXG.GeonextParser.html +2 -2
  68. package/distrib/docs/symbols/JXG.Group.html +2 -2
  69. package/distrib/docs/symbols/JXG.Image.html +3 -3
  70. package/distrib/docs/symbols/JXG.JSXGraph.html +2 -2
  71. package/distrib/docs/symbols/JXG.JessieCode.html +2 -2
  72. package/distrib/docs/symbols/JXG.Legend.html +2 -2
  73. package/distrib/docs/symbols/JXG.Line.html +2 -2
  74. package/distrib/docs/symbols/JXG.Line3D.html +2 -2
  75. package/distrib/docs/symbols/JXG.Math.Clip.html +2 -2
  76. package/distrib/docs/symbols/JXG.Math.Extrapolate.html +2 -2
  77. package/distrib/docs/symbols/JXG.Math.Geometry.html +2 -2
  78. package/distrib/docs/symbols/JXG.Math.IntervalArithmetic.html +2 -2
  79. package/distrib/docs/symbols/JXG.Math.Metapost.html +2 -2
  80. package/distrib/docs/symbols/JXG.Math.Nlp.html +2 -2
  81. package/distrib/docs/symbols/JXG.Math.Numerics.html +23 -15
  82. package/distrib/docs/symbols/JXG.Math.Plot.html +2 -2
  83. package/distrib/docs/symbols/JXG.Math.Poly.Monomial.html +2 -2
  84. package/distrib/docs/symbols/JXG.Math.Poly.Polynomial.html +2 -2
  85. package/distrib/docs/symbols/JXG.Math.Poly.Ring.html +2 -2
  86. package/distrib/docs/symbols/JXG.Math.Poly.html +2 -2
  87. package/distrib/docs/symbols/JXG.Math.ProbFuncs.html +2 -2
  88. package/distrib/docs/symbols/JXG.Math.Quadtree.html +122 -7
  89. package/distrib/docs/symbols/JXG.Math.Statistics.html +2 -2
  90. package/distrib/docs/symbols/JXG.Math.Symbolic.html +2 -2
  91. package/distrib/docs/symbols/JXG.Math.html +45 -2
  92. package/distrib/docs/symbols/JXG.NoRenderer.html +2 -2
  93. package/distrib/docs/symbols/JXG.Options.html +2 -2
  94. package/distrib/docs/symbols/JXG.Plane3D.html +2 -2
  95. package/distrib/docs/symbols/JXG.Point.html +3 -3
  96. package/distrib/docs/symbols/JXG.Point3D.html +2 -2
  97. package/distrib/docs/symbols/JXG.Polygon.html +2 -2
  98. package/distrib/docs/symbols/JXG.SVGRenderer.html +2 -2
  99. package/distrib/docs/symbols/JXG.Server.html +2 -2
  100. package/distrib/docs/symbols/JXG.Server.modules.html +2 -2
  101. package/distrib/docs/symbols/JXG.Surface3D.html +2 -2
  102. package/distrib/docs/symbols/JXG.Text.html +8 -8
  103. package/distrib/docs/symbols/JXG.Ticks.html +2 -2
  104. package/distrib/docs/symbols/JXG.Transformation.html +2 -2
  105. package/distrib/docs/symbols/JXG.Turtle.html +2 -2
  106. package/distrib/docs/symbols/JXG.Util.Base64.html +2 -2
  107. package/distrib/docs/symbols/JXG.Util.UTF8.html +2 -2
  108. package/distrib/docs/symbols/JXG.Util.Unzip.html +2 -2
  109. package/distrib/docs/symbols/JXG.Util.html +2 -2
  110. package/distrib/docs/symbols/JXG.VMLRenderer.html +2 -2
  111. package/distrib/docs/symbols/JXG.View3D.html +2 -2
  112. package/distrib/docs/symbols/JXG.XML.html +2 -2
  113. package/distrib/docs/symbols/Label.html +114 -4
  114. package/distrib/docs/symbols/Legend.html +2 -2
  115. package/distrib/docs/symbols/Line.html +2 -2
  116. package/distrib/docs/symbols/Line3D.html +2 -2
  117. package/distrib/docs/symbols/Locus.html +2 -2
  118. package/distrib/docs/symbols/MajorArc.html +2 -2
  119. package/distrib/docs/symbols/MajorSector.html +2 -2
  120. package/distrib/docs/symbols/Metapostspline.html +2 -2
  121. package/distrib/docs/symbols/Midpoint.html +4 -4
  122. package/distrib/docs/symbols/MinorArc.html +2 -2
  123. package/distrib/docs/symbols/MinorSector.html +2 -2
  124. package/distrib/docs/symbols/Mirrorelement.html +2 -2
  125. package/distrib/docs/symbols/Mirrorpoint.html +4 -4
  126. package/distrib/docs/symbols/NonReflexAngle.html +2 -2
  127. package/distrib/docs/symbols/Normal.html +2 -2
  128. package/distrib/docs/symbols/Orthogonalprojection.html +4 -4
  129. package/distrib/docs/symbols/OtherIntersection.html +4 -4
  130. package/distrib/docs/symbols/Parabola.html +2 -2
  131. package/distrib/docs/symbols/Parallel.html +2 -2
  132. package/distrib/docs/symbols/Parallelpoint.html +4 -4
  133. package/distrib/docs/symbols/ParametricSurface3D.html +2 -2
  134. package/distrib/docs/symbols/Perpendicular.html +2 -2
  135. package/distrib/docs/symbols/PerpendicularPoint.html +4 -4
  136. package/distrib/docs/symbols/PerpendicularSegment.html +2 -2
  137. package/distrib/docs/symbols/Point.html +4 -4
  138. package/distrib/docs/symbols/Point3D.html +2 -2
  139. package/distrib/docs/symbols/PolarLine.html +2 -2
  140. package/distrib/docs/symbols/PolePoint.html +4 -4
  141. package/distrib/docs/symbols/Polygon.html +2 -2
  142. package/distrib/docs/symbols/PolygonalChain.html +2 -2
  143. package/distrib/docs/symbols/RadicalAxis.html +2 -2
  144. package/distrib/docs/symbols/Reflection.html +2 -2
  145. package/distrib/docs/symbols/ReflexAngle.html +2 -2
  146. package/distrib/docs/symbols/RegularPolygon.html +2 -2
  147. package/distrib/docs/symbols/Riemannsum.html +7 -3
  148. package/distrib/docs/symbols/Sector.html +2 -2
  149. package/distrib/docs/symbols/Segment.html +2 -2
  150. package/distrib/docs/symbols/Semicircle.html +2 -2
  151. package/distrib/docs/symbols/Slider.html +145 -4
  152. package/distrib/docs/symbols/Slopefield.html +2 -2
  153. package/distrib/docs/symbols/Slopetriangle.html +2 -2
  154. package/distrib/docs/symbols/Smartlabel.html +4 -4
  155. package/distrib/docs/symbols/Spline.html +2 -2
  156. package/distrib/docs/symbols/Stepfunction.html +2 -2
  157. package/distrib/docs/symbols/Tangent.html +2 -2
  158. package/distrib/docs/symbols/Tapemeasure.html +2 -2
  159. package/distrib/docs/symbols/Text.html +4 -4
  160. package/distrib/docs/symbols/Ticks.html +2 -2
  161. package/distrib/docs/symbols/Tracecurve.html +2 -2
  162. package/distrib/docs/symbols/Transformation.html +2 -2
  163. package/distrib/docs/symbols/Turtle.html +2 -2
  164. package/distrib/docs/symbols/Vectorfield.html +2 -2
  165. package/distrib/docs/symbols/View3D.html +2 -2
  166. package/distrib/docs/symbols/_global_.html +2 -2
  167. package/distrib/docs/symbols/src/src_3d_view3d.js.html +29 -30
  168. package/distrib/docs/symbols/src/src_base_board.js.html +5020 -4930
  169. package/distrib/docs/symbols/src/src_base_constants.js.html +1 -1
  170. package/distrib/docs/symbols/src/src_base_coordselement.js.html +1829 -1789
  171. package/distrib/docs/symbols/src/src_base_curve.js.html +783 -778
  172. package/distrib/docs/symbols/src/src_base_text.js.html +345 -358
  173. package/distrib/docs/symbols/src/src_element_checkbox.js.html +30 -30
  174. package/distrib/docs/symbols/src/src_element_slider.js.html +391 -377
  175. package/distrib/docs/symbols/src/src_math_numerics.js.html +1226 -1190
  176. package/distrib/docs/symbols/src/src_math_qdt.js.html +318 -194
  177. package/distrib/docs/symbols/src/src_options.js.html +7137 -7034
  178. package/distrib/docs/symbols/src/src_renderer_abstract.js.html +1168 -1167
  179. package/distrib/docs/symbols/src/src_renderer_canvas.js.html +1 -1
  180. package/distrib/docs/symbols/src/src_renderer_svg.js.html +489 -494
  181. package/distrib/docs/symbols/src/src_utils_env.js.html +127 -90
  182. package/distrib/docs.zip +0 -0
  183. package/distrib/geogebra.min.js +1 -1
  184. package/distrib/geonext.min.js +1 -1
  185. package/distrib/intergeo.min.js +1 -1
  186. package/distrib/jsxgraph.css +24 -22
  187. package/distrib/jsxgraph.zip +0 -0
  188. package/distrib/jsxgraphcore.js +2 -2
  189. package/distrib/jsxgraphcore.mjs +2 -2
  190. package/distrib/jsxgraphcore.mjs.map +1 -1
  191. package/distrib/jsxgraphsrc.js +707 -276
  192. package/distrib/jsxgraphsrc.mjs +707 -276
  193. package/distrib/jsxgraphsrc.mjs.map +1 -1
  194. package/distrib/sketch.min.js +1 -1
  195. package/package.json +1 -1
  196. package/src/3d/view3d.js +0 -1
  197. package/src/base/board.js +140 -50
  198. package/src/base/constants.js +1 -1
  199. package/src/base/coordselement.js +54 -14
  200. package/src/base/curve.js +6 -1
  201. package/src/base/text.js +13 -26
  202. package/src/element/checkbox.js +17 -17
  203. package/src/element/slider.js +16 -2
  204. package/src/math/heap.js +34 -4
  205. package/src/math/numerics.js +112 -76
  206. package/src/math/qdt.js +141 -17
  207. package/src/options.js +115 -12
  208. package/src/renderer/abstract.js +15 -14
  209. package/src/renderer/canvas.js +1 -1
  210. package/src/renderer/svg.js +0 -5
  211. package/src/utils/env.js +75 -38
@@ -175,391 +175,405 @@
175
175
  <span class='line'>168</span> </span><span class="WHIT"> </span><span class="NAME">ticks</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ti</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">t</span><span class="PUNC">,</span><span class="WHIT">
176
176
  <span class='line'>169</span> </span><span class="WHIT"> </span><span class="NAME">startx</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">starty</span><span class="PUNC">,</span><span class="WHIT">
177
177
  <span class='line'>170</span> </span><span class="WHIT"> </span><span class="NAME">withText</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">withTicks</span><span class="PUNC">,</span><span class="WHIT">
178
- <span class='line'>171</span> </span><span class="WHIT"> </span><span class="NAME">snapWidth</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">s</span><span class="PUNC">,</span><span class="WHIT">
179
- <span class='line'>172</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">;</span><span class="WHIT">
180
- <span class='line'>173</span>
181
- <span class='line'>174</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
182
- <span class='line'>175</span> </span><span class="WHIT"> </span><span class="NAME">withTicks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.withticks</span><span class="PUNC">;</span><span class="WHIT">
183
- <span class='line'>176</span> </span><span class="WHIT"> </span><span class="NAME">withText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.withlabel</span><span class="PUNC">;</span><span class="WHIT">
184
- <span class='line'>177</span> </span><span class="WHIT"> </span><span class="NAME">snapWidth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.snapwidth</span><span class="PUNC">;</span><span class="WHIT">
185
- <span class='line'>178</span>
186
- <span class='line'>179</span> </span><span class="WHIT"> </span><span class="COMM">// start point</span><span class="WHIT">
187
- <span class='line'>180</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"point1"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
188
- <span class='line'>181</span> </span><span class="WHIT"> </span><span class="NAME">p1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"point"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
189
- <span class='line'>182</span>
190
- <span class='line'>183</span> </span><span class="WHIT"> </span><span class="COMM">// end point</span><span class="WHIT">
191
- <span class='line'>184</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"point2"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
192
- <span class='line'>185</span> </span><span class="WHIT"> </span><span class="NAME">p2</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"point"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
193
- <span class='line'>186</span> </span><span class="WHIT"> </span><span class="COMM">//g = board.create('group', [p1, p2]);</span><span class="WHIT">
194
- <span class='line'>187</span>
195
- <span class='line'>188</span> </span><span class="WHIT"> </span><span class="COMM">// Base line</span><span class="WHIT">
196
- <span class='line'>189</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"baseline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
197
- <span class='line'>190</span> </span><span class="WHIT"> </span><span class="NAME">l1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"segment"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
198
- <span class='line'>191</span>
199
- <span class='line'>192</span> </span><span class="WHIT"> </span><span class="COMM">// This is required for a correct projection of the glider onto the segment below</span><span class="WHIT">
200
- <span class='line'>193</span> </span><span class="WHIT"> </span><span class="NAME">l1.updateStdform</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
178
+ <span class='line'>171</span> </span><span class="WHIT"> </span><span class="NAME">snapValues</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">snapValueDistance</span><span class="PUNC">,</span><span class="WHIT">
179
+ <span class='line'>172</span> </span><span class="WHIT"> </span><span class="NAME">snapWidth</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">s</span><span class="PUNC">,</span><span class="WHIT">
180
+ <span class='line'>173</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">;</span><span class="WHIT">
181
+ <span class='line'>174</span>
182
+ <span class='line'>175</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
183
+ <span class='line'>176</span> </span><span class="WHIT"> </span><span class="NAME">withTicks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.withticks</span><span class="PUNC">;</span><span class="WHIT">
184
+ <span class='line'>177</span> </span><span class="WHIT"> </span><span class="NAME">withText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.withlabel</span><span class="PUNC">;</span><span class="WHIT">
185
+ <span class='line'>178</span> </span><span class="WHIT"> </span><span class="NAME">snapWidth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.snapwidth</span><span class="PUNC">;</span><span class="WHIT">
186
+ <span class='line'>179</span> </span><span class="WHIT"> </span><span class="NAME">snapValues</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.snapvalues</span><span class="PUNC">;</span><span class="WHIT">
187
+ <span class='line'>180</span> </span><span class="WHIT"> </span><span class="NAME">snapValueDistance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attr.snapvaluedistance</span><span class="PUNC">;</span><span class="WHIT">
188
+ <span class='line'>181</span>
189
+ <span class='line'>182</span> </span><span class="WHIT"> </span><span class="COMM">// start point</span><span class="WHIT">
190
+ <span class='line'>183</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"point1"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
191
+ <span class='line'>184</span> </span><span class="WHIT"> </span><span class="NAME">p1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"point"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
192
+ <span class='line'>185</span>
193
+ <span class='line'>186</span> </span><span class="WHIT"> </span><span class="COMM">// end point</span><span class="WHIT">
194
+ <span class='line'>187</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"point2"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
195
+ <span class='line'>188</span> </span><span class="WHIT"> </span><span class="NAME">p2</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"point"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
196
+ <span class='line'>189</span> </span><span class="WHIT"> </span><span class="COMM">//g = board.create('group', [p1, p2]);</span><span class="WHIT">
197
+ <span class='line'>190</span>
198
+ <span class='line'>191</span> </span><span class="WHIT"> </span><span class="COMM">// Base line</span><span class="WHIT">
199
+ <span class='line'>192</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"baseline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
200
+ <span class='line'>193</span> </span><span class="WHIT"> </span><span class="NAME">l1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"segment"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
201
201
  <span class='line'>194</span>
202
- <span class='line'>195</span> </span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p1.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
203
- <span class='line'>196</span> </span><span class="WHIT"> </span><span class="NAME">pos1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p2.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
204
- <span class='line'>197</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
205
- <span class='line'>198</span> </span><span class="WHIT"> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
206
- <span class='line'>199</span> </span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
207
- <span class='line'>200</span> </span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
208
- <span class='line'>201</span>
209
- <span class='line'>202</span> </span><span class="WHIT"> </span><span class="NAME">sw</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">snapWidth</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
210
- <span class='line'>203</span> </span><span class="WHIT"> </span><span class="NAME">s</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Math.round</span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="PUNC">;</span><span class="WHIT">
211
- <span class='line'>204</span> </span><span class="WHIT"> </span><span class="NAME">startx</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">pos1</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">s</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
212
- <span class='line'>205</span> </span><span class="WHIT"> </span><span class="NAME">starty</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">pos1</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">s</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
213
- <span class='line'>206</span>
214
- <span class='line'>207</span> </span><span class="WHIT"> </span><span class="COMM">// glider point</span><span class="WHIT">
215
- <span class='line'>208</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
216
- <span class='line'>209</span> </span><span class="WHIT"> </span><span class="COMM">// overwrite this in any case; the sliders label is a special text element, not the gliders label.</span><span class="WHIT">
217
- <span class='line'>210</span> </span><span class="WHIT"> </span><span class="COMM">// this will be set back to true after the text was created (and only if withlabel was true initially).</span><span class="WHIT">
218
- <span class='line'>211</span> </span><span class="WHIT"> </span><span class="NAME">attr.withLabel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
219
- <span class='line'>212</span> </span><span class="WHIT"> </span><span class="COMM">// gliders set snapwidth=-1 by default (i.e. deactivate them)</span><span class="WHIT">
220
- <span class='line'>213</span> </span><span class="WHIT"> </span><span class="NAME">p3</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"glider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">startx</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">starty</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
221
- <span class='line'>214</span> </span><span class="WHIT"> </span><span class="NAME">p3.setAttribute</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">snapwidth</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">snapWidth</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
222
- <span class='line'>215</span>
223
- <span class='line'>216</span> </span><span class="WHIT"> </span><span class="COMM">// Segment from start point to glider point: highline</span><span class="WHIT">
224
- <span class='line'>217</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"highline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
225
- <span class='line'>218</span> </span><span class="WHIT"> </span><span class="NAME">l2</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"segment"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p3</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
226
- <span class='line'>219</span>
227
- <span class='line'>220</span> </span><span class="WHIT"> </span><span class="COMM">/**
228
- <span class='line'>221</span> * Returns the current slider value.
229
- <span class='line'>222</span> * @memberOf Slider.prototype
230
- <span class='line'>223</span> * @name Value
231
- <span class='line'>224</span> * @function
232
- <span class='line'>225</span> * @returns {Number}
233
- <span class='line'>226</span> */</span><span class="WHIT">
234
- <span class='line'>227</span> </span><span class="WHIT"> </span><span class="NAME">p3.Value</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
235
- <span class='line'>228</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">,</span><span class="WHIT">
236
- <span class='line'>229</span> </span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.snapwidth</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
237
- <span class='line'>230</span>
238
- <span class='line'>231</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT">
239
- <span class='line'>232</span> </span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="WHIT">
240
- <span class='line'>233</span> </span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Math.round</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="PUNC">;</span><span class="WHIT">
241
- <span class='line'>234</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
242
- <span class='line'>235</span>
243
- <span class='line'>236</span> </span><span class="WHIT"> </span><span class="NAME">p3.methodMap</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.deepCopy</span><span class="PUNC">(</span><span class="NAME">p3.methodMap</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
244
- <span class='line'>237</span> </span><span class="WHIT"> </span><span class="NAME">Value</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"Value"</span><span class="PUNC">,</span><span class="WHIT">
245
- <span class='line'>238</span> </span><span class="WHIT"> </span><span class="NAME">setValue</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"setValue"</span><span class="PUNC">,</span><span class="WHIT">
246
- <span class='line'>239</span> </span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"_smax"</span><span class="PUNC">,</span><span class="WHIT">
247
- <span class='line'>240</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"_smin"</span><span class="PUNC">,</span><span class="WHIT">
248
- <span class='line'>241</span> </span><span class="WHIT"> </span><span class="NAME">setMax</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"setMax"</span><span class="PUNC">,</span><span class="WHIT">
249
- <span class='line'>242</span> </span><span class="WHIT"> </span><span class="NAME">setMin</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"setMin"</span><span class="WHIT">
250
- <span class='line'>243</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
202
+ <span class='line'>195</span> </span><span class="WHIT"> </span><span class="COMM">// This is required for a correct projection of the glider onto the segment below</span><span class="WHIT">
203
+ <span class='line'>196</span> </span><span class="WHIT"> </span><span class="NAME">l1.updateStdform</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
204
+ <span class='line'>197</span>
205
+ <span class='line'>198</span> </span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p1.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
206
+ <span class='line'>199</span> </span><span class="WHIT"> </span><span class="NAME">pos1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p2.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
207
+ <span class='line'>200</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
208
+ <span class='line'>201</span> </span><span class="WHIT"> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
209
+ <span class='line'>202</span> </span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
210
+ <span class='line'>203</span> </span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
211
+ <span class='line'>204</span>
212
+ <span class='line'>205</span> </span><span class="WHIT"> </span><span class="NAME">sw</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">snapWidth</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
213
+ <span class='line'>206</span> </span><span class="WHIT"> </span><span class="NAME">s</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Math.round</span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sw</span><span class="PUNC">;</span><span class="WHIT">
214
+ <span class='line'>207</span> </span><span class="WHIT"> </span><span class="NAME">startx</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">pos1</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">s</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
215
+ <span class='line'>208</span> </span><span class="WHIT"> </span><span class="NAME">starty</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">pos1</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">pos0</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">s</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
216
+ <span class='line'>209</span>
217
+ <span class='line'>210</span> </span><span class="WHIT"> </span><span class="COMM">// glider point</span><span class="WHIT">
218
+ <span class='line'>211</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
219
+ <span class='line'>212</span> </span><span class="WHIT"> </span><span class="COMM">// overwrite this in any case; the sliders label is a special text element, not the gliders label.</span><span class="WHIT">
220
+ <span class='line'>213</span> </span><span class="WHIT"> </span><span class="COMM">// this will be set back to true after the text was created (and only if withlabel was true initially).</span><span class="WHIT">
221
+ <span class='line'>214</span> </span><span class="WHIT"> </span><span class="NAME">attr.withLabel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
222
+ <span class='line'>215</span> </span><span class="WHIT"> </span><span class="COMM">// gliders set snapwidth=-1 by default (i.e. deactivate them)</span><span class="WHIT">
223
+ <span class='line'>216</span> </span><span class="WHIT"> </span><span class="NAME">p3</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"glider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">startx</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">starty</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
224
+ <span class='line'>217</span> </span><span class="WHIT"> </span><span class="NAME">p3.setAttribute</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">snapwidth</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">snapWidth</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">snapvalues</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">snapValues</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">snapvaluedistance</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">snapValueDistance</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
225
+ <span class='line'>218</span>
226
+ <span class='line'>219</span> </span><span class="WHIT"> </span><span class="COMM">// Segment from start point to glider point: highline</span><span class="WHIT">
227
+ <span class='line'>220</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"highline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
228
+ <span class='line'>221</span> </span><span class="WHIT"> </span><span class="NAME">l2</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">"segment"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p3</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
229
+ <span class='line'>222</span>
230
+ <span class='line'>223</span> </span><span class="WHIT"> </span><span class="COMM">/**
231
+ <span class='line'>224</span> * Returns the current slider value.
232
+ <span class='line'>225</span> * @memberOf Slider.prototype
233
+ <span class='line'>226</span> * @name Value
234
+ <span class='line'>227</span> * @function
235
+ <span class='line'>228</span> * @returns {Number}
236
+ <span class='line'>229</span> */</span><span class="WHIT">
237
+ <span class='line'>230</span> </span><span class="WHIT"> </span><span class="NAME">p3.Value</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
238
+ <span class='line'>231</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">,</span><span class="WHIT">
239
+ <span class='line'>232</span> </span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.snapwidth</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
240
+ <span class='line'>233</span> </span><span class="WHIT"> </span><span class="NAME">snapValues</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">;</span><span class="WHIT">
241
+ <span class='line'>234</span>
242
+ <span class='line'>235</span> </span><span class="WHIT"> </span><span class="NAME">snapValues</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">this.visProp.snapvalues</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
243
+ <span class='line'>236</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.isArray</span><span class="PUNC">(</span><span class="NAME">snapValues</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
244
+ <span class='line'>237</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="PUNC">=</span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NAME">snapValues.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
245
+ <span class='line'>238</span> </span><span class="WHIT"> </span><span class="NAME">v</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">snapValues</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
246
+ <span class='line'>239</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">v</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
247
+ <span class='line'>240</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">snapValues</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
248
+ <span class='line'>241</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
249
+ <span class='line'>242</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
250
+ <span class='line'>243</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
251
251
  <span class='line'>244</span>
252
- <span class='line'>245</span> </span><span class="WHIT"> </span><span class="COMM">/**
253
- <span class='line'>246</span> * End value of the slider range.
254
- <span class='line'>247</span> * @memberOf Slider.prototype
255
- <span class='line'>248</span> * @name _smax
256
- <span class='line'>249</span> * @type Number
257
- <span class='line'>250</span> */</span><span class="WHIT">
258
- <span class='line'>251</span> </span><span class="WHIT"> </span><span class="NAME">p3._smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">;</span><span class="WHIT">
259
- <span class='line'>252</span>
260
- <span class='line'>253</span> </span><span class="WHIT"> </span><span class="COMM">/**
261
- <span class='line'>254</span> * Start value of the slider range.
262
- <span class='line'>255</span> * @memberOf Slider.prototype
263
- <span class='line'>256</span> * @name _smin
264
- <span class='line'>257</span> * @type Number
265
- <span class='line'>258</span> */</span><span class="WHIT">
266
- <span class='line'>259</span> </span><span class="WHIT"> </span><span class="NAME">p3._smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
267
- <span class='line'>260</span>
268
- <span class='line'>261</span> </span><span class="WHIT"> </span><span class="COMM">/**
269
- <span class='line'>262</span> * Sets the maximum value of the slider.
270
- <span class='line'>263</span> * @memberOf Slider.prototype
271
- <span class='line'>264</span> * @function
272
- <span class='line'>265</span> * @name setMax
273
- <span class='line'>266</span> * @param {Number} val New maximum value
274
- <span class='line'>267</span> * @returns {Object} this object
275
- <span class='line'>268</span> */</span><span class="WHIT">
276
- <span class='line'>269</span> </span><span class="WHIT"> </span><span class="NAME">p3.setMax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
277
- <span class='line'>270</span> </span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">val</span><span class="PUNC">;</span><span class="WHIT">
278
- <span class='line'>271</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
279
- <span class='line'>272</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
280
- <span class='line'>273</span>
281
- <span class='line'>274</span> </span><span class="WHIT"> </span><span class="COMM">/**
282
- <span class='line'>275</span> * Sets the value of the slider. This call must be followed
283
- <span class='line'>276</span> * by a board update call.
252
+ <span class='line'>245</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT">
253
+ <span class='line'>246</span> </span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="WHIT">
254
+ <span class='line'>247</span> </span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Math.round</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">ev_sw</span><span class="PUNC">;</span><span class="WHIT">
255
+ <span class='line'>248</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
256
+ <span class='line'>249</span>
257
+ <span class='line'>250</span> </span><span class="WHIT"> </span><span class="NAME">p3.methodMap</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.deepCopy</span><span class="PUNC">(</span><span class="NAME">p3.methodMap</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
258
+ <span class='line'>251</span> </span><span class="WHIT"> </span><span class="NAME">Value</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"Value"</span><span class="PUNC">,</span><span class="WHIT">
259
+ <span class='line'>252</span> </span><span class="WHIT"> </span><span class="NAME">setValue</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"setValue"</span><span class="PUNC">,</span><span class="WHIT">
260
+ <span class='line'>253</span> </span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"_smax"</span><span class="PUNC">,</span><span class="WHIT">
261
+ <span class='line'>254</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"_smin"</span><span class="PUNC">,</span><span class="WHIT">
262
+ <span class='line'>255</span> </span><span class="WHIT"> </span><span class="NAME">setMax</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"setMax"</span><span class="PUNC">,</span><span class="WHIT">
263
+ <span class='line'>256</span> </span><span class="WHIT"> </span><span class="NAME">setMin</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"setMin"</span><span class="WHIT">
264
+ <span class='line'>257</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
265
+ <span class='line'>258</span>
266
+ <span class='line'>259</span> </span><span class="WHIT"> </span><span class="COMM">/**
267
+ <span class='line'>260</span> * End value of the slider range.
268
+ <span class='line'>261</span> * @memberOf Slider.prototype
269
+ <span class='line'>262</span> * @name _smax
270
+ <span class='line'>263</span> * @type Number
271
+ <span class='line'>264</span> */</span><span class="WHIT">
272
+ <span class='line'>265</span> </span><span class="WHIT"> </span><span class="NAME">p3._smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">smax</span><span class="PUNC">;</span><span class="WHIT">
273
+ <span class='line'>266</span>
274
+ <span class='line'>267</span> </span><span class="WHIT"> </span><span class="COMM">/**
275
+ <span class='line'>268</span> * Start value of the slider range.
276
+ <span class='line'>269</span> * @memberOf Slider.prototype
277
+ <span class='line'>270</span> * @name _smin
278
+ <span class='line'>271</span> * @type Number
279
+ <span class='line'>272</span> */</span><span class="WHIT">
280
+ <span class='line'>273</span> </span><span class="WHIT"> </span><span class="NAME">p3._smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
281
+ <span class='line'>274</span>
282
+ <span class='line'>275</span> </span><span class="WHIT"> </span><span class="COMM">/**
283
+ <span class='line'>276</span> * Sets the maximum value of the slider.
284
284
  <span class='line'>277</span> * @memberOf Slider.prototype
285
- <span class='line'>278</span> * @name setValue
286
- <span class='line'>279</span> * @function
287
- <span class='line'>280</span> * @param {Number} val New value
285
+ <span class='line'>278</span> * @function
286
+ <span class='line'>279</span> * @name setMax
287
+ <span class='line'>280</span> * @param {Number} val New maximum value
288
288
  <span class='line'>281</span> * @returns {Object} this object
289
289
  <span class='line'>282</span> */</span><span class="WHIT">
290
- <span class='line'>283</span> </span><span class="WHIT"> </span><span class="NAME">p3.setValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
291
- <span class='line'>284</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">;</span><span class="WHIT">
292
- <span class='line'>285</span>
293
- <span class='line'>286</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Math.abs</span><span class="PUNC">(</span><span class="NAME">sdiff</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
294
- <span class='line'>287</span> </span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="PUNC">;</span><span class="WHIT">
295
- <span class='line'>288</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
296
- <span class='line'>289</span> </span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0.0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="COMM">//this._smin;</span><span class="WHIT">
297
- <span class='line'>290</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
298
- <span class='line'>291</span> </span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.max</span><span class="PUNC">(</span><span class="NUMB">0.0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Math.min</span><span class="PUNC">(</span><span class="NUMB">1.0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
299
- <span class='line'>292</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
300
- <span class='line'>293</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
301
- <span class='line'>294</span>
302
- <span class='line'>295</span> </span><span class="WHIT"> </span><span class="COMM">/**
303
- <span class='line'>296</span> * Sets the minimum value of the slider.
304
- <span class='line'>297</span> * @memberOf Slider.prototype
305
- <span class='line'>298</span> * @name setMin
306
- <span class='line'>299</span> * @function
307
- <span class='line'>300</span> * @param {Number} val New minimum value
308
- <span class='line'>301</span> * @returns {Object} this object
309
- <span class='line'>302</span> */</span><span class="WHIT">
310
- <span class='line'>303</span> </span><span class="WHIT"> </span><span class="NAME">p3.setMin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
311
- <span class='line'>304</span> </span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">val</span><span class="PUNC">;</span><span class="WHIT">
312
- <span class='line'>305</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
313
- <span class='line'>306</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
314
- <span class='line'>307</span>
315
- <span class='line'>308</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withText</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
316
- <span class='line'>309</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'label'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
317
- <span class='line'>310</span> </span><span class="WHIT"> </span><span class="NAME">t</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">'text'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
318
- <span class='line'>311</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
319
- <span class='line'>312</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p2.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">p1.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NUMB">0.05</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">p2.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
320
- <span class='line'>313</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
321
- <span class='line'>314</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
322
- <span class='line'>315</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p2.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">p1.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NUMB">0.05</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">p2.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
323
- <span class='line'>316</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
324
- <span class='line'>317</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
325
- <span class='line'>318</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">n</span><span class="PUNC">,</span><span class="WHIT">
326
- <span class='line'>319</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.digits</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
327
- <span class='line'>320</span> </span><span class="WHIT"> </span><span class="NAME">sl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.suffixlabel</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
328
- <span class='line'>321</span> </span><span class="WHIT"> </span><span class="NAME">ul</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.unitlabel</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
329
- <span class='line'>322</span> </span><span class="WHIT"> </span><span class="NAME">pl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.postlabel</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
330
- <span class='line'>323</span>
331
- <span class='line'>324</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.precision</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
332
- <span class='line'>325</span> </span><span class="WHIT"> </span><span class="COMM">// Backwards compatibility</span><span class="WHIT">
333
- <span class='line'>326</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.precision</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
334
- <span class='line'>327</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
335
- <span class='line'>328</span>
336
- <span class='line'>329</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">sl</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
337
- <span class='line'>330</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sl</span><span class="PUNC">;</span><span class="WHIT">
338
- <span class='line'>331</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p3.name</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">p3.name</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
339
- <span class='line'>332</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.name</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" = "</span><span class="PUNC">;</span><span class="WHIT">
340
- <span class='line'>333</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
341
- <span class='line'>334</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
342
- <span class='line'>335</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
343
- <span class='line'>336</span>
344
- <span class='line'>337</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p3.useLocale</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
345
- <span class='line'>338</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p3.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
346
- <span class='line'>339</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
347
- <span class='line'>340</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.toFixed</span><span class="PUNC">(</span><span class="NAME">p3.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
290
+ <span class='line'>283</span> </span><span class="WHIT"> </span><span class="NAME">p3.setMax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
291
+ <span class='line'>284</span> </span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">val</span><span class="PUNC">;</span><span class="WHIT">
292
+ <span class='line'>285</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
293
+ <span class='line'>286</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
294
+ <span class='line'>287</span>
295
+ <span class='line'>288</span> </span><span class="WHIT"> </span><span class="COMM">/**
296
+ <span class='line'>289</span> * Sets the value of the slider. This call must be followed
297
+ <span class='line'>290</span> * by a board update call.
298
+ <span class='line'>291</span> * @memberOf Slider.prototype
299
+ <span class='line'>292</span> * @name setValue
300
+ <span class='line'>293</span> * @function
301
+ <span class='line'>294</span> * @param {Number} val New value
302
+ <span class='line'>295</span> * @returns {Object} this object
303
+ <span class='line'>296</span> */</span><span class="WHIT">
304
+ <span class='line'>297</span> </span><span class="WHIT"> </span><span class="NAME">p3.setValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
305
+ <span class='line'>298</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">;</span><span class="WHIT">
306
+ <span class='line'>299</span>
307
+ <span class='line'>300</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Math.abs</span><span class="PUNC">(</span><span class="NAME">sdiff</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
308
+ <span class='line'>301</span> </span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="PUNC">;</span><span class="WHIT">
309
+ <span class='line'>302</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
310
+ <span class='line'>303</span> </span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0.0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="COMM">//this._smin;</span><span class="WHIT">
311
+ <span class='line'>304</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
312
+ <span class='line'>305</span> </span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Math.max</span><span class="PUNC">(</span><span class="NUMB">0.0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Math.min</span><span class="PUNC">(</span><span class="NUMB">1.0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
313
+ <span class='line'>306</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
314
+ <span class='line'>307</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
315
+ <span class='line'>308</span>
316
+ <span class='line'>309</span> </span><span class="WHIT"> </span><span class="COMM">/**
317
+ <span class='line'>310</span> * Sets the minimum value of the slider.
318
+ <span class='line'>311</span> * @memberOf Slider.prototype
319
+ <span class='line'>312</span> * @name setMin
320
+ <span class='line'>313</span> * @function
321
+ <span class='line'>314</span> * @param {Number} val New minimum value
322
+ <span class='line'>315</span> * @returns {Object} this object
323
+ <span class='line'>316</span> */</span><span class="WHIT">
324
+ <span class='line'>317</span> </span><span class="WHIT"> </span><span class="NAME">p3.setMin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
325
+ <span class='line'>318</span> </span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">val</span><span class="PUNC">;</span><span class="WHIT">
326
+ <span class='line'>319</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
327
+ <span class='line'>320</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
328
+ <span class='line'>321</span>
329
+ <span class='line'>322</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withText</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
330
+ <span class='line'>323</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'slider'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'label'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
331
+ <span class='line'>324</span> </span><span class="WHIT"> </span><span class="NAME">t</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="STRN">'text'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
332
+ <span class='line'>325</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
333
+ <span class='line'>326</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p2.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">p1.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NUMB">0.05</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">p2.X</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
334
+ <span class='line'>327</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
335
+ <span class='line'>328</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
336
+ <span class='line'>329</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p2.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">p1.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NUMB">0.05</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">p2.Y</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
337
+ <span class='line'>330</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
338
+ <span class='line'>331</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
339
+ <span class='line'>332</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">n</span><span class="PUNC">,</span><span class="WHIT">
340
+ <span class='line'>333</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.digits</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
341
+ <span class='line'>334</span> </span><span class="WHIT"> </span><span class="NAME">sl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.suffixlabel</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
342
+ <span class='line'>335</span> </span><span class="WHIT"> </span><span class="NAME">ul</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.unitlabel</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
343
+ <span class='line'>336</span> </span><span class="WHIT"> </span><span class="NAME">pl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.postlabel</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
344
+ <span class='line'>337</span>
345
+ <span class='line'>338</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.precision</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
346
+ <span class='line'>339</span> </span><span class="WHIT"> </span><span class="COMM">// Backwards compatibility</span><span class="WHIT">
347
+ <span class='line'>340</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.precision</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
348
348
  <span class='line'>341</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
349
349
  <span class='line'>342</span>
350
- <span class='line'>343</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">ul</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
351
- <span class='line'>344</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ul</span><span class="PUNC">;</span><span class="WHIT">
352
- <span class='line'>345</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
353
- <span class='line'>346</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">pl</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
354
- <span class='line'>347</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pl</span><span class="PUNC">;</span><span class="WHIT">
355
- <span class='line'>348</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
356
- <span class='line'>349</span>
357
- <span class='line'>350</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">n</span><span class="PUNC">;</span><span class="WHIT">
358
- <span class='line'>351</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
359
- <span class='line'>352</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
360
- <span class='line'>353</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT">
361
- <span class='line'>354</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
362
- <span class='line'>355</span>
363
- <span class='line'>356</span> </span><span class="WHIT"> </span><span class="COMM">/**
364
- <span class='line'>357</span> * The text element to the right of the slider, indicating its current value.
365
- <span class='line'>358</span> * @memberOf Slider.prototype
366
- <span class='line'>359</span> * @name label
367
- <span class='line'>360</span> * @type JXG.Text
368
- <span class='line'>361</span> */</span><span class="WHIT">
369
- <span class='line'>362</span> </span><span class="WHIT"> </span><span class="NAME">p3.label</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">t</span><span class="PUNC">;</span><span class="WHIT">
350
+ <span class='line'>343</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">sl</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
351
+ <span class='line'>344</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sl</span><span class="PUNC">;</span><span class="WHIT">
352
+ <span class='line'>345</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p3.name</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">p3.name</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
353
+ <span class='line'>346</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.name</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" = "</span><span class="PUNC">;</span><span class="WHIT">
354
+ <span class='line'>347</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
355
+ <span class='line'>348</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
356
+ <span class='line'>349</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
357
+ <span class='line'>350</span>
358
+ <span class='line'>351</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">p3.useLocale</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
359
+ <span class='line'>352</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.formatNumberLocale</span><span class="PUNC">(</span><span class="NAME">p3.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
360
+ <span class='line'>353</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
361
+ <span class='line'>354</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.toFixed</span><span class="PUNC">(</span><span class="NAME">p3.Value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">d</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
362
+ <span class='line'>355</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
363
+ <span class='line'>356</span>
364
+ <span class='line'>357</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">ul</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
365
+ <span class='line'>358</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ul</span><span class="PUNC">;</span><span class="WHIT">
366
+ <span class='line'>359</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
367
+ <span class='line'>360</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">pl</span><span class="WHIT"> </span><span class="PUNC">!==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
368
+ <span class='line'>361</span> </span><span class="WHIT"> </span><span class="NAME">n</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">pl</span><span class="PUNC">;</span><span class="WHIT">
369
+ <span class='line'>362</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
370
370
  <span class='line'>363</span>
371
- <span class='line'>364</span> </span><span class="WHIT"> </span><span class="COMM">// reset the withlabel attribute</span><span class="WHIT">
372
- <span class='line'>365</span> </span><span class="WHIT"> </span><span class="NAME">p3.visProp.withlabel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
373
- <span class='line'>366</span> </span><span class="WHIT"> </span><span class="NAME">p3.hasLabel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
374
- <span class='line'>367</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
375
- <span class='line'>368</span>
376
- <span class='line'>369</span> </span><span class="WHIT"> </span><span class="COMM">/**
377
- <span class='line'>370</span> * Start point of the base line.
378
- <span class='line'>371</span> * @memberOf Slider.prototype
379
- <span class='line'>372</span> * @name point1
380
- <span class='line'>373</span> * @type JXG.Point
381
- <span class='line'>374</span> */</span><span class="WHIT">
382
- <span class='line'>375</span> </span><span class="WHIT"> </span><span class="NAME">p3.point1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p1</span><span class="PUNC">;</span><span class="WHIT">
383
- <span class='line'>376</span>
384
- <span class='line'>377</span> </span><span class="WHIT"> </span><span class="COMM">/**
385
- <span class='line'>378</span> * End point of the base line.
386
- <span class='line'>379</span> * @memberOf Slider.prototype
387
- <span class='line'>380</span> * @name point2
388
- <span class='line'>381</span> * @type JXG.Point
389
- <span class='line'>382</span> */</span><span class="WHIT">
390
- <span class='line'>383</span> </span><span class="WHIT"> </span><span class="NAME">p3.point2</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">;</span><span class="WHIT">
391
- <span class='line'>384</span>
392
- <span class='line'>385</span> </span><span class="WHIT"> </span><span class="COMM">/**
393
- <span class='line'>386</span> * The baseline the glider is bound to.
394
- <span class='line'>387</span> * @memberOf Slider.prototype
395
- <span class='line'>388</span> * @name baseline
396
- <span class='line'>389</span> * @type JXG.Line
397
- <span class='line'>390</span> */</span><span class="WHIT">
398
- <span class='line'>391</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">;</span><span class="WHIT">
399
- <span class='line'>392</span>
400
- <span class='line'>393</span> </span><span class="WHIT"> </span><span class="COMM">/**
401
- <span class='line'>394</span> * A line on top of the baseline, indicating the slider's progress.
402
- <span class='line'>395</span> * @memberOf Slider.prototype
403
- <span class='line'>396</span> * @name highline
404
- <span class='line'>397</span> * @type JXG.Line
405
- <span class='line'>398</span> */</span><span class="WHIT">
406
- <span class='line'>399</span> </span><span class="WHIT"> </span><span class="NAME">p3.highline</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">l2</span><span class="PUNC">;</span><span class="WHIT">
407
- <span class='line'>400</span>
408
- <span class='line'>401</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withTicks</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
409
- <span class='line'>402</span> </span><span class="WHIT"> </span><span class="COMM">// Function to generate correct label texts</span><span class="WHIT">
410
- <span class='line'>403</span>
411
- <span class='line'>404</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"ticks"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
412
- <span class='line'>405</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">Type.exists</span><span class="PUNC">(</span><span class="NAME">attr.generatelabeltext</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
413
- <span class='line'>406</span> </span><span class="WHIT"> </span><span class="NAME">attr.generateLabelText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">tick</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">zero</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
414
- <span class='line'>407</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="PUNC">,</span><span class="WHIT">
415
- <span class='line'>408</span> </span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.point1.Dist</span><span class="PUNC">(</span><span class="NAME">p3.point2</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
416
- <span class='line'>409</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3._smin</span><span class="PUNC">,</span><span class="WHIT">
417
- <span class='line'>410</span> </span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3._smax</span><span class="PUNC">,</span><span class="WHIT">
418
- <span class='line'>411</span> </span><span class="WHIT"> </span><span class="NAME">val</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.getDistanceFromZero</span><span class="PUNC">(</span><span class="NAME">zero</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tick</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
419
- <span class='line'>412</span>
420
- <span class='line'>413</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">Math.abs</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
421
- <span class='line'>414</span> </span><span class="WHIT"> </span><span class="COMM">// Point is zero</span><span class="WHIT">
422
- <span class='line'>415</span> </span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"0"</span><span class="PUNC">;</span><span class="WHIT">
423
- <span class='line'>416</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
424
- <span class='line'>417</span> </span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.formatLabelText</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
425
- <span class='line'>418</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
426
- <span class='line'>419</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="PUNC">;</span><span class="WHIT">
427
- <span class='line'>420</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
428
- <span class='line'>421</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
429
- <span class='line'>422</span> </span><span class="WHIT"> </span><span class="NAME">ticks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">;</span><span class="WHIT">
430
- <span class='line'>423</span> </span><span class="WHIT"> </span><span class="NAME">ti</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="WHIT">
431
- <span class='line'>424</span> </span><span class="WHIT"> </span><span class="STRN">"ticks"</span><span class="PUNC">,</span><span class="WHIT">
432
- <span class='line'>425</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
433
- <span class='line'>426</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline</span><span class="PUNC">,</span><span class="WHIT">
434
- <span class='line'>427</span> </span><span class="WHIT"> </span><span class="NAME">p3.point1.Dist</span><span class="PUNC">(</span><span class="NAME">p1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">ticks</span><span class="PUNC">,</span><span class="WHIT">
435
- <span class='line'>428</span>
436
- <span class='line'>429</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">tick</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
437
- <span class='line'>430</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.point1.Dist</span><span class="PUNC">(</span><span class="NAME">p3.point2</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
438
- <span class='line'>431</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.point1.coords.distance</span><span class="PUNC">(</span><span class="NAME">Const.COORDS_BY_USER</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tick</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
439
- <span class='line'>432</span>
440
- <span class='line'>433</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
441
- <span class='line'>434</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
442
- <span class='line'>435</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
443
- <span class='line'>436</span>
444
- <span class='line'>437</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
445
- <span class='line'>438</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
446
- <span class='line'>439</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
447
- <span class='line'>440</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT">
448
- <span class='line'>441</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
371
+ <span class='line'>364</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">n</span><span class="PUNC">;</span><span class="WHIT">
372
+ <span class='line'>365</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
373
+ <span class='line'>366</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
374
+ <span class='line'>367</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT">
375
+ <span class='line'>368</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
376
+ <span class='line'>369</span>
377
+ <span class='line'>370</span> </span><span class="WHIT"> </span><span class="COMM">/**
378
+ <span class='line'>371</span> * The text element to the right of the slider, indicating its current value.
379
+ <span class='line'>372</span> * @memberOf Slider.prototype
380
+ <span class='line'>373</span> * @name label
381
+ <span class='line'>374</span> * @type JXG.Text
382
+ <span class='line'>375</span> */</span><span class="WHIT">
383
+ <span class='line'>376</span> </span><span class="WHIT"> </span><span class="NAME">p3.label</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">t</span><span class="PUNC">;</span><span class="WHIT">
384
+ <span class='line'>377</span>
385
+ <span class='line'>378</span> </span><span class="WHIT"> </span><span class="COMM">// reset the withlabel attribute</span><span class="WHIT">
386
+ <span class='line'>379</span> </span><span class="WHIT"> </span><span class="NAME">p3.visProp.withlabel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
387
+ <span class='line'>380</span> </span><span class="WHIT"> </span><span class="NAME">p3.hasLabel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
388
+ <span class='line'>381</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
389
+ <span class='line'>382</span>
390
+ <span class='line'>383</span> </span><span class="WHIT"> </span><span class="COMM">/**
391
+ <span class='line'>384</span> * Start point of the base line.
392
+ <span class='line'>385</span> * @memberOf Slider.prototype
393
+ <span class='line'>386</span> * @name point1
394
+ <span class='line'>387</span> * @type JXG.Point
395
+ <span class='line'>388</span> */</span><span class="WHIT">
396
+ <span class='line'>389</span> </span><span class="WHIT"> </span><span class="NAME">p3.point1</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p1</span><span class="PUNC">;</span><span class="WHIT">
397
+ <span class='line'>390</span>
398
+ <span class='line'>391</span> </span><span class="WHIT"> </span><span class="COMM">/**
399
+ <span class='line'>392</span> * End point of the base line.
400
+ <span class='line'>393</span> * @memberOf Slider.prototype
401
+ <span class='line'>394</span> * @name point2
402
+ <span class='line'>395</span> * @type JXG.Point
403
+ <span class='line'>396</span> */</span><span class="WHIT">
404
+ <span class='line'>397</span> </span><span class="WHIT"> </span><span class="NAME">p3.point2</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">;</span><span class="WHIT">
405
+ <span class='line'>398</span>
406
+ <span class='line'>399</span> </span><span class="WHIT"> </span><span class="COMM">/**
407
+ <span class='line'>400</span> * The baseline the glider is bound to.
408
+ <span class='line'>401</span> * @memberOf Slider.prototype
409
+ <span class='line'>402</span> * @name baseline
410
+ <span class='line'>403</span> * @type JXG.Line
411
+ <span class='line'>404</span> */</span><span class="WHIT">
412
+ <span class='line'>405</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">;</span><span class="WHIT">
413
+ <span class='line'>406</span>
414
+ <span class='line'>407</span> </span><span class="WHIT"> </span><span class="COMM">/**
415
+ <span class='line'>408</span> * A line on top of the baseline, indicating the slider's progress.
416
+ <span class='line'>409</span> * @memberOf Slider.prototype
417
+ <span class='line'>410</span> * @name highline
418
+ <span class='line'>411</span> * @type JXG.Line
419
+ <span class='line'>412</span> */</span><span class="WHIT">
420
+ <span class='line'>413</span> </span><span class="WHIT"> </span><span class="NAME">p3.highline</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">l2</span><span class="PUNC">;</span><span class="WHIT">
421
+ <span class='line'>414</span>
422
+ <span class='line'>415</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withTicks</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
423
+ <span class='line'>416</span> </span><span class="WHIT"> </span><span class="COMM">// Function to generate correct label texts</span><span class="WHIT">
424
+ <span class='line'>417</span>
425
+ <span class='line'>418</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Type.copyAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">board.options</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"ticks"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
426
+ <span class='line'>419</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">Type.exists</span><span class="PUNC">(</span><span class="NAME">attr.generatelabeltext</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
427
+ <span class='line'>420</span> </span><span class="WHIT"> </span><span class="NAME">attr.generateLabelText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">tick</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">zero</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
428
+ <span class='line'>421</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="PUNC">,</span><span class="WHIT">
429
+ <span class='line'>422</span> </span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.point1.Dist</span><span class="PUNC">(</span><span class="NAME">p3.point2</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
430
+ <span class='line'>423</span> </span><span class="WHIT"> </span><span class="NAME">smin</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3._smin</span><span class="PUNC">,</span><span class="WHIT">
431
+ <span class='line'>424</span> </span><span class="WHIT"> </span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3._smax</span><span class="PUNC">,</span><span class="WHIT">
432
+ <span class='line'>425</span> </span><span class="WHIT"> </span><span class="NAME">val</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.getDistanceFromZero</span><span class="PUNC">(</span><span class="NAME">zero</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tick</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
433
+ <span class='line'>426</span>
434
+ <span class='line'>427</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">Math.abs</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
435
+ <span class='line'>428</span> </span><span class="WHIT"> </span><span class="COMM">// Point is zero</span><span class="WHIT">
436
+ <span class='line'>429</span> </span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"0"</span><span class="PUNC">;</span><span class="WHIT">
437
+ <span class='line'>430</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
438
+ <span class='line'>431</span> </span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.formatLabelText</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
439
+ <span class='line'>432</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
440
+ <span class='line'>433</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">labelText</span><span class="PUNC">;</span><span class="WHIT">
441
+ <span class='line'>434</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
442
+ <span class='line'>435</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
443
+ <span class='line'>436</span> </span><span class="WHIT"> </span><span class="NAME">ticks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">;</span><span class="WHIT">
444
+ <span class='line'>437</span> </span><span class="WHIT"> </span><span class="NAME">ti</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">board.create</span><span class="PUNC">(</span><span class="WHIT">
445
+ <span class='line'>438</span> </span><span class="WHIT"> </span><span class="STRN">"ticks"</span><span class="PUNC">,</span><span class="WHIT">
446
+ <span class='line'>439</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
447
+ <span class='line'>440</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline</span><span class="PUNC">,</span><span class="WHIT">
448
+ <span class='line'>441</span> </span><span class="WHIT"> </span><span class="NAME">p3.point1.Dist</span><span class="PUNC">(</span><span class="NAME">p1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">ticks</span><span class="PUNC">,</span><span class="WHIT">
449
449
  <span class='line'>442</span>
450
- <span class='line'>443</span> </span><span class="WHIT"> </span><span class="COMM">/**
451
- <span class='line'>444</span> * Ticks give a rough indication about the slider's current value.
452
- <span class='line'>445</span> * @memberOf Slider.prototype
453
- <span class='line'>446</span> * @name ticks
454
- <span class='line'>447</span> * @type JXG.Ticks
455
- <span class='line'>448</span> */</span><span class="WHIT">
456
- <span class='line'>449</span> </span><span class="WHIT"> </span><span class="NAME">p3.ticks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ti</span><span class="PUNC">;</span><span class="WHIT">
457
- <span class='line'>450</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
458
- <span class='line'>451</span>
459
- <span class='line'>452</span> </span><span class="WHIT"> </span><span class="COMM">// override the point's remove method to ensure the removal of all elements</span><span class="WHIT">
460
- <span class='line'>453</span> </span><span class="WHIT"> </span><span class="NAME">p3.remove</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
461
- <span class='line'>454</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withText</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
462
- <span class='line'>455</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
463
- <span class='line'>456</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
464
- <span class='line'>457</span>
465
- <span class='line'>458</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">l2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
466
- <span class='line'>459</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">l1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
467
- <span class='line'>460</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">p2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
468
- <span class='line'>461</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">p1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
469
- <span class='line'>462</span>
470
- <span class='line'>463</span> </span><span class="WHIT"> </span><span class="NAME">Point.prototype.remove.call</span><span class="PUNC">(</span><span class="NAME">p3</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
471
- <span class='line'>464</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
450
+ <span class='line'>443</span> </span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">tick</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
451
+ <span class='line'>444</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.point1.Dist</span><span class="PUNC">(</span><span class="NAME">p3.point2</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
452
+ <span class='line'>445</span> </span><span class="WHIT"> </span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">p3.point1.coords.distance</span><span class="PUNC">(</span><span class="NAME">Const.COORDS_BY_USER</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tick</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
453
+ <span class='line'>446</span>
454
+ <span class='line'>447</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">dFull</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NAME">Mat.eps</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
455
+ <span class='line'>448</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
456
+ <span class='line'>449</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
457
+ <span class='line'>450</span>
458
+ <span class='line'>451</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">d</span><span class="WHIT"> </span><span class="PUNC">/</span><span class="WHIT"> </span><span class="NAME">dFull</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="NAME">sdiff</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">smin</span><span class="PUNC">;</span><span class="WHIT">
459
+ <span class='line'>452</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
460
+ <span class='line'>453</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
461
+ <span class='line'>454</span> </span><span class="WHIT"> </span><span class="NAME">attr</span><span class="WHIT">
462
+ <span class='line'>455</span> </span><span class="WHIT"> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
463
+ <span class='line'>456</span>
464
+ <span class='line'>457</span> </span><span class="WHIT"> </span><span class="COMM">/**
465
+ <span class='line'>458</span> * Ticks give a rough indication about the slider's current value.
466
+ <span class='line'>459</span> * @memberOf Slider.prototype
467
+ <span class='line'>460</span> * @name ticks
468
+ <span class='line'>461</span> * @type JXG.Ticks
469
+ <span class='line'>462</span> */</span><span class="WHIT">
470
+ <span class='line'>463</span> </span><span class="WHIT"> </span><span class="NAME">p3.ticks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ti</span><span class="PUNC">;</span><span class="WHIT">
471
+ <span class='line'>464</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
472
472
  <span class='line'>465</span>
473
- <span class='line'>466</span> </span><span class="WHIT"> </span><span class="NAME">p1.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
474
- <span class='line'>467</span> </span><span class="WHIT"> </span><span class="NAME">p2.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
475
- <span class='line'>468</span> </span><span class="WHIT"> </span><span class="NAME">l1.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
476
- <span class='line'>469</span> </span><span class="WHIT"> </span><span class="NAME">l2.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
477
- <span class='line'>470</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withText</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
478
- <span class='line'>471</span> </span><span class="WHIT"> </span><span class="NAME">t.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
479
- <span class='line'>472</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
480
- <span class='line'>473</span>
481
- <span class='line'>474</span> </span><span class="WHIT"> </span><span class="NAME">p3.elType</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">;</span><span class="WHIT">
482
- <span class='line'>475</span> </span><span class="WHIT"> </span><span class="NAME">p3.parents</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">;</span><span class="WHIT">
483
- <span class='line'>476</span> </span><span class="WHIT"> </span><span class="NAME">p3.subs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
484
- <span class='line'>477</span> </span><span class="WHIT"> </span><span class="NAME">point1</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT">
485
- <span class='line'>478</span> </span><span class="WHIT"> </span><span class="NAME">point2</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">,</span><span class="WHIT">
486
- <span class='line'>479</span> </span><span class="WHIT"> </span><span class="NAME">baseLine</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">,</span><span class="WHIT">
487
- <span class='line'>480</span> </span><span class="WHIT"> </span><span class="NAME">highLine</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">l2</span><span class="WHIT">
488
- <span class='line'>481</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
489
- <span class='line'>482</span> </span><span class="WHIT"> </span><span class="NAME">p3.inherits.push</span><span class="PUNC">(</span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">l2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
490
- <span class='line'>483</span>
491
- <span class='line'>484</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withTicks</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
492
- <span class='line'>485</span> </span><span class="WHIT"> </span><span class="NAME">ti.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
493
- <span class='line'>486</span> </span><span class="WHIT"> </span><span class="NAME">p3.subs.ticks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ti</span><span class="PUNC">;</span><span class="WHIT">
494
- <span class='line'>487</span> </span><span class="WHIT"> </span><span class="NAME">p3.inherits.push</span><span class="PUNC">(</span><span class="NAME">ti</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
495
- <span class='line'>488</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
496
- <span class='line'>489</span>
497
- <span class='line'>490</span> </span><span class="WHIT"> </span><span class="NAME">p3.getParents</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
498
- <span class='line'>491</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
499
- <span class='line'>492</span> </span><span class="WHIT"> </span><span class="NAME">this.point1.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
500
- <span class='line'>493</span> </span><span class="WHIT"> </span><span class="NAME">this.point2.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
501
- <span class='line'>494</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">this._smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="PUNC">]</span><span class="WHIT">
502
- <span class='line'>495</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
503
- <span class='line'>496</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
473
+ <span class='line'>466</span> </span><span class="WHIT"> </span><span class="COMM">// override the point's remove method to ensure the removal of all elements</span><span class="WHIT">
474
+ <span class='line'>467</span> </span><span class="WHIT"> </span><span class="NAME">p3.remove</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
475
+ <span class='line'>468</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withText</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
476
+ <span class='line'>469</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
477
+ <span class='line'>470</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
478
+ <span class='line'>471</span>
479
+ <span class='line'>472</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">l2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
480
+ <span class='line'>473</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">l1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
481
+ <span class='line'>474</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">p2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
482
+ <span class='line'>475</span> </span><span class="WHIT"> </span><span class="NAME">board.removeObject</span><span class="PUNC">(</span><span class="NAME">p1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
483
+ <span class='line'>476</span>
484
+ <span class='line'>477</span> </span><span class="WHIT"> </span><span class="NAME">Point.prototype.remove.call</span><span class="PUNC">(</span><span class="NAME">p3</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
485
+ <span class='line'>478</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
486
+ <span class='line'>479</span>
487
+ <span class='line'>480</span> </span><span class="WHIT"> </span><span class="NAME">p1.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
488
+ <span class='line'>481</span> </span><span class="WHIT"> </span><span class="NAME">p2.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
489
+ <span class='line'>482</span> </span><span class="WHIT"> </span><span class="NAME">l1.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
490
+ <span class='line'>483</span> </span><span class="WHIT"> </span><span class="NAME">l2.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
491
+ <span class='line'>484</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withText</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
492
+ <span class='line'>485</span> </span><span class="WHIT"> </span><span class="NAME">t.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
493
+ <span class='line'>486</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
494
+ <span class='line'>487</span>
495
+ <span class='line'>488</span> </span><span class="WHIT"> </span><span class="NAME">p3.elType</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"slider"</span><span class="PUNC">;</span><span class="WHIT">
496
+ <span class='line'>489</span> </span><span class="WHIT"> </span><span class="NAME">p3.parents</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">;</span><span class="WHIT">
497
+ <span class='line'>490</span> </span><span class="WHIT"> </span><span class="NAME">p3.subs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
498
+ <span class='line'>491</span> </span><span class="WHIT"> </span><span class="NAME">point1</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT">
499
+ <span class='line'>492</span> </span><span class="WHIT"> </span><span class="NAME">point2</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">,</span><span class="WHIT">
500
+ <span class='line'>493</span> </span><span class="WHIT"> </span><span class="NAME">baseLine</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">,</span><span class="WHIT">
501
+ <span class='line'>494</span> </span><span class="WHIT"> </span><span class="NAME">highLine</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">l2</span><span class="WHIT">
502
+ <span class='line'>495</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
503
+ <span class='line'>496</span> </span><span class="WHIT"> </span><span class="NAME">p3.inherits.push</span><span class="PUNC">(</span><span class="NAME">p1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p2</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">l1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">l2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
504
504
  <span class='line'>497</span>
505
- <span class='line'>498</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline.on</span><span class="PUNC">(</span><span class="STRN">"up"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
506
- <span class='line'>499</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">pos</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">c</span><span class="PUNC">;</span><span class="WHIT">
507
- <span class='line'>500</span>
508
- <span class='line'>501</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.moveonup</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.fixed</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
509
- <span class='line'>502</span> </span><span class="WHIT"> </span><span class="NAME">pos</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">l1.board.getMousePosition</span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
510
- <span class='line'>503</span> </span><span class="WHIT"> </span><span class="NAME">c</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Coords</span><span class="PUNC">(</span><span class="NAME">Const.COORDS_BY_SCREEN</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">pos</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.board</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
511
- <span class='line'>504</span> </span><span class="WHIT"> </span><span class="NAME">p3.moveTo</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="NAME">c.usrCoords</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">c.usrCoords</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
512
- <span class='line'>505</span> </span><span class="WHIT"> </span><span class="NAME">p3.triggerEventHandlers</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">'drag'</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">evt</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
513
- <span class='line'>506</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
514
- <span class='line'>507</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
515
- <span class='line'>508</span>
516
- <span class='line'>509</span> </span><span class="WHIT"> </span><span class="COMM">// Save the visibility attribute of the sub-elements</span><span class="WHIT">
517
- <span class='line'>510</span> </span><span class="WHIT"> </span><span class="COMM">// for (el in p3.subs) {</span><span class="WHIT">
518
- <span class='line'>511</span> </span><span class="WHIT"> </span><span class="COMM">// p3.subs[el].status = {</span><span class="WHIT">
519
- <span class='line'>512</span> </span><span class="WHIT"> </span><span class="COMM">// visible: p3.subs[el].visProp.visible</span><span class="WHIT">
520
- <span class='line'>513</span> </span><span class="WHIT"> </span><span class="COMM">// };</span><span class="WHIT">
521
- <span class='line'>514</span> </span><span class="WHIT"> </span><span class="COMM">// }</span><span class="WHIT">
522
- <span class='line'>515</span>
523
- <span class='line'>516</span> </span><span class="WHIT"> </span><span class="COMM">// p3.hideElement = function () {</span><span class="WHIT">
524
- <span class='line'>517</span> </span><span class="WHIT"> </span><span class="COMM">// var el;</span><span class="WHIT">
525
- <span class='line'>518</span> </span><span class="WHIT"> </span><span class="COMM">// GeometryElement.prototype.hideElement.call(this);</span><span class="WHIT">
526
- <span class='line'>519</span> </span><span class="WHIT"> </span><span class="COMM">//</span><span class="WHIT">
527
- <span class='line'>520</span> </span><span class="WHIT"> </span><span class="COMM">// for (el in this.subs) {</span><span class="WHIT">
528
- <span class='line'>521</span> </span><span class="WHIT"> </span><span class="COMM">// // this.subs[el].status.visible = this.subs[el].visProp.visible;</span><span class="WHIT">
529
- <span class='line'>522</span> </span><span class="WHIT"> </span><span class="COMM">// this.subs[el].hideElement();</span><span class="WHIT">
530
- <span class='line'>523</span> </span><span class="WHIT"> </span><span class="COMM">// }</span><span class="WHIT">
531
- <span class='line'>524</span> </span><span class="WHIT"> </span><span class="COMM">// };</span><span class="WHIT">
532
- <span class='line'>525</span>
533
- <span class='line'>526</span> </span><span class="WHIT"> </span><span class="COMM">// p3.showElement = function () {</span><span class="WHIT">
534
- <span class='line'>527</span> </span><span class="WHIT"> </span><span class="COMM">// var el;</span><span class="WHIT">
535
- <span class='line'>528</span> </span><span class="WHIT"> </span><span class="COMM">// GeometryElement.prototype.showElement.call(this);</span><span class="WHIT">
536
- <span class='line'>529</span> </span><span class="WHIT"> </span><span class="COMM">//</span><span class="WHIT">
537
- <span class='line'>530</span> </span><span class="WHIT"> </span><span class="COMM">// for (el in this.subs) {</span><span class="WHIT">
538
- <span class='line'>531</span> </span><span class="WHIT"> </span><span class="COMM">// // if (this.subs[el].status.visible) {</span><span class="WHIT">
539
- <span class='line'>532</span> </span><span class="WHIT"> </span><span class="COMM">// this.subs[el].showElement();</span><span class="WHIT">
540
- <span class='line'>533</span> </span><span class="WHIT"> </span><span class="COMM">// // }</span><span class="WHIT">
541
- <span class='line'>534</span> </span><span class="WHIT"> </span><span class="COMM">// }</span><span class="WHIT">
542
- <span class='line'>535</span> </span><span class="WHIT"> </span><span class="COMM">// };</span><span class="WHIT">
543
- <span class='line'>536</span>
544
- <span class='line'>537</span> </span><span class="WHIT"> </span><span class="COMM">// This is necessary to show baseline, highline and ticks</span><span class="WHIT">
545
- <span class='line'>538</span> </span><span class="WHIT"> </span><span class="COMM">// when opening the board in case the visible attributes are set</span><span class="WHIT">
546
- <span class='line'>539</span> </span><span class="WHIT"> </span><span class="COMM">// to 'inherit'.</span><span class="WHIT">
547
- <span class='line'>540</span> </span><span class="WHIT"> </span><span class="NAME">p3.prepareUpdate</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
548
- <span class='line'>541</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">board.isSuspendedUpdate</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
549
- <span class='line'>542</span> </span><span class="WHIT"> </span><span class="NAME">p3.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
550
- <span class='line'>543</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
551
- <span class='line'>544</span> </span><span class="WHIT"> </span><span class="NAME">p3.highline.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
552
- <span class='line'>545</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withTicks</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
553
- <span class='line'>546</span> </span><span class="WHIT"> </span><span class="NAME">p3.ticks.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
554
- <span class='line'>547</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
555
- <span class='line'>548</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
556
- <span class='line'>549</span>
557
- <span class='line'>550</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">p3</span><span class="PUNC">;</span><span class="WHIT">
558
- <span class='line'>551</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
559
- <span class='line'>552</span>
560
- <span class='line'>553</span> </span><span class="NAME">JXG.registerElement</span><span class="PUNC">(</span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">JXG.createSlider</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
561
- <span class='line'>554</span>
562
- <span class='line'>555</span> </span><span class="COMM">// export default {</span><span class="WHIT">
563
- <span class='line'>556</span> </span><span class="COMM">// createSlider: JXG.createSlider</span><span class="WHIT">
564
- <span class='line'>557</span> </span><span class="COMM">// };</span><span class="WHIT">
565
- <span class='line'>558</span> </span></pre></body></html>
505
+ <span class='line'>498</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withTicks</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
506
+ <span class='line'>499</span> </span><span class="WHIT"> </span><span class="NAME">ti.dump</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
507
+ <span class='line'>500</span> </span><span class="WHIT"> </span><span class="NAME">p3.subs.ticks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ti</span><span class="PUNC">;</span><span class="WHIT">
508
+ <span class='line'>501</span> </span><span class="WHIT"> </span><span class="NAME">p3.inherits.push</span><span class="PUNC">(</span><span class="NAME">ti</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
509
+ <span class='line'>502</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
510
+ <span class='line'>503</span>
511
+ <span class='line'>504</span> </span><span class="WHIT"> </span><span class="NAME">p3.getParents</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
512
+ <span class='line'>505</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
513
+ <span class='line'>506</span> </span><span class="WHIT"> </span><span class="NAME">this.point1.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
514
+ <span class='line'>507</span> </span><span class="WHIT"> </span><span class="NAME">this.point2.coords.usrCoords.slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
515
+ <span class='line'>508</span> </span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">this._smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.position</span><span class="WHIT"> </span><span class="PUNC">*</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._smax</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this._smin</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this._smax</span><span class="PUNC">]</span><span class="WHIT">
516
+ <span class='line'>509</span> </span><span class="WHIT"> </span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
517
+ <span class='line'>510</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
518
+ <span class='line'>511</span>
519
+ <span class='line'>512</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline.on</span><span class="PUNC">(</span><span class="STRN">"up"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
520
+ <span class='line'>513</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">pos</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">c</span><span class="PUNC">;</span><span class="WHIT">
521
+ <span class='line'>514</span>
522
+ <span class='line'>515</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.moveonup</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">Type.evaluate</span><span class="PUNC">(</span><span class="NAME">p3.visProp.fixed</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
523
+ <span class='line'>516</span> </span><span class="WHIT"> </span><span class="NAME">pos</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">l1.board.getMousePosition</span><span class="PUNC">(</span><span class="NAME">evt</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
524
+ <span class='line'>517</span> </span><span class="WHIT"> </span><span class="NAME">c</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Coords</span><span class="PUNC">(</span><span class="NAME">Const.COORDS_BY_SCREEN</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">pos</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.board</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
525
+ <span class='line'>518</span> </span><span class="WHIT"> </span><span class="NAME">p3.moveTo</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="NAME">c.usrCoords</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">c.usrCoords</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
526
+ <span class='line'>519</span> </span><span class="WHIT"> </span><span class="NAME">p3.triggerEventHandlers</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">'drag'</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">evt</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
527
+ <span class='line'>520</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
528
+ <span class='line'>521</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
529
+ <span class='line'>522</span>
530
+ <span class='line'>523</span> </span><span class="WHIT"> </span><span class="COMM">// Save the visibility attribute of the sub-elements</span><span class="WHIT">
531
+ <span class='line'>524</span> </span><span class="WHIT"> </span><span class="COMM">// for (el in p3.subs) {</span><span class="WHIT">
532
+ <span class='line'>525</span> </span><span class="WHIT"> </span><span class="COMM">// p3.subs[el].status = {</span><span class="WHIT">
533
+ <span class='line'>526</span> </span><span class="WHIT"> </span><span class="COMM">// visible: p3.subs[el].visProp.visible</span><span class="WHIT">
534
+ <span class='line'>527</span> </span><span class="WHIT"> </span><span class="COMM">// };</span><span class="WHIT">
535
+ <span class='line'>528</span> </span><span class="WHIT"> </span><span class="COMM">// }</span><span class="WHIT">
536
+ <span class='line'>529</span>
537
+ <span class='line'>530</span> </span><span class="WHIT"> </span><span class="COMM">// p3.hideElement = function () {</span><span class="WHIT">
538
+ <span class='line'>531</span> </span><span class="WHIT"> </span><span class="COMM">// var el;</span><span class="WHIT">
539
+ <span class='line'>532</span> </span><span class="WHIT"> </span><span class="COMM">// GeometryElement.prototype.hideElement.call(this);</span><span class="WHIT">
540
+ <span class='line'>533</span> </span><span class="WHIT"> </span><span class="COMM">//</span><span class="WHIT">
541
+ <span class='line'>534</span> </span><span class="WHIT"> </span><span class="COMM">// for (el in this.subs) {</span><span class="WHIT">
542
+ <span class='line'>535</span> </span><span class="WHIT"> </span><span class="COMM">// // this.subs[el].status.visible = this.subs[el].visProp.visible;</span><span class="WHIT">
543
+ <span class='line'>536</span> </span><span class="WHIT"> </span><span class="COMM">// this.subs[el].hideElement();</span><span class="WHIT">
544
+ <span class='line'>537</span> </span><span class="WHIT"> </span><span class="COMM">// }</span><span class="WHIT">
545
+ <span class='line'>538</span> </span><span class="WHIT"> </span><span class="COMM">// };</span><span class="WHIT">
546
+ <span class='line'>539</span>
547
+ <span class='line'>540</span> </span><span class="WHIT"> </span><span class="COMM">// p3.showElement = function () {</span><span class="WHIT">
548
+ <span class='line'>541</span> </span><span class="WHIT"> </span><span class="COMM">// var el;</span><span class="WHIT">
549
+ <span class='line'>542</span> </span><span class="WHIT"> </span><span class="COMM">// GeometryElement.prototype.showElement.call(this);</span><span class="WHIT">
550
+ <span class='line'>543</span> </span><span class="WHIT"> </span><span class="COMM">//</span><span class="WHIT">
551
+ <span class='line'>544</span> </span><span class="WHIT"> </span><span class="COMM">// for (el in this.subs) {</span><span class="WHIT">
552
+ <span class='line'>545</span> </span><span class="WHIT"> </span><span class="COMM">// // if (this.subs[el].status.visible) {</span><span class="WHIT">
553
+ <span class='line'>546</span> </span><span class="WHIT"> </span><span class="COMM">// this.subs[el].showElement();</span><span class="WHIT">
554
+ <span class='line'>547</span> </span><span class="WHIT"> </span><span class="COMM">// // }</span><span class="WHIT">
555
+ <span class='line'>548</span> </span><span class="WHIT"> </span><span class="COMM">// }</span><span class="WHIT">
556
+ <span class='line'>549</span> </span><span class="WHIT"> </span><span class="COMM">// };</span><span class="WHIT">
557
+ <span class='line'>550</span>
558
+ <span class='line'>551</span> </span><span class="WHIT"> </span><span class="COMM">// This is necessary to show baseline, highline and ticks</span><span class="WHIT">
559
+ <span class='line'>552</span> </span><span class="WHIT"> </span><span class="COMM">// when opening the board in case the visible attributes are set</span><span class="WHIT">
560
+ <span class='line'>553</span> </span><span class="WHIT"> </span><span class="COMM">// to 'inherit'.</span><span class="WHIT">
561
+ <span class='line'>554</span> </span><span class="WHIT"> </span><span class="NAME">p3.prepareUpdate</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
562
+ <span class='line'>555</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">board.isSuspendedUpdate</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
563
+ <span class='line'>556</span> </span><span class="WHIT"> </span><span class="NAME">p3.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
564
+ <span class='line'>557</span> </span><span class="WHIT"> </span><span class="NAME">p3.baseline.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
565
+ <span class='line'>558</span> </span><span class="WHIT"> </span><span class="NAME">p3.highline.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
566
+ <span class='line'>559</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">withTicks</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
567
+ <span class='line'>560</span> </span><span class="WHIT"> </span><span class="NAME">p3.ticks.updateVisibility</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateRenderer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
568
+ <span class='line'>561</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
569
+ <span class='line'>562</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
570
+ <span class='line'>563</span>
571
+ <span class='line'>564</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">p3</span><span class="PUNC">;</span><span class="WHIT">
572
+ <span class='line'>565</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
573
+ <span class='line'>566</span>
574
+ <span class='line'>567</span> </span><span class="NAME">JXG.registerElement</span><span class="PUNC">(</span><span class="STRN">"slider"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">JXG.createSlider</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
575
+ <span class='line'>568</span>
576
+ <span class='line'>569</span> </span><span class="COMM">// export default {</span><span class="WHIT">
577
+ <span class='line'>570</span> </span><span class="COMM">// createSlider: JXG.createSlider</span><span class="WHIT">
578
+ <span class='line'>571</span> </span><span class="COMM">// };</span><span class="WHIT">
579
+ <span class='line'>572</span> </span></pre></body></html>