dialog Mp3Player {
title "ProoN's Mp3 PlaYeR"
size -1 -1 252 171
option dbu
list 2, 3 4 246 67, sort size extsel hsbar vsbar
button "Play", 3, 127 80 26 11, default
button "Stop", 4, 187 80 26 11
button "Configure", 5, 22 153 66 11
edit "", 6, 3 74 108 73, read multi return autovs vsbar
button "Button", 8, 258 96 6 9, hide cancel
box "Controls", 1, 122 72 127 36
button "Pause", 7, 157 80 26 11
button "+", 10, 150 94 13 10
button "-", 11, 165 94 13 10
text "Volume", 12, 127 95 20 10
button "Resume", 13, 217 80 26 11
box "Advertise", 14, 122 111 127 36
radio "ON", 15, 127 119 21 10,group
radio "OFF", 16,157 119 21 10
radio "All channels",17,187 119 50 10,group
radio "Channel",18,127 131 29 10
combo 19,157 131 87 50,drop
}
on 1:dialog:mp3player:sclick:*: {
if ($did == 17) { .set %advall on }
if ($did == 18) { .set %advall off }
if ($did == 19) { .set %adchan $did(19).seltext }
if ($did == 15) { .set %advertise on }
if ($did == 16) { .set %advertise off }
if ($did == 10) { inc %mp3vol 5000 | .vol -v %mp3vol }
if ($did == 11) { dec %mp3vol 5000 | .vol -v %mp3vol }
if ($did == 7) { .splay pause }
if ($did == 13) { .splay resume }
if ($did == 2) { .set %mp3var $did(2).seltext }
if ($did == 3) {
if (%advertise == on) {
.splay %mp3var | .set %FsSize $round($calc($int($calc($file(%mp3var).size / 1049)) / 1000),2) $+ MB | mp3.status | adver }
if (%advertise == off) { .splay %mp3var | EDITBOXINFO }
}
if ($did == 4) { .splay stop }
if ($did == 5) { .dialog -ma mpconf mpconf }
}
on 1:dialog:Mp3Player:init:*: {
did -a Mp3Player 2 $findfile(%mp3dir,*.mp3,0,did -a Mp3Player 2 $1-)
did -a Mp3Player 2 $findfile(%mp3dir,*.wma,0,did -a Mp3Player 2 $1-)
var %i = $chan(0)
while (%i >= 1) {
did -a $dname 19 $chan(%i)
dec %i
}
}
alias mp3.status {
.did -r Mp3Player 6
set %FsLength $calc($file(%mp3var).size / 16100)
set %FsTime $duration(%Fslength)
if (mins isin %Fstime) { %Fstime = $replace(%FStime,mins,mins) }
if (secs isin %Fstime) { %Fstime = $replace(%Fstime,secs,secs) }
if (sec isin %Fstime) { %Fstime = $replace(%Fstime,sec,sec) }
if (min isin %Fstime) { %Fstime = $replace(%Fstime,min,min) }
if ($chr(32) isin %Fstime) { %Fstime = $remove(%Fstime,$chr(32)) }
EDITBOXINFO
}
Alias adver {
if (%advall == on) { ame Mp³ [ $+ $nopath(%mp3var) $+ ] }
elseif (%advchan ischan) { describe %advchan Mp³ [ $+ $nopath(%mp3var) $+ ] }
}
alias EDITBOXINFO {
.did -r Mp3Player 6
.did -a Mp3Player 6 $crlf Song: $nopath(%mp3var)
.did -a Mp3Player 6 $crlf Size: $round($calc($int($calc($file(%mp3var).size / 1050)) / 1000),2) $+ MB
.did -a Mp3Player 6 $crlf Bitrate: $sound(%mp3var).bitrate
if ($sound(%mp3var).track == -1 ) {
.did -a Mp3Player 6 $crlf Track #: N/A
}
else { .did -a Mp3Player 6 $crlf Track #: $sound(%mp3var).track
}
}
dialog mpconf {
title "Mp3 Configure"
size -1 -1 135 28
option dbu
text "Mp3 Directory:", 2, 4 4 37 8
edit "", 10, 49 3 50 10, autohs
text "Example: C:\Mp3s", 11, 24 16 50 8
button "Ok", 12, 109 15 22 11, ok
}
on 1:dialog:mpconf:sclick:12: { refresh }
on 1:dialog:mpconf:edit:*: {
if ($did == 10) { set %mp3dir $did(10) }
}
alias refresh {
did -r mp3player 2 | did -a Mp3Player 2 $findfile(%mp3dir,*.mp3,0,did -a Mp3Player 2 $1-)
}
on 1:dialog:mpconf:init:*: {
did -a mpconf 10 %mp3dir
}