mirror of
https://github.com/fergalmoran/picard.git
synced 2026-02-20 22:54:10 +00:00
Added release format type to release selection. Fixes ticket #3074
This commit is contained in:
@@ -42,7 +42,7 @@ _TRANSLATE_TAGS = {
|
||||
|
||||
class ReleaseEvent(object):
|
||||
|
||||
ATTRS = ['date', 'releasecountry', 'label', 'barcode', 'catalognumber']
|
||||
ATTRS = ['date', 'releasecountry', 'label', 'barcode', 'catalognumber', 'format']
|
||||
|
||||
def __init__(self):
|
||||
for attr in self.ATTRS:
|
||||
@@ -379,12 +379,13 @@ class Album(DataObject, Item):
|
||||
else:
|
||||
track.update()
|
||||
|
||||
def add_release_event(self, date=None, releasecountry=None, label=None, barcode=None, catalognumber=None):
|
||||
def add_release_event(self, date=None, releasecountry=None, label=None, barcode=None, catalognumber=None, format=None):
|
||||
rel = ReleaseEvent()
|
||||
rel.date = date
|
||||
rel.releasecountry = releasecountry
|
||||
rel.label = label
|
||||
rel.barcode = barcode
|
||||
rel.catalognumber = catalognumber
|
||||
rel.format = format
|
||||
self.release_events.append(rel)
|
||||
return rel
|
||||
|
||||
@@ -35,6 +35,24 @@ AMAZON_STORE_ASSOCIATE_IDS = {
|
||||
# MusicDNS client ID
|
||||
MUSICDNS_KEY = "0736ac2cd889ef77f26f6b5e3fb8a09c"
|
||||
|
||||
# Release formats
|
||||
RELEASE_FORMATS = {
|
||||
u'CD': N_('CD'),
|
||||
u'DVD': N_('DVD'),
|
||||
u'SACD': N_('SACD'),
|
||||
u'LaserDisc': N_('LaserDisc'),
|
||||
u'MiniDisc': N_('MiniDisc'),
|
||||
u'Vinyl': N_('Vinyl'),
|
||||
u'Cassette': N_('Cassette'),
|
||||
u'Cartridge': N_('Cartridge (4/8-tracks)'),
|
||||
u'ReelToReel': N_('Reel-to-Reel'),
|
||||
u'DAT': N_('DAT'),
|
||||
u'Digital': N_('Digital Media'),
|
||||
u'WaxCylinder': N_('Wax Cylinder'),
|
||||
u'PianoRoll': N_('Piano Roll'),
|
||||
u'Other': N_('Other'),
|
||||
}
|
||||
|
||||
# Release countries
|
||||
RELEASE_COUNTRIES = {
|
||||
u'BD': N_('Bangladesh'),
|
||||
|
||||
@@ -167,6 +167,8 @@ def release_to_metadata(node, m, config=None, album=None):
|
||||
except (AttributeError, IndexError): pass
|
||||
try: args['label'] = relevent.label[0].name[0].text
|
||||
except (AttributeError, IndexError): pass
|
||||
try: args['format'] = relevent.format
|
||||
except (AttributeError, IndexError): pass
|
||||
if album:
|
||||
rel = album.add_release_event(**args)
|
||||
elif name == 'track_list':
|
||||
|
||||
@@ -27,6 +27,7 @@ from picard.track import Track
|
||||
from picard.util import encode_filename, icontheme, partial
|
||||
from picard.config import Option, TextOption
|
||||
from picard.plugin import ExtensionPoint
|
||||
from picard.const import RELEASE_FORMATS
|
||||
|
||||
|
||||
class BaseAction(QtGui.QAction):
|
||||
@@ -309,6 +310,9 @@ class BaseTreeView(QtGui.QTreeWidget):
|
||||
name.append(rel.label)
|
||||
if rel.catalognumber:
|
||||
name.append(rel.catalognumber)
|
||||
if rel.format:
|
||||
try: name.append(RELEASE_FORMATS[rel.format])
|
||||
except (KeyError): name.append(rel.format)
|
||||
action = releases_menu.addAction(" / ".join(name))
|
||||
action.setData(QtCore.QVariant(i))
|
||||
action.setCheckable(True)
|
||||
|
||||
@@ -66,6 +66,7 @@ tag_names = {
|
||||
'label': N_('Record Label'),
|
||||
'barcode': N_('Barcode'),
|
||||
'catalognumber': N_('Catalog Number'),
|
||||
'format': N_('Format'),
|
||||
'djmixer': N_('DJ-Mixer'),
|
||||
'media': N_('Media'),
|
||||
'lyrics:': N_('Lyrics'),
|
||||
|
||||
Reference in New Issue
Block a user