import os import tkinter as tk from MediaPlayer import MediaPlayer CLIENT_HOST = "localhost" CLIENT_PORT = 9999 media_player = MediaPlayer(CLIENT_HOST, CLIENT_PORT) def request_selected_song(): selected_song = song_listbox.get(song_listbox.curselection()) media_player.request_song(selected_song) def stop_song(): media_player.stop_song() root = tk.Tk() root.title("Song Requestor") song_listbox = tk.Listbox(root, height=10, width=50) song_listbox.pack() song_list = media_player.requestor.getSongList() for song in song_list: if song: # Check if song is not an empty string song_listbox.insert(tk.END, song) request_button = tk.Button(root, text="Play song", command=request_selected_song) request_button.pack() play_pause_button = tk.Button(root, text="Stop song", command=stop_song) play_pause_button.pack() def on_close(): media_player.stop_song() os.remove('received_song.mid') root.destroy() root.protocol("WM_DELETE_WINDOW", on_close) root.mainloop()