click-textual
Javanaut 12 months ago
parent 42f9486c64
commit 45a1c5aa4e

@ -159,7 +159,10 @@ class MediaDetailsScreen(Screen):
# Enumerating differences between media descriptors # Enumerating differences between media descriptors
# from file (=current) vs from stored in database (=target) # from file (=current) vs from stored in database (=target)
self.__mediaDifferences = self.__targetMediaDescriptor.compare(self.__currentMediaDescriptor) if self.__currentPattern is not None else {} try:
self.__mediaDifferences = self.__targetMediaDescriptor.compare(self.__currentMediaDescriptor) if self.__currentPattern is not None else {}
except ValueError:
self.__mediaDifferences = {}
def updateDifferences(self): def updateDifferences(self):
@ -417,6 +420,43 @@ class MediaDetailsScreen(Screen):
self.query_one("#pattern_input", Input).value = pattern.replace(patternMatch.group(1), INDICATOR_PATTERN) self.query_one("#pattern_input", Input).value = pattern.replace(patternMatch.group(1), INDICATOR_PATTERN)
if event.button.id == "select_default_button":
selectedTrack = self.getSelectedTrackDescriptor()
self.__currentMediaDescriptor.setDefaultSubTrack(selectedTrack.getType(), selectedTrack.getSubIndex())
self.updateTracks()
if event.button.id == "select_forced_button":
selectedTrack = self.getSelectedTrackDescriptor(selectedTrack.getType(), selectedTrack.getSubIndex())
self.__currentMediaDescriptor.setForcedSubTrack(selectedTrack.getType(), selectedTrack.getSubIndex())
self.updateTracks()
def getSelectedTrackDescriptor(self):
if not self.__pattern:
return None
try:
# Fetch the currently selected row when 'Enter' is pressed
#selected_row_index = self.table.cursor_row
row_key, col_key = self.tracksTable.coordinate_to_cell_key(self.tracksTable.cursor_coordinate)
if row_key is not None:
selected_track_data = self.tracksTable.get_row(row_key)
trackIndex = int(selected_track_data[0])
trackSubIndex = int(selected_track_data[2])
return self.__tc.getTrack(self.__pattern.getId(), trackIndex).getDescriptor(subIndex=trackSubIndex)
else:
return None
except CellDoesNotExist:
return None
def getSelectedShow(self): def getSelectedShow(self):
try: try:

Loading…
Cancel
Save