コード例 #1
0
ファイル: cycle.py プロジェクト: sahwar/pyndow
    def __init__(self):
        _PopupWindow.__init__(self)

        # Create the inner window
        inner_id = window.create(self.id, xcb.xproto.CW.BackPixel, [c_bg])
        self.inner = window.GeometryWindow(inner_id)

        self.icons = []
        self.wins = []

        self.current = 0
        self.showing = False
コード例 #2
0
ファイル: cycle.py プロジェクト: sahwar/pyndow
    def __init__(self, *_):
        _PopupWindow.__init__(self)

        self.width = self.height = c_icn_sz + (2 * c_brdr_sz)

        self.configure(width=self.width, height=self.height)

        icon = self.client.win.get_icon(c_icn_sz, c_icn_sz)

        im = image.get_image(icon['width'], icon['height'], icon['data'])
        im = im.resize((c_icn_sz, c_icn_sz))

        if 'mask' in icon and icon['mask'] and icon['mask'] != icon['data']:
            immask = image.get_bitmap(icon['width'], icon['height'],
                                      icon['mask'])
            immask = immask.resize((c_icn_sz, c_icn_sz))
        else:
            immask = im.copy()

        alpha = 1
        if not self.client.mapped:
            alpha = 0.3
        icon_im = rendering.blend(im, immask, c_bg, c_icn_sz, c_icn_sz, alpha)

        im_inactive = rendering.box(c_bg, self.width, self.height)
        im_inactive.paste(icon_im, box=(c_brdr_sz, c_brdr_sz))

        im_active = rendering.box(c_brdr_clr, self.width, self.height)
        im_active.paste(icon_im, box=(c_brdr_sz, c_brdr_sz))

        self.inactive = image.get_data(im_inactive)
        self.active = image.get_data(im_active)

        self.render_inactive()

        self.map()