SMF Script 8 — File Browser
SMFScript8v8.13 / SMFScript8v8.13 / system / mplay.mrc
mplay.mrc — 36.67 KB — Download this file
alias mp.stp.main {
dialog -mn mp.stp mp.stp | set -u0 %mp.drv.ltr 64 | :loop | inc -u0 %mp.drv.ltr | if (%mp.drv.ltr = 91) goto next | set -u0 %mp.drv.tmp $chr(%mp.drv.ltr) $+ :\ | if ($isdir(%mp.drv.tmp)) did -a mp.stp 3 %mp.drv.tmp | goto loop | :next | did -a mp.stp 3 off | if ($cd.drv = $null) goto end | :lp | inc -u0 %mp.drv.ln | if (%mp.drv.ln > $did(mp.stp,3).lines) goto end | if ($cd.drv = $did(mp.stp,3,%mp.drv.ln)) { did -c mp.stp 3 %mp.drv.ln | goto end } | goto lp | :end | if ($len($windir) >= 17) did -a mp.stp 5 ... $+ $lower( [ $+ [ $right($windir,14) ] $+ ] ) | else did -a mp.stp 5 $windir
if ($cd.drv = off) did -b mp.stp 5 | if ($len($mp3.ply) >= 17) did -a mp.stp 7 ... $+ $lower( [ $+ [ $right($mp3.ply,14) ] $+ ] ) | else did -a mp.stp 7 $mp3.ply | if ($mp3.ply = off) did -b mp.stp 9 | if ($len($mp3.dir) >= 17) did -a mp.stp 9 ... $+ $lower( [ $+ [ $right($mp3.dir,14) ] $+ ] ) | else did -a mp.stp 9 $mp3.dir | if ($len($mid.dir) >= 17) did -a mp.stp 11 ... $+ $lower( [ $+ [ $right($mid.dir,14) ] $+ ] ) | else did -a mp.stp 11 $mid.dir | if ($len($wav.dir) >= 17) did -a mp.stp 13 ... $+ $lower( [ $+ [ $right($wav.dir,14) ] $+ ] ) | else did -a mp.stp 13 $wav.dir
}
dialog mp.stp {
title "Media Player v7.00 Settings"
size -1 -1 214 173
button "Cancel",1,110 142 54 26,cancel
text "CD-ROM Drive",2,3 10 100 13,center
combo 3, 4 28 100 250,drop
text "Windows Directory",4,109 10 100 13,center
button "",5,109 28 100 21
text "MP3 Player",6,3 54 100 13,center
button "",7,4 72 100 21
text "MP3 Directory",8,109 54 100 13,center
button "",9,109 72 100 21
text "MIDI Directory",10,3 98 100 13,center
button "",11,4 116 100 21
text "Wave Directory",12,109 98 100 13,center
button "",13,109 116 100 21
button "OK",14,50 142 54 26,ok
}
on *:dialog:mp.stp:sclick:*: if ($did = 14) && (%mp.err) .timer -m 1 150 mp.main | if ($did = 3) { writeini $mplay.ini settings cd.drv $did(3,$did(3).sel) | did - $+ $iif($did(3,$did(3).sel) = off,b,e) mp.stp 5 } | if ($did = 5) .timer 1 0 mp.wd.get | if ($did = 7) .timer 1 0 mp.mp3.stp | if ($did = 9) .timer 1 0 mp.dget mp3 9 | if ($did = 11) .timer 1 0 mp.dget mid 11 | if ($did = 13) .timer 1 0 mp.dget wav 13
alias mp.mp3.stp mp.nul $dialog(MP3set,MP3set)
dialog MP3set {
title "Setup"
size -1 -1 180 100
text "Select your MP3 Player", 2, 0 0 180 15, center
edit "", 5, 40 20 100 23, autohs
combo 3, 40 43 100 250, drop
button "Cancel",1,70 73 50 22, cancel
button "OK",4,20 73 50 22,default
button "Browse",6,120 73 50 22
}
on *:dialog:MP3set:init:0: did -a MP3set 3 Winamp | did -a MP3set 3 Other | did -a MP3set 3 Off | did -b MP3set 5
on *:dialog:MP3set:sclick:*: if ($did = 3) { set %mp.mp3.tmp $did(3,$did(3).sel) | did -b MP3set 5 | if (%mp.mp3.tmp = winamp) did -ra MP3set 5 winamp.exe | if (%mp.mp3.tmp = none) did -ra MP3set 5 none | if (%mp.mp3.tmp = other) { did -ra MP3set 5 mp3player.exe | did -e MP3set 5 } } | if ($did = 6) { dialog -c mp3set | .timer 1 0 mp.mp3.brs } | if ($did = 4) { dialog -c MP3set | if (%mp.mp3.tmp = off) { writeini $mplay.ini settings mp3.ply off | did -a mp.stp 7 off | unset %mp.mp3.tmp | did -b mp.stp 9 | return } | else { dialog -c mp.stp | if (%mp.mp3.tmp = winamp) set %mp.fnd.file winamp.exe | if ($right(%mp.fnd.file,4) != .exe) set %mp.fnd.file %mp.fnd.file $+ .exe | set %mp.stp.fnd - | window -kels +e @Find 0 0 638 362 arial 11 | editbox @Find click a file to select it as your default MP3 Player. | mp.find.next } }
on *:dialog:MP3set:edit:5: set %mp.fnd.file $did(5)
alias mp.mp3.brs writeini $mplay.ini settings mp3.ply $$dir="choose your MP3 player" C:\*.exe | if ($len($mp3.ply) >= 17) did -a mp.stp 7 ... $+ $lower( [ $+ [ $right($mp3.ply,14) ] $+ ] ) | else did -a mp.stp 7 $mp3.ply | did -e mp.stp 9
alias mp.wd.get writeini $mplay.ini settings windir $$sdir="Your Windows Directory" C:\ | did -a mp.stp 5 $windir
alias mp.dget set %mp.dir.tmp $$sdir="Select your $1 directory" C:\ | :loop | inc %mp.dir.ln.1 | set %mp.dir.ln.2 $readini $mplay.ini [ [ $1 ] $+ ] .dir %mp.dir.ln.1 | if (%mp.dir.ln.2 = %mp.dir.tmp) goto end | if (%mp.dir.ln.2) goto loop | else writeini $mplay.ini [ [ $1 ] $+ ] .dir %mp.dir.ln.1 %mp.dir.tmp | :end | writeini $mplay.ini settings dir. [ $+ [ $1 ] ] %mp.dir.tmp | unset %mp.dir.* | if ($len($ [ $+ [ $1 ] $+ ] .dir) >= 17) did -a mp.stp $2 ... $+ $lower( [ $+ [ $right($ [ $+ [ $1 ] $+ ] .dir,14) ] $+ ] ) | else did -a mp.stp $2 $ [ $+ [ $1 ] $+ ] .dir
alias mp.nul return
dialog mp.err {
title "Error!"
size -1 -1 243 76
button "OK",1,94 45 54 26,ok
text "Settings are missing.",2,5 5 233 13,center
text "Please check your settings and try again.",3,5 22 233 13,center
}
alias mp.stp.chk if ($isfile($mplay.bmp) != $true) { set -u0 %mplay.bmp $findfile($mircdir,mplay.bmp,1) | if (%mplay.bmp = $null) { | echo $colour(info) ERROR: mplay.bmp not found. | halt } | writeini $mplay.ini settings mplay.bmp %mplay.bmp } | if ($readini $mplay.ini settings winloc = $null) writeini $mplay.ini settings winloc 0 0 | if ($readini $mplay.ini settings winsze = $null) writeini $mplay.ini settings winsze 478 268 | if ($cd.drv = $null) mp.err | if ($windir = $null) && ($cd.drv != off) mp.err | if ($mp3.ply = $null) mp.err | if ($mp3.dir = $null) && ($mp3.ply != off) mp.err | if ($mid.dir = $null) mp.err | if ($wav.dir = $null) mp.err | unset %mp.err
alias mp.err set %mp.err - | mp.stp.main | mp.nul $dialog(mp.err,mp.err) | halt
alias mplay.ini return $qts($scriptdirsettings.ini)
alias sl if ($getdot($active,$mouse.x,$mouse.y) = $null) return $true
alias mplay.bmp if ($chr(32) isin $readini $mplay.ini settings mplay.bmp) return " $+ $readini $mplay.ini settings mplay.bmp $+ " | return $readini $mplay.ini settings mplay.bmp
alias mp.refresh drawpic -c @Media 0 54 0 54 271 183 $mplay.bmp | if (%mp.actv = cd) drawrect -f @media 9 1 9 60 16 12 | if (%mp.actv = mp3) drawrect -f @media 9 1 16 130 16 12 | if (%mp.actv = mid) drawrect -f @media 9 1 19 170 17 16 | if (%mp.actv = wav) drawrect -f @media 9 1 158 170 17 16 | if ($cd.drv = off) drawrect -f @media 5 1 9 60 16 12 | if ($mp3.ply = off) drawrect -f @media 5 1 16 130 16 12 | if (%mp.rsp.mid) drawpic -c @media 10 198 148 289 114 12 $mplay.bmp | if (%mp.rsp.wav) drawpic -c @media 149 198 148 289 114 12 $mplay.bmp
alias mp.main mp.stp.chk | set -u0 %mp.win.loc $readini $mplay.ini settings winloc | set -u0 %mp.win.sze $readini $mplay.ini settings winsze | clear -l @media | window -pl29k +e @Media %mp.win.loc %mp.win.sze arial 11 | drawfill -r @media 3682360 3682360 0 0 | drawpic -c @Media 0 0 0 0 271 54 $mplay.bmp | mp.refresh | titlebar @Media Player v7.00 | mp.cd.chk | .timerMP.CD.CHK 0 3 mp.cd.chk
menu @media {
dclick {
if ($getdot(@media,$mouse.x,$mouse.y) = $null) {
if (%mp.actv = cd) run -n cdplayer -play $cd.drv $+ Track $+ $iif($1 < 10,0) $+ $1 $+ .cda
if (%mp.actv = mp3) && (%mp.mp3.actv = dir) writeini $mplay.ini settings dir.mp3 $sline(@media,1)
if (%mp.actv = mp3) && (%mp.mp3.actv = ply) run -n $mp3.ply $qts( [ $+ [ $readini $mplay.ini mp3.ply $1 ] $+ ] )
if (%mp.actv = mp3) && (%mp.mp3.actv = list) run -n $mp3.ply $qts($line(@mp.mp3.list,$1))
if (%mp.actv = mid) && (%mp.mid.actv = ply) { splay stop | .timer -m 1 15 splay $qts( [ $+ [ $readini $mplay.ini mid.ply $1 ] $+ ] ) }
if (%mp.actv = mid) && (%mp.mid.actv = dir) writeini $mplay.ini settings dir.mid $sline(@media,1)
if (%mp.actv = mid) && (%mp.mid.actv = list) { splay stop | .timer -m 1 15 splay $qts($line(@mp.mid.list,$1)) }
if (%mp.actv = wav) && (%mp.wav.actv = ply) { splay stop | .timer -m 1 15 splay $qts( [ $+ [ $readini $mplay.ini wav.ply $1 ] $+ ] ) }
if (%mp.actv = wav) && (%mp.wav.actv = dir) writeini $mplay.ini settings dir.wav $sline(@media,1)
if (%mp.actv = wav) && (%mp.wav.actv = list) { splay stop | .timer -m 1 15 splay $qts($line(@mp.wav.list,$1)) }
}
}
sclick {
if ($inrect($mouse.x,$mouse.y,0,0,272,77)) && ($cd.drv != off) { if (%mp.actv != cd) clear -l @media | set %mp.actv cd } | if ($inrect($mouse.x,$mouse.y,0,79,272,78)) && ($mp3.ply != off) { if (%mp.actv != mp3) clear -l @media | set %mp.actv mp3 } | if ($inrect($mouse.x,$mouse.y,0,160,134,78)) { if (%mp.actv != mid) clear -l @media | set %mp.actv mid } | if ($inrect($mouse.x,$mouse.y,137,160,135,78)) { if (%mp.actv != wav) clear -l @media | set %mp.actv wav } | if ($inrect($mouse.x,$mouse.y,29,57,21,17)) { drawpic -c @media 29 57 84 289 22 18 $mplay.bmp | if ($findfile($cd.drv,*.cda,0)) mp.cd.list } | if ($inrect($mouse.x,$mouse.y,52,57,21,17)) { drawpic -c @media 52 57 105 289 22 18 $mplay.bmp | if ($findfile($cd.drv,*.cda,0)) mp.cd.edit } | if ($inrect($mouse.x,$mouse.y,13,93,22,21)) { drawpic -c @media 13 93 126 289 23 22 $mplay.bmp | if ($mp3.ply != off) { mp.mp3.dirs | set %mp.mp3.actv dir } }
if ($inrect($mouse.x,$mouse.y,36,127,21,17)) { drawpic -c @media 36 127 0 289 22 18 $mplay.bmp | if ($mp3.ply != off) { mp.mp3.plst | set %mp.mp3.actv ply } } | if ($inrect($mouse.x,$mouse.y,59,127,21,17)) { drawpic -c @media 59 127 21 289 22 18 $mplay.bmp | if ($mp3.ply != off) { mp.mp3.rnd } } | if ($inrect($mouse.x,$mouse.y,82,127,21,17)) { drawpic -c @media 82 127 42 289 22 18 $mplay.bmp | if ($mp3.ply != off) { mp.mp3.ply } } | if ($inrect($mouse.x,$mouse.y,105,127,21,17)) { drawpic -c @media 105 127 63 289 22 18 $mplay.bmp | if ($mp3.ply != off) { run $mp3.ply stop } } | if ($inrect($mouse.x,$mouse.y,151,127,21,17)) { drawpic -c @media 151 127 84 289 22 18 $mplay.bmp | if ($mp3.ply != off) { mp.mp3.list | set %mp.mp3.actv list } } | if ($inrect($mouse.x,$mouse.y,174,127,21,17)) { drawpic -c @media 174 127 105 289 22 18 $mplay.bmp | if ($mp3.ply != off) { mp.mp3.edt } }
if ($inrect($mouse.x,$mouse.y,93,167,22,21)) { drawpic -c @media 93 167 126 289 23 22 $mplay.bmp | mp.mid.dirs | set %mp.mid.actv dir } | if ($inrect($mouse.x,$mouse.y,10,198,113,11)) { if (%mp.rsp.mid) unset %mp.rsp.mid | else set %mp.rsp.mid - } | if ($inrect($mouse.x,$mouse.y,10,212,21,17)) { drawpic -c @media 10 212 0 289 22 18 $mplay.bmp | mp.mid.plst | set %mp.mid.actv ply } | if ($inrect($mouse.x,$mouse.y,33,212,21,17)) { drawpic -c @media 33 212 21 289 22 18 $mplay.bmp | mp.mid.rnd } | if ($inrect($mouse.x,$mouse.y,56,212,21,17)) { drawpic -c @media 56 212 42 289 22 18 $mplay.bmp | mp.mid.ply } | if ($inrect($mouse.x,$mouse.y,79,212,21,17)) { drawpic -c @media 79 212 63 289 22 18 $mplay.bmp | splay stop } | if ($inrect($mouse.x,$mouse.y,102,212,21,17)) { drawpic -c @media 102 212 84 289 22 18 $mplay.bmp | mp.mid.list | set %mp.mid.actv list }
if ($inrect($mouse.x,$mouse.y,232,167,22,21)) { drawpic -c @media 232 167 126 289 23 22 $mplay.bmp | mp.wav.dirs | set %mp.wav.actv dir } | if ($inrect($mouse.x,$mouse.y,149,198,113,11)) { if (%mp.rsp.wav) unset %mp.rsp.wav | else set %mp.rsp.wav - } | if ($inrect($mouse.x,$mouse.y,149,212,21,17)) { drawpic -c @media 149 212 0 289 22 18 $mplay.bmp | mp.wav.plst | set %mp.wav.actv ply } | if ($inrect($mouse.x,$mouse.y,172,212,21,17)) { drawpic -c @media 172 212 21 289 22 18 $mplay.bmp | mp.wav.rnd } | if ($inrect($mouse.x,$mouse.y,195,212,21,17)) { drawpic -c @media 195 212 42 289 22 18 $mplay.bmp | mp.wav.ply } | if ($inrect($mouse.x,$mouse.y,218,212,21,17)) { drawpic -c @media 218 212 63 289 22 18 $mplay.bmp | splay stop } | if ($inrect($mouse.x,$mouse.y,241,212,21,17)) { drawpic -c @media 241 212 84 289 22 18 $mplay.bmp | mp.wav.list | set %mp.wav.actv list } | .timer -m 1 180 mp.refresh
}
$iif($sl && %mp.actv = mp3 && %mp.mp3.actv = dir,Add): aline -l @Media $$sdir="MP3 Directory" C:\ | mp.mp3.dir.sav
$iif($sl && %mp.actv = mp3 && %mp.mp3.actv = dir && $sline(@Media,0),Remove): dline -l @media $sline(@media,1).ln | mp.mp3.dir.sav
$iif($sl && %mp.actv = mp3 && %mp.mp3.actv = ply && $sline(@Media,0),Play Selected): if ($sline(@Media,0) = 1) { run -n $mp3.ply $qts( [ $+ [ $readini $mplay.ini mp3.ply $sline(@Media,1).ln ] $+ ] ) | return } | else { set %mp.mp3.lns.num $sline(@Media,0) | :loop | inc %mp.mp3.lns.tmp | if (%mp.mp3.lns.tmp < %mp.mp3.lns.num) { write $qts($scriptdirplaylist.m3u) $readini $mplay.ini mp3.ply $sline(@Media,%mp.mp3.lns.tmp).ln | goto loop } | else { write $qts($scriptdirplaylist.m3u) $readini $mplay.ini mp3.ply $sline(@Media,%mp.mp3.lns.tmp).ln | run -n $mp3.ply $qts($scriptdirplaylist.m3u) } | unset %mp.mp3.lns.* | .timer 1 3 .remove $qts($scriptdirplaylist.m3u) }
-
$iif($sl && %mp.actv = mp3 && %mp.mp3.actv = ply,Add): set %mp3.dir.tmp $mp3.dir $+ *.m* | set %mp3.dir.tmp $$dir="MP3 File" %mp3.dir.tmp | writeini $mplay.ini mp3.ply $calc($line(@media,0,1) + 1) %mp3.dir.tmp | aline -l @media $nopath(%mp3.dir.tmp) | unset %mp3.dir.tmp
$iif($sl && %mp.actv = mp3 && %mp.mp3.actv = ply && $sline(@Media,0),Remove): set %mp.ply.ln.1 $calc($sline(@media,1).ln - 1) | set %mp.ply.ln.2 $sline(@media,1).ln | remini $mplay.ini mp3.ply $sline(@media,1).ln | dline -l @media $sline(@media,1).ln | :loop | inc %mp.ply.ln.1 | inc %mp.ply.ln.2 | set %mp.ply.ln.3 $readini $mplay.ini mp3.ply %mp.ply.ln.2 | if (%mp.ply.ln.3) { writeini $mplay.ini mp3.ply %mp.ply.ln.1 %mp.ply.ln.3 | remini $mplay.ini mp3.ply %mp.ply.ln.2 | goto loop } | unset %mp.ply.ln.*
$iif($sl && %mp.actv = mp3 && %mp.mp3.actv = list && $sline(@Media,0),Play Selected): if ($sline(@Media,0) = 1) { run -n $mp3.ply $qts($line(@mp.mp3.list,$sline(@Media,1).ln)) | return } | else { set %mp.mp3.lns.num $sline(@Media,0) | :loop | inc %mp.mp3.lns.tmp | if (%mp.mp3.lns.tmp < %mp.mp3.lns.num) { write $qts($scriptdirplaylist.m3u) $line(@mp.mp3.list,$sline(@Media,%mp.mp3.lns.tmp).ln) | goto loop } | else { write $qts($scriptdirplaylist.m3u) $line(@mp.mp3.list,$sline(@Media,%mp.mp3.lns.tmp).ln) | run -n $mp3.ply $qts($scriptdirplaylist.m3u) } | unset %mp.mp3.lns.* | .timer 1 3 .remove $qts($scriptdirplaylist.m3u) }
$iif($sl && %mp.actv = mp3 && %mp.mp3.actv = list && $sline(@Media,0),Add Selected To Playlist): :loopA | inc %mp.mp3.lns.ttl | set %mp.mp3.lns.cnt $readini $mplay.ini mp3.ply %mp.mp3.lns.ttl | if (%mp.mp3.lns.cnt) goto loopA | if ($sline(@Media,0) = 1) { writeini $mplay.ini mp3.ply %mp.mp3.lns.ttl $line(@mp.mp3.list,$sline(@Media,1).ln) | return } | else { set %mp.mp3.lns.num $sline(@Media,0) | :loop | inc %mp.mp3.lns.tmp | if (%mp.mp3.lns.tmp <= %mp.mp3.lns.num) { writeini $mplay.ini mp3.ply %mp.mp3.lns.ttl $line(@mp.mp3.list,$sline(@Media,%mp.mp3.lns.tmp).ln) | inc %mp.mp3.lns.ttl | goto loop } | unset %mp.mp3.lns.* }
$iif($sl && %mp.actv = mid && %mp.mid.actv = ply && $sline(@Media,0),Play Selected): if ($sline(@Media,0) = 1) { splay stop | .timer -m 1 15 splay $qts( [ $+ [ $readini $mplay.ini mid.ply $sline(@Media,1).ln ] $+ ] ) | return } | else { set %mp.mid.lns.num $sline(@Media,0) | if ($isfile($scriptdirplaylist.mdu)) .remove $qts($scriptdirplaylist.mdu) | :loop | inc %mp.mid.lns.tmp | if (%mp.mid.lns.tmp > %mp.mid.lns.num) goto end | write $qts($scriptdirplaylist.mdu) $readini $mplay.ini mid.ply $sline(@Media,%mp.mid.lns.tmp).ln | goto loop | :end | set -u0 %mp.mid.tmp $read -l1 $qts($scriptdirplaylist.mdu) | splay stop | .timer -m 1 15 splay $qts(%mp.mid.tmp) | set %mp.plst.mid 1 | unset %mp.mid.lns.* }
-
$iif($sl && %mp.actv = mid && %mp.mid.actv = ply,Add): set %mp.mid.dir.tmp $mid.dir $+ *.mid | set %mp.mid.dir.tmp $$dir="MIDI File" %mp.mid.dir.tmp | writeini $mplay.ini mid.ply $calc($line(@media,0,1) + 1) %mp.mid.dir.tmp | aline -l @media $nopath(%mp.mid.dir.tmp) | unset %mp.mid.dir.tmp
$iif($sl && %mp.actv = mid && %mp.mid.actv = ply && $sline(@Media,0),Remove): set %mp.ply.ln.1 $calc($sline(@media,1).ln - 1) | set %mp.ply.ln.2 $sline(@media,1).ln | remini $mplay.ini mid.ply $sline(@media,1).ln | dline -l @media $sline(@media,1).ln | :loop | inc %mp.ply.ln.1 | inc %mp.ply.ln.2 | set %mp.ply.ln.3 $readini $mplay.ini mid.ply %mp.ply.ln.2 | if (%mp.ply.ln.3) { writeini $mplay.ini mid.ply %mp.ply.ln.1 %mp.ply.ln.3 | remini $mplay.ini mid.ply %mp.ply.ln.2 | goto loop } | unset %mp.ply.ln.*
$iif($sl && %mp.actv = mid && %mp.mid.actv = dir,Add): aline -l @Media $$sdir="MIDI Directory" C:\ | mp.mid.dir.sav
$iif($sl && %mp.actv = mid && %mp.mid.actv = dir && $sline(@Media,0),Remove): dline -l @media $sline(@media,1).ln | mp.mid.dir.sav
$iif($sl && %mp.actv = mid && %mp.mid.actv = list && $sline(@Media,0),Play Selected): if ($sline(@Media,0) = 1) { splay stop | .timer -m 1 15 splay $qts($line(@mp.mid.list,$sline(@Media,1).ln)) | return } | else { set %mp.mid.lns.num $sline(@Media,0) | if ($isfile($scriptdirplaylist.mdu)) .remove $qts($scriptdirplaylist.mdu) | :loop | inc %mp.mid.lns.tmp | if (%mp.mid.lns.tmp > %mp.mid.lns.num) goto end | write $qts($scriptdirplaylist.mdu) $line(@mp.mid.list,$sline(@Media,%mp.mid.lns.tmp).ln) | goto loop | :end | set -u0 %mp.mid.tmp $read -l1 $qts($scriptdirplaylist.mdu) | splay stop | .timer -m 1 15 splay $qts(%mp.mid.tmp) | set %mp.plst.mid 1 | unset %mp.mid.lns.* }
$iif($sl && %mp.actv = mid && %mp.mid.actv = list && $sline(@Media,0),Add Selected To Playlist): :loopA | inc %mp.mid.lns.ttl | set %mp.mid.lns.cnt $readini $mplay.ini mid.ply %mp.mid.lns.ttl | if (%mp.mid.lns.cnt) goto loopA | if ($sline(@Media,0) = 1) { writeini $mplay.ini mid.ply %mp.mid.lns.ttl $line(@mp.mid.list,$sline(@Media,1).ln) | return } | else { set %mp.mid.lns.num $sline(@Media,0) | :loop | inc %mp.mid.lns.tmp | if (%mp.mid.lns.tmp <= %mp.mid.lns.num) { writeini $mplay.ini mid.ply %mp.mid.lns.ttl $line(@mp.mid.list,$sline(@Media,%mp.mid.lns.tmp).ln) | inc %mp.mid.lns.ttl | goto loop } | unset %mp.mid.lns.* }
$iif($sl && %mp.actv = wav && %mp.wav.actv = ply && $sline(@Media,0),Play Selected): if ($sline(@Media,0) = 1) { splay stop | .timer -m 1 15 splay $qts( [ $+ [ $readini $mplay.ini wav.ply $sline(@Media,1).ln ] $+ ] ) | return } | else { set %mp.wav.lns.num $sline(@Media,0) | if ($isfile($scriptdirplaylist.wvu)) .remove $qts($scriptdirplaylist.wvu) | :loop | inc %mp.wav.lns.tmp | if (%mp.wav.lns.tmp > %mp.wav.lns.num) goto end | write $qts($scriptdirplaylist.wvu) $readini $mplay.ini wav.ply $sline(@Media,%mp.wav.lns.tmp).ln | goto loop | :end | set -u0 %mp.wav.tmp $read -l1 $qts($scriptdirplaylist.wvu) | splay stop | .timer -m 1 15 splay $qts(%mp.wav.tmp) | set %mp.plst.wav 1 | unset %mp.wav.lns.* }
-
$iif($sl && %mp.actv = wav && %mp.wav.actv = ply,Add): set %mp.wav.dir.tmp $wav.dir $+ *.wav | set %mp.wav.dir.tmp $$dir="wav File" %mp.wav.dir.tmp | writeini $mplay.ini wav.ply $calc($line(@media,0,1) + 1) %mp.wav.dir.tmp | aline -l @media $nopath(%mp.wav.dir.tmp) | unset %mp.wav.dir.tmp
$iif($sl && %mp.actv = wav && %mp.wav.actv = ply && $sline(@Media,0),Remove): set %mp.ply.ln.1 $calc($sline(@media,1).ln - 1) | set %mp.ply.ln.2 $sline(@media,1).ln | remini $mplay.ini wav.ply $sline(@media,1).ln | dline -l @media $sline(@media,1).ln | :loop | inc %mp.ply.ln.1 | inc %mp.ply.ln.2 | set %mp.ply.ln.3 $readini $mplay.ini wav.ply %mp.ply.ln.2 | if (%mp.ply.ln.3) { writeini $mplay.ini wav.ply %mp.ply.ln.1 %mp.ply.ln.3 | remini $mplay.ini wav.ply %mp.ply.ln.2 | goto loop } | unset %mp.ply.ln.*
$iif($sl && %mp.actv = wav && %mp.wav.actv = dir,Add): aline -l @Media $$sdir="WAVE Directory" C:\ | mp.wav.dir.sav
$iif($sl && %mp.actv = wav && %mp.wav.actv = dir && $sline(@Media,0),Remove): dline -l @media $sline(@media,1).ln | mp.wav.dir.sav
$iif($sl && %mp.actv = wav && %mp.wav.actv = list && $sline(@Media,0),Play Selected): if ($sline(@Media,0) = 1) { splay stop | .timer -m 1 15 splay $qts($line(@mp.wav.list,$sline(@Media,1).ln)) | return } | else { set %mp.wav.lns.num $sline(@Media,0) | if ($isfile($scriptdirplaylist.wvu)) .remove $qts($scriptdirplaylist.wvu) | :loop | inc %mp.wav.lns.tmp | if (%mp.wav.lns.tmp > %mp.wav.lns.num) goto end | write $qts($scriptdirplaylist.wvu) $line(@mp.wav.list,$sline(@Media,%mp.wav.lns.tmp).ln) | goto loop | :end | set -u0 %mp.wav.tmp $read -l1 $qts($scriptdirplaylist.wvu) | splay stop | .timer -m 1 15 splay $qts(%mp.wav.tmp) | set %mp.plst.wav 1 | unset %mp.wav.lns.* }
$iif($sl && %mp.actv = wav && %mp.wav.actv = list && $sline(@Media,0),Add Selected To Playlist): :loopA | inc %mp.wav.lns.ttl | set %mp.wav.lns.cnt $readini $mplay.ini wav.ply %mp.wav.lns.ttl | if (%mp.wav.lns.cnt) goto loopA | if ($sline(@Media,0) = 1) { writeini $mplay.ini wav.ply %mp.wav.lns.ttl $line(@mp.wav.list,$sline(@Media,1).ln) | return } | else { set %mp.wav.lns.num $sline(@Media,0) | :loop | inc %mp.wav.lns.tmp | if (%mp.wav.lns.tmp <= %mp.wav.lns.num) { writeini $mplay.ini wav.ply %mp.wav.lns.ttl $line(@mp.wav.list,$sline(@Media,%mp.wav.lns.tmp).ln) | inc %mp.wav.lns.ttl | goto loop } | unset %mp.wav.lns.* }
}
alias qts if ($chr(32) isin $1) return " $+ $1 $+ " | return $1
on *:close:@media: writeini $mplay.ini settings winloc $window(@media).x $window(@media).y | writeini $mplay.ini settings winsze $window(@media).w $window(@media).h | unset %mp.actv %mp.cd.* %mp.mp3.* %mp.mid.* %mp.wav.* %mp.m3u.* %mp.dir.* | .timerMP.CD.CHK off | window -c @mp.mp3.list | window -c @mp.mid.list | window -c @mp.wav.list | if ($dialog(CD)) dialog -c CD
alias cmnd if ($os = NT) return cmd.exe | else return command.com
alias cd.drv return $readini $mplay.ini settings cd.drv
alias windir return $readini $mplay.ini settings windir
alias cdplayer.ini return $windir $+ cdplayer.ini
alias mp.cd.chk if ($findfile($cd.drv,*.cda,0)) drawpic -c @Media 6 4 0 239 261 50 $mplay.bmp | else { drawpic -c @Media 0 0 0 0 271 54 $mplay.bmp | if (%mp.actv = cd) { clear -l @media | if ($dialog(CD)) dialog -c CD | if ($dialog(CDQuery)) dialog -c CDQuery } }
alias mp.cd.list clear -l @media | set %mp.cd.num $findfile($cd.drv,*.cda,0) | run -n $cmnd /c dir $cd.drv $+ track01.cda > cd.tmp | :loop | if ($isfile(cd.tmp)) .timer -m 1 15 mp.cd.list.2 | else goto loop
alias mp.cd.list.2 set %mp.cd.ser $read -l3 cd.tmp | set %mp.cd.ser $remove($gettok(%mp.cd.ser,5,32),-) | :no0s | if ($left(%mp.cd.ser,1) = 0) { set %mp.cd.ser $right(%mp.cd.ser,$calc($len(%mp.cd.ser) - 1)) | goto no0s } | dec %mp.cd.num | set %mp.cd.temp 0 | :loop | if (%mp.cd.temp < %mp.cd.num) { set %mp.cd.track $readini $cdplayer.ini %mp.cd.ser %mp.cd.temp | if (%mp.cd.track = $null) set %mp.cd.track Track $+ $iif(%mp.cd.temp < 9,0) $+ $calc(%mp.cd.temp + 1) | aline -l @media %mp.cd.track | inc %mp.cd.temp | goto loop } | else { set %mp.cd.track $readini $cdplayer.ini %mp.cd.ser %mp.cd.temp | if (%mp.cd.track = $null) set %mp.cd.track Track $+ $iif(%mp.cd.temp < 9,0) $+ $calc(%mp.cd.temp + 1) | aline -l @media %mp.cd.track | .remove cd.tmp } | if (%mp.cd.edit) { mp.cd.edit | unset %mp.cd.edit }
alias mp.cd.edit {
if (%mp.cd.ser = $null) { set %mp.cd.edit - | mp.cd.list | return } | set %mp.cd.chk $readini $cdplayer.ini %mp.cd.ser EntryType | if (%mp.cd.chk = $null) writeini $windir $+ cdplayer.ini %mp.cd.ser EntryType 1 | set %mp.cd.chk $readini $cdplayer.ini %mp.cd.ser numtracks | if (%mp.cd.chk = $null) writeini $windir $+ cdplayer.ini %mp.cd.ser numtracks $calc(%mp.cd.temp + 1) | set %mp.cd.chk $readini $cdplayer.ini %mp.cd.ser numplay | if (%mp.cd.chk = $null) writeini $windir $+ cdplayer.ini %mp.cd.ser numplay $calc(%mp.cd.temp + 1) | set %mp.cd.chk $readini $cdplayer.ini %mp.cd.ser artist | if (%mp.cd.chk = $null) writeini $windir $+ cdplayer.ini %mp.cd.ser artist New Artist | set %mp.cd.chk $readini $cdplayer.ini %mp.cd.ser title | if (%mp.cd.chk = $null) writeini $windir $+ cdplayer.ini %mp.cd.ser title New Title | set %mp.cd.chk $readini $cdplayer.ini %mp.cd.ser order
if (%mp.cd.chk = $null) { set %mp.cd.trk.ttl $calc(%mp.cd.temp + 1) | set %mp.cd.trk.cnt -1 | :cntloop | inc %mp.cd.trk.cnt | if (%mp.cd.trk.cnt < %mp.cd.trk.ttl) { set %mp.cd.trk.ful %mp.cd.trk.ful %mp.cd.trk.cnt | goto cntloop } | else { writeini $windir $+ cdplayer.ini %mp.cd.ser order %mp.cd.trk.ful } } | dialog -mn CD CD | set %mp.cd.temp 0 | :loop | if (%mp.cd.temp < %mp.cd.num) { set %mp.cd.track $readini $cdplayer.ini %mp.cd.ser %mp.cd.temp | if (%mp.cd.track = $null) set %mp.cd.track Track $+ $iif(%mp.cd.temp < 9,0) $+ $calc(%mp.cd.temp + 1) | did -a CD 2 %mp.cd.track | inc %mp.cd.temp | goto loop } | else { set %mp.cd.track $readini $cdplayer.ini %mp.cd.ser %mp.cd.temp | if (%mp.cd.track = $null) set %mp.cd.track Track $+ $iif(%mp.cd.temp < 9,0) $+ $calc(%mp.cd.temp + 1) | did -a CD 2 %mp.cd.track } | did -a CD 4 $readini $cdplayer.ini %mp.cd.ser artist | did -a CD 5 $readini $cdplayer.ini %mp.cd.ser title
}
dialog CD {
title "CD Track Editor"
size -1 -1 200 248
edit "",4,10 5 180 23,autohs
edit "",5,10 33 180 23,autohs
list 2,10 61 180 150
button "Close" 1,100 216 54 26,cancel
button "Edit" 3,41 216 54 26
}
on *:dialog:CD:edit:*: if ($did = 4) { if ($len($did(4).text) = 50) { beep | did -ra CD 4 $left($did(4).text,49) } | if ($did(4).text) writeini $windir $+ cdplayer.ini %mp.cd.ser artist $did(4).text | if ($did(4).text = $null) writeini $windir $+ cdplayer.ini %mp.cd.ser artist Unknown Artist } | if ($did = 5) { if ($len($did(5).text) = 50) { beep | did -ra CD 5 $left($did(5).text,49) } | if ($did(5).text) writeini $windir $+ cdplayer.ini %mp.cd.ser title $did(5).text | if ($did(5).text = $null) writeini $windir $+ cdplayer.ini %mp.cd.ser title Unknown Title }
on *:dialog:CD:dclick:2: set %mp.cd.new.num $did(2).sel | dialog -mn CDQuery CDQuery | .timer -m 1 75 did -a CDQuery 3 $did(CD,2,$did(CD,2).sel)
on *:dialog:CD:sclick:*: if ($did = 3) && ($did(2).sel) { set %mp.cd.new.num $did(2).sel | dialog -mn CDQuery CDQuery | .timer -m 1 75 did -a CDQuery 3 $did(CD,2,$did(CD,2).sel) } | if ($did = 1) && ($dialog(CDQuery)) dialog -c CDQuery
dialog CDQuery {
title "CD Track Editor"
size -1 -1 200 83
edit "" 3,10 23 180 23,autohs
button "OK" 4,41 51 54 26,default
button "Cancel" 1,100 51 54 26, cancel
text "Track Name" 2,10 5 180 13,center
}
on *:dialog:CDquery:edit:3:if ($len($did(3).text) = 41) { beep | did -ra CDquery 3 $left($did(3).text,40) }
on *:dialog:CDquery:sclick:4: if ($did(3).text) set %mp.cd.trk.newnam $did(3).text | dialog -c CDquery | mp.cd.add.new
alias mp.cd.add.new if (%mp.cd.trk.newnam) { did -o CD 2 %mp.cd.new.num %mp.cd.trk.newnam | writeini $windir $+ cdplayer.ini %mp.cd.ser $calc(%mp.cd.new.num - 1) %mp.cd.trk.newnam | rline -l @media %mp.cd.new.num %mp.cd.trk.newnam }
alias mp3.ply return $readini $mplay.ini settings mp3.ply
alias mp3.dir return $readini $mplay.ini settings dir.mp3
alias mp.mp3.rnd run -n $mp3.ply $qts($findfile($mp3.dir,*.mp*,$rand(1,$findfile($mp3.dir,*.mp*,0))))
alias mp.mp3.ply set %mp.mp3.dir.temp $mp3.dir $+ *.m* | set %mp.mp3.file $dir="Select File" %mp.mp3.dir.temp | if (%mp.mp3.file) run -n $mp3.ply $qts(%mp.mp3.file) | unset %mp.mp3.dir.temp %mp.mp3.file
alias mp.mp3.plst clear -l @Media | :loop | inc %mp.mp3.lst.tmp.1 | set %mp.mp3.lst.tmp.2 $readini $mplay.ini mp3.ply %mp.mp3.lst.tmp.1 | if (%mp.mp3.lst.tmp.2) { aline -l @Media $nopath(%mp.mp3.lst.tmp.2) | goto loop } | unset %mp.mp3.lst.tmp.1
alias mp.mp3.dirs clear -l @Media | :loop | inc %mp.mp3.dir.tmp.1 | set %mp.mp3.dir.tmp.2 $readini $mplay.ini mp3.dir %mp.mp3.dir.tmp.1 | if (%mp.mp3.dir.tmp.2) { aline -l @Media %mp.mp3.dir.tmp.2 | goto loop } | unset %mp.mp3.dir.tmp.1
alias mp.mp3.dir.sav remini $mplay.ini mp3.dir | :loop | inc %mp.mp3.dir.ln.1 | set %mp.mp3.dir.ln.2 $line(@media,%mp.mp3.dir.ln.1,1) | if (%mp.mp3.dir.ln.2) { writeini $mplay.ini mp3.dir %mp.mp3.dir.ln.1 %mp.mp3.dir.ln.2 | goto loop } | unset %mp.mp3.dir.ln.*
alias mp.mp3.list clear -l @Media | clear @mp.mp3.list | window -shl @mp.mp3.list | set %mp.mp3.lst.2 $findfile($mp3.dir,*.m*,@mp.mp3.list) | :loop | inc %mp.mp3.lst.tmp.1 | set %mp.mp3.lst.tmp.2 $line(@mp.mp3.list,%mp.mp3.lst.tmp.1) | if (%mp.mp3.lst.tmp.2) { aline -lp @Media $nopath(%mp.mp3.lst.tmp.2) | goto loop } | else unset %mp.mp3.lst.tmp.1
alias mp.mp3.edt set %mp.dir.tmp $mp3.dir $+ *.m3u | window -shl @m3u.tmp | dialog -mn M3U M3U | set %mp.lst.tmp.2 $findfile($mp3.dir,*.mp*,@m3u.tmp),$mp3.dir) | :loop | inc %mp.lst.tmp.1 | set %mp.lst.tmp.2 $line(@m3u.tmp,%mp.lst.tmp.1) | if (%mp.lst.tmp.2) { did -a M3U 5 $remove(%mp.lst.tmp.2,$mp3.dir) | goto loop } | unset %mp.lst.tmp.1 | window -c @m3u.tmp
dialog M3U {
title "M3U Editor"
size -1 -1 500 332
text "M3U" 2,10 5 210 13,center
list 3, 10 23 210 305,extsel,size
text "Directory" 4,280 5 210 13,center
list 5, 280 23 210 305,extsel,size
button "New" 13,223 24 54 26
button "Open" 6,223 55 54 26
button "Import" 12,223 86 54 26
button "Save" 7,223 117 54 26
button "Save As.." 8,223 148 54 26
button "<-&Add" 9,223 188 54 26
button "&Remove->" 10,223 219 54 26
button "Clear" 11,223 250 54 26
button "Close" 1,223 288 54 26, cancel
}
on *:dialog:m3u:dclick:*: if ($did = 5) run -n $mp3.ply " $+ $mp3.dir $+ $did(5,$did(5).sel) $+ " | if ($did = 3) run -n $mp3.ply " $+ $mp3.dir $+ $did(3,$did(3).sel) $+ "
on *:dialog:m3u:sclick:*:{
if ($did = 1) unset %mp.dir.tmp %mp.m3u.fl | if ($did = 10) { if ($did(3,0).sel = 1) did -d m3u 3 $did(3).sel | if ($did(3,0).sel > 1) { set %mp.inc $calc($did(3,0).sel + 1) | :loop | dec -u0 %mp.inc | if (%mp.inc = 0) return | did -d m3u 3 $did(3,%mp.inc).sel | goto loop } }
if ($did = 9) { if ($did(5,0).sel = 1) did -a m3u 3 $did(5,$did(5).sel) | if ($did(5,0).sel > 1) { set %mp.inc 0 | :loop | inc -u0 %mp.inc | if (%mp.inc > $did(5,0).sel) return | did -a m3u 3 $did(5,$did(5,%mp.inc).sel) | goto loop } } | if ($did = 11) did -r m3u 3
if ($did = 6) { unset %mp.m3u.fl | .timer 1 0 set %mp.m3u.fl $$!dir="Open" %mp.dir.tmp $chr(124) did -r m3u 3 $chr(124) mp.m3u.opn } | if ($did = 12) .timer 1 0 set %mp.m3u.tmp $$!dir="Import" %mp.dir.tmp $chr(124) mp.m3u.ipt $chr(124) unset %mp.m3u.tmp | if ($did = 7) { if (%mp.m3u.fl = $null) .timer 1 0 set %mp.m3u.fl $$!dir="Save As" %mp.dir.tmp $chr(124) mp.m3u.sv | else mp.m3u.sv } | if ($did = 8) .timer 1 0 set %mp.m3u.fl $$!dir="Save As" %mp.dir.tmp $chr(124) mp.m3u.sv | if ($did = 13) { unset %mp.m3u.fl | did -r m3u 3 }
}
alias mp.m3u.sv if ($isfile(%mp.m3u.fl)) .remove $qts(%mp.m3u.fl) | if (.m3u !isin %mp.m3u.fl) set %mp.m3u.fl %mp.m3u.fl $+ .m3u | :loop | inc %mp.m3u.ln.1 | set %mp.m3u.ln.2 $did(m3u,3,%mp.m3u.ln.1) | if (%mp.m3u.ln.2) { write $qts(%mp.m3u.fl) %mp.m3u.ln.2 | goto loop } | unset %mp.m3u.ln.1
alias mp.m3u.opn :loop | inc %mp.m3u.tmp.1 | set %mp.m3u.tmp.2 $read -l $+ %mp.m3u.tmp.1 %mp.m3u.fl | if (%mp.m3u.tmp.2) { did -a m3u 3 %mp.m3u.tmp.2 | goto loop } | unset %mp.m3u.tmp.1
alias mp.m3u.ipt :loop | inc %mp.m3u.tmp.1 | set %mp.m3u.tmp.2 $read -l $+ %mp.m3u.tmp.1 %mp.m3u.tmp | if (%mp.m3u.tmp.2) { did -a m3u 3 %mp.m3u.tmp.2 | goto loop } | unset %mp.m3u.tmp.1
alias mid.dir return $readini $mplay.ini settings dir.mid
alias mp.mid.rnd :start | if (%mp.plst.mid) && ($isfile($scriptdirplaylist.mdu)) { set %mp.plst.mid $rand(1,$lines($scriptdirplaylist.mdu)) | set -u0 %mp.mid.tmp $read -l $+ %mp.plst.mid $qts($scriptdirplaylist.mdu) | splay $qts(%mp.mid.tmp) | goto end } | else { splay stop | .timer -m 1 15 splay $qts($findfile($mid.dir,*.mid,$rand(1,$findfile($mid.dir,*.mid,0)))) } | :end
alias mp.mid.ply :start | if (%mp.plst.mid) && ($isfile($scriptdirplaylist.mdu)) { inc %mp.plst.mid | if (%mp.plst.mid > $lines($scriptdirplaylist.mdu)) { unset %mp.plst.mid | .remove $qts($scriptdirplaylist.mdu) | goto start } | set -u0 %mp.plst $qts($scriptdirplaylist.mdu) | set -u0 %mp.mid.tmp $read -l $+ %mp.plst.mid %mp.plst | splay $qts(%mp.mid.tmp) | goto end } | else { set %mp.mid.dir.temp $mid.dir $+ *.mid | set %mp.mid.file $dir="Select File" %mp.mid.dir.temp | if (%mp.mid.file) { splay stop | .timer -m 1 15 splay $qts(%mp.mid.file) } | unset %mp.mid.dir.temp %mp.mid.file } | :end
on *:midiend: :start | if (%mp.plst.mid) && ($isfile($scriptdirplaylist.mdu)) { if ($window(@media)) { inc %mp.plst.mid | if (%mp.plst.mid > $lines($scriptdirplaylist.mdu)) { unset %mp.plst.mid | .remove $qts($scriptdirplaylist.mdu) | goto start } | set -u0 %mp.plst $scriptdirplaylist.mdu | if ($chr(32) isin %mp.plst) set -u0 %mp.plst $qts($scriptdirplaylist.mdu) | set -u0 %mp.mid.tmp $read -l $+ %mp.plst.mid %mp.plst | splay $qts(%mp.mid.tmp) | goto end } } | if ($window(@media)) && (%mp.rsp.mid) mp.mid.rnd | :end
alias mp.mid.plst clear -l @Media | :loop | inc %mp.mid.lst.tmp.1 | set %mp.mid.lst.tmp.2 $readini $mplay.ini mid.ply %mp.mid.lst.tmp.1 | if (%mp.mid.lst.tmp.2) { aline -l @Media $nopath(%mp.mid.lst.tmp.2) | goto loop } | unset %mp.mid.lst.tmp.1
alias mp.mid.dirs clear -l @Media | :loop | inc %mp.mid.dir.tmp.1 | set %mp.mid.dir.tmp.2 $readini $mplay.ini mid.dir %mp.mid.dir.tmp.1 | if (%mp.mid.dir.tmp.2) { aline -l @Media %mp.mid.dir.tmp.2 | goto loop } | unset %mp.mid.dir.tmp.1
alias mp.mid.dir.sav remini $mplay.ini mid.dir | :loop | inc %mp.mid.dir.ln.1 | set %mp.mid.dir.ln.2 $line(@media,%mp.mid.dir.ln.1,1) | if (%mp.mid.dir.ln.2) { writeini $mplay.ini mid.dir %mp.mid.dir.ln.1 %mp.mid.dir.ln.2 | goto loop } | unset %mp.mid.dir.ln.*
alias mp.mid.list clear -l @Media | clear @mp.mid.list | window -shl @mp.mid.list | set %mp.mid.lst.2 $findfile($mid.dir,*.mid,@mp.mid.list) | :loop | inc %mp.mid.lst.tmp.1 | set %mp.mid.lst.tmp.2 $line(@mp.mid.list,%mp.mid.lst.tmp.1) | if (%mp.mid.lst.tmp.2) { aline -lp @Media $nopath(%mp.mid.lst.tmp.2) | goto loop } | else unset %mp.mid.lst.tmp.1
alias wav.dir return $readini $mplay.ini settings dir.wav
alias mp.wav.rnd :start | if (%mp.plst.wav) && ($isfile($scriptdirplaylist.mdu)) { set %mp.plst.wav $rand(1,$lines($scriptdirplaylist.mdu)) | set -u0 %mp.wav.tmp $read -l $+ %mp.plst.wav $qts($scriptdirplaylist.mdu) | splay $qts(%mp.wav.tmp) | goto end } | else { splay stop | .timer -m 1 15 splay $qts($findfile($wav.dir,*.wav,$rand(1,$findfile($wav.dir,*.wav,0)))) } | :end
alias mp.wav.ply :start | if (%mp.plst.wav) && ($isfile($scriptdirplaylist.wvu)) { inc %mp.plst.wav | if (%mp.plst.wav > $lines($scriptdirplaylist.wvu)) { unset %mp.plst.wav | .remove $qts($scriptdirplaylist.wvu) | goto start } | set -u0 %mp.plst $qts($scriptdirplaylist.wvu) | set -u0 %mp.wav.tmp $read -l $+ %mp.plst.wav %mp.plst | splay $qts(%mp.wav.tmp) | goto end } | else { set %mp.wav.dir.temp $wav.dir $+ *.wav | set %mp.wav.file $dir="Select File" %mp.wav.dir.temp | if (%mp.wav.file) { splay stop | .timer -m 1 15 splay $qts(%mp.wav.file) } | unset %mp.wav.dir.temp %mp.wav.file } | :end
on *:waveend: :start | if (%mp.plst.wav) && ($isfile($scriptdirplaylist.wvu)) { if ($window(@media)) { inc %mp.plst.wav | if (%mp.plst.wav > $lines($scriptdirplaylist.wvu)) { unset %mp.plst.wav | .remove $qts($scriptdirplaylist.wvu) | goto start } | set -u0 %mp.plst $scriptdirplaylist.wvu | if ($chr(32) isin %mp.plst) set -u0 %mp.plst $qts($scriptdirplaylist.wvu) | set -u0 %mp.wav.tmp $read -l $+ %mp.plst.wav %mp.plst | splay $qts(%mp.wav.tmp) | goto end } } | if ($window(@media)) && (%mp.rsp.wav) mp.wav.rnd | :end
alias mp.wav.plst clear -l @Media | :loop | inc %mp.wav.lst.tmp.1 | set %mp.wav.lst.tmp.2 $readini $mplay.ini wav.ply %mp.wav.lst.tmp.1 | if (%mp.wav.lst.tmp.2) { aline -l @Media $nopath(%mp.wav.lst.tmp.2) | goto loop } | unset %mp.wav.lst.tmp.1
alias mp.wav.dirs clear -l @Media | :loop | inc %mp.wav.dir.tmp.1 | set %mp.wav.dir.tmp.2 $readini $mplay.ini wav.dir %mp.wav.dir.tmp.1 | if (%mp.wav.dir.tmp.2) { aline -l @Media %mp.wav.dir.tmp.2 | goto loop } | unset %mp.wav.dir.tmp.1
alias mp.wav.dir.sav remini $mplay.ini wav.dir | :loop | inc %mp.wav.dir.ln.1 | set %mp.wav.dir.ln.2 $line(@media,%mp.wav.dir.ln.1,1) | if (%mp.wav.dir.ln.2) { writeini $mplay.ini wav.dir %mp.wav.dir.ln.1 %mp.wav.dir.ln.2 | goto loop } | unset %mp.wav.dir.ln.*
alias mp.wav.list clear -l @Media | clear @mp.wav.list | window -shl @mp.wav.list | set %mp.wav.lst.2 $findfile($wav.dir,*.wav,@mp.wav.list) | :loop | inc %mp.wav.lst.tmp.1 | set %mp.wav.lst.tmp.2 $line(@mp.wav.list,%mp.wav.lst.tmp.1) | if (%mp.wav.lst.tmp.2) { aline -lp @Media $nopath(%mp.wav.lst.tmp.2) | goto loop } | else unset %mp.wav.lst.tmp.1
alias mp.find.main window -kels +e @Find 0 0 638 362 arial 11 | editbox @FIND Enter search parameters here
on *:input:@Find: set %mp.fnd.file $1- | mp.find.next | halt
alias mp.fnd.ply if (.mid isin %mp.fnd.file) || (.wav isin %mp.fnd.file) { splay stop | .timer -m 1 10 splay $qts(%mp.fnd.file) } | elseif ($mp3.ply != off) && (.mp2 isin %mp.fnd.file) run -n $mp3.ply $qts(%mp.fnd.file) | elseif ($mp3.ply != off) && (.mp3 isin %mp.fnd.file) run -n $mp3.ply $qts(%mp.fnd.file) | elseif ($mp3.ply != off) && (.m3u isin %mp.fnd.file) run -n $mp3.ply $qts(%mp.fnd.file) | elseif ($drv.cd != off) && (.cda isin %mp.fnd.file) run -n cdplayer -play %mp.fnd.file | else run %mp.fnd.file
alias mp.find.next clear @find | titlebar @Find is searching for %mp.fnd.file $+ , Please wait... | set %mp.fnd.chr 67 | :loop | set %mp.fnd.drv.tmp $chr(%mp.fnd.chr) $+ :\ | set %mp.fnd.drv.num $findfile(%mp.fnd.drv.tmp,%mp.fnd.file,@Find) | if ($isdir(%mp.fnd.drv.tmp)) { inc %mp.fnd.chr | goto loop } | aline @find End Of Search | titlebar @Find is done searching for %mp.fnd.file $+ . | editbox @find click a file to open it, or type parameteres for another search. | unset %mp.fnd.*
menu @Find {
dclick: if (%mp.stp.fnd = $null) { set %mp.fnd.file $line(@Find,$1,0) | mp.fnd.ply | unset %mp.fnd.file } | else { writeini $mplay.ini settings mp3.ply $line(@Find,$1,0) | window -c @Find | unset %mp.stp.fnd | mp.stp.main }
}
on *:close:@Find: unset %mp.stp.fnd