From 743804678ffa0377cc096e535c6675ea65cf78f0 Mon Sep 17 00:00:00 2001 From: Sho Date: Sun, 30 Dec 2012 23:37:58 +0100 Subject: [PATCH] Remove: hook_attach_context_menu Each node is responsible for his own menu, base class can be called to attach default item --- .pydevproject | 4 ++-- resources/lib/qobuz/node/friend.py | 5 ++++- resources/lib/qobuz/node/friend_list.py | 5 ++++- resources/lib/qobuz/node/node.py | 16 ++++------------ resources/lib/qobuz/node/playlist.py | 6 ++++-- resources/lib/qobuz/node/track.py | 5 ++++- 6 files changed, 22 insertions(+), 19 deletions(-) diff --git a/.pydevproject b/.pydevproject index 5a986db6..d8c39d1d 100644 --- a/.pydevproject +++ b/.pydevproject @@ -3,8 +3,8 @@ -/plugin.audio.qobuzgithub -/plugin.audio.qobuzgithub/resources/lib/qobuz +/plugin.audio.qobuz +/plugin.audio.qobuz/resources/lib/qobuz python 2.7 Default diff --git a/resources/lib/qobuz/node/friend.py b/resources/lib/qobuz/node/friend.py index ae0c3a8d..18b10eb6 100644 --- a/resources/lib/qobuz/node/friend.py +++ b/resources/lib/qobuz/node/friend.py @@ -136,10 +136,13 @@ def _build_down(self, xbmc_directory, lvl, flag = None): self.add_child(node) return True - def hook_attach_context_menu(self, item, menuItems): + def attach_context_menu(self, item, menuItems = []): colorItem = qobuz.addon.getSetting('color_item') colorWarn = qobuz.addon.getSetting('color_item_caution') ''' Delete friend''' url = self.make_url(mode=Mode.FRIEND_REMOVE) menuItems.append((color(colorItem, 'Remove friend (i8n)' + ': ') + self.name, "XBMC.RunPlugin("+url+")")) + + ''' Calling base class ''' + super(Node_friend, self).attach_context_menu(item, menuItems) diff --git a/resources/lib/qobuz/node/friend_list.py b/resources/lib/qobuz/node/friend_list.py index 03a08403..ce9191c0 100644 --- a/resources/lib/qobuz/node/friend_list.py +++ b/resources/lib/qobuz/node/friend_list.py @@ -69,7 +69,7 @@ def _build_down(self, xbmc_directory, lvl, flag = None): node.set_name(str(name)) self.add_child(node) - def hook_attach_context_menu(self, item, menuItems): + def attach_context_menu(self, item, menuItems = []): colorItem = qobuz.addon.getSetting('color_item') color_warn = qobuz.addon.getSetting('color_item_caution') label = self.get_label() @@ -77,3 +77,6 @@ def hook_attach_context_menu(self, item, menuItems): ''' SET AS CURRENT ''' url = self.make_url(mode=Mode.FRIEND_ADD) menuItems.append((color(colorItem, 'Add friend (i8n)' + ': ') + label, "XBMC.RunPlugin("+url+")")) + + ''' Calling base class ''' + super(Node_friend_list, self).attach_context_menu(item, menuItems) \ No newline at end of file diff --git a/resources/lib/qobuz/node/node.py b/resources/lib/qobuz/node/node.py index 71b1231f..30b3520e 100644 --- a/resources/lib/qobuz/node/node.py +++ b/resources/lib/qobuz/node/node.py @@ -311,14 +311,13 @@ def build_down(self,xbmc_directory,lvl=1,whiteFlag=NodeFlag.TYPE_NODE): def _build_down(self,xbmc_directory,lvl,flag): pass - def attach_context_menu(self,item): + def attach_context_menu(self, item, menuItems = []): colorItem = qobuz.addon.getSetting('color_item') - menuItems = [] cmd = '' - ''' ADD AS NEW ''' - cmd = "XBMC.Container.Update(%s)" % (self.make_url(mode=Mode.TEST)) - menuItems.append((color(colorItem,"TEST WINDOW"),cmd)) + ''' TEST''' +# cmd = "XBMC.Container.Update(%s)" % (self.make_url(mode=Mode.TEST)) +# menuItems.append((color(colorItem,"TEST WINDOW"),cmd)) ''' VIEW BIG DIR ''' path = self.make_url(mode=Mode.VIEW_BIG_DIR) @@ -365,10 +364,6 @@ def attach_context_menu(self,item): ''' CREATE ''' cmd = xbmcRunPlugin(self.make_url(mode=Mode.PLAYLIST_CREATE)) menuItems.append((color(colorItem,lang(39008)), cmd)) - ''' - Give a chance to our siblings to attach their items - ''' - self.hook_attach_context_menu(item,menuItems) ''' SCAN ''' if qobuz.addon.getSetting('enable_scan_feature') == 'true': @@ -389,6 +384,3 @@ def attach_context_menu(self,item): if len(menuItems) > 0: item.addContextMenuItems(menuItems,replaceItems=False) - - def hook_attach_context_menu(self,item,menuItems): - pass diff --git a/resources/lib/qobuz/node/playlist.py b/resources/lib/qobuz/node/playlist.py index d9fdba52..20c5de7c 100644 --- a/resources/lib/qobuz/node/playlist.py +++ b/resources/lib/qobuz/node/playlist.py @@ -126,7 +126,7 @@ def make_XbmcListItem(self): self.attach_context_menu(item) return item - def hook_attach_context_menu(self, item, menuItems): + def attach_context_menu(self, item, menuItems = []): colorItem = qobuz.addon.getSetting('color_item') colorWarn = qobuz.addon.getSetting('color_item_caution') label = self.get_label() @@ -150,7 +150,9 @@ def hook_attach_context_menu(self, item, menuItems): ''' REMOVE ''' url = self.make_url(mode=Mode.PLAYLIST_REMOVE) menuItems.append((color(colorWarn, lang(39010) + ': ') + label, "XBMC.RunPlugin("+url+")")) - + + ''' Calling base class ''' + super(Node_playlist, self).attach_context_menu(item, menuItems) def remove_tracks(self, tracks_id): import qobuz, xbmc diff --git a/resources/lib/qobuz/node/track.py b/resources/lib/qobuz/node/track.py index 9c348853..90236d56 100644 --- a/resources/lib/qobuz/node/track.py +++ b/resources/lib/qobuz/node/track.py @@ -261,7 +261,7 @@ def make_XbmcListItem(self): self.attach_context_menu(item) return item - def hook_attach_context_menu(self, item, menuItems): + def attach_context_menu(self, item, menuItems = []): colorItem = qobuz.addon.getSetting('color_item') if self.parent and self.parent.type & NodeFlag.TYPE_PLAYLIST: url = self.parent.make_url(mode=Mode.PLAYLIST_REMOVE_TRACK) + '&track-id=' + str(self.get_property('playlist_track_id')) @@ -271,3 +271,6 @@ def hook_attach_context_menu(self, item, menuItems): ''' REMOVE ''' url = self.make_url(mode=Mode.FAVORITE_DELETE) menuItems.append((color(colorItem, 'Remove from favorite') + self.label, "XBMC.RunPlugin("+url+")")) + + ''' Calling base class ''' + super(Node_track, self).attach_context_menu(item, menuItems) \ No newline at end of file