Just A Simple Mp3 Player
on *:load: { 7Thank You For Loading The G13AoUsTiS Mp3 Snippet! }
on *:unload:unset %mp3p.dir | if ($input(Do you want to delete mp3list.txt?,y,Delete mp3list?)) .remove mp3list.txt
alias mp3p {
if ($dialog(mp3p)) { dialog -vie mp3p mp3p | return }
if ($1 == -d) {
if ($isdir($2-)) { %mp3p.dir = $2- }
else { %mp3p.dir = $$sdir($mircdir,Select Mp3 Directory) }
}
if (!$isdir(%mp3p.dir)) { %mp3p.dir = $$sdir($mircdir,Select Mp3 Directory) }
write -c mp3list.txt
var %i = $ticks
.fopen mp3list mp3list.txt
echo -qa *** Creating List
var %x = $findfile($+(",%mp3p.dir,"),*.mp3,0,.fwrite -n mp3list $1-)
.fclose mp3list
echo -qa $calc(($ticks - %i) /1000) second(s)
dialog -md mp3p mp3p
}
dialog mp3p {
title "Mp3 Player"
size -1 -1 119 136
option dbu
list 1, 1 1 117 120, size
text "", 2, 2 123 50 8
button "Close", 3, 89 123 30 12, cancel
button "Stop", 4, 59 123 30 12
button "Random", 5, 29 123 30 12
}
on *:dialog:mp3p:sclick:*: {
if ($did == 4) { /splay stop }
if ($did == 5) { /random }
}
on *:dialog:mp3p:*:*:{
var %x,%i
if ($devent == init) {
.fopen mp3list mp3list.txt
while !$feof {
inc %i
%x = $fread(mp3list)
if (%x) did -a mp3p 1 $remove($nopath(%x),.mp3)
}
did -a mp3p 2 %i mp3s
}
if ($devent == dclick) && ($did == 1) {
.fseek -l mp3list $did(1).sel
set %mp3p.song $did(1).sel
.splay $fread(mp3list)
}
if ($devent == close) {
.fclose mp3list
}
}
on *:mp3end:{
if (!$fopen(mp3list)) { .fopen mp3list mp3list.txt }
if ($lines(mp3list.txt) == %mp3p.song) { %mp3p.song = 0 }
inc %mp3p.song
.fseek -l mp3list %mp3p.song
.splay $fread(mp3list)
}
alias random {
splay $read(mp3list.txt)
}
menu * {
-
MP3 Player: /mp3p
}