From 91e33053fd24cea67eab0d36ab957eeeb825d4c9 Mon Sep 17 00:00:00 2001 From: Alhaziel01 Date: Fri, 8 Jan 2021 14:48:25 +0100 Subject: [PATCH] Rimossi Menu Laterale --- platformcode/launcher.py | 22 +- platformcode/platformtools.py | 5 - platformcode/shortcuts.py | 10 +- platformcode/side_menu.py | 364 --------------------- resources/settings.xml | 9 +- resources/skins/Default/720p/side_menu.xml | 27 -- specials/news.py | 18 +- 7 files changed, 14 insertions(+), 441 deletions(-) delete mode 100644 platformcode/side_menu.py delete mode 100644 resources/skins/Default/720p/side_menu.xml diff --git a/platformcode/launcher.py b/platformcode/launcher.py index 115da762..ea280e5d 100644 --- a/platformcode/launcher.py +++ b/platformcode/launcher.py @@ -51,27 +51,7 @@ def run(item=None): item.__setattr__(key, val) # If no item, this is mainlist else: - if config.get_setting("start_page"): - - if not config.get_setting("custom_start"): - dictCategory = { - config.get_localized_string(70137): 'peliculas', - config.get_localized_string(30123): 'series', - config.get_localized_string(30124): 'anime', - config.get_localized_string(60513): 'documentales', - config.get_localized_string(70171): 'torrent', - } - if not config.get_setting("category") in dictCategory.keys(): - config.set_setting('category', config.get_localized_string(70137)) - category = dictCategory[config.get_setting("category")] - item = Item(channel="news", action="novedades", extra=category, mode = 'silent') - else: - from platformcode import side_menu - item= Item() - item = side_menu.check_user_home(item) - item.start = True - else: - item = Item(channel="channelselector", action="getmainlist", viewmode="movie") + item = Item(channel="channelselector", action="getmainlist", viewmode="movie") if not config.get_setting('show_once'): if not config.get_all_settings_addon(): logger.error('corrupted settings.xml!!') diff --git a/platformcode/platformtools.py b/platformcode/platformtools.py index 6b385f4a..b9052e73 100644 --- a/platformcode/platformtools.py +++ b/platformcode/platformtools.py @@ -576,11 +576,6 @@ def set_context_commands(item, item_url, parent_item, **kwargs): context_commands.append( (config.get_localized_string(70561), "Container.Update (%s?%s&%s)" % (sys.argv[0], item_url, 'channel=search&action=from_context&search_type=list&page=1&list_type=%s/%s/similar' % (mediatype, item.infoLabels['tmdb_id'])))) - # Set as Home Page - if config.get_setting('start_page'): - if item.action not in ['episodios', 'seasons', 'findvideos', 'play']: - context_commands.insert(0, (config.get_localized_string(60351), "RunPlugin(%s?%s)" % (sys.argv[0], Item(channel='side_menu', action="set_custom_start", parent=item.tourl()).tourl()))) - if item.channel != "videolibrary": # Add Series to the video library if item.action in ["episodios", "get_episodios", "get_seasons"] and item.contentSerieName: diff --git a/platformcode/shortcuts.py b/platformcode/shortcuts.py index a3bfaffb..9abadcf4 100644 --- a/platformcode/shortcuts.py +++ b/platformcode/shortcuts.py @@ -7,20 +7,14 @@ def context(): context = [] # original # if config.get_setting('quick_menu'): context.append((config.get_localized_string(60360).upper(), "RunPlugin(plugin://plugin.video.kod/?%s)" % Item(channel='shortcuts', action="shortcut_menu").tourl())) - # if config.get_setting('side_menu'): context.append((config.get_localized_string(70737).upper(), "RunPlugin(plugin://plugin.video.kod/?%s)" % Item(channel='shortcuts',action="Side_menu").tourl())) # if config.get_setting('kod_menu'): context.append((config.get_localized_string(60026), "RunPlugin(plugin://plugin.video.kod/?%s)" % Item(channel='shortcuts', action="settings_menu").tourl())) # pre-serialised if config.get_setting('quick_menu'): context.append((config.get_localized_string(60360), 'RunPlugin(plugin://plugin.video.kod/?ewogICAgImFjdGlvbiI6ICJzaG9ydGN1dF9tZW51IiwgCiAgICAiY2hhbm5lbCI6ICJzaG9ydGN1dHMiLCAKICAgICJpbmZvTGFiZWxzIjoge30KfQ%3D%3D)')) - if config.get_setting('Side_menu'): context.append((config.get_localized_string(70737), 'RunPlugin(plugin://plugin.video.kod/?ewogICAgImFjdGlvbiI6ICJTaWRlX21lbnUiLCAKICAgICJjaGFubmVsIjogInNob3J0Y3V0cyIsIAogICAgImluZm9MYWJlbHMiOiB7fQp9)')) if config.get_setting('kod_menu'): context.append((config.get_localized_string(60026), 'RunPlugin(plugin://plugin.video.kod/?ewogICAgImFjdGlvbiI6ICJzZXR0aW5nc19tZW51IiwgCiAgICAiY2hhbm5lbCI6ICJzaG9ydGN1dHMiLCAKICAgICJpbmZvTGFiZWxzIjoge30KfQ%3D%3D)')) return context -def Side_menu(item): - from platformcode import side_menu - side_menu.open_menu(item) - def shortcut_menu(item): from platformcode import keymaptools keymaptools.open_shortcut_menu() @@ -138,6 +132,7 @@ def SettingOnPosition(item): def select(item): + from core.support import dbg;dbg() from platformcode import config, platformtools # item.id = setting ID # item.type = labels or values @@ -152,6 +147,7 @@ def select(item): values.append(config.get_localized_string(int(val))) else: values = item.values.split('|') + ID = config.get_setting(item.id) if config.get_setting(item.id) else 0 + select = platformtools.dialog_select(label, values, ID) - select = platformtools.dialog_select(label, values, config.get_setting(item.id)) config.set_setting(item.id, values[select]) \ No newline at end of file diff --git a/platformcode/side_menu.py b/platformcode/side_menu.py deleted file mode 100644 index fe46c936..00000000 --- a/platformcode/side_menu.py +++ /dev/null @@ -1,364 +0,0 @@ -# -*- coding: utf-8 -*- -# ------------------------------------------------------------ - -# from builtins import str -import sys -PY3 = False -if sys.version_info[0] >= 3: PY3 = True; unicode = str; unichr = chr; long = int - -import os -from core.item import Item -from core import jsontools -from platformcode import config, logger, launcher -import xbmc, xbmcgui - -media_path = os.path.join(config.get_runtime_path(), "resources/skins/Default/media/side_menu/") -menu_settings_path = os.path.join(config.get_data_path(), "settings_channels", 'menu_settings_data.json') - -if os.path.exists(menu_settings_path): - menu_node = jsontools.get_node_from_file('menu_setting_data.json', 'menu') -else: - menu_node = {'categoria actual':config.get_setting('category')} - jsontools.update_node(menu_node, 'menu_settings_data.json', "menu") - -info_language = ["de", "en", "es", "fr", "it", "pt"] # from videolibrary.json -def_lang = info_language[config.get_setting("info_language", "videolibrary")] - -ACTION_SHOW_FULLSCREEN = 36 -ACTION_GESTURE_SWIPE_LEFT = 511 -ACTION_SELECT_ITEM = 7 -ACTION_PREVIOUS_MENU = 10 -ACTION_MOVE_LEFT = 1 -ACTION_MOVE_RIGHT = 2 -ACTION_MOVE_DOWN = 4 -ACTION_MOVE_UP = 3 - -def set_menu_settings(item): - if os.path.exists(menu_settings_path): - menu_node = jsontools.get_node_from_file('menu_settings_data.json', 'menu') - else: - menu_node = {} - menu_node['categoria actual'] = item.extra - - jsontools.update_node(menu_node, 'menu_settings_data.json', "menu") - -def check_user_home(item): - logger.debug() - if os.path.exists(menu_settings_path): - menu_node = jsontools.get_node_from_file('menu_settings_data.json', 'menu') - if 'user_home' in menu_node: - item = Item().fromurl(menu_node['user_home']) - else: - item = Item(channel="channelselector", action="getmainlist", viewmode="movie") - from platformcode import platformtools - undefined_start = platformtools.dialog_ok(config.get_localized_string(70664), config.get_localized_string(70665) + '\n' + config.get_localized_string(70666)) - return item - -def set_custom_start(item): - logger.debug() - if os.path.exists(menu_settings_path): - menu_node = jsontools.get_node_from_file('menu_settings_data.json', 'menu') - else: - menu_node={} - parent_item= Item().fromurl(item.parent) - parent_item.start=True - config.set_setting("custom_start",True) - if config.get_setting("news_start"): - config.set_setting("news_start", False) - menu_node['user_home']=parent_item.tourl() - jsontools.update_node(menu_node, 'menu_settings_data.json', "menu") - -def get_start_page(): - logger.debug() - - dictCategory = { - config.get_localized_string(70137): 'peliculas', - config.get_localized_string(30123): 'series', - config.get_localized_string(30124): 'anime', - config.get_localized_string(70018): 'infantiles', - config.get_localized_string(60513): 'documentales', - config.get_localized_string(70013): 'terror', - config.get_localized_string(30124): 'castellano', - config.get_localized_string(59976): 'latino', - config.get_localized_string(70171): 'torrent', - } - category = dictCategory[config.get_setting("category")] - - custom_start= config.get_setting("custom_start") - #if category != 'definido': - if custom_start == False: - item = Item(channel="news", action="novedades", extra=category, mode='silent') - else: - item = Item() - item = side_menu.check_user_home(item) - return item - - - -def open_menu(item): - main = Main('side_menu.xml', config.get_runtime_path()) - main.doModal() - del main - -def open_shortcut_menu(item): - from platformcode import keymaptools - keymaptools.open_shortcut_menu() - - -class Main(xbmcgui.WindowXMLDialog): - def __init__(self, *args, **kwargs): - self.items = [] - - def onInit(self): - #### Kodi 18 compatibility #### - if config.get_platform(True)['num_version'] < 18: - self.setCoordinateResolution(2) - - self.focus = -1 - self.buttons = [] - posx= 0 - posy= 145 - space = 30 - - selected = 'selected0.png' - width = 260 - height = 30 - textcolor = "0xFFCCCCCC" - conditional_textcolor = "0xFF0081C2" - shadow = "0x00000000" - offsetx = 30 - offsety = 5 - font = 'font25_title' - - if config.get_setting('start_page'): - label = config.get_localized_string(70663) - self.button_start = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - noFocusTexture='', focusTexture=media_path + selected, - textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - textOffsetY=offsety) - self.addControl(self.button_start) - self.buttons.append(self.button_start) - - posy += space * 2 - label = config.get_localized_string(70009) - self.button_alfa = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - noFocusTexture='', focusTexture=media_path+selected, - textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - textOffsetY=offsety) - self.addControl(self.button_alfa) - self.buttons.append(self.button_alfa) - - - posy += space - label = config.get_localized_string(30100) - self.button_config = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - noFocusTexture='', focusTexture=media_path + selected, - textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - textOffsetY=offsety) - self.addControl(self.button_config) - self.buttons.append(self.button_config) - posy += space*2 - label = config.get_localized_string(30122) - self.button_peliculas = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - alignment=0x00000000, noFocusTexture='', - focusTexture=media_path+selected, textColor=textcolor, - shadowColor=shadow, textOffsetX=offsetx, textOffsetY=offsety) - self.addControl(self.button_peliculas) - self.buttons.append(self.button_peliculas) - posy += space - label = config.get_localized_string(70017) - self.button_series = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - alignment=0x00000000, noFocusTexture='', - focusTexture=media_path+selected, textColor=textcolor, - shadowColor=shadow, textOffsetX=offsetx, textOffsetY=offsety) - self.addControl(self.button_series) - self.buttons.append(self.button_series) - posy += space - label = config.get_localized_string(30124) - self.button_anime = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - noFocusTexture='', focusTexture=media_path+selected, - textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - textOffsetY=offsety) - self.addControl(self.button_anime) - self.buttons.append(self.button_anime) - # posy += space - # label = config.get_localized_string(70018) - # self.button_infantil = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - # alignment=0x00000000, noFocusTexture='', - # focusTexture=media_path+selected, textColor=textcolor, - # shadowColor=shadow, textOffsetX=offsetx, textOffsetY=offsety) - # self.addControl(self.button_infantil) - # self.buttons.append(self.button_infantil) - posy += space - label = config.get_localized_string(70019) - self.button_docu = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - alignment=0x00000000, noFocusTexture='', - focusTexture=media_path + selected, textColor=textcolor, - shadowColor=shadow, textOffsetX=offsetx, textOffsetY=offsety) - self.addControl(self.button_docu) - self.buttons.append(self.button_docu) - posy += space - - # label = config.get_localized_string(70013) - # self.button_terror = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - # alignment=0x00000000, noFocusTexture='', - # focusTexture=media_path+selected, textColor=textcolor, - # shadowColor=shadow, textOffsetX=offsetx, textOffsetY=offsety) - # self.addControl(self.button_terror) - # self.buttons.append(self.button_terror) - - # if channelselector.auto_filter() == 'esp': - # posy += space - # label = config.get_localized_string(59981) - # self.button_lat = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - # noFocusTexture='', focusTexture=media_path+selected, - # textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - # textOffsetY=offsety) - # self.addControl(self.button_lat) - # self.buttons.append(self.button_lat) - # posy += space - # label = config.get_localized_string(70014) - # self.button_cast = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - # noFocusTexture='', focusTexture=media_path + selected, - # textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - # textOffsetY=offsety) - # self.addControl(self.button_cast) - # self.buttons.append(self.button_cast) - # posy += space - # label = config.get_localized_string(70015) - # self.button_torrent = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - # alignment=0x00000000, noFocusTexture='', - # focusTexture=media_path+selected, textColor=textcolor, - # shadowColor=shadow, textOffsetX=offsetx, textOffsetY=offsety) - # self.addControl(self.button_torrent) - # self.buttons.append(self.button_torrent) - - start_page_item = get_start_page() - if config.get_setting('start_page') and start_page_item.channel == 'news': - posy += space - label = config.get_localized_string(70016) - self.button_config = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - alignment=0x00000000, noFocusTexture='', - focusTexture=media_path+selected, textColor=conditional_textcolor, - shadowColor=shadow, textOffsetX=offsetx, textOffsetY=offsety) - self.addControl(self.button_config) - self.buttons.append(self.button_config) - - posy += space*2 - label = config.get_localized_string(60423) - self.button_buscar = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - noFocusTexture='', focusTexture=media_path + selected, - textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - textOffsetY=offsety) - self.addControl(self.button_buscar) - self.buttons.append(self.button_buscar) - posy += space - label = config.get_localized_string(70036) - self.button_actor = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, alignment=0x00000000, - noFocusTexture='', focusTexture=media_path + selected, - textColor=textcolor, shadowColor=shadow, textOffsetX=offsetx, - textOffsetY=offsety) - self.addControl(self.button_actor) - self.buttons.append(self.button_actor) - - posy += space - label = config.get_localized_string(70010) - self.button_config_search = xbmcgui.ControlButton(posx, posy, width, height, label, font=font, - alignment=0x00000000, - noFocusTexture='', focusTexture=media_path + selected, - textColor=conditional_textcolor, shadowColor=shadow, - textOffsetX=offsetx, textOffsetY=offsety) - self.addControl(self.button_config_search) - self.buttons.append(self.button_config_search) - - - label='' - self.button_close = xbmcgui.ControlButton(260, 0, 1020, 725, label, noFocusTexture='', focusTexture='') - self.addControl(self.button_close) - - - - def onClick(self, control): - new_item='' - - control = self.getControl(control).getLabel() - - if control == config.get_localized_string(70663): - new_item = get_start_page() - elif control == config.get_localized_string(70009): - new_item = Item(channel='', action='getmainlist', title='MenĂº Alfa') - elif control == config.get_localized_string(30100): - new_item = Item(channel='setting', action="settings") - elif control == config.get_localized_string(30122): - new_item = Item(channel='news', action="novedades", extra="peliculas", mode='silent') - elif control == config.get_localized_string(70017): - new_item = Item(channel='news', action="novedades", extra="series", mode='silent') - elif control == config.get_localized_string(30124): - new_item = Item(channel='news', action="novedades", extra="anime", mode='silent') - elif control == config.get_localized_string(70018): - new_item = Item(channel='news', action="novedades", extra="infantiles", mode='silent') - elif control == config.get_localized_string(70019): - new_item = Item(channel='news', action="novedades", extra="documentales", mode='silent') - elif control == config.get_localized_string(70013): - new_item = Item(channel='news', action="novedades", extra="terror", mode='silent') - elif control == config.get_localized_string(59981): - new_item = Item(channel='news', action="novedades", extra="castellano", mode='silent') - elif control == config.get_localized_string(70014): - new_item = Item(channel='news', action="novedades", extra="latino", mode='silent') - elif control == config.get_localized_string(70015): - new_item = Item(channel='news', action="novedades", extra="torrent", mode='silent') - elif control == config.get_localized_string(70016): - menu_node = jsontools.get_node_from_file('menu_settings_data.json', 'menu') - if 'categoria actual' in menu_node: - category = menu_node['categoria actual'] - new_item = Item(channel='news', action="setting_channel", extra=category, menu=True) - elif control == config.get_localized_string(60423): - new_item = Item(channel='search', action="search") - elif control == config.get_localized_string(70036): - new_item = Item(channel='tvmoviedb', title="Buscar actor/actriz", action="search_", - search={'url': 'search/person', 'language': def_lang, 'page': 1}, star=True) - elif control == config.get_localized_string(70010): - new_item = Item(channel='search', action="setting_channel") - elif control == '': - self.close() - if new_item !='': - self.run_action(new_item) - - - def onAction(self, action): - - - if action == ACTION_PREVIOUS_MENU or action == ACTION_GESTURE_SWIPE_LEFT or action == 110 or action == 92: - self.close() - - if action == ACTION_MOVE_RIGHT or action == ACTION_MOVE_DOWN: - self.focus += 1 - if self.focus > len(self.buttons)-1: - self.focus = 0 - while True: - id_focus = str(self.buttons[self.focus].getId()) - - if xbmc.getCondVisibility('[Control.IsVisible(' + id_focus + ')]'): - self.setFocus(self.buttons[self.focus]) - break - self.focus += 1 - - if action == ACTION_MOVE_LEFT or action == ACTION_MOVE_UP: - self.focus -= 1 - if self.focus < 0: - self.focus = len(self.buttons) - 1 - while True: - id_focus = str(self.buttons[self.focus].getId()) - if xbmc.getCondVisibility('[Control.IsVisible(' + id_focus + ')]'): - self.setFocus(self.buttons[self.focus]) - break - self.focus -= 1 - - def run_action(self, item): - logger.debug() - if item.menu != True: - self.close() - xbmc.executebuiltin("Container.update(%s)"%launcher.run(item)) - - - diff --git a/resources/settings.xml b/resources/settings.xml index d97a9c3d..e5e726ec 100644 --- a/resources/settings.xml +++ b/resources/settings.xml @@ -148,7 +148,7 @@ - + @@ -157,13 +157,6 @@ - - - - - - - diff --git a/resources/skins/Default/720p/side_menu.xml b/resources/skins/Default/720p/side_menu.xml deleted file mode 100644 index 97e646c6..00000000 --- a/resources/skins/Default/720p/side_menu.xml +++ /dev/null @@ -1,27 +0,0 @@ - - - - 0 - 0 - - 1 - - - - - - 0 - 0 - 260 - 725 - side_menu/bg0.png - - - 25 - 30 - 200 - 70 - side_menu/logo.png - - - \ No newline at end of file diff --git a/specials/news.py b/specials/news.py index 4f830a59..49054e7a 100644 --- a/specials/news.py +++ b/specials/news.py @@ -246,15 +246,15 @@ def novedades(item): list_canales, any_active = get_channels_list() - if config.is_xbmc(): - from platformcode import side_menu - if mode=='silent' and any_active and len(list_canales[item.extra]) > 0: - side_menu.set_menu_settings(item) - aux_list=[] - for canal in list_canales[item.extra]: - if len(aux_list)<2: - aux_list.append(canal) - list_canales[item.extra]=aux_list + # if config.is_xbmc(): + # from platformcode import side_menu + # if mode=='silent' and any_active and len(list_canales[item.extra]) > 0: + # side_menu.set_menu_settings(item) + # aux_list=[] + # for canal in list_canales[item.extra]: + # if len(aux_list)<2: + # aux_list.append(canal) + # list_canales[item.extra]=aux_list if mode == 'set_cache': list_canales[item.extra] = list_canales[item.extra][2:]