@@ -1279,7 +1279,13 @@ def _command_edit_launcher(self, categoryID, launcherID):
12791279 'Save NFO file (default location)',
12801280 ]
12811281 dialog = xbmcgui.Dialog()
1282- type2 = dialog.select('Edit Launcher Metadata', common_menu_list + scraper_menu_list)
1282+ # For now disable scraping for all launcher, including standalone launchers.
1283+ # ROM_launcher = True if self.launchers[launcherID]['rompath'] else False
1284+ # if ROM_launcher:
1285+ # type2 = dialog.select('Edit Launcher Metadata', common_menu_list)
1286+ # else:
1287+ # type2 = dialog.select('Edit Launcher Metadata', common_menu_list + scraper_menu_list)
1288+ type2 = dialog.select('Edit Launcher Metadata', common_menu_list)
12831289 if type2 < 0: return
12841290
12851291 # --- Edition of the launcher name ---
@@ -1360,9 +1366,9 @@ def _command_edit_launcher(self, categoryID, launcherID):
13601366
13611367 # --- Edition of the launcher rating ---
13621368 elif type2 == 5:
1363- rating = dialog.select('Edit Launcher Rating',
1364- [ 'Not set', 'Rating 0', 'Rating 1', 'Rating 2', 'Rating 3', 'Rating 4',
1365- 'Rating 5', 'Rating 6', 'Rating 7', 'Rating 8', 'Rating 9', 'Rating 10'])
1369+ rating = dialog.select('Edit Launcher Rating', [
1370+ 'Not set', 'Rating 0', 'Rating 1', 'Rating 2', 'Rating 3', 'Rating 4',
1371+ 'Rating 5', 'Rating 6', 'Rating 7', 'Rating 8', 'Rating 9', 'Rating 10'])
13661372 if rating == 0:
13671373 self.launchers[launcherID]['m_rating'] = ''
13681374 kodi_notify('Launcher Rating changed to Not Set')
@@ -1444,46 +1450,51 @@ def _command_edit_launcher(self, categoryID, launcherID):
14441450 label2_icon = launcher['s_icon'] if launcher['s_icon'] else 'Not set'
14451451 label2_fanart = launcher['s_fanart'] if launcher['s_fanart'] else 'Not set'
14461452 label2_banner = launcher['s_banner'] if launcher['s_banner'] else 'Not set'
1447- label2_poster = launcher['s_poster'] if launcher['s_poster'] else 'Not set'
14481453 label2_clearlogo = launcher['s_clearlogo'] if launcher['s_clearlogo'] else 'Not set'
1454+ label2_poster = launcher['s_poster'] if launcher['s_poster'] else 'Not set'
14491455 label2_controller = launcher['s_controller'] if launcher['s_controller'] else 'Not set'
14501456 label2_trailer = launcher['s_trailer'] if launcher['s_trailer'] else 'Not set'
14511457 icon_listitem = xbmcgui.ListItem(label = 'Edit Icon ...', label2 = label2_icon)
14521458 fanart_listitem = xbmcgui.ListItem(label = 'Edit Fanart ...', label2 = label2_fanart)
14531459 banner_listitem = xbmcgui.ListItem(label = 'Edit Banner ...', label2 = label2_banner)
1454- poster_listitem = xbmcgui.ListItem(label = 'Edit Poster ...', label2 = label2_poster)
14551460 clearlogo_listitem = xbmcgui.ListItem(label = 'Edit Clearlogo ...', label2 = label2_clearlogo)
1461+ poster_listitem = xbmcgui.ListItem(label = 'Edit Poster ...', label2 = label2_poster)
14561462 controller_listitem = xbmcgui.ListItem(label = 'Edit Controller ...', label2 = label2_controller)
14571463 trailer_listitem = xbmcgui.ListItem(label = 'Edit Trailer ...', label2 = label2_trailer)
14581464
14591465 # >> Set artwork with setArt()
14601466 img_icon = launcher['s_icon'] if launcher['s_icon'] else 'DefaultAddonNone.png'
14611467 img_fanart = launcher['s_fanart'] if launcher['s_fanart'] else 'DefaultAddonNone.png'
14621468 img_banner = launcher['s_banner'] if launcher['s_banner'] else 'DefaultAddonNone.png'
1463- img_poster = launcher['s_poster'] if launcher['s_poster'] else 'DefaultAddonNone.png'
14641469 img_clearlogo = launcher['s_clearlogo'] if launcher['s_clearlogo'] else 'DefaultAddonNone.png'
1470+ img_poster = launcher['s_poster'] if launcher['s_poster'] else 'DefaultAddonNone.png'
14651471 img_controller = launcher['s_controller'] if launcher['s_controller'] else 'DefaultAddonNone.png'
14661472 img_trailer = 'DefaultAddonVideo.png' if launcher['s_trailer'] else 'DefaultAddonNone.png'
14671473 icon_listitem.setArt({'icon' : img_icon})
14681474 fanart_listitem.setArt({'icon' : img_fanart})
14691475 banner_listitem.setArt({'icon' : img_banner})
1470- poster_listitem.setArt({'icon' : img_poster})
14711476 clearlogo_listitem.setArt({'icon' : img_clearlogo})
1477+ poster_listitem.setArt({'icon' : img_poster})
14721478 controller_listitem.setArt({'icon' : img_controller})
14731479 trailer_listitem.setArt({'icon' : img_trailer})
14741480
14751481 # >> Execute select dialog
1476- listitems = [icon_listitem, fanart_listitem, banner_listitem, poster_listitem,
1477- clearlogo_listitem, controller_listitem, trailer_listitem]
1482+ listitems = [
1483+ icon_listitem,
1484+ fanart_listitem,
1485+ banner_listitem,
1486+ clearlogo_listitem,
1487+ poster_listitem,
1488+ controller_listitem,
1489+ trailer_listitem
1490+ ]
14781491 type2 = dialog.select('Edit Launcher Assets/Artwork', list = listitems, useDetails = True)
14791492 if type2 < 0: return
14801493
14811494 # --- Edit Assets ---
1482- # >> If this function returns False no changes were made. No need to save categories
1483- # >> XML and update container.
1484- asset_list = [ASSET_ICON, ASSET_FANART, ASSET_BANNER, ASSET_POSTER,
1485- ASSET_CLEARLOGO, ASSET_CONTROLLER, ASSET_TRAILER]
1486- asset_kind = asset_list[type2]
1495+ # If this function returns False no changes were made. No need to save categories
1496+ # XML and update container.
1497+ asset_kind = LAUNCHER_ASSET_ID_LIST[type2]
14871498 if not self._gui_edit_asset(KIND_LAUNCHER, asset_kind, launcher): return
14881499
14891500 # --- Choose Launcher default icon/fanart/banner/poster/clearlogo ---
@@ -1494,38 +1505,45 @@ def _command_edit_launcher(self, categoryID, launcherID):
14941505 asset_icon_str = assets_get_asset_name_str(launcher['default_icon'])
14951506 asset_fanart_str = assets_get_asset_name_str(launcher['default_fanart'])
14961507 asset_banner_str = assets_get_asset_name_str(launcher['default_banner'])
1497- asset_poster_str = assets_get_asset_name_str(launcher['default_poster'])
14981508 asset_clearlogo_str = assets_get_asset_name_str(launcher['default_clearlogo'])
1509+ asset_poster_str = assets_get_asset_name_str(launcher['default_poster'])
14991510 label2_icon = launcher[launcher['default_icon']] if launcher[launcher['default_icon']] else 'Not set'
15001511 label2_fanart = launcher[launcher['default_fanart']] if launcher[launcher['default_fanart']] else 'Not set'
15011512 label2_banner = launcher[launcher['default_banner']] if launcher[launcher['default_banner']] else 'Not set'
1502- label2_poster = launcher[launcher['default_poster']] if launcher[launcher['default_poster']] else 'Not set'
15031513 label2_clearlogo = launcher[launcher['default_clearlogo']] if launcher[launcher['default_clearlogo']] else 'Not set'
1514+ label2_poster = launcher[launcher['default_poster']] if launcher[launcher['default_poster']] else 'Not set'
15041515 icon_listitem = xbmcgui.ListItem(
15051516 label = 'Choose asset for Icon (currently {0})'.format(asset_icon_str), label2 = label2_icon)
15061517 fanart_listitem = xbmcgui.ListItem(
15071518 label = 'Choose asset for Fanart (currently {0})'.format(asset_fanart_str), label2 = label2_fanart)
15081519 banner_listitem = xbmcgui.ListItem(
15091520 label = 'Choose asset for Banner (currently {0})'.format(asset_banner_str), label2 = label2_banner)
1510- poster_listitem = xbmcgui.ListItem(
1511- label = 'Choose asset for Poster (currently {0})'.format(asset_poster_str), label2 = label2_poster)
15121521 clearlogo_listitem = xbmcgui.ListItem(
15131522 label = 'Choose asset for Clearlogo (currently {0})'.format(asset_clearlogo_str), label2 = label2_clearlogo)
1523+ poster_listitem = xbmcgui.ListItem(
1524+ label = 'Choose asset for Poster (currently {0})'.format(asset_poster_str), label2 = label2_poster)
15141525
15151526 # >> Asset image
15161527 img_icon = launcher[launcher['default_icon']] if launcher[launcher['default_icon']] else 'DefaultAddonNone.png'
15171528 img_fanart = launcher[launcher['default_fanart']] if launcher[launcher['default_fanart']] else 'DefaultAddonNone.png'
15181529 img_banner = launcher[launcher['default_banner']] if launcher[launcher['default_banner']] else 'DefaultAddonNone.png'
1519- img_poster = launcher[launcher['default_poster']] if launcher[launcher['default_poster']] else 'DefaultAddonNone.png'
15201530 img_clearlogo = launcher[launcher['default_clearlogo']] if launcher[launcher['default_clearlogo']] else 'DefaultAddonNone.png'
1531+ img_poster = launcher[launcher['default_poster']] if launcher[launcher['default_poster']] else 'DefaultAddonNone.png'
1532+
15211533 icon_listitem.setArt({'icon' : img_icon})
15221534 fanart_listitem.setArt({'icon' : img_fanart})
15231535 banner_listitem.setArt({'icon' : img_banner})
1524- poster_listitem.setArt({'icon' : img_poster})
15251536 clearlogo_listitem.setArt({'icon' : img_clearlogo})
1537+ poster_listitem.setArt({'icon' : img_poster})
15261538
15271539 # >> Execute select dialog
1528- listitems = [icon_listitem, fanart_listitem, banner_listitem, poster_listitem, clearlogo_listitem]
1540+ listitems = [
1541+ icon_listitem,
1542+ fanart_listitem,
1543+ banner_listitem,
1544+ clearlogo_listitem,
1545+ poster_listitem,
1546+ ]
15291547 type2 = dialog.select('Edit Launcher default Assets/Artwork', list = listitems, useDetails = True)
15301548 if type2 < 0: return
15311549
@@ -1534,58 +1552,63 @@ def _command_edit_launcher(self, categoryID, launcherID):
15341552 xbmcgui.ListItem(label = 'Icon', label2 = launcher['s_icon'] if launcher['s_icon'] else 'Not set'),
15351553 xbmcgui.ListItem(label = 'Fanart', label2 = launcher['s_fanart'] if launcher['s_fanart'] else 'Not set'),
15361554 xbmcgui.ListItem(label = 'Banner', label2 = launcher['s_banner'] if launcher['s_banner'] else 'Not set'),
1537- xbmcgui.ListItem(label = 'Poster', label2 = launcher['s_poster'] if launcher['s_poster'] else 'Not set'),
15381555 xbmcgui.ListItem(label = 'Clearlogo', label2 = launcher['s_clearlogo'] if launcher['s_clearlogo'] else 'Not set'),
1556+ xbmcgui.ListItem(label = 'Poster', label2 = launcher['s_poster'] if launcher['s_poster'] else 'Not set'),
15391557 xbmcgui.ListItem(label = 'Controller', label2 = launcher['s_controller'] if launcher['s_controller'] else 'Not set'),
15401558 ]
15411559 Launcher_asset_ListItem_list[0].setArt({'icon' : launcher['s_icon'] if launcher['s_icon'] else 'DefaultAddonNone.png'})
15421560 Launcher_asset_ListItem_list[1].setArt({'icon' : launcher['s_fanart'] if launcher['s_fanart'] else 'DefaultAddonNone.png'})
15431561 Launcher_asset_ListItem_list[2].setArt({'icon' : launcher['s_banner'] if launcher['s_banner'] else 'DefaultAddonNone.png'})
1544- Launcher_asset_ListItem_list[3].setArt({'icon' : launcher['s_poster '] if launcher['s_poster '] else 'DefaultAddonNone.png'})
1545- Launcher_asset_ListItem_list[4].setArt({'icon' : launcher['s_clearlogo '] if launcher['s_clearlogo '] else 'DefaultAddonNone.png'})
1562+ Launcher_asset_ListItem_list[3].setArt({'icon' : launcher['s_clearlogo '] if launcher['s_clearlogo '] else 'DefaultAddonNone.png'})
1563+ Launcher_asset_ListItem_list[4].setArt({'icon' : launcher['s_poster '] if launcher['s_poster '] else 'DefaultAddonNone.png'})
15461564 Launcher_asset_ListItem_list[5].setArt({'icon' : launcher['s_controller'] if launcher['s_controller'] else 'DefaultAddonNone.png'})
15471565
15481566 # >> Krypton feature: User preselected item in select() dialog.
15491567 if type2 == 0:
15501568 p_idx = assets_get_Launcher_mapped_asset_idx(launcher, 'default_icon')
1551- type_s = dialog.select('Choose Launcher default asset for Icon',
1552- list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
1569+ type_s = dialog.select(
1570+ 'Choose Launcher default asset for Icon',
1571+ list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
15531572 if type_s < 0: return
15541573 assets_choose_Launcher_mapped_artwork(launcher, 'default_icon', type_s)
15551574 asset_name = assets_get_asset_name_str(launcher['default_icon'])
15561575 kodi_notify('Launcher Icon mapped to {0}'.format(asset_name))
15571576 elif type2 == 1:
15581577 p_idx = assets_get_Launcher_mapped_asset_idx(launcher, 'default_fanart')
1559- type_s = dialog.select('Choose default asset for Fanart',
1560- list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
1578+ type_s = dialog.select(
1579+ 'Choose default asset for Fanart',
1580+ list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
15611581 if type_s < 0: return
15621582 assets_choose_Launcher_mapped_artwork(launcher, 'default_fanart', type_s)
15631583 asset_name = assets_get_asset_name_str(launcher['default_fanart'])
15641584 kodi_notify('Launcher Fanart mapped to {0}'.format(asset_name))
15651585 elif type2 == 2:
15661586 p_idx = assets_get_Launcher_mapped_asset_idx(launcher, 'default_banner')
1567- type_s = dialog.select('Choose default asset for Banner',
1568- list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
1587+ type_s = dialog.select(
1588+ 'Choose default asset for Banner',
1589+ list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
15691590 if type_s < 0: return
15701591 assets_choose_Launcher_mapped_artwork(launcher, 'default_banner', type_s)
15711592 asset_name = assets_get_asset_name_str(launcher['default_banner'])
15721593 kodi_notify('Launcher Banner mapped to {0}'.format(asset_name))
15731594 elif type2 == 3:
1574- p_idx = assets_get_Launcher_mapped_asset_idx(launcher, 'default_poster')
1575- type_s = dialog.select('Choose default asset for Poster',
1576- list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
1577- if type_s < 0: return
1578- assets_choose_Launcher_mapped_artwork(launcher, 'default_poster', type_s)
1579- asset_name = assets_get_asset_name_str(launcher['default_poster'])
1580- kodi_notify('Launcher Poster mapped to {0}'.format(asset_name))
1581- elif type2 == 4:
15821595 p_idx = assets_get_Launcher_mapped_asset_idx(launcher, 'default_clearlogo')
1583- type_s = dialog.select('Choose default asset for Clearlogo',
1584- list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
1596+ type_s = dialog.select(
1597+ 'Choose default asset for Clearlogo',
1598+ list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
15851599 if type_s < 0: return
15861600 assets_choose_Launcher_mapped_artwork(launcher, 'default_clearlogo', type_s)
15871601 asset_name = assets_get_asset_name_str(launcher['default_clearlogo'])
15881602 kodi_notify('Launcher Clearlogo mapped to {0}'.format(asset_name))
1603+ elif type2 == 4:
1604+ p_idx = assets_get_Launcher_mapped_asset_idx(launcher, 'default_poster')
1605+ type_s = dialog.select(
1606+ 'Choose default asset for Poster',
1607+ list = Launcher_asset_ListItem_list, useDetails = True, preselect = p_idx)
1608+ if type_s < 0: return
1609+ assets_choose_Launcher_mapped_artwork(launcher, 'default_poster', type_s)
1610+ asset_name = assets_get_asset_name_str(launcher['default_poster'])
1611+ kodi_notify('Launcher Poster mapped to {0}'.format(asset_name))
15891612
15901613 # --- Change launcher's Category ---
15911614 type_nb = type_nb + 1
@@ -9663,7 +9686,8 @@ def _gui_edit_asset(self, object_kind, asset_ID, object_dic, categoryID = '', la
96639686 # --- Grab asset information for editing ---
96649687 object_name = 'Category'
96659688 asset_directory = FileName(self.settings['categories_asset_dir'])
9666- asset_path_noext = assets_get_path_noext_SUFIX(AInfo, asset_directory, object_dic['m_name'], object_dic['id'])
9689+ asset_path_noext = assets_get_path_noext_SUFIX(
9690+ AInfo, asset_directory, object_dic['m_name'], object_dic['id'])
96679691 log_info('_gui_edit_asset() Editing Category "{0}"'.format(AInfo.name))
96689692 log_info('_gui_edit_asset() ID {0}'.format(object_dic['id']))
96699693 log_debug('_gui_edit_asset() asset_directory "{0}"'.format(asset_directory.getOriginalPath()))
@@ -9677,7 +9701,8 @@ def _gui_edit_asset(self, object_kind, asset_ID, object_dic, categoryID = '', la
96779701 # --- Grab asset information for editing ---
96789702 object_name = 'Collection'
96799703 asset_directory = FileName(self.settings['collections_asset_dir'])
9680- asset_path_noext = assets_get_path_noext_SUFIX(AInfo, asset_directory, object_dic['m_name'], object_dic['id'])
9704+ asset_path_noext = assets_get_path_noext_SUFIX(
9705+ AInfo, asset_directory, object_dic['m_name'], object_dic['id'])
96819706 log_info('_gui_edit_asset() Editing Collection "{0}"'.format(AInfo.name))
96829707 log_info('_gui_edit_asset() ID {0}'.format(object_dic['id']))
96839708 log_debug('_gui_edit_asset() asset_directory "{0}"'.format(asset_directory.getOriginalPath()))
@@ -9753,6 +9778,8 @@ def _gui_edit_asset(self, object_kind, asset_ID, object_dic, categoryID = '', la
97539778 if object_kind == KIND_ROM:
97549779 g_scrap_factory = ScraperFactory(g_PATHS, self.settings)
97559780 scraper_menu_list = g_scrap_factory.get_asset_scraper_menu_list(asset_ID)
9781+ else:
9782+ scraper_menu_list = []
97569783
97579784 # --- Show image editing options ---
97589785 # Scrapers only supported for ROMs (for the moment)
@@ -9762,12 +9789,9 @@ def _gui_edit_asset(self, object_kind, asset_ID, object_dic, categoryID = '', la
97629789 'Import local {0} (copy and rename)'.format(AInfo.kind_str),
97639790 'Unset artwork/asset',
97649791 ]
9765- if object_kind == KIND_ROM:
9766- type2 = dialog.select('Change {0} {1}'.format(AInfo.name, AInfo.kind_str),
9767- common_menu_list + scraper_menu_list)
9768- else:
9769- type2 = dialog.select('Change {0} {1}'.format(AInfo.name, AInfo.kind_str),
9770- common_menu_list)
9792+ type2 = dialog.select(
9793+ 'Change {0} {1}'.format(AInfo.name, AInfo.kind_str),
9794+ common_menu_list + scraper_menu_list)
97719795 if type2 < 0: return False
97729796
97739797 # --- Link to a local image ---
0 commit comments