Public feed #381155

Anonymous

public text v1 · immutable
Raw Edit
·published 2007-03-04 17:51 UTC
rendered paste body
} 
menu channel,status,menubar {
  AltMP3 v2.0
  .Open:a_mp3
  .-
  .Set Horizontal Default:mp3_def_hor
  .Set Vertical Default:mp3_def_vert
}
alias a_mp3 {
  if ($dialog(a_mp3) { dialog -v a_mp3) }
  else { dialog -md a_mp3 a_mp3 }
}
alias mp3help {
  /window -e @mp3help -1 -1 400 200
  echo @mp3help 04Commands List for AltMP3 v2.0
  echo @mp3help 04For More Information, type -help <command>
  echo @mp3help /a_play
  echo @mp3help /a_stop
  echo @mp3help /a_pause
  echo @mp3help /a_prev
  echo @mp3help /a_next
  echo @mp3help /a_shuffle
  echo @mp3help /a_search
  echo @mp3help /a_display
  echo @mp3help /a_mp3
  echo @mp3help aDir
  echo @mp3help aFile
  editbox @mp3help (Scroll Up for Full List)
}
alias a_play {
  if ($insong.pause) splay resume
  else {
    if ($dialog(a_mp3)) && ($did(a_mp3,7).seltext) {
      splay $qt($readini(altscripts.ini,playlist,$gettok($did(a_mp3,7).seltext,1,46)))
      writeini altscripts.ini mp3 cur $gettok($did(a_mp3,7).seltext,1,46)
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
    elseif (!$insong) {
      splay $qt($readini(altscripts.ini,playlist,1))
      writeini altscripts.ini mp3 cur 1
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
  }
}
alias a_pause {
  if ($insong) {
    if ($insong.pause) splay resume
    else splay pause
  }
}
alias a_prev {
  var %options = $readini(altscripts.ini,mp3,options)
  tokenize 58 %options
  if ($1 == 1) {
    a_shuffle
  }
  else {
    if (!$readini(altscripts.ini,mp3,cur)) {
      splay $qt($readini(altscripts.ini,playlist,1))
      writeini altscripts.ini mp3 cur 1
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
    elseif ($readini(altscripts.ini,mp3,cur) == 1) {
      splay $qt($readini(altscripts.ini,playlist,$ini(altscripts.ini,playlist,0)))
      writeini altscripts.ini mp3 cur $ini(altscripts.ini,playlist,0)
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
    else {
      splay $qt($readini(altscripts.ini,playlist,$calc($readini(altscripts.ini,mp3,cur) - 1)))
      writeini altscripts.ini mp3 cur $calc($readini(altscripts.ini,mp3,cur) - 1)
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
  }
}
alias a_next {
  var %options = $readini(altscripts.ini,mp3,options)
  tokenize 58 %options
  if ($1 == 1) {
    a_shuffle
  }
  else {
    if (!$readini(altscripts.ini,mp3,cur)) {
      splay $qt($readini(altscripts.ini,playlist,1))
      writeini altscripts.ini mp3 cur 1
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
    elseif ($readini(altscripts.ini,mp3,cur) == $ini(altscripts.ini,playlist,0)) {
      splay $qt($readini(altscripts.ini,playlist,1))
      writeini altscripts.ini mp3 cur 1
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
    else {
      splay $qt($readini(altscripts.ini,playlist,$calc($readini(altscripts.ini,mp3,cur) + 1)))
      writeini altscripts.ini mp3 cur $calc($readini(altscripts.ini,mp3,cur) + 1)
      $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
    }
  }
}
alias a_shuffle {
  var %r = $r(1,$ini(altscripts.ini,playlist,0))
  splay $qt($readini(altscripts.ini,playlist,%r)) | writeini altscripts.ini mp3 cur %r
  $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
  writeini altscripts.ini mp3 cur %r
}
alias a_stop { writeini altscripts.ini mp3 cur 0 | splay stop }
alias a_search { 
  var %i = 0
  while (%i < $ini(altscripts.ini,playlist,0)) {
    inc %i
    if ($+(*,$1-,*) iswm $readini(altscripts.ini,playlist,%i)) { splay $qt($readini(altscripts.ini,playlist,%i)) }
  }
}
alias a_display { if ($insong) { $readini(altscripts.ini,mp3,dispmethod) $readini(altscripts.ini,mp3,announcement) } }
alias -l relist {
  did -r a_mp3 7
  var %thisisctimeunub $ctime
  var %i = 0
  var %z = 0  
  while (%i < $ini(altscripts.ini,playlist,0)) {
    inc %i
    write $+(%thisisctimeunub,.txt) $readini(altscripts.ini,playlist,$ini(altscripts.ini,playlist,%i))
  }
  remini altscripts.ini playlist
  while (%z < $lines($+(%thisisctimeunub,.txt))) {
    inc %z
    writeini altscripts.ini playlist %z $read($+(%thisisctimeunub,.txt),%z)
    did -a a_mp3 7 $+(%z,.) $nopath($readini(altscripts.ini,playlist,$ini(altscripts.ini,playlist,%z)))
  }
  .remove $+(%thisisctimeunub,.txt)
}
alias tocol {
  var %c1 = $iif($len($1) = 1,$+(0,$1),$1)
  if ($2) var %c2 = $iif($len($2) = 1,$+(0,$2),$2)
  return $+($chr(3),%c1,$iif($2,$chr(44)),%c2)
}
alias -l updatemp3 {
  if ($dialog(a_mp3)) {
    did -r a_mp3 11,15
    did -a a_mp3 11 $iif(!$insong.fname,No Songs are Playing. For Help Type /mp3help,$nopath($insong.fname))
    did -a a_mp3 15 $gettok($duration($calc($insong.pos / 1000),3),2-,58)
    did -c a_mp3 17 $round($calc($calc($insong.pos / $insong.length) * 100),0)  
    did -c a_mp3 25 $vol(master)  
  }
}
alias -l mp3def return $readini(altscripts.ini,mp3def,$1)
alias mp3_def_hor {
  writeini altscripts.ini mp3def xy 293 84
  writeini altscripts.ini mp3def 1 7 11 37 12
  writeini altscripts.ini mp3def 2 48 11 37 12
  writeini altscripts.ini mp3def 3 7 26 37 12
  writeini altscripts.ini mp3def 4 48 26 37 12
  writeini altscripts.ini mp3def 5 28 41 37 12
  writeini altscripts.ini mp3def 6 3 1 90 54
  writeini altscripts.ini mp3def 7 215 5 70 50
  writeini altscripts.ini mp3def 8 216 56 26 12
  writeini altscripts.ini mp3def 9 245 56 19 12
  writeini altscripts.ini mp3def 10 265 56 19 12
  writeini altscripts.ini mp3def 11 94 47 119 10
  writeini altscripts.ini mp3def 12 98 3 30 10
  writeini altscripts.ini mp3def 13 98 12 48 10
  writeini altscripts.ini mp3def 14 98 21 54 10
  writeini altscripts.ini mp3def 15 191 35 24 10
  writeini altscripts.ini mp3def 16 251 70 31 9
  writeini altscripts.ini mp3def 17 95 37 90 7
  writeini altscripts.ini mp3def 18 217 70 31 9
  writeini altscripts.ini mp3def 19 94 30 95 16
  writeini altscripts.ini mp3def 20 17 57 60 50
  writeini altscripts.ini mp3def 21 17 70 107 10
  writeini altscripts.ini mp3def 22 125 58 86 25
  writeini altscripts.ini mp3def 25 157 17 50 7
  writeini altscripts.ini mp3def 26 154 10 55 17
  writeini altscripts.ini mp3def 28 173 3 17 8
}
alias mp3_def_vert {
  writeini altscripts.ini mp3def xy 138 234
  writeini altscripts.ini mp3def 1 29 86 37 12
  writeini altscripts.ini mp3def 2 70 86 37 12
  writeini altscripts.ini mp3def 3 29 101 37 12
  writeini altscripts.ini mp3def 4 70 101 37 12
  writeini altscripts.ini mp3def 5 50 116 37 12
  writeini altscripts.ini mp3def 6 25 76 90 54
  writeini altscripts.ini mp3def 7 2 2 135 50
  writeini altscripts.ini mp3def 8 34 53 26 12
  writeini altscripts.ini mp3def 9 63 53 19 12
  writeini altscripts.ini mp3def 10 83 53 19 12
  writeini altscripts.ini mp3def 11 13 197 121 10
  writeini altscripts.ini mp3def 12 17 150 30 10
  writeini altscripts.ini mp3def 13 17 159 48 10
  writeini altscripts.ini mp3def 14 17 169 54 10
  writeini altscripts.ini mp3def 15 110 185 24 10
  writeini altscripts.ini mp3def 16 69 67 31 9
  writeini altscripts.ini mp3def 17 14 187 90 7
  writeini altscripts.ini mp3def 18 35 67 31 9
  writeini altscripts.ini mp3def 19 13 180 95 16
  writeini altscripts.ini mp3def 20 10 130 60 50
  writeini altscripts.ini mp3def 21 10 140 107 10
  writeini altscripts.ini mp3def 22 22 208 86 17
  writeini altscripts.ini mp3def 25 76 172 50 7
  writeini altscripts.ini mp3def 26 73 165 55 17
  writeini altscripts.ini mp3def 28 92 158 17 8
}
dialog a_mp3 {
  title "AltMP3 v2.0"
  size -1 -1 $readini(altscripts.ini,mp3def,xy)
  option dbu
  button "Play", 1, $mp3def(1)
  button "Pause", 2, $mp3def(2)
  button "Previous", 3, $mp3def(3)
  button "Next", 4, $mp3def(4)
  button "Stop", 5, $mp3def(5)
  box "Player Controls", 6, $mp3def(6)
  list 7, $mp3def(7), size
  button "Remove", 8, $mp3def(8)
  button "aDir", 9, $mp3def(9)
  button "aFile", 10, $mp3def(10)
  edit "", 11, $mp3def(11), read autohs
  check "Shuffle", 12, $mp3def(12)
  check "Continous Play", 13, $mp3def(13)
  check "Announce Songs?", 14, $mp3def(14)
  edit "", 15, $mp3def(15), disable read right
  button "Close", 16, $mp3def(16), ok
  scroll "", 17, $mp3def(17), range 1 100 horizontal
  button "Help", 18, $mp3def(18)
  box "Seek", 19, $mp3def(19)
  scroll "", 25, $mp3def(25), range 0 20000 horizontal bottom
  box "Quiet             Loud", 26, $mp3def(26)
  text "Volume", 28, $mp3def(28)
  combo 20, $mp3def(20), size drop
  edit "", 21, $mp3def(21), autohs
  edit "$tocol(N,N) For Color Boxes.   Identifiers are Allowed", 22, $mp3def(22), read multi
}
on *:DIALOG:a_mp3:edit:21:{
  writeini altscripts.ini mp3 announcement $did($dname,$did).text
}
on *:DIALOG:a_mp3:scroll:17:{
  if ($insong) {
    var %t $round($calc($did(a_mp3,17).sel / 22000 * $insong.length),0)
    splay seek $calc((%t + $did(a_mp3,17).sel) * 200)
  }
}
on *:DIALOG:a_mp3:scroll:25:{
  vol -v $did(a_mp3,25).sel
}
on *:DIALOG:a_mp3:init:*:{
  .timerupdmp3 -o 0 1 updatemp3
  var %options = $readini(altscripts.ini,mp3,options)
  tokenize 58 %options
  if ($1 == 1) did -c $dname 12
  if ($2 == 1) did -c $dname 13
  if ($3 == 1) did -c $dname 14
  if ($3 != 1) did -b $dname 20-21
  if ($hget(playlist,0).item > 0) {
    var %i = 0
    while (%i < $hget(playlist,0).item) {
      inc %i
      did -a $dname 7 $+(%i,.) $nopath($hget(playlist,%i))
    }
  }
  did -a $dname 21 $readini(altscripts.ini,n,mp3,announcement)
  did -a $dname 20 Echo
  did -a $dname 20 Amsg
  did -a $dname 20 Ame
  did -a $dname 20 Msg $+($chr(36),active)
  if ($readini(altscripts.ini,mp3,dispmethod) == echo) var %m = 1
  if ($readini(altscripts.ini,mp3,dispmethod) == amsg) var %m = 2
  if ($readini(altscripts.ini,mp3,dispmethod) == ame) var %m = 3
  if ($readini(altscripts.ini,mp3,dispmethod) == msg $active) var %m = 4
  did -c $dname 20 %m
}
on *:DIALOG:a_mp3:sclick:*:{
  if ($did == 16) { dialog -x $dname | halt }
  if ($ini(altscripts.ini,playlist,0) == $null) && ($istok(1 2 3 4 5 8,$did,32)) {
    .echo -q $input(No Playlist Detected,ow,Error: No Playlist Detected)
    halt
  }
  var %options = $readini(altscripts.ini,mp3,options)
  tokenize 58 %options
  if ($did == 1) a_play
  elseif ($did == 2) a_pause
  elseif ($did == 3) a_prev
  elseif ($did == 4) a_next
  elseif ($did == 5) a_stop
  elseif ($did == 8) {
    if ($did($dname,7).seltext) {
      remini altscripts.ini playlist $gettok($did($dname,7).seltext,1,46)
      relist
    }
  }
  elseif ($did == 9) {
    var %dir = $$sdir(*,Select Song Folder to Add to Your Playlist)
    var %i = 0
    while (%i < $findfile(%dir,*.mp3,0)) {
      inc %i    
      .echo -q $findfile(%dir,*.mp3,%i,addsongsfromdir $1-)
      did -a $dname 7 $+($calc($did(a_mp3,7).lines + 1),.) $nopath($findfile(%dir,*.mp3,%i))
    }
  }
  elseif ($did == 10) {
    var %songs = $$msfile(*.mp3,Select Songs to Add to Your Playlist,Add Song(s))
    var %i = 0
    while (%i < %songs) {
      inc %i    
      writeini altscripts.ini playlist $calc($ini(altscripts.ini,playlist,0) + 1) $msfile(%i)
      hadd -m playlist $calc($hget(playlist,0).item + 1) $msfile(%i)
      did -a $dname 7 $+($calc($did(a_mp3,7).lines + 1),.) $nopath($msfile(%i))
    }
  }
  elseif ($did == 12) writeini altscripts.ini mp3 options $+($did($dname,12).state,:,$2,:,$3)
  elseif ($did == 13) writeini altscripts.ini mp3 options $+($1,:,$did($dname,13).state,:,$3)
  elseif ($did == 14) {
    writeini altscripts.ini mp3 options $+($1,:,$2,:,$did($dname,14).state)
    if ($did($dname,14).state == 0) {
      did -b a_mp3 20-21
    }
    else {
      did -e a_mp3 20-21
    }
  }
  elseif ($did == 18) {
    mp3help
  }
  elseif ($did == 20) {
    writeini altscripts.ini mp3 dispmethod $iif($did($dname,20).seltext,$did($dname,20).seltext,ame)
  }
}
on *:DIALOG:a_mp3:dclick:7:{
  splay $qt($readini(altscripts.ini,playlist,$gettok($did(a_mp3,7).seltext,1,46)))
  writeini altscripts.ini mp3 cur $gettok($did(a_mp3,7).seltext,1,46)
  $iif($gettok($readini(altscripts.ini,mp3,options),3,58) == 1,a_display)
}
on *:INPUT:@mp3help:{
  if ($1 == -help) {
    if (*a_play iswm $2) { echo @mp3help 04Type /a_play to play the first song in the playlist }
    if (*a_stop iswm $2) { echo @mp3help 04Type /a_stop to stop the current song from playing }
    if (*a_pause iswm $2) { echo @mp3help 04Type /a_pause to pause the current song (/a_play to resume) }
    if (*a_prev iswm $2) { echo @mp3help 04Type /a_prev to play the previous song }
    if (*a_next iswm $2) { echo @mp3help 04Type /a_next to play the next song }
    if (*a_mp3 iswm $2) { echo @mp3help 04Type /a_mp3 to open the MP3 Player dialog }
    if (*a_shuffle iswm $2) { echo @mp3help 04Type /a_shuffle to play a random song (even if shuffle is off) }
    if (*a_search iswm $2) { echo @mp3help 04Type /a_search <Song*with*wildcard?> To play the first song to match your wildcards }
    if (*a_display iswm $2) { echo @mp3help 04Type /a_display to display the song announcement according to your settings }
    if (*afile iswm $2) { echo @mp3help 04Click the aFile button to add multiple files to your playlist }
    if (*adir iswm $2) { echo @mp3help 04Click aDir To add a directory of music to your MP3 Player }
  }
}
on *:MP3END:{
  var %options = $readini(altscripts.ini,mp3,options)
  tokenize 58 %options  
  if ($2 == 1) {
    if ($1 == 1) { a_shuffle }
    else { a_next }
  }
}
on *:LOAD:{
  $iif($input(Use Horizontal Style as Default?,yq) == $true,mp3_def_hor,mp3_def_vert)
}
on *:START:{
  if ($ini(altscripts.ini,playlist,0) > 0) {
    var %i = 0
    while (%i < $ini(altscripts.ini,playlist,0)) {
      inc %i
      hadd -m playlist %i $readini(altscripts.ini,playlist,%i)
    }
  }
}
alias -l addsongsfromdir {
  writeini altscripts.ini playlist $calc($ini(altscripts.ini,playlist,0) + 1) $1-
  hadd -m playlist $calc($hget(playlist,0).item + 1) $1-
}
on *:UNLOAD: timerupdmp3 off