Exemplo n.º 1
0
	def toggle_shuffle(self):
		'''Simply Toggles the shuffle function'''
		self.shuffle.clear()
		if xmms.is_shuffle():
			self.shuffle.insstr(0,0," ")
		else:
			self.shuffle.insstr(0,0,"S")
		xmms.toggle_shuffle()
Exemplo n.º 2
0
	def update(self):
		'''This Refreshes the Screen... It calculates times and such, and then draws'''
		time = xmms.get_output_time()/1000
		num = xmms.get_playlist_pos()
		title = xmms.get_playlist_title(num)
		shuffle = xmms.is_shuffle()
		length = xmms.get_playlist_time(num) / 1000
		
		self.win.border()
		
		self.shuffle.clear()
		if shuffle:
			self.shuffle.insstr(0,0,"S")
		
		t = format_time(time)
		self.timers.clear()
		self.timers.addstr(t)
		
		self.title.clear()
		self.title.addstr("%d. %s (%s)" % (num,title,format_time(length)))

		t = (time * 40) / length
		self.playtime.clear()
		self.playtime.insstr(0,0,'.' * t)
		self.playtime.insstr(0, min(t,39), '%',curses.A_BOLD)
		if t < 39:
			self.playtime.insstr(0,t+1,'.' * (39 -t))

		self.volume.clear()
		v = xmms.get_main_volume()
		self.volume.insstr(0,0, 'Vol: %2d' % (v))

		v = int(round(v / 10))
		for i in range(0, 5):
			if (i * 2 < v):
				self.volume.hline(6-i, 0, '#', 2*i-1, curses.A_BOLD)
			else:
				self.volume.hline(6-i, 0, '_', 2*i-1)
				
# 		# gratuitous use of lambda
		map(lambda a: a.refresh(), self.windows)
Exemplo n.º 3
0
	def __init__(self, stdscr, top = 6,left = 10):
		self.stdscr = stdscr
		self.win = curses.newwin(13, 60, top, left)
		self.win.border()
		
		# Gets a list of recognised key - strokes
		self.keys = key_strokes()

		# The next block represents the various widgets
		self.timers = self.win.subwin(2, 10, top+1, left + 3)
		self.title = self.win.subwin(3, 40, top+1, left + 15)
		self.playtime = self.win.subwin(2, 40, top+4, left + 15)
		self.volume = self.win.subwin(7, 10, top+3, left + 2)
		self.jump = self.win.subwin(6, 45, top+6, left + 12)
		self.shuffle = self.win.subwin(1,1,top+10, left + 5)
		if xmms.is_shuffle():
			self.shuffle.insstr(0,0,"S")
			
		self.windows = [self.timers, self.playtime, self.shuffle, self.volume, self.win, self.jump, self.title]
		
		key = self.keys

		# maks the keys to their appropriate function
		self.keymaps = {
			key["x"] : xmms.play,
			key["c"] : xmms.pause,
			key["v"] : xmms.stop,
			key["z"] : xmms.playlist_prev,
			key["b"] : xmms.playlist_next,
			key["s"] : self.toggle_shuffle,
			key["j"] : self.search,
			key["q"] : sys.exit,
			key["esc"] : sys.exit,
			key["up"] : lambda : xmms.set_main_volume(min(100, xmms.get_main_volume() + 10)),
			key["down"] : lambda : xmms.set_main_volume(max(0, xmms.get_main_volume() - 10)),
			key["right"] : lambda : xmms.jump_to_time(xmms.get_output_time()+5000),
			key["left"] : lambda : xmms.jump_to_time(max(0,xmms.get_output_time()-5000))
		};
Exemplo n.º 4
0
	def update(self):
		'''Updates all windows'''

		# This block gets variables, like time, number, title. etc...
		time = xmms.get_output_time()/1000
		num = xmms.get_playlist_pos()
		title = xmms.get_playlist_title(num)
		shuffle = xmms.is_shuffle()
		length = xmms.get_playlist_time(num) / 1000
		
		t = format_time(time)
		self.timers.clear()
		self.timers.addstr(t)
		
		self.title.clear()
		self.title.addstr("%d. %s (%s)" % (num,title,format_time(length)))

		t = (time * 40) / length
		self.playtime.clear()
		self.playtime.insstr(0,0,'.' * t)
		self.playtime.insstr(0, min(t,39), '%',curses.A_BOLD)
		if t < 39:
			self.playtime.insstr(0,t+1,'.' * (39 -t))

		self.volume.clear()
		v = xmms.get_main_volume()
		self.volume.insstr(0,0, 'Vol: %2d' % (v))

		# draws the volume bar
		v = int(round(v / 10))
		for i in range(0, 5):
			if (i * 2 < v):
				self.volume.hline(6-i, 0, '#', 2*i-1, curses.A_BOLD)
			else:
				self.volume.hline(6-i, 0, '_', 2*i-1)
				
# 		# gratuitous use of lambda
		map(lambda a: a.refresh(), self.windows)
Exemplo n.º 5
0
 def shuffle_get(self):
     shuffle = xmms.is_shuffle()
     print "Sending toggle: now is", shuffle == 1
     self.client_socket.sendall(str(shuffle))
Exemplo n.º 6
0
 def shuffle_get(self):
     shuffle = xmms.is_shuffle()
     print "Sending toggle: now is",shuffle == 1
     self.client_socket.sendall(str(shuffle))