]> git.sesse.net Git - vlc/blobdiff - activex/test.html
mkv.cpp: store the translation between segment IDs for each chapter codec
[vlc] / activex / test.html
index c6fbe92d9c1357656a5a235eb5cee0836e6777b0..03c794fb24d3191f16a0f554010d6993e9fa5c2c 100644 (file)
 <BODY>
 <SCRIPT LANGUAGE="JScript">
 <!--
+var sliderTimerId = 0;
+var sliderScrolling = false;
+
+function formatTime(timeVal)
+{
+    var timeHour = timeVal;
+    var timeSec = timeHour % 60;
+    if( timeSec < 10 )
+       timeSec = '0'+timeSec;
+    timeHour = (timeHour - timeSec)/60;
+    var timeMin = timeHour % 60;
+    if( timeMin < 10 )
+       timeMin = '0'+timeMin;
+    timeHour = (timeHour - timeMin)/60;
+    if( timeHour > 0 )
+       return timeHour+":"+timeMin+":"+timeSec;
+    else
+       return timeMin+":"+timeSec;
+};
 function go(targetURL)
 {
        var options = new Array(":input-repeat");
        document.vlc.addTarget(targetURL, options, 4+8, -666);
+    if( ! sliderTimerId )
+    {
+        sliderTimerId = setTimeout("updateInterface()", 1000);
+    }
+};
+function updateInterface()
+{
+    if( ! sliderScrolling )
+    {
+        if( vlc.Length > 0 )
+        {
+            slider.Enabled = true;
+            slider.Max = vlc.Length;
+            slider.Value = vlc.Time;
+            info.innerText = formatTime(vlc.Time)+"/"+formatTime(vlc.Length);
+        }
+        else if( slider.Enabled )
+        {
+            slider.Enabled = false;
+            slider.Value = slider.Min;
+            info.innerText = "--:--/--:--";
+        }
+    }
+
+    if( vlc.Playing )
+    {
+        sliderTimerId = setTimeout("updateInterface()", 1000);
+    }
+    else
+    {
+        sliderTimerId = 0;
+    }
 };
 //-->
 </SCRIPT>
 <TABLE>
-<TR><TD>
+<TR><TD colspan="2">
 MRL:
-<INPUT size="80" name="targetTextField" value="">
+<INPUT size="90" name="targetTextField" value="">
 <INPUT type=submit value="Go" onClick="go(targetTextField.value);">
 </TD></TR>
-<TR><TD>
-<OBJECT classid="clsid:E23FE9C6-778E-49D4-B537-38FCDE4887D8"
+<TR><TD colspan="2">
+<!--
+Insert VideoLAN.VLCPlugin.1 activex control
+-->
+<OBJECT classid="clsid:E23FE9C6-778E-49D4-B537-38FCDE4887D8" codebase="axvlc.cab"
         width="640" height="480" id="vlc" events="True">
 <param name="Src" value="" />
 <param name="ShowDisplay" value="True" />
 <param name="Loop" value="False" />
 <param name="AutoPlay" value="False" />
 </OBJECT>
-<SCRIPT LANGUAGE="JScript">
+</TD></TR>
+<TR><TD>
 <!--
+Insert MSComctlLib.Slider.2 activex control
+-->
+<OBJECT classid="clsid:F08DF954-8592-11D1-B16A-00C0F0283628"
+        width="540" height="20" id="slider" events="True">
+<param name="TickStyle" value="3" />
+<param name="Min" value="0" />
+<param name="Max" value="0" />
+<param name="Value" value="0" />
+<param name="Enabled" value="False" />
+</OBJECT>
+<SCRIPT LANGUAGE="JScript">
 function vlc::play()
 {
-       alert("VLC is Playing");
+    if( ! sliderTimerId )
+    {
+        sliderTimerId = setTimeout("updateInterface()", 1000);
+    }
 };
 function vlc::pause()
 {
-       alert("VLC has Paused");
+    if( sliderTimerId )
+    {
+        clearTimeout(sliderTimerId)
+        sliderTimerId = 0;
+    }
 };
 function vlc::stop()
 {
-       alert("VLC has Stopped");
+    if( sliderTimerId )
+    {
+        clearTimeout(sliderTimerId)
+        sliderTimerId = 0;
+        if( slider.Enabled )
+        {
+            slider.Value = slider.Min;
+            slider.Enabled = false;
+            info.innerText = "--:--/--:--";
+        }
+    }
+};
+function slider::Scroll()
+{
+    slider.Text = formatTime(slider.Value);
+    info.innerText = slider.Text+"/"+formatTime(vlc.Length);
+    if( vlc.Time != slider.Value )
+    {
+        vlc.Time = slider.Value;
+    }
+};
+function slider::Change()
+{
+    if( sliderScrolling )
+    {
+        sliderScrolling = false;
+    }
+    else if( vlc.Time != slider.Value )
+    {
+        vlc.Time = slider.Value;
+    }
 };
 //-->
 </SCRIPT>
+</TD><TD width="15%">
+<DIV id="info" style="text-align:right">--:--/--:--</DIV>
 </TD></TR>
-<TR><TD>
+<TR><TD colspan="2">
 <INPUT type=button value="Play" onClick='document.vlc.play();'>
 <INPUT type=button value="Stop" onClick='document.vlc.stop();'>
 <INPUT type=button value="Pause" onClick='document.vlc.pause();'>