All pastes #1479098 Raw Edit

PsyMP3 playlist code

public text v1 · immutable
#1479098 ·published 2009-06-30 03:28 UTC
rendered paste body
'' Playlist code. Object-oriented as an experiment

Type Playlist
Private:
   m_entries As Integer
   m_position As Integer
   m_playlist(150) As String
Public:
   Declare Constructor ()
   Declare Sub addFile(file As String)
   Declare Function getNextFile() As String
   Declare Function getPrevFile() As String
   Declare Function getPosition() As Integer
   Declare Function getEntries() As Integer
End Type

Dim Shared As Playlist Songlist

Constructor Playlist ()
   this.m_entries = 0
   this.m_position = 0
   this.m_playlist(1) = ""
End Constructor

Sub Playlist.addFile (file As String)
   this.m_entries += 1
   this.m_playlist(this.m_entries) = file
End Sub

Function Playlist.getNextFile () As String
   If this.m_entries = 0 Or this.m_entries <= this.m_position Then
      this.m_position = this.m_entries + 1
      Return ""
   EndIf 
   this.m_position += 1
   Return this.m_playlist(this.m_position)
End Function

Function Playlist.getPrevFile () As String
   If this.m_entries = 0 Then Return ""
   this.m_position -= 1
   Return this.m_playlist(this.m_position)
End Function

Function Playlist.getPosition () As Integer
   Return this.m_position
End Function

Function Playlist.getEntries () As Integer
   Return this.m_entries
End Function

'' End Playlist code.