diff options
Diffstat (limited to 'plugins/AlbumCover.py')
-rw-r--r-- | plugins/AlbumCover.py | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/plugins/AlbumCover.py b/plugins/AlbumCover.py index 09c0baf..dfc24a8 100644 --- a/plugins/AlbumCover.py +++ b/plugins/AlbumCover.py @@ -6,13 +6,15 @@ import os import shutil # FETCH MODES -AC_NO_FETCH='0' -AC_FETCH_LOCAL_DIR='1' -AC_FETCH_INTERNET='2' +AC_NO_FETCH=0 +AC_FETCH_LOCAL_DIR=1 +AC_FETCH_INTERNET=2 -AC_DEFAULT_GFX_EXTS='jpg,jpeg,bmp,gif,png' -AC_DEFAULT_FILES='cover,album' -AC_DEFAULT_DOWNTO='$dirname($file)/$cover' +ALBUMCOVER_GFX_EXTS_DEFAULT='jpg,jpeg,bmp,gif,png' +ALBUMCOVER_FILES_DEFAULT='cover,album' +ALBUMCOVER_DOWNLOADTO_DEFAULT='$dirname($file)/$cover' +ALBUMCOVER_FETCH0_DEFAULT=1 +ALBUMCOVER_FETCH1_DEFAULT=1 class wgAlbumCover(QtGui.QWidget): " container for the image" @@ -20,8 +22,9 @@ class wgAlbumCover(QtGui.QWidget): imgLoaded=False p=None # plugin acFormat=None - def __init__(self,parent=None): + def __init__(self, p, parent=None): QtGui.QWidget.__init__(self,parent) + self.p=p self.img=QtGui.QImage() self.setMinimumSize(64,64) @@ -31,7 +34,7 @@ class wgAlbumCover(QtGui.QWidget): file=QtGui.QFileDialog.getOpenFileName(self , "Select album cover for %s - %s"%(song.getArtist(), song.getAlbum()) , "" - , "Images ("+" ".join(map(lambda ext: "*.%s"%(ext), AC_DEFAULT_GFX_EXTS.split(',')))+")" + , "Images ("+" ".join(map(lambda ext: "*.%s"%(ext), ALBUMCOVER_GFX_EXTS_DEFAULT.split(',')))+")" ) if file: cur=self.getLocalACPath(monty.getCurrentSong(), True) @@ -72,9 +75,9 @@ class wgAlbumCover(QtGui.QWidget): # set default cover self.imgLoaded=False self.img.load('gfx/no-cd-cover.png') - self.acFormat=format.compile(settings.get('albumcover.downloadto', AC_DEFAULT_DOWNTO)) + self.acFormat=format.compile(self.p.getSetting('downloadto')) for i in xrange(2): - src=settings.get('albumcover.fetch%i'%(i), str(i)) + src=self.p.getSetting('fetch%i'%(i)) if src!=AC_NO_FETCH and self.fetchCoverSrc(song, src): # ACK! self.imgLoaded=True @@ -84,11 +87,11 @@ class wgAlbumCover(QtGui.QWidget): def getLocalACPath(self, song, probe): """Get the local path of an albumcover. If $probe, then try covers*exts for existing file.""" # fetch gfx extensions - exts=settings.get('albumcover.gfx.ext', AC_DEFAULT_GFX_EXTS).split(',') + exts=self.p.getSetting('gfx_exts').split(',') exts=map(lambda ext: ext.strip(), exts) # fetch cover album titles - covers=settings.get('albumcover.files', AC_DEFAULT_FILES).split(',') + covers=self.p.getSetting('files').split(',') covers=map(lambda title: title.strip(), covers) params={'music_dir': mpdSettings.get('music_directory'), 'cover':'%s.%s'%(covers[0], exts[0])} @@ -166,8 +169,7 @@ class pluginAlbumCover(Plugin): self.addMontyListener('onStateChange', self.onEvent) def _load(self): - self.o=wgAlbumCover(None) - self.o.p=self + self.o=wgAlbumCover(self, None) self.o.refresh() def _unload(self): self.o=None @@ -197,15 +199,15 @@ class pluginAlbumCover(Plugin): nums=['first', 'second'] actions=[QtGui.QComboBox(), QtGui.QComboBox()] for i,action in enumerate(actions): - setting='albumcover.fetch%i'%(i) + setting='fetch%i'%(i) action.addItem("On the %s action, Monty rested."%(nums[i])) action.addItem("Local dir") action.addItem("Internet") - action.setCurrentIndex(int(settings.get(setting, str(i+1)))) + action.setCurrentIndex(int(self.getSetting(setting, str(i+1)))) ret.append([setting, 'Action %i'%(i+1), 'What to do on the %s step.'%(nums[i]), action]) - ret.append(['albumcover.downloadto', 'Local dir', 'Specifies where to save album covers fetched from internet to.\nPossible tags: music_dir, cover, file, artist, title, album', QtGui.QLineEdit(settings.get('albumcover.downloadto', AC_DEFAULT_DOWNTO))]) - ret.append(['albumcover.files', 'Album cover files', 'Comma separated list of titles that are to be considered album covers. E.g. cover,album.', QtGui.QLineEdit(settings.get('albumcover.files', AC_DEFAULT_FILES))]) + ret.append(['albumcover.downloadto', 'Local dir', 'Specifies where to save album covers fetched from internet to.\nPossible tags: music_dir, cover, file, artist, title, album', QtGui.QLineEdit(self.getSetting('downloadto'))]) + ret.append(['albumcover.files', 'Album cover files', 'Comma separated list of titles that are to be considered album covers. E.g. cover,album.', QtGui.QLineEdit(self.getSetting('files'))]) return ret |