Python xbmcplugin.setPluginCategory() Examples
The following are 20
code examples of xbmcplugin.setPluginCategory().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
xbmcplugin
, or try the search function
.
Example #1
Source File: channelselector.py From tvalacarta with GNU General Public License v3.0 | 6 votes |
def channeltypes(params,url,category): logger.info("channelselector.channeltypes") lista = getchanneltypes() for item in lista: addfolder(item.title,item.channel,item.action,category=item.category,thumbnailname=item.thumbnail) if config.get_platform()=="kodi-krypton" or config.get_platform()=="kodi-leia": import plugintools plugintools.set_view( plugintools.TV_SHOWS ) # Label (top-right)... import xbmcplugin xbmcplugin.setPluginCategory( handle=int( sys.argv[ 1 ] ), category="" ) xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ), succeeded=True ) if config.get_setting("forceview")=="true": # Confluence - Thumbnail import xbmc xbmc.executebuiltin("Container.SetViewMode(500)")
Example #2
Source File: channelselector.py From tvalacarta with GNU General Public License v3.0 | 6 votes |
def listchannels(params,url,category): logger.info("channelselector.listchannels") lista = filterchannels(category) for channel in lista: if config.is_xbmc() and (channel.type=="xbmc" or channel.type=="generic"): addfolder(channel.title , channel.channel , "mainlist" , channel.channel) elif config.get_platform()=="boxee" and channel.extra!="rtmp": addfolder(channel.title , channel.channel , "mainlist" , channel.channel) if config.get_platform()=="kodi-krypton" or config.get_platform()=="kodi-leia": import plugintools plugintools.set_view( plugintools.TV_SHOWS ) # Label (top-right)... import xbmcplugin xbmcplugin.setPluginCategory( handle=int( sys.argv[ 1 ] ), category=category ) xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ), succeeded=True ) if config.get_setting("forceview")=="true": # Confluence - Thumbnail import xbmc xbmc.executebuiltin("Container.SetViewMode(500)")
Example #3
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 6 votes |
def onInit(): xbmcplugin.setPluginCategory(HANDLE, 'Websites') xbmcplugin.setContent(HANDLE, 'movies') # show global search link url = build_url({'mode': 'globalsearch'}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR yellow][B] %s [/B][/COLOR]" % "Search All..."), True) for site in SITES: if site['version'] > KODI_VERSION: print("***********************Skip version %d" % site['version']) continue list_item = xbmcgui.ListItem(label=site['name']) list_item.addContextMenuItems(globalContextMenu()) list_item.setArt({'thumb': site['logo'], 'icon': site['logo']}) url = build_url({'mode': 'category', 'module': site['plugin'], 'className': site['className']}) is_folder = True xbmcplugin.addDirectoryItem(HANDLE, url, list_item, is_folder) xbmcplugin.endOfDirectory(HANDLE, cacheToDisc=True)
Example #4
Source File: default.py From plugin.video.emby with GNU General Public License v3.0 | 6 votes |
def browse_subfolders(media, view_id, server_id=None): ''' Display submenus for emby views. ''' from views import DYNNODES get_server(server_id) view = EMBY['api'].get_item(view_id) xbmcplugin.setPluginCategory(int(sys.argv[1]), view['Name']) nodes = DYNNODES[media] for node in nodes: params = { 'id': view_id, 'mode': "browse", 'type': media, 'folder': view_id if node[0] == 'all' else node[0], 'server': server_id } path = "%s?%s" % ("plugin://plugin.video.emby/", urllib.urlencode(params)) directory(node[1] or view['Name'], path) xbmcplugin.setContent(int(sys.argv[1]), 'files') xbmcplugin.endOfDirectory(int(sys.argv[1]))
Example #5
Source File: container.py From plugin.video.themoviedb.helper with GNU General Public License v3.0 | 5 votes |
def start_container(self): xbmcplugin.setPluginCategory(self.handle, self.plugincategory) # Container.PluginCategory xbmcplugin.setContent(self.handle, self.containercontent) # Container.Content
Example #6
Source File: default.py From plugin.video.freplay with GNU General Public License v2.0 | 5 votes |
def buildShowsList(videos): for chan, video_url, video_title, video_icon, infoLabels, video_mode in videos: li = xbmcgui.ListItem( video_title, iconImage=video_icon, thumbnailImage=video_icon, path=video_url) url = build_url({ 'mode': video_mode, 'channel': chan, 'param': video_url, 'name': video_title}) if video_mode == 'play': li.setInfo( type='Video', infoLabels=infoLabels) li.setProperty('IsPlayable', 'true') li.addContextMenuItems([(globalvar.LANGUAGE(33020).encode('utf-8'), 'XBMC.RunPlugin(%s?mode=dl&channel=%s¶m=%s&name=%s)' % (sys.argv[0],chan,urllib.quote_plus(video_url),urllib.quote_plus(video_title)))]) xbmcplugin.addSortMethod(addon_handle, xbmcplugin.SORT_METHOD_NONE) xbmcplugin.setPluginCategory(addon_handle, 'episodes') xbmcplugin.setContent(addon_handle, 'episodes') xbmcplugin.addDirectoryItem( handle=addon_handle, url=url, listitem=li, isFolder=video_mode != 'play') if channel == 'favourites' and param == 'unseen': notify(globalvar.LANGUAGE(33026).encode('utf-8'), 0)
Example #7
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 5 votes |
def global_search(): xbmcplugin.setPluginCategory(HANDLE, 'Search') xbmcplugin.setContent(HANDLE, 'movies') url = build_url({'mode': 'doglobalsearch'}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR orange][B]%s[/B][/COLOR]" % "Enter search text ..."), True) # Support to save search history contents = XbmcHelper.search_history_get() if contents: url = build_url({'mode': 'clearsearch'}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR red][B]%s[/B][/COLOR]" % "Clear search text ..."), False) for txt in contents: try: url = build_url({'mode': 'doglobalsearch', 'url': txt}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR blue][B]%s[/B][/COLOR]" % txt), True) except: pass xbmcplugin.endOfDirectory(HANDLE)
Example #8
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 5 votes |
def search(module, classname=None): xbmcplugin.setPluginCategory(HANDLE, 'Search') xbmcplugin.setContent(HANDLE, 'movies') url = build_url({'mode': 'dosearch', 'module': module, 'className': classname}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR orange][B]%s[/B][/COLOR]" % "Enter search text ..."), True) # Support to save search history contents = XbmcHelper.search_history_get() if contents: url = build_url({'mode': 'clearsearch', 'module': module, 'className': classname}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR red][B]%s[/B][/COLOR]" % "Clear search text ..."), True) for txt in contents: try: url = build_url({'mode': 'dosearch', 'module': module, 'className': classname, 'url': txt}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR blue][B]%s[/B][/COLOR]" % txt), True) except: pass xbmcplugin.endOfDirectory(HANDLE)
Example #9
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 5 votes |
def show_server_links(items, movie_item, server, module, class_name): title = movie_item.get('title').encode('utf8') xbmcplugin.setPluginCategory(HANDLE, "%s - %s " % (title, server)) xbmcplugin.setContent(HANDLE, 'videos') label = "[COLOR red][B][---- %s : [COLOR yellow]%d eps[/COLOR] ----][/B][/COLOR]" % (server, len(items)) sli = xbmcgui.ListItem(label=label) xbmcplugin.addDirectoryItem(HANDLE, None, sli, isFolder=False) _build_ep_list(items, movie_item, module, class_name) xbmcplugin.endOfDirectory(HANDLE)
Example #10
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 5 votes |
def list_movie(movies, link, page, module, classname): xbmcplugin.setPluginCategory(HANDLE, classname) # xbmcplugin.setContent(HANDLE, 'tvshows') xbmcplugin.setContent(HANDLE, 'movies') # view_mode_id = 55 # xbmc.executebuiltin('Container.SetViewMode(%s)' % view_mode_id) if movies is not None: for item in movies['movies']: try: list_item = xbmcgui.ListItem(label=item['label']) list_item.addContextMenuItems(globalContextMenu()) list_item.setLabel2(item['realtitle']) list_item.setIconImage('DefaultVideo.png') list_item.setArt({'thumb': item['thumb']}) if 'poster' in item: list_item.setArt({'poster': item['poster']}) if 'intro' in item: list_item.setInfo(type='video', infoLabels={'plot': item['intro']}) url = build_url({ 'mode': 'movie', 'module': module, 'className': classname, 'movie_item': json.dumps(item) }) xbmcplugin.addDirectoryItem(HANDLE, url, list_item, isFolder=True) except Exception as inst: print("*********************** List Movie Exception: {}".format(inst)) print(item) print("***********************Current page %d" % page) # show next page if movies['page'] > 1 and page < movies['page']: label = "Next page %d / %d >>" % (page, movies['page']) next_item = xbmcgui.ListItem(label=label) if 'page_patten' in movies and movies['page_patten'] is not None: link = movies['page_patten'] url = build_url({'mode': 'movies', 'url': link, 'page': page + 1, 'module': module, 'className': classname}) xbmcplugin.addDirectoryItem(HANDLE, url, next_item, True) else: return xbmcplugin.endOfDirectory(HANDLE)
Example #11
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 5 votes |
def list_category(cats, module, classname, movies=None): xbmcplugin.setPluginCategory(HANDLE, classname) xbmcplugin.setContent(HANDLE, 'files') # show search link url = build_url({'mode': 'search', 'module': module, 'className': classname}) xbmcplugin.addDirectoryItem(HANDLE, url, xbmcgui.ListItem(label="[COLOR green][B] %s [/B][/COLOR]" % "Search ..."), True) for cat in cats: list_item = xbmcgui.ListItem(label=cat['title']) list_item.addContextMenuItems(globalContextMenu()) if 'subcategory' in cat and cat['subcategory'] and len(cat['subcategory']) > 0: url = build_url({'mode': 'category', 'url': cat['link'], 'name': cat['title'], 'subcategory': json.dumps(cat['subcategory']), 'module': module, 'className': classname}) else: url = build_url({'mode': 'movies', 'url': cat['link'], 'page': 1, 'module': module, 'className': classname}) xbmcplugin.addDirectoryItem(HANDLE, url, list_item, isFolder=True) if movies and len(movies) > 0: label = "[COLOR yellow][B][---- New Movies ----][/B][/COLOR]" sli = xbmcgui.ListItem(label=label) xbmcplugin.addDirectoryItem(HANDLE, None, sli, isFolder=False) list_movie(movies, '/', 1, module, classname) else: xbmcplugin.endOfDirectory(HANDLE)
Example #12
Source File: channelselector.py From tvalacarta with GNU General Public License v3.0 | 5 votes |
def mainlist(params,url,category): logger.info("channelselector.mainlist") # Verifica actualizaciones solo en el primer nivel if config.get_platform()!="boxee": try: from core import updater except ImportError: logger.info("channelselector.mainlist No disponible modulo actualizaciones") else: if config.get_setting("check_for_plugin_updates") == "true": logger.info("channelselector.mainlist Verificar actualizaciones activado") updater.checkforupdates() else: logger.info("channelselector.mainlist Verificar actualizaciones desactivado") itemlist = getmainlist("squares") for elemento in itemlist: logger.info("channelselector item="+elemento.tostring()) addfolder(elemento.title , elemento.channel , elemento.action , thumbnailname=elemento.thumbnail, folder=elemento.folder) if config.get_platform()=="kodi-krypton" or config.get_platform()=="kodi-leia": import plugintools plugintools.set_view( plugintools.TV_SHOWS ) # Label (top-right)... import xbmcplugin #xbmcplugin.setPluginCategory( handle=int( sys.argv[ 1 ] ), category="" ) #xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), sortMethod=xbmcplugin.SORT_METHOD_NONE ) xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ), succeeded=True ) if config.get_setting("forceview")=="true": # Confluence - Thumbnail import xbmc xbmc.executebuiltin("Container.SetViewMode(500)")
Example #13
Source File: simpleplugin.py From plugin.video.auvio with GNU General Public License v3.0 | 5 votes |
def _add_directory_items(self, context): """ Create a virtual folder listing :param context: context object :type context: ListContext :raises SimplePluginError: if sort_methods parameter is not int, tuple or list """ self.log_debug('Creating listing from {0}'.format(str(context))) if context.category is not None: xbmcplugin.setPluginCategory(self._handle, context.category) if context.content is not None: xbmcplugin.setContent(self._handle, context.content) # This must be at the beginning for item in context.listing: is_folder = item.get('is_folder', True) if item.get('list_item') is not None: list_item = item['list_item'] else: list_item = self.create_list_item(item) if item.get('is_playable'): list_item.setProperty('IsPlayable', 'true') is_folder = False xbmcplugin.addDirectoryItem(self._handle, item['url'], list_item, is_folder) if context.sort_methods is not None: if isinstance(context.sort_methods, int): xbmcplugin.addSortMethod(self._handle, context.sort_methods) elif isinstance(context.sort_methods, (tuple, list)): for method in context.sort_methods: xbmcplugin.addSortMethod(self._handle, method) else: raise TypeError( 'sort_methods parameter must be of int, tuple or list type!') xbmcplugin.endOfDirectory(self._handle, context.succeeded, context.update_listing, context.cache_to_disk) if context.view_mode is not None: xbmc.executebuiltin('Container.SetViewMode({0})'.format(context.view_mode))
Example #14
Source File: simpleplugin.py From plugin.video.auvio with GNU General Public License v3.0 | 5 votes |
def create_listing(listing, succeeded=True, update_listing=False, cache_to_disk=False, sort_methods=None, view_mode=None, content=None, category=None): """ Create and return a context dict for a virtual folder listing :param listing: the list of the plugin virtual folder items :type listing: list or types.GeneratorType :param succeeded: if ``False`` Kodi won't open a new listing and stays on the current level. :type succeeded: bool :param update_listing: if ``True``, Kodi won't open a sub-listing but refresh the current one. :type update_listing: bool :param cache_to_disk: cache this view to disk. :type cache_to_disk: bool :param sort_methods: the list of integer constants representing virtual folder sort methods. :type sort_methods: tuple :param view_mode: a numeric code for a skin view mode. View mode codes are different in different skins except for ``50`` (basic listing). :type view_mode: int :param content: string - current plugin content, e.g. 'movies' or 'episodes'. See :func:`xbmcplugin.setContent` for more info. :type content: str :param category: str - plugin sub-category, e.g. 'Comedy'. See :func:`xbmcplugin.setPluginCategory` for more info. :type category: str :return: context object containing necessary parameters to create virtual folder listing in Kodi UI. :rtype: ListContext """ return ListContext(listing, succeeded, update_listing, cache_to_disk, sort_methods, view_mode, content, category)
Example #15
Source File: directory_utils.py From plugin.video.netflix with MIT License | 5 votes |
def finalize_directory(items, content_type=g.CONTENT_FOLDER, sort_type='sort_nothing', title=None): """Finalize a directory listing. Add items, set available sort methods and content type""" if title: xbmcplugin.setPluginCategory(g.PLUGIN_HANDLE, title) xbmcplugin.setContent(g.PLUGIN_HANDLE, content_type) add_sort_methods(sort_type) xbmcplugin.addDirectoryItems(g.PLUGIN_HANDLE, items)
Example #16
Source File: default.py From plugin.video.emby with GNU General Public License v3.0 | 5 votes |
def browse_letters(media, view_id, server_id=None): ''' Display letters as options. ''' letters = "#ABCDEFGHIJKLMNOPQRSTUVWXYZ" get_server(server_id) view = EMBY['api'].get_item(view_id) xbmcplugin.setPluginCategory(int(sys.argv[1]), view['Name']) for node in letters: params = { 'id': view_id, 'mode': "browse", 'type': media, 'folder': 'firstletter-%s' % node, 'server': server_id } path = "%s?%s" % ("plugin://plugin.video.emby/", urllib.urlencode(params)) directory(node, path) xbmcplugin.setContent(int(sys.argv[1]), 'files') xbmcplugin.endOfDirectory(int(sys.argv[1]))
Example #17
Source File: xbmctools.py From tvalacarta with GNU General Public License v3.0 | 4 votes |
def add_items_to_kodi_directory(itemlist,parent_item): logger.info("tvalacarta.platformcode.xbmctools add_items_to_kodi_directory") pluginhandle = int( sys.argv[ 1 ] ) # Checks if channel provides context menu for items exec "import channels."+parent_item.channel+" as channelmodule" channel_provides_context_menu = hasattr(channelmodule, 'get_context_menu_for_item') for item in itemlist: # If video has no fanart, here is assigned a new one if item.fanart=="": channel_fanart = os.path.join( config.get_runtime_path(), 'resources', 'images', 'fanart', item.channel+'.jpg') if os.path.exists(channel_fanart): item.fanart = channel_fanart else: item.fanart = os.path.join(config.get_runtime_path(),"fanart.jpg") # Add item to kodi directory add_item_to_kodi_directory(item,itemlist,channel_provides_context_menu) # Closes the XBMC directory xbmcplugin.setPluginCategory( handle=pluginhandle, category=parent_item.category ) xbmcplugin.addSortMethod( handle=pluginhandle, sortMethod=xbmcplugin.SORT_METHOD_NONE ) # Forces the view mode if config.get_setting("forceview")=="true": import plugintools if parent_item.view=="list": plugintools.set_view( plugintools.LIST ) elif parent_item.view=="programs": plugintools.set_view( plugintools.TV_SHOWS ) elif parent_item.view=="channels" or parent_item.view=="thumbnails": if config.get_platform()=="kodi-krypton": plugintools.set_view( plugintools.TV_SHOWS ) else: plugintools.set_view( plugintools.THUMBNAIL ) elif parent_item.view=="videos": plugintools.set_view( plugintools.EPISODES ) xbmcplugin.endOfDirectory( handle=pluginhandle, succeeded=True )
Example #18
Source File: plugin_content.py From plugin.audio.spotify with GNU General Public License v3.0 | 4 votes |
def search(self): xbmcplugin.setContent(self.addon_handle, "files") xbmcplugin.setPluginCategory(self.addon_handle, xbmc.getLocalizedString(283)) kb = xbmc.Keyboard('', xbmc.getLocalizedString(16017)) kb.doModal() if kb.isConfirmed(): value = kb.getText() items = [] result = self.sp.search( q="%s" % value, type='artist,album,track,playlist', limit=1, market=self.usercountry) items.append( ("%s (%s)" % (xbmc.getLocalizedString(133), result["artists"]["total"]), "plugin://plugin.audio.spotify/?action=search_artists&artistid=%s" % (value))) items.append( ("%s (%s)" % (xbmc.getLocalizedString(136), result["playlists"]["total"]), "plugin://plugin.audio.spotify/?action=search_playlists&playlistid=%s" % (value))) items.append( ("%s (%s)" % (xbmc.getLocalizedString(132), result["albums"]["total"]), "plugin://plugin.audio.spotify/?action=search_albums&albumid=%s" % (value))) items.append( ("%s (%s)" % (xbmc.getLocalizedString(134), result["tracks"]["total"]), "plugin://plugin.audio.spotify/?action=search_tracks&trackid=%s" % (value))) for item in items: li = xbmcgui.ListItem( item[0], path=item[1], iconImage="DefaultMusicAlbums.png" ) li.setProperty('do_not_analyze', 'true') li.setProperty('IsPlayable', 'false') li.addContextMenuItems([], True) xbmcplugin.addDirectoryItem(handle=self.addon_handle, url=item[1], listitem=li, isFolder=True) xbmcplugin.endOfDirectory(handle=self.addon_handle)
Example #19
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 4 votes |
def show_episode(movie, movie_item, module, class_name): thumb = movie_item.get('thumb').encode('utf8') title = movie_item.get('realtitle').encode('utf8') or movie_item.get('title').encode('utf8') if len(movie['episode']) > 0: # should not in use anymore for item in movie['episode']: li = xbmcgui.ListItem(label=item['title']) li.setInfo('video', {'title': item['title']}) li.setProperty('fanart_image', thumb) li.setArt({'thumb': thumb}) if 'intro' in movie: li.setInfo(type='video', infoLabels={'plot': movie['intro']}) url = build_url({'mode': 'play', 'url': json.dumps(item), 'movie_item': json.dumps(movie_item), 'direct': 0, 'module': module, 'className': class_name}) li.setProperty("IsPlayable", "true") xbmcplugin.addDirectoryItem(HANDLE, url, li, isFolder=True) elif len(movie['group']) > 0: idx = 0 for key, items in movie['group'].iteritems(): idx += 1 label = "[COLOR red][B][---- %s : [COLOR yellow]%d eps[/COLOR] ----][/B][/COLOR]" % (key, len(items)) sli = xbmcgui.ListItem(label=label) if len(items) < 5 or len(movie['group']) < 1: xbmcplugin.addDirectoryItem(HANDLE, None, sli, isFolder=False) _build_ep_list(items, movie_item, module, class_name) elif idx is len(movie['group']): xbmcplugin.addDirectoryItem(HANDLE, None, sli, isFolder=False) _build_ep_list(items, movie_item, module, class_name) else: url = build_url({'mode': 'server', 'server': key, 'items': json.dumps(items), 'movie_item': json.dumps(movie_item), 'module': module, 'className': class_name}) xbmcplugin.addDirectoryItem(HANDLE, url, sli, isFolder=True) else: return xbmcplugin.setPluginCategory(HANDLE, title) xbmcplugin.setContent(HANDLE, 'movies') xbmcplugin.endOfDirectory(HANDLE)
Example #20
Source File: app.py From plugin.video.bimozie with GNU General Public License v3.0 | 4 votes |
def dosearch(plugin, module, classname, text, page=1, recall=False): xbmcplugin.setPluginCategory(HANDLE, 'Search / %s' % text) xbmcplugin.setContent(HANDLE, 'movies') if not text: keyboard = xbmc.Keyboard('', 'Search iPlayer') keyboard.doModal() if keyboard.isConfirmed(): text = keyboard.getText() if not text: return XbmcHelper.search_history_save(text) print("*********************** searching {}".format(text)) movies = plugin().search(text) if movies is not None: label = "[COLOR red][B][---- %s : [COLOR yellow]%d found[/COLOR] View All ----][/B][/COLOR]" % ( classname, len(movies['movies'])) sli = xbmcgui.ListItem(label=label) xbmcplugin.addDirectoryItem(HANDLE, None, sli, isFolder=False) for item in movies['movies']: try: list_item = xbmcgui.ListItem(label=item['label']) list_item.setLabel2(item['realtitle']) list_item.setIconImage('DefaultVideo.png') list_item.setArt({ 'thumb': item['thumb'], }) url = build_url( {'mode': 'movie', 'movie_item': json.dumps(item), 'module': module, 'className': classname}) is_folder = True xbmcplugin.addDirectoryItem(HANDLE, url, list_item, is_folder) except: print(item) else: return if not recall: xbmcplugin.endOfDirectory(HANDLE)