Esempio n. 1
0
    def default_bookmark_topic(self):
        return self._["default_topic"]

    def bookmarks_by_topic(self):
        topics: Dict[str, List[Dict[str, Any]]] = {}
        default_topic = self.default_bookmark_topic()
        for bookmark in self._["bookmarks"]:
            topic = topics.setdefault(bookmark["topic"] or default_topic, [])
            topic.append(bookmark)
        return sorted(topics.items())

    def add_bookmark(self, title, url):
        self._["bookmarks"].append(BookmarkList.new_bookmark(title, url))


pagetypes.declare(BookmarkList)


@snapin_registry.register
class Bookmarks(SidebarSnapin):
    @staticmethod
    def type_name():
        return "bookmarks"

    @classmethod
    def title(cls):
        return _("Bookmarks")

    @classmethod
    def description(cls):
        return _("A simple and yet practical snapin allowing to create "
Esempio n. 2
0
    @classmethod
    def _customizable_snapin_type_choices(cls):
        choices = []
        for snapin_type_id, snapin_type in sorted(
                snapin_registry.get_customizable_snapin_types()):
            choices.append((snapin_type_id, snapin_type.title(),
                            Dictionary(
                                title=_("Parameters"),
                                elements=snapin_type.vs_parameters(),
                                optional_keys=[],
                            )))
        return choices


pagetypes.declare(CustomSnapins)


def _register_custom_snapins():
    """First remove all previously registered custom snapins, then register
    the currently configured ones"""
    CustomSnapins.load()
    snapin_registry.register_custom_snapins(CustomSnapins.instances_sorted())


#.
#   .--Add Snapin----------------------------------------------------------.
#   |           _       _     _   ____                    _                |
#   |          / \   __| | __| | / ___| _ __   __ _ _ __ (_)_ __           |
#   |         / _ \ / _` |/ _` | \___ \| '_ \ / _` | '_ \| | '_ \          |
#   |        / ___ \ (_| | (_| |  ___) | | | | (_| | |_) | | | | |         |