|
|
|
@ -392,8 +392,8 @@ class MediaDetailsScreen(Screen):
|
|
|
|
|
|
|
|
|
|
# 7
|
|
|
|
|
yield Static(" ")
|
|
|
|
|
yield Button("Select Default", id="select_default_button")
|
|
|
|
|
yield Button("Select Forced", id="select_forced_button")
|
|
|
|
|
yield Button("Set Default", id="select_default_button")
|
|
|
|
|
yield Button("Set Forced", id="select_forced_button")
|
|
|
|
|
yield Static(" ")
|
|
|
|
|
# 8
|
|
|
|
|
yield Static("Streams")
|
|
|
|
@ -403,8 +403,15 @@ class MediaDetailsScreen(Screen):
|
|
|
|
|
yield Footer()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def getPatternFromInput(self):
|
|
|
|
|
return str(self.query_one("#pattern_input", Input).value)
|
|
|
|
|
def getPatternDescriptorFromInput(self):
|
|
|
|
|
"""Returns show id and pattern from corresponding inputs"""
|
|
|
|
|
patternDescriptor = {}
|
|
|
|
|
try:
|
|
|
|
|
patternDescriptor['show_id'] = self.getSelectedShowDescriptor().getId()
|
|
|
|
|
patternDescriptor['pattern'] = str(self.query_one("#pattern_input", Input).value)
|
|
|
|
|
except:
|
|
|
|
|
pass
|
|
|
|
|
return patternDescriptor
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def on_button_pressed(self, event: Button.Pressed) -> None:
|
|
|
|
@ -492,14 +499,15 @@ class MediaDetailsScreen(Screen):
|
|
|
|
|
if showRowIndex is not None:
|
|
|
|
|
self.showsTable.move_cursor(row=showRowIndex)
|
|
|
|
|
|
|
|
|
|
patternDescriptor = {}
|
|
|
|
|
patternDescriptor['show_id'] = showDescriptor.getId()
|
|
|
|
|
patternDescriptor['pattern'] = self.getPatternFromInput()
|
|
|
|
|
self.__pc.addPattern(patternDescriptor)
|
|
|
|
|
patternDescriptor = self.getPatternDescriptorFromInput()
|
|
|
|
|
|
|
|
|
|
if patternDescriptor:
|
|
|
|
|
patternId = self.__pc.addPattern(patternDescriptor)
|
|
|
|
|
|
|
|
|
|
self.highlightPattern(False)
|
|
|
|
|
|
|
|
|
|
self.action_update_pattern()
|
|
|
|
|
for trackDescriptor in self.__currentMediaDescriptor.getAllTrackDescriptors():
|
|
|
|
|
self.__tc.addTrack(trackDescriptor, patternId = patternId)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def action_new_pattern(self):
|
|
|
|
@ -521,13 +529,10 @@ class MediaDetailsScreen(Screen):
|
|
|
|
|
"""When updating the database the actions must reverse the difference (eq to diff db->file)"""
|
|
|
|
|
|
|
|
|
|
if self.__currentPattern is not None:
|
|
|
|
|
inputPattern = self.getPatternFromInput()
|
|
|
|
|
if self.__currentPattern.getPattern() != inputPattern:
|
|
|
|
|
patternDescriptor = {}
|
|
|
|
|
patternDescriptor['show_id'] = self.getSelectedShowDescriptor().getId()
|
|
|
|
|
patternDescriptor['pattern'] = inputPattern
|
|
|
|
|
self.__pc.updatePattern(self.__currentPattern.getId(), patternDescriptor)
|
|
|
|
|
|
|
|
|
|
patternDescriptor = self.getPatternDescriptorFromInput()
|
|
|
|
|
if (patternDescriptor
|
|
|
|
|
and self.__currentPattern.getPattern() != patternDescriptor['pattern']):
|
|
|
|
|
return self.__pc.updatePattern(self.__currentPattern.getId(), patternDescriptor)
|
|
|
|
|
|
|
|
|
|
self.loadProperties()
|
|
|
|
|
|
|
|
|
@ -614,7 +619,7 @@ class MediaDetailsScreen(Screen):
|
|
|
|
|
def action_edit_pattern(self):
|
|
|
|
|
|
|
|
|
|
patternDescriptor = {}
|
|
|
|
|
patternDescriptor['show_id'] = self.getSelectedShow()['id']
|
|
|
|
|
patternDescriptor['show_id'] = self.getSelectedShowDescriptor().getId()
|
|
|
|
|
patternDescriptor['pattern'] = self.getPatternFromInput()
|
|
|
|
|
|
|
|
|
|
if patternDescriptor['pattern']:
|
|
|
|
@ -624,7 +629,7 @@ class MediaDetailsScreen(Screen):
|
|
|
|
|
if selectedPatternId is None:
|
|
|
|
|
raise click.ClickException(f"MediaDetailsScreen.action_edit_pattern(): Pattern to edit has no id")
|
|
|
|
|
|
|
|
|
|
self.app.push_screen(PatternDetailsScreen(patternId = selectedPatternId, showId = self.getSelectedShow()['id']), self.handle_edit_pattern) # <-
|
|
|
|
|
self.app.push_screen(PatternDetailsScreen(patternId = selectedPatternId, showId = self.getSelectedShowDescriptor().getId()), self.handle_edit_pattern) # <-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def handle_edit_pattern(self, screenResult):
|
|
|
|
|