Ejemplo n.º 1
0
	def populateSongList(self,songs):
		print ("populating")
		self.songListGrid.clear_widgets()
		index = 0
		lastBtn = None
		for song in songs:
			songBtn = ToggleButton(text=song.title, size_hint_y=None, height=25,group='song')
			songBtn.bind(on_release=self.songSelectionChanged)
			songBtn.item=song
			songBtn.index = index
			songBtn.previousBtn = lastBtn
			if lastBtn:
				lastBtn.nextBtn = songBtn
			lastBtn = songBtn
			index+=1
			bandLbl = Label(text=song.band,size_hint_x=0.4, width=150)
			durationLbl = Label(text=song.duration(),size_hint_x=None, width=70)
			bpmRange = self.getBpmRange(song.genre)
			spdTxt = self.bpmToStars(song.bpm, bpmRange[0], bpmRange[1])
			speedLbl = Label(text=spdTxt,size_hint_x=0.4, width=40)
			self.songListGrid.add_widget(songBtn)
			self.songListGrid.add_widget(bandLbl)
			self.songListGrid.add_widget(durationLbl)
			self.songListGrid.add_widget(speedLbl)
		print ("populating done")
Ejemplo n.º 2
0
 def on_pre_enter(self, *args, **kwargs):
     super().on_pre_enter(*args, **kwargs)
     if len(self.ids.list_.children) != 0: return
     for item in sorted(self.items,key=lambda x: x.name):
         tb = ToggleButton(text = self.get_item_name(item),
                           group = self.name+'button_group',
                           size_hint_y=None,
                           size_y='30')
         tb.item = item
         def enable_done(button): 
             self.done_disabled = (button.state != 'down')
             self.selection = button.item
             print(self.selection)
         tb.bind(on_release=enable_done)
         self.ids.list_.add_widget(tb)