def capture_player(name): event_player = name.text popup_player_list.dismiss() # Select event and publish def capture_event(name): event_name = name.text event_log = (str(currentTime).zfill(2) + ' ' + event_name + ' (' + event_player +')') print(event_log) self.root.ids.commentary.text += '\n' + event_log popup_event_list.dismiss() # Build event list modal layout_event_list = GridLayout(cols=1, spacing=5, size_hint_y=None) layout_event_list.bind(minimum_height=layout_event_list.setter('height')) list_of_events = ["Goal scored", "Goal conceded", "Yellow card", "Red card"] layout_event_list.my_buttons = [] # if you want to keep an "easy" reference to your buttons to do something with them later # kivy doesnt crashes because it creates the property automatically for event in list_of_events: button = Button(text=event, size_hint_y=None, height=50) button.bind(on_press=capture_event) layout_event_list.my_buttons.append(button) layout_event_list.add_widget(button) root = ScrollView(size_hint=(1, None), size=(Window.width * 1, Window.height * .9)) root.add_widget(layout_event_list) # Open event modal popup_event_list = Popup(title='Select event:', content=root, size_hint=(1, 1)) popup_event_list.open()
def matchEvent(self): currentTime = self.root.ids.stopwatch.text[:-6] currentTime = int(currentTime) + 1 # Select player and close player list def capture_player(name): event_player = name.text popup_player_list.dismiss() # Select event and publish def capture_event(name): event_name = name.text event_log = (str(currentTime).zfill(2) + ' ' + event_name + ' (' + event_player +')') print(event_log) self.root.ids.commentary.text += '\n' + event_log popup_event_list.dismiss() # Build event list modal layout_event_list = GridLayout(cols=1, spacing=5, size_hint_y=None) layout_event_list.bind(minimum_height=layout_event_list.setter('height')) list_of_events = ["Goal scored", "Goal conceded", "Yellow card", "Red card"] layout_event_list.my_buttons = [] # if you want to keep an "easy" reference to your buttons to do something with them later # kivy doesnt crashes because it creates the property automatically for event in list_of_events: button = Button(text=event, size_hint_y=None, height=50) button.bind(on_press=capture_event) layout_event_list.my_buttons.append(button) layout_event_list.add_widget(button) root = ScrollView(size_hint=(1, None), size=(Window.width * 1, Window.height * .9)) root.add_widget(layout_event_list) # Open event modal popup_event_list = Popup(title='Select event:', content=root, size_hint=(1, 1)) popup_event_list.open() # Build player list modal layout_popup_list = GridLayout(cols=1, spacing=5, size_hint_y=None) layout_popup_list.bind(minimum_height=layout_popup_list.setter('height')) list_of_players = ["John D", "Ashley Holdstock", "Neil Seager", "Jordan Price", "Mark Randle", "Stuart Tomlinson", "Kieran Price", "Max Barnes", "Anthony Bromhead", "Matthew Wood", "Paul Jeynes", "Phillip Penny"] layout_popup_list.my_buttons = [] # if you want to keep an "easy" reference to your buttons to do something with them later # kivy doesnt crashes because it creates the property automatically for player in list_of_players: button = Button(text=player, size_hint_y=None, height=50) button.bind(on_press=capture_player) layout_popup_list.my_buttons.append(button) layout_popup_list.add_widget(button) root = ScrollView(size_hint=(1, None), size=(Window.width * 1, Window.height * .9)) root.add_widget(layout_popup_list) # Open player list modal popup_player_list = Popup(title='Select player:', content=root, size_hint=(1, 1)) popup_player_list.open()