function pmn_Sort(strBy)local tblA = {};local tblB = {};local tblC = {};local tblD = {};local tblE = {};local tblF = {};local tblG = {};local tblH = {};local tblI = {};local tblJ = {};local tblK = {};local tblL = {};local tblM = {};local tblN = {};local tblO = {};local tblP = {};local tblQ = {};local tblR = {};local tblS = {};local tblT = {};local tblU = {};local tblV = {};local tblW = {};local tblX = {};local tblY = {};local tblZ = {};local tblOT = {};local iA = 0;local iB = 0;local iC = 0;local iD = 0;local iE = 0;local iF = 0;local iG = 0;local iH = 0;local iI = 0;local iJ = 0;local iK = 0;local iL = 0;local iM = 0;local iN = 0;local iO = 0;local iP = 0;local iQ = 0;local iR = 0;local iS = 0;local iT = 0;local iU = 0;local iV = 0;local iW = 0;local iX = 0;local iY = 0;local iZ = 0;local iOT = 0; if strBy == "Name" then strSort = "Name"; numPlcount = ListBox.GetCount("Playlist"); numPLitem = 1; numPLadd = 0; while numPLitem <= numPlcount do strPLtxt = ListBox.GetItemText("Playlist", numPLitem); strPLdata = ListBox.GetItemData("Playlist", numPLitem); strPLleft = String.Left(strPLtxt, 1); if strPLleft == "a" or strPLleft == "A" then iA = iA + 1; tblA[iA] = strPLdata; elseif strPLleft == "b" or strPLleft == "B" then iB = iB + 1; tblB[iB] = strPLdata; elseif strPLleft == "c" or strPLleft == "C" then iC = iC + 1; tblC[iC] = strPLdata; elseif strPLleft == "d" or strPLleft == "D" then iD = iD + 1; tblD[iD] = strPLdata; elseif strPLleft == "e" or strPLleft == "E" then iE = iE + 1; tblE[iE] = strPLdata; elseif strPLleft == "f" or strPLleft == "F" then iF = iF + 1; tblF[iF] = strPLdata; elseif strPLleft == "g" or strPLleft == "G" then iG = iG + 1; tblG[iG] = strPLdata; elseif strPLleft == "h" or strPLleft == "H" then iH = iH + 1; tblH[iH] = strPLdata; elseif strPLleft == "i" or strPLleft == "I" then iI = iI + 1; tblI[iI] = strPLdata; elseif strPLleft == "j" or strPLleft == "J" then iJ = iJ + 1; tblJ[iJ] = strPLdata; elseif strPLleft == "k" or strPLleft == "K" then iK = iK + 1; tblK[iK] = strPLdata; elseif strPLleft == "l" or strPLleft == "L" then iL = iL + 1; tblL[iL] = strPLdata; elseif strPLleft == "m" or strPLleft == "M" then iM = iM + 1; tblM[iM] = strPLdata; elseif strPLleft == "n" or strPLleft == "N" then iN = iN + 1; tblN[iN] = strPLdata; elseif strPLleft == "o" or strPLleft == "O" then iO = iO + 1; tblO[iO] = strPLdata; elseif strPLleft == "p" or strPLleft == "P" then iP = iP + 1; tblP[iP] = strPLdata; elseif strPLleft == "q" or strPLleft == "Q" then iQ = iQ + 1; tblQ[iQ] = strPLdata; elseif strPLleft == "r" or strPLleft == "R" then iR = iR + 1; tblR[iR] = strPLdata; elseif strPLleft == "s" or strPLleft == "S" then iS = iS + 1; tblS[iS] = strPLdata; elseif strPLleft == "t" or strPLleft == "T" then iT = iT + 1; tblT[iT] = strPLdata; elseif strPLleft == "u" or strPLleft == "U" then iU = iU + 1; tblU[iU] = strPLdata; elseif strPLleft == "v" or strPLleft == "V" then iV = iV + 1; tblV[iV] = strPLdata; elseif strPLleft == "w" or strPLleft == "W" then iW = iW + 1; tblW[iW] = strPLdata; elseif strPLleft == "x" or strPLleft == "X" then iX = iX + 1; tblX[iX] = strPLdata; elseif strPLleft == "y" or strPLleft == "Y" then iY = iY + 1; tblY[iY] = strPLdata; elseif strPLleft == "z" or strPLleft == "Z" then iZ = iZ + 1; tblZ[iZ] = strPLdata; else iOT = iOT + 1; tblOT[iOT] = strPLdata; end numPLitem = numPLitem + 1; end ListBox.DeleteItem("Playlist", LB_ALLITEMS); for ii, id in tblA do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblB do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblC do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblD do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblE do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblF do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblG do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblH do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblI do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblJ do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblK do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblL do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblM do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblN do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblO do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblP do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblQ do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblR do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblS do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblT do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblU do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblV do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblW do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblX do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblY do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblZ do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end for ii, id in tblOT do if id ~= "" then numPLadd = numPLadd + 1; strPLtxt = String.SplitPath(id).Filename..String.SplitPath(id).Extension ListBox.AddItem("Playlist", strPLtxt, id); end end elseif strBy == "Type" then strSort = "Type"; if File.DoesExist(_ProgramFilesFolder.."\\MediaX\\playlist.mx") == true then play_file2 = TextFile.ReadToTable(_ProgramFilesFolder.."\\MediaX\\playlist.mx"); if play_file2 then ListBox.DeleteItem("Playlist", -1); for rl,rPath in play_file2 do r2Path = String.TrimLeft(rPath, nil); ListBox.AddItem("Playlist", String.SplitPath(r2Path).Filename..String.SplitPath(r2Path).Extension, r2Path); end end end endend