Пример #1
0
def my_groups_menu():
    groups = manage.find_defined_groups()
    if len(groups) > 0:
        for group in groups:
            _id = uuid.uuid4()
            group_name = group['label']
            group_id = group['id']
            group_type = group['type']

            cm = [(utils.get_string(32061),
                   ('RunPlugin('
                    'plugin://plugin.program.autowidget/'
                    '?mode=manage'
                    '&action=edit'
                    '&group={})').format(group_id))]

            directory.add_menu_item(
                title=group_name,
                params={
                    'mode': 'group',
                    'group': group_id,
                    'target': group_type,
                    'id': six.text_type(_id)
                },
                info=group.get('info'),
                art=group.get('art') or
                (folder_shortcut if group_type == 'shortcut' else folder_sync),
                cm=cm,
                isFolder=True)
    else:
        directory.add_menu_item(title=32068, art=alert, isFolder=False)
    return True, utils.get_string(32007)
Пример #2
0
def my_groups_menu():
    groups = manage.find_defined_groups()
    if len(groups) > 0:
        for group in groups:
            group_name = group['label']
            group_id = group['id']
            group_type = group['type']

            cm = [(utils.get_string(32061),
                   ('RunPlugin('
                    'plugin://plugin.program.autowidget/'
                    '?mode=manage'
                    '&action=edit'
                    '&group={})').format(group_id))]

            directory.add_menu_item(
                title=six.text_type(group_name),
                params={
                    'mode': 'group',
                    'group': group_id
                },
                info=group.get('info', {}),
                art=group.get('art')
                or (utils.get_art('folder-shortcut') if group_type
                    == 'shortcut' else utils.get_art('folder-sync')),
                cm=cm,
                isFolder=True)
    else:
        directory.add_menu_item(title=32068,
                                art=utils.get_art('alert'),
                                isFolder=False,
                                props={'specialsort': 'bottom'})

    return True, utils.get_string(32007)
Пример #3
0
def my_groups_menu():
    groups = manage.find_defined_groups()
    if len(groups) > 0:
        for group in groups:
            group_name = group["label"]
            group_id = group["id"]
            group_type = group["type"]

            cm = _create_group_context_items(group_id, group_type)

            directory.add_menu_item(
                title=six.text_type(group_name),
                params={
                    "mode": "group",
                    "group": group_id
                },
                info=group.get("info", {}),
                art=group.get("art")
                or (utils.get_art("folder-shortcut") if group_type
                    == "shortcut" else utils.get_art("folder-sync")),
                cm=cm,
                isFolder=True,
            )
    else:
        directory.add_menu_item(
            title=30046,
            art=utils.get_art("alert"),
            isFolder=False,
            props={"specialsort": "bottom"},
        )
    directory.add_menu_item(
        title=30011,
        params={
            "mode": "manage",
            "action": "add_group",
            "target": "shortcut"
        },
        art=utils.get_art("folder-shortcut"),
        props={"specialsort": "bottom"},
    )
    directory.add_menu_item(
        title=30010,
        params={
            "mode": "manage",
            "action": "add_group",
            "target": "widget"
        },
        art=utils.get_art("folder-sync"),
        props={"specialsort": "bottom"},
    )

    return True, utils.get_string(30007), None
Пример #4
0
def refresh_paths(notify=False, force=False):
    if notify:
        dialog = xbmcgui.Dialog()
        dialog.notification('AutoWidget', utils.get_string(32033),
                            sound=utils.get_setting_bool('service.refresh_sound'))

    for group_def in manage.find_defined_groups():
        paths = []

        widgets = manage.find_defined_widgets(group_def['id'])
        for widget_def in widgets:
            paths = refresh(widget_def['id'], widget_def=widget_def, paths=paths, force=force)

    utils.update_container(True)

    return True, 'AutoWidget'
