ff
This commit is contained in:
@@ -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)
|
||||||
|
try:
|
||||||
self.__mediaDifferences = self.__targetMediaDescriptor.compare(self.__currentMediaDescriptor) if self.__currentPattern is not None else {}
|
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:
|
||||||
|
|||||||
Reference in New Issue
Block a user