~saviq/moovida-plugin-hunted/main

« back to all changes in this revision

Viewing changes to elisa/plugins/hunted/singles_menu.py

  • Committer: Michal Sawicz
  • Date: 2009-11-24 13:41:33 UTC
  • Revision ID: michal@sawicz.net-20091124134133-jmhm31ylvc3tkkmk
Create a HuntedArtistModel() for singles

Show diffs side-by-side

added added

removed removed

Lines of Context:
30
30
from elisa.plugins.poblesec.base.preview_list import DoubleLineMenuItemPreviewListController
31
31
 
32
32
# plugin imports
33
 
from elisa.plugins.hunted.charts_menu import HUNTED_HOST
 
33
from elisa.plugins.hunted.charts_menu import HUNTED_HOST, HuntedControllerMixin
34
34
from elisa.plugins.hunted.artists_menu import HuntedArtistOpenAction
35
35
 
36
36
 
42
42
    @type id:             C{int}
43
43
    @ivar title:          the title of the track
44
44
    @type title:          C{unicode}
45
 
    @ivar artist:         the name of the artist of the track
46
 
    @type artist:         C{unicode}
47
 
    @ivar artist_uri:     uri of the artist's site
48
 
    @type artist_uri:     L{elisa.core.media_uri.MediaUri}
 
45
    @ivar artist:         the artist model
 
46
    @type artist:         L{elisa.plugins.hunted.artists_menu.HuntedArtistModel}
49
47
    @ivar slug:           the slug of the item
50
48
    @type slug:           C{unicode}
51
49
    @ivar thumbnail:      thumbnail for the item
58
56
        super(HuntedSingleModel, self).__init__()
59
57
        self.title = None
60
58
        self.artist = None
61
 
        self.artist_uri = None
62
59
        self.slug = None
63
60
        self.thumbnail = None
64
61
        self.playable_model = None
66
63
    def fill(self, model):
67
64
        self.title = model.title
68
65
        self.artist = model.artist
69
 
        self.artist_uri = model.artist_uri
70
66
        self.slug = model.slug
71
67
        self.thumbnail = model.thumbnail
72
68
        self.playable_model = model.playable_model
138
134
    def fill(self, model):
139
135
        super(HuntedTrackModel, self).fill(model)
140
136
        self.album = AlbumModel()
141
 
        self.album.artist = model.artist
 
137
        self.album.artist = model.artist.name
142
138
        self.album.name = ""
143
139
        self.album.cover_uri = model.thumbnail.references[0]
144
140
    
176
172
        return defer.succeed(item.title)
177
173
        
178
174
    def get_sublabel(self, item):
179
 
        return defer.succeed(item.artist)
 
175
        return defer.succeed(item.artist.name)
180
176
    
181
177
    def get_default_image(self, item):
182
178
        return 'elisa.plugins.poblesec.glyphs.small.video'
185
181
        return get_and_cache_image(item.thumbnail.references[0])
186
182
    
187
183
 
188
 
class HuntedSinglesController(DoubleLineMenuItemPreviewListController):
 
184
class HuntedSinglesController(DoubleLineMenuItemPreviewListController, HuntedControllerMixin):
189
185
    view_mode = HuntedSingleViewMode
190
186
    item_widget_cls = HuntedSingleWidget
191
187
 
208
204
        return dfr
209
205
 
210
206
    def create_actions(self):
211
 
        artist = HuntedArtistOpenAction(self, '/hunted/artist')
212
 
        artist.name = 'list'
213
 
        return HuntedPlayAction(self), [artist]
 
 
b'\\ No newline at end of file'
 
207
        artist_link = HuntedArtistOpenAction(self, '/hunted/artist')
 
208
        artist_link.name = 'list'
 
209
        return HuntedPlayAction(self), [artist_link]
 
 
b'\\ No newline at end of file'