Пример #5
0
def _group_dialog(_type, group_id=None):
    _type = "shortcut" if _type == "settings" else _type
    groups = manage.find_defined_groups(_type)
    ids = [group["id"] for group in groups]

    index = -1
    options = []
    offset = 1

    if _type == "widget":
        new_widget = xbmcgui.ListItem(utils.get_string(30010))
        new_widget.setArt(folder_sync)
        options.append(new_widget)
    else:
        new_shortcut = xbmcgui.ListItem(utils.get_string(30011))
        new_shortcut.setArt(folder_shortcut)
        options.append(new_shortcut)

    if group_id:
        index = ids.index(group_id) + 1

    for group in groups:
        item = xbmcgui.ListItem(group["label"])
        item.setArt(folder_sync if group["type"] ==
                    "widget" else folder_shortcut)
        options.append(item)

    dialog = xbmcgui.Dialog()
    choice = dialog.select(utils.get_string(30036),
                           options,
                           preselect=index,
                           useDetails=True)
    del dialog

    if choice < 0:
        dialog = xbmcgui.Dialog()
        dialog.notification("AutoWidget", utils.get_string(30021))
        del dialog
    elif (choice, _type) == (0, "widget"):
        return _group_dialog(_type, add_group("widget"))
    elif choice == 0:
        return _group_dialog(_type, add_group("shortcut"))
    else:
        return groups[choice - offset]
Пример #6
0
def _group_dialog(_type, group_id=None):
    _type = 'shortcut' if _type == 'settings' else _type
    groups = manage.find_defined_groups(_type)
    names = [group['label'] for group in groups]
    ids = [group['id'] for group in groups]

    index = -1
    options = []
    offset = 1

    if _type == 'widget':
        new_widget = xbmcgui.ListItem(utils.get_string(32015))
        new_widget.setArt(folder_sync)
        options.append(new_widget)
    else:
        new_shortcut = xbmcgui.ListItem(utils.get_string(32017))
        new_shortcut.setArt(folder_shortcut)
        options.append(new_shortcut)

    if group_id:
        index = ids.index(group_id) + 1

    for group in groups:
        item = xbmcgui.ListItem(group['label'])
        item.setArt(folder_sync if group['type'] ==
                    'widget' else folder_shortcut)
        options.append(item)

    dialog = xbmcgui.Dialog()
    choice = dialog.select(utils.get_string(32054),
                           options,
                           preselect=index,
                           useDetails=True)

    if choice < 0:
        dialog.notification('AutoWidget', utils.get_string(32034))
    elif (choice, _type) == (0, 'widget'):
        return _group_dialog(_type, add_group('widget'))
    elif choice == 0:
        return _group_dialog(_type, add_group('shortcut'))
    else:
        return groups[choice - offset]
Пример #7
0
def refresh_paths(notify=False, force=False):
    if notify:
        dialog = xbmcgui.Dialog()
        dialog.notification(
            "AutoWidget",
            utils.get_string(30020),
            sound=settings.get_setting_bool("service.refresh_sound"),
        )
        del dialog

    for group_def in manage.find_defined_groups():
        paths = []

        widgets = manage.find_defined_widgets(group_def["id"])
        for widget_def in widgets:
            paths = refresh(
                widget_def["id"], widget_def=widget_def, paths=paths, force=force
            )

    utils.update_container(True)

    return True, "AutoWidget"
Пример #8
0
def my_groups_menu():
    groups = manage.find_defined_groups()
    if len(groups) > 0:
        for group in groups:
            group_name = group["label"]
            group_id = group["id"]
            group_type = group["type"]

            cm = [(
                utils.get_string(32061),
                ("RunPlugin("
                 "plugin://plugin.program.autowidget/"
                 "?mode=manage"
                 "&action=edit"
                 "&group={})").format(group_id),
            )]

            directory.add_menu_item(
                title=six.text_type(group_name),
                params={
                    "mode": "group",
                    "group": group_id
                },
                info=group.get("info", {}),
                art=group.get("art")
                or (utils.get_art("folder-shortcut") if group_type
                    == "shortcut" else utils.get_art("folder-sync")),
                cm=cm,
                isFolder=True,
            )
    else:
        directory.add_menu_item(
            title=32068,
            art=utils.get_art("alert"),
            isFolder=False,
            props={"specialsort": "bottom"},
        )

    return True, utils.get_string(32007)
Пример #9
0
def refresh_paths(notify=False, force=False):
    converted = []
    current_time = time.time()

    if force:
        converted = convert.convert_widgets(notify)

    if notify:
        dialog = xbmcgui.Dialog()
        dialog.notification('AutoWidget', utils.get_string(32033))

    for group_def in manage.find_defined_groups():
        paths = []

        widgets = manage.find_defined_widgets(group_def['id'])
        for widget_def in widgets:
            paths = refresh(widget_def['id'],
                            widget_def=widget_def,
                            paths=paths,
                            force=force)

    utils.update_container(reload=len(converted) > 0 and utils.shortcuts_path)