本文整理汇总了Python中picard.ui.metadatabox.MetadataBox.update_selection方法的典型用法代码示例。如果您正苦于以下问题:Python MetadataBox.update_selection方法的具体用法?Python MetadataBox.update_selection怎么用?Python MetadataBox.update_selection使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类picard.ui.metadatabox.MetadataBox
的用法示例。
在下文中一共展示了MetadataBox.update_selection方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: MainWindow
# 需要导入模块: from picard.ui.metadatabox import MetadataBox [as 别名]
# 或者: from picard.ui.metadatabox.MetadataBox import update_selection [as 别名]
#.........这里部分代码省略.........
def update_actions(self):
can_remove = False
can_save = False
can_analyze = False
can_refresh = False
can_autotag = False
single = self.selected_objects[0] if len(self.selected_objects) == 1 else None
can_view_info = bool(single and single.can_view_info())
can_browser_lookup = bool(single and single.can_browser_lookup())
for obj in self.selected_objects:
if obj is None:
continue
if obj.can_analyze():
can_analyze = True
if obj.can_save():
can_save = True
if obj.can_remove():
can_remove = True
if obj.can_refresh():
can_refresh = True
if obj.can_autotag():
can_autotag = True
if can_save and can_remove and can_refresh and can_autotag:
break
self.remove_action.setEnabled(can_remove)
self.save_action.setEnabled(can_save)
self.view_info_action.setEnabled(can_view_info)
self.analyze_action.setEnabled(can_analyze)
self.refresh_action.setEnabled(can_refresh)
self.autotag_action.setEnabled(can_autotag)
self.browser_lookup_action.setEnabled(can_browser_lookup)
self.cut_action.setEnabled(bool(self.selected_objects))
def update_selection(self, objects=None):
if self.ignore_selection_changes:
return
if objects is not None:
self.selected_objects = objects
else:
objects = self.selected_objects
self.update_actions()
metadata = None
statusbar = u""
obj = None
if len(objects) == 1:
obj = list(objects)[0]
if isinstance(obj, File):
metadata = obj.metadata
statusbar = obj.filename
if obj.state == obj.ERROR:
statusbar += _(" (Error: %s)") % obj.error
elif isinstance(obj, Track):
metadata = obj.metadata
if obj.num_linked_files == 1:
file = obj.linked_files[0]
statusbar = "%s (%d%%)" % (file.filename, file.similarity * 100)
if file.state == File.ERROR:
statusbar += _(" (Error: %s)") % file.error
elif obj.can_edit_tags():
metadata = obj.metadata
self.metadata_box.update_selection()