Vorschlag..doppelte Titel

Hi Leute,
wie wäre es mit der Idee:
Wenn 2 x der gleiche Titel in der Playliste ist, dass der dann farbig markiert wird?!
Nein das soll nicht schön sein sondern warnen !!
Mir ist gestern ein Titel 2x vorgekommen :-\ und das würde mit der Funktion nicht mehr passieren ;D
Güße von mir…

hi,

[code]var i,n : Integer;

begin

for i:=0 to CurrentPlaylist.GetCount-1 do begin
for n:=0 to CurrentPlaylist.GetCount-1 do begin
if ((CurrentPlaylist.GetItem(i).GetTitle = CurrentPlaylist.GetItem(n).GetTitle) and (i <> n) ) then begin
CurrentPlaylist.GetItem(n).SetColor(clRed);
CurrentPlaylist.GetItem(n).SetColored(true);
end;
end;
end;
end.[/code]

Färbt alle mehrfach vorhandenen Titel rot…

edit: hab ich vergessen: das ist ein Script, d.H du speicherst diesen Code in eine Datei xy.mls und kannst sie dann in mairlist ausführen… :wink:

grüße, michi

Kleine Frage - wie führt man diese Scripts denn aus? Hab jetzt dieses im scripts-Ordner erstellt, aber funktionieren tut’s nicht… ???

lg

hi,

also du hast irgendwo die Datei mit dem Script drin “name.mls”

dann kannst du über “öffnen” - “Script ausführen” das Script starten.

Um nicht immer so viel klicken zu müssen kannst du auch in der mAirList-Config unter Scripts bei Actionsscripts das Script eintragen und dann in mairlist über “Aktionen” aufrufen, ist sozusagen eine “Verknüpfung”.

edit: was du auch noch machen kannst, ist das Script zu bestimmten Zeiten über das eventsystem auffzurufen.

grüße, michi

[code]var i,n : Integer;

begin

for i:=0 to CurrentPlaylist.GetCount-1 do begin
for n:=0 to CurrentPlaylist.GetCount-1 do begin
if ((CurrentPlaylist.GetItem(i).GetArtist = CurrentPlaylist.GetItem(n).GetArtist) and (CurrentPlaylist.GetItem(i).GetTitle = CurrentPlaylist.GetItem(n).GetTitle) and (i <> n) ) then begin
CurrentPlaylist.GetItem(n).SetColor(clRed);
CurrentPlaylist.GetItem(n).SetColored(true);
end;
end;
end;
end.[/code]

Hab jetztnoch überprüfung des Artists reingemacht, denn vorher wurde nur der Titel verglichen.

grüße, michi

Danke erstmal!

Aber wenn ich auf das Script doppelklicke öffnet sich immer der Editor…welches Programm muss ich denn da zum Öffnen verwenden?

Ja aber ich muss doch jetzt jedes Mal das Script wieder ausführen. Ich dachte da eher an eine Lösung die auto. sekündlich prüft.
Aber danke erstmal ;D .
MFG

Naja jede Sekunde erscheint mir etwas zu oft :wink:

Aber Prinzipiell gibts 2 möglichkeiten:

Per Eventsystem das Script jede x Minuten aufrufen

Ein Notification-Script basteln, das dann bei jedem start eines Players ausgeführt wird.

Ich finde, das eventsystem würde ausreichen…

grüße, michi

Danke sehr ;D ;D ;D
MFG

Jetzt nochmal 'ne allgemeine Frage: Wie führt man denn ein Script denn nun aus? :wink:

Also, dann hier mal eine Allgemeine Erklärung:

Scripts werden immer in eine textdatei mit der endung *.mls gespeichert.
es gibt grundsätzlich 2 arten von Scripten:

“normale Scripts” und Notification-Scripts".

  1. Notification Scripts (ab version 2.X.X):

Das sind Scripts, die auf bestimmte Ereignisse (z.B Playerstart) reagieren und ausgeführt werden, wenn sie in mAirList-config unter “benachrichtigungsscripts” eingetragen sind.

Hier ein Beispielscript für Playerstart (im Scripts-Verzeichnis gibts eine Datei in der alle Types drinstehen.

[code]procedure OnPlayerStart(PlayerControl: IPlayerControl; Item: IPlaylistItem);
var deine variablen: typ;
begin
—Dein Code
end;

begin
end.[/code]

  1. “Normale Scripts” (wie das zum markieren doppelter Tracks in dem thread weiter oben)
  • Manuelle Ausführung (öffnen —> “Script ausführen” )
  • Auch manuell, aber komfortabler: in mAirList-Config unter “Aktionsscript” eintragen. Nun kannst du sie über “Aktionen” in mAirList ausfähren.
  • Geplant (über Eventsystem).

grüße, michi

Ich habe das obige Script (mit Artist) in eine eine Textdatei gespeichert. Dann in “Doppelte_Titel_farblich_markieren.mls” umbenannt. Als nächstes dann in mAirList “Öffnen - Script ausführen…” das Script ausgewählt. Dann bekomme ich allerdings eine Fehlermeldung. Siehe Anhang.

Das Script ist ja schon ein bischen älter. Funktioniert das in Version 6 nicht mehr? Gibt es da etwas aktuelles oder …?

Danke für die Unterstützung.


fehler.png

1 Like