emoji_gtk.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:emoji-keyboard 作者: OzymandiasTheGreat 项目源码 文件源码
def __init__(self):

        Gtk.Window.__init__(
            self, title='Pick emoji',
            accept_focus=False,
            skip_taskbar_hint=True)
        self.set_keep_above(True)
        self.set_icon_name(shared.icon)
        self.set_type_hint(Gdk.WindowTypeHint.UTILITY)
        self.set_border_width(6)
        if shared.settings['keyboard_use_compact']:
            self.set_default_size(*shared.settings['keyboard_size_compact'])
        else:
            self.set_default_size(*shared.settings['keyboard_size_full'])
        self.connect('show', self.window_shown)
        self.connect('delete-event', self.hide_window)
        self.connect('configure-event', self.window_resized)

        self.notebook = Gtk.Notebook()
        self.add(self.notebook)

        self.emoji_views = []
        for category in shared.categories:
            scrolled_window = Gtk.ScrolledWindow()
            model = shared.emoji.categories[category]
            page = Gtk.IconView.new_with_model(model)
            page.set_selection_mode(Gtk.SelectionMode.NONE)
            page.set_activate_on_single_click(True)
            page.connect('item-activated', self.paste_emoji)
            page.set_pixbuf_column(0)
            page.set_tooltip_column(1)
            self.emoji_views.append(page)
            scrolled_window.add(page)
            label = Gtk.Box(spacing=2)
            pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale(os.path.join(
                shared.data_dir,
                'category-icons',
                shared.categories[category] + '.svg'),
                16, 16, True)
            image = Gtk.Image.new_from_pixbuf(pixbuf)
            text = Gtk.Label(shared.categories[category].title())
            label.pack_start(image, True, True, 0)
            label.pack_start(text, True, True, 0)
            image.show()
            if shared.settings['keyboard_use_compact']:
                page.set_columns(shared.settings['keyboard_columns_compact'])
            else:
                page.set_columns(shared.settings['keyboard_columns_full'])
                text.show()
            self.notebook.append_page(scrolled_window, label)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号