; script ( mp3.mrc ) ; version ( 3.01a ) ; author ( erawtic ) ; release ( 10/27/98 ) ; file ( menu/popups ) ; Menu routine for MP3 Setup window. menu @MP3 Setup { sclick:{ if ($inrect($mouse.x,$mouse.y,105,5,290,20)) { set %mp3.dir $$sdir="Select directory to MP3's:" drawrect -f $active 0 1 106 6 286 17 drawtext -cr $active $rgb(text) "MS Sans Serif" 15 110 8 280 999 %mp3.dir } elseif ($inrect($mouse.x,$mouse.y,105,25,290,20)) { set %mp3.player $$dir="Select MP3 player:" [ [ $mp3.s(dir) ] $+ [ *.exe ] ] drawrect -f $active 0 1 106 26 286 17 drawtext -cr $active $rgb(text) "MS Sans Serif" 15 110 28 280 999 %mp3.player } elseif ($inrect($mouse.x,$mouse.y,10,60,15,15)) { if (%mp3.checked.1) { unset %mp3.checked.1 drawtext -c $active 0 "Terminal" 12 11 65 999 999 û } else { set %mp3.checked.1 1 drawtext -cr $active $rgb(text) "Terminal" 12 11 65 999 999 û } } elseif ($inrect($mouse.x,$mouse.y,10,85,15,15)) { if (%mp3.checked.2) { unset %mp3.checked.2 drawtext -c $active 0 "Terminal" 12 11 85 999 999 û } else { set %mp3.checked.2 1 drawtext -cr $active $rgb(text) "Terminal" 12 11 85 999 999 û } } elseif ($inrect($mouse.x,$mouse.y,10,105,15,15)) { if (%mp3.checked.3) { unset %mp3.checked.3 drawtext -c $active 0 "Terminal" 12 11 105 999 999 û } else { set %mp3.checked.3 1 drawtext -cr $active $rgb(text) "Terminal" 12 11 105 999 999 û } } elseif ($inrect($mouse.x,$mouse.y,280,58,110,25)) { set %mp3.button.1 1 drawbuttondown $active 1 280 58 110 25 } elseif ($inrect($mouse.x,$mouse.y,280,93,110,25)) { set %mp3.button.2 1 drawbuttondown $active 1 280 93 110 25 } } uclick:{ unset %mp3.button* if ($inrect($mouse.x,$mouse.y,280,58,110,25)) { drawbutton $active 1 280 58 110 25 if (%mp3.dir) { mp3.w dir %mp3.dir if ($mp3.s(prevdir) == $null) mp3.w prevdir %mp3.dir $+ *.mp3 } if (%mp3.player) mp3.w player %mp3.player if (%mp3.checked.1) mp3.w show yes else { mp3.w show no } if (%mp3.checked.2) mp3.w steal yes else { mp3.w steal no } if (%mp3.checked.3) mp3.w request yes else { mp3.w request no } unset %mp3.dir %mp3.player %mp3.checked* .timer -m 1 400 window -c $active } elseif ($inrect($mouse.x,$mouse.y,280,93,110,25)) { drawbutton $active 1 280 93 110 25 unset %mp3.dir %mp3.player %mp3.checked* .timer -m 1 400 window -c $active } } mouse:{ titlebar $active - $mouse.x $mouse.y if (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,280,58,110,25) == $false) && (%mp3.button.1) && (%mp3.button.1a == $null)) { drawbutton $active 1 280 58 110 25 set %mp3.button.1a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,280,93,110,25) == $false) && (%mp3.button.2) && (%mp3.button.2a == $null)) { drawbutton $active 1 280 93 110 25 set %mp3.button.2a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,280,58,110,25)) && (%mp3.button.1) && (%mp3.button.1a)) { drawbuttondown $active 1 280 58 110 25 unset %mp3.button.1a } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,280,93,110,25)) && (%mp3.button.2) && (%mp3.button.2a)) { drawbuttondown $active 1 280 93 110 25 unset %mp3.button.2a } } } ; Menu routine for GUI MP3 Player window. menu @MP3 Player { sclick:{ if ($inrect($mouse.x,$mouse.y,185,165,15,15)) { if (%mp3.checked.3) { unset %mp3.checked.3 drawtext -c $active 0 "Terminal" 12 186 165 999 999 û mp3.w repeat no } else { set %mp3.checked.3 1 drawtext -cr $active $rgb(text) "Terminal" 12 186 165 999 999 û mp3.w repeat yes } } elseif ($inrect($mouse.x,$mouse.y,270,165,15,15)) { if (%mp3.checked.4) { unset %mp3.checked.4 drawtext -c $active 0 "Terminal" 12 271 165 999 999 û mp3.w shuffle no } else { set %mp3.checked.4 1 drawtext -cr $active $rgb(text) "Terminal" 12 271 165 999 999 û mp3.w shuffle yes } } elseif ($inrect($mouse.x,$mouse.y,10,10,90,25)) { set %mp3.button.3 1 drawbuttondown $active 1 10 10 90 25 } elseif ($inrect($mouse.x,$mouse.y,10,45,90,25)) { set %mp3.button.4 1 drawbuttondown $active 1 10 45 90 25 } elseif ($inrect($mouse.x,$mouse.y,10,80,90,25)) { set %mp3.button.5 1 drawbuttondown $active 1 10 80 90 25 } elseif ($inrect($mouse.x,$mouse.y,10,115,90,25)) { set %mp3.button.6 1 drawbuttondown $active 1 10 115 90 25 } elseif ($inrect($mouse.x,$mouse.y,10,150,90,25)) { set %mp3.button.7 1 drawbuttondown $active 1 10 150 90 25 } } uclick:{ unset %mp3.button* if ($inrect($mouse.x,$mouse.y,10,10,90,25)) { drawbutton $active 1 10 10 90 25 set %mp3.play $$dir="Select MP3 to play:" $mp3.s(prevdir) .timermp3player off run -n $mp3.s(player) " $+ %mp3.play $+ " mp3.w last %mp3.play mp3.w prevdir $nofile(%mp3.play) $+ *.mp3 mp3.player %mp3.play .timermp3player 1 $mp3.t($mp3.len(%mp3.play)) mp3.next } elseif ($inrect($mouse.x,$mouse.y,10,45,90,25)) { .timermp3player off drawbutton $active 1 10 45 90 25 run -n $mp3.s(player) Stopped mp3.clear } elseif ($inrect($mouse.x,$mouse.y,10,80,90,25)) { .timermp3player off drawbutton $active 1 10 80 90 25 set %mp3.play $mp3.r run -n $mp3.s(player) " $+ %mp3.play $+ " mp3.w last %mp3.play mp3.player %mp3.play .timermp3player 1 $mp3.t($mp3.len(%mp3.play)) mp3.next } elseif ($inrect($mouse.x,$mouse.y,10,115,90,25)) { .timermp3player off drawbutton $active 1 10 115 90 25 run -n $mp3.s(player) " $+ $mp3.s(last) $+ " mp3.player $mp3.s(last) .timermp3player 1 $mp3.t($mp3.len($mp3.s(last))) mp3.next } elseif ($inrect($mouse.x,$mouse.y,10,150,90,25)) { .timermp3player off drawbutton $active 1 10 150 90 25 run -n $mp3.s(player) Stopped mp3.clear .timer -m 1 300 window -c $active } } mouse:{ if (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,10,90,25) == $false) && (%mp3.button.3) && (%mp3.button.3a == $null)) { drawbutton $active 1 10 10 90 25 set %mp3.button.3a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,10,90,25)) && (%mp3.button.3) && (%mp3.button.3a)) { drawbuttondown $active 1 10 10 90 25 unset %mp3.button.3a } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,45,90,25) == $false) && (%mp3.button.4) && (%mp3.button.4a == $null)) { drawbutton $active 1 10 45 90 25 set %mp3.button.4a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,45,90,25)) && (%mp3.button.4) && (%mp3.button.4a)) { drawbuttondown $active 1 10 45 90 25 unset %mp3.button.4a } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,80,90,25) == $false) && (%mp3.button.5) && (%mp3.button.5a == $null)) { drawbutton $active 1 10 80 90 25 set %mp3.button.5a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,80,90,25)) && (%mp3.button.5) && (%mp3.button.5a)) { drawbuttondown $active 1 10 80 90 25 unset %mp3.button.5a } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,115,90,25) == $false) && (%mp3.button.6) && (%mp3.button.6a == $null)) { drawbutton $active 1 10 115 90 25 set %mp3.button.6a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,115,90,25)) && (%mp3.button.6) && (%mp3.button.6a)) { drawbuttondown $active 1 10 115 90 25 unset %mp3.button.6a } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,150,90,25) == $false) && (%mp3.button.7) && (%mp3.button.7a == $null)) { drawbutton $active 1 10 150 90 25 set %mp3.button.7a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,150,90,25)) && (%mp3.button.7) && (%mp3.button.7a)) { drawbuttondown $active 1 10 150 90 25 unset %mp3.button.7a } } } ; Menu for GUI MP3 Playlist window. menu @MP3 Playlist { dclick:{ if ($mouse.x) return if ($findfile($mp3.s(dir),$sline($active,1),0) > 0) { set %mp3.play $findfile($mp3.s(dir),$sline($active,1),1) drawbuttondown $active 1 10 10 127 25 .timer -m 1 300 drawbutton $active 1 10 10 127 25 run -n $mp3.s(player) " $+ %mp3.play $+ " mp3.w last %mp3.play titlebar $active - $nopath(%mp3.play) if ($window(@MP3 Player)) mp3.player %mp3.play unset %mp3.play } } sclick:{ if ($inrect($mouse.x,$mouse.y,10,10,127,25)) { drawbuttondown $active 1 10 10 127 25 set %mp3.button.8 1 } elseif ($inrect($mouse.x,$mouse.y,10,45,127,25)) { drawbuttondown $active 1 10 45 127 25 set %mp3.button.9 1 } elseif ($inrect($mouse.x,$mouse.y,10,80,127,25)) { drawbuttondown $active 1 10 80 127 25 set %mp3.button.10 1 } elseif ($inrect($mouse.x,$mouse.y,10,115,127,25)) { drawbuttondown $active 1 10 115 127 25 set %mp3.button.11 1 } elseif ($inrect($mouse.x,$mouse.y,10,150,127,25)) { drawbuttondown $active 1 10 150 127 25 set %mp3.button.12 1 } } uclick:{ unset %mp3.button* if ($inrect($mouse.x,$mouse.y,10,10,127,25)) { drawbutton $active 1 10 10 127 25 if ($findfile($mp3.s(dir),$sline($active,1),0) > 0) { .timermp3player off set %mp3.play $findfile($mp3.s(dir),$sline($active,1),1) run -n $mp3.s(player) " $+ %mp3.play $+ " mp3.w last %mp3.play titlebar $active - $nopath(%mp3.play) if ($window(@MP3 Player)) mp3.player %mp3.play unset %mp3.play } } elseif ($inrect($mouse.x,$mouse.y,10,45,127,25)) { drawbutton $active 1 10 45 127 25 run -n $mp3.s(player) Stopped titlebar $active - Stopped .timermp3player off } elseif ($inrect($mouse.x,$mouse.y,10,80,127,25)) { .timermp3player off drawbutton $active 1 10 80 127 25 set %mp3.play $mp3.r run -n $mp3.s(player) " $+ %mp3.play $+ " mp3.w last %mp3.play titlebar $active - $nopath(%mp3.play) if ($mp3.f($nopath(%mp3.play))) sline -l $active $mp3.f($nopath(%mp3.play)) if ($window(@MP3 Player)) mp3.player %mp3.play unset %mp3.play } elseif ($inrect($mouse.x,$mouse.y,10,115,127,25)) { drawbutton $active 1 10 115 125 25 mp3.list } elseif ($inrect($mouse.x,$mouse.y,10,150,127,25)) { drawbutton $active 1 10 150 127 25 .timer -m 1 300 window -c $active } } mouse:{ if (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,10,127,25) == $false) && (%mp3.button.8) && (%mp3.button.8a == $null)) { drawbutton $active 1 10 10 127 25 set %mp3.button.8a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,10,127,25)) && (%mp3.button.8) && (%mp3.button.8a)) { drawbuttondown $active 1 10 10 127 25 unset %mp3.button.8a } if (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,45,127,25) == $false) && (%mp3.button.9) && (%mp3.button.9a == $null)) { drawbutton $active 1 10 45 127 25 set %mp3.button.9a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,45,127,25)) && (%mp3.button.9) && (%mp3.button.9a)) { drawbuttondown $active 1 10 45 127 25 unset %mp3.button.9a } if (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,80,127,25) == $false) && (%mp3.button.10) && (%mp3.button.10a == $null)) { drawbutton $active 1 10 80 127 25 set %mp3.button.10a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,80,127,25)) && (%mp3.button.10) && (%mp3.button.10a)) { drawbuttondown $active 1 10 80 127 25 unset %mp3.button.10a } if (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,115,127,25) == $false) && (%mp3.button.11) && (%mp3.button.11a == $null)) { drawbutton $active 1 10 115 127 25 set %mp3.button.11a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,115,127,25)) && (%mp3.button.11) && (%mp3.button.11a)) { drawbuttondown $active 1 10 115 127 25 unset %mp3.button.11a } if (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,150,127,25) == $false) && (%mp3.button.12) && (%mp3.button.12a == $null)) { drawbutton $active 1 10 150 127 25 set %mp3.button.12a 1 } elseif (($mouse.key == 1) && ($inrect($mouse.x,$mouse.y,10,150,127,25)) && (%mp3.button.12) && (%mp3.button.12a)) { drawbuttondown $active 1 10 150 127 25 unset %mp3.button.12a } } } ; Channel and Status popups. menu channel,status { MP3 .Setup:{ mp3 setup } .- .Play ..Last one:{ mp3 last } ..Specific:{ mp3 spec } ..Random:{ mp3 rand } ..- ..Stop:{ mp3 stop } .List ..Make list:{ mp3 text } ..Play list:{ mp3 list } .- .Player:{ mp3 gui } }