home *** CD-ROM | disk | FTP | other *** search
/ Hentai 69 / HENTAI69.iso / Extra / MPSetup.exe / 1033 / RCDATA / CABINET / 9SeriesDefault_.wmz / corona_tiny.js next >
Text File  |  2002-10-17  |  6KB  |  202 lines

  1.  
  2. // timed event dispatcher
  3. var g_grpTimerEvents    = new Array();
  4.  
  5.  
  6. function OnTinyLoad() {
  7.     view.width    = view.minWidth;
  8.     view.height = view.minHeight;
  9.  
  10.     // rem for 98: RegisterTimerEvent(new TimerEvent(50, 200, "MoveItX", "RegisterTimerEvent(new TimerEvent(50, 200, \"ResizeY\",\"\", svVideo, 0));", t1, 161, 300));
  11.     RegisterTimerEvent(new TimerEvent(50, 200, "MoveItX", "RegisterTimerEvent(new TimerEvent(50, 200, \"ResizeY\",\"\", 2, svVideo, 0));", 3, t1, 161, 300));
  12.     // rem for 98: RegisterTimerEvent(new TimerEvent(4000, -1, "OnTimerTransport", ""));
  13.     RegisterTimerEvent(new TimerEvent(4000, -1, "OnTimerTransport", "", 0));
  14.     
  15.     OnOpenStateChangeTransport(player.openState);
  16.     OnPlayStateChangeTransport(player.playState);
  17.     OnStatusChangeTransport(player.status);
  18.     
  19. }
  20.  
  21. function OnTinyClose() {
  22. }
  23.  
  24. function RestorePlayer() {
  25.     view.width    = view.minWidth;
  26.     view.height    = view.minHeight;
  27.  
  28.     // rem for 98: RegisterTimerEvent(new TimerEvent(50, 200, "MoveItX", "RegisterTimerEvent(new TimerEvent(50, 200, \"ResizeY\", \"theme.currentViewID = \\\"vPlayer\\\";\", svVideo, 241));", t1, 0, 300));
  29.     RegisterTimerEvent(new TimerEvent(50, 200, "MoveItX", "RegisterTimerEvent(new TimerEvent(50, 200, \"ResizeY\", \"theme.currentViewID = \\\"vPlayer\\\";\", 2, svVideo, 241));", 3, t1, 0, 300));
  30. }
  31.  
  32. function EventFire(timeStamp) {
  33.  
  34.     var retVal = true;
  35.     
  36.     this.curTime = timeStamp;
  37.     this.elapsed = this.curTime - this.prevTime;
  38.  
  39.     if (this.elapsed >= this.interval) {
  40.         eval("retVal = " + this.funcName + "(this)");
  41.         this.init = true;
  42.         if (this.tLength > 0) {
  43.             if (this.elapsed > this.tLength) {
  44.                 tLength = 0;
  45.                 return false;
  46.             }
  47.             this.tLength -= this.elapsed;
  48.         }
  49.         this.prevTime = this.curTime;
  50.     }
  51.         
  52.     return retVal;
  53. }
  54.  
  55. // rem for 98: function TimerEvent(interval, tLength, funcName, end) {
  56. function TimerEvent(interval, tLength, funcName, end, numExtraArgs) {
  57.  
  58.     this.interval    = interval;
  59.     this.tLength    = tLength;
  60.     this.funcName    = funcName;
  61.     this.args        = new Array();
  62.     this.elapsed    = 0;
  63.     this.curTime    = this.prevTime = new Date().getTime();
  64.     this.state        = new Array();
  65.     this.init        = false;
  66.     this.end        = end;
  67.     
  68.     // fixed for Win98.  The default JScript engine in 98 does not
  69.     // support the length property of the 'arguments' object.  So,
  70.     // this function must be called with numExtraArgs defined as the total
  71.     // number of extra parameters being passed in.
  72.     
  73.     // rem for 98: for (i = 4; i < arguments.length; i++) {
  74.     for (i = TimerEvent.length;i < TimerEvent.length + numExtraArgs;i++) {
  75.         // rem for 98: this.args.push(arguments[i]);
  76.         this.args[i - TimerEvent.length] = arguments[i];
  77.     }
  78.     
  79.     this.fire = EventFire;
  80. }
  81.  
  82. function TimerDispatch() {
  83.     if (g_grpTimerEvents.length == 0) {
  84.         view.timerInterval = 0;
  85.         return;
  86.     }
  87.  
  88.     var curTime = new Date().getTime();
  89.     var tEvent;
  90.     var newGrpTimerEvents = new Array();
  91.  
  92.     for (events in g_grpTimerEvents) {
  93.         tEvent = g_grpTimerEvents[events];
  94.         if (tEvent.fire(curTime) == false) {
  95.             // rem for 98: oldEvent = (g_grpTimerEvents.splice(events, 1)).pop();
  96.         
  97.             if (tEvent.end)
  98.                 eval(tEvent.end);
  99.         } else {
  100.             newGrpTimerEvents[newGrpTimerEvents.length] = tEvent;
  101.         }
  102.     }
  103.     
  104.     var bEventsWereRemoved = g_grpTimerEvents.length > newGrpTimerEvents.length;
  105.     g_grpTimerEvents = newGrpTimerEvents;
  106.     if (bEventsWereRemoved)
  107.         SetTimerInterval();
  108.         
  109. }
  110.  
  111. function RegisterTimerEvent(tEvent) {
  112.     // rem for 98: g_grpTimerEvents.push(tEvent);
  113.     g_grpTimerEvents[g_grpTimerEvents.length] = tEvent;
  114.     
  115.     SetTimerInterval();
  116. }
  117.  
  118. function SetTimerInterval() {
  119.     if (!g_grpTimerEvents.length) {
  120.         view.timerInterval = 0;
  121.     }
  122.     
  123.     var leastInterval = g_grpTimerEvents[0].interval;
  124.     for (i = 1;i < g_grpTimerEvents.length; i++) {
  125.         if (g_grpTimerEvents[i].interval < leastInterval)
  126.             leastInterval = g_grpTimerEvents[i].interval;
  127.     }
  128.     
  129.     view.timerInterval = leastInterval;
  130. }
  131.  
  132. function MoveItX(tEvent) {
  133.  
  134.     controlID    = tEvent.args[0];
  135.     newX        = tEvent.args[1];
  136.     clipX        = tEvent.args[2];
  137.  
  138.     if (controlID.left == newX) {
  139.         return false;
  140.     }
  141.  
  142.     var curTimer    = tEvent.curTimer;
  143.     var elapsed        = tEvent.elapsed;
  144.     var disRemain    = newX - controlID.left;
  145.     var nPixels        = 0;
  146.  
  147.     if (!tEvent.init) {
  148.         tEvent.state.greaterThan = newX > controlID.left;
  149.         tEvent.state.nPixels = 0;
  150.     }
  151.  
  152.     tEvent.state.nPixels    += disRemain / (tEvent.tLength / elapsed);
  153.  
  154.     nPixels    = Math.floor(tEvent.state.nPixels);
  155.  
  156.     if (tEvent.state.greaterThan ? controlID.left + nPixels > newX : controlID.left + nPixels < newX)
  157.         nPixels = newX - controlID.left;
  158.  
  159.     controlID.left            += nPixels;
  160.     controlID.width            = clipX - controlID.left;
  161.     tEvent.state.nPixels    -= nPixels;
  162.  
  163.     return true;
  164. }
  165.  
  166. function ResizeY(tEvent) {
  167.  
  168.     controlID    = tEvent.args[0];
  169.     newY        = tEvent.args[1];
  170.     
  171.     if (controlID.height == newY) {
  172.         return false;
  173.     }
  174.     
  175.     var disRemain    = newY - controlID.height;
  176.     var nPixels        = 0;
  177.     
  178.     if (!tEvent.init) {
  179.         tEvent.state.greaterThan = newY > controlID.height;
  180.         tEvent.state.nPixels = 0;
  181.     }
  182.     
  183.     tEvent.state.nPixels    += disRemain / (tEvent.tLength / tEvent.elapsed);
  184.     nPixels = Math.floor(tEvent.state.nPixels);
  185.     
  186.     if (tEvent.state.greaterThan ? controlID.height + nPixels > newY : controlID.height + nPixels < newY)
  187.         nPixels = newY - controlID.height;
  188.         
  189.     controlID.height        += nPixels;
  190.     tEvent.state.nPixels    -= nPixels;
  191.     
  192.     return true;
  193. }
  194.  
  195. function OpenMedia() {
  196.  
  197.     newFile = theme.openDialog('FILE_OPEN', 'FILES_ALLMEDIA');
  198.     if (newFile) {
  199.         player.URL = newFile;
  200.         player.controls.play();
  201.     }
  202. }