Ejemplo n.º 1
0
    def __init__(self, qtile, x=50, y=50, width=256, height=64, **config):
        configurable.Configurable.__init__(self, **config)
        self.add_defaults(StackPreview.defaults)
        self.qtile = qtile

        win = qtile.conn.create_window(x, y, width, height)
        win.set_property("QTILE_INTERNAL", 1)
        self.win = window.Internal(win, qtile)
        self.qtile.windows_map[self.win.window.wid] = self.win

        self.drawer = drawer.Drawer(
            self.qtile,
            self.win.window.wid,
            width,
            height,
        )

        if self.border_width:
            self.win.window.configure(borderwidth=self.border_width)
        if self.corner_radius:
            self.win.window.round_corners(width, height, self.corner_radius,
                                          self.border_width)

        self.win.handle_Expose = self._handle_Expose
        self.win.handle_KeyPress = self._handle_KeyPress
        self.win.handle_ButtonPress = self._handle_ButtonPress

        self.x = self.win.x
        self.y = self.win.y
        if not self.border_width:
            self.border = None

        self.orig_width = width
Ejemplo n.º 2
0
Archivo: bar.py Proyecto: e7dal/qtile
    def _configure(self, qtile, screen):
        Gap._configure(self, qtile, screen)

        if self.margin:
            if isinstance(self.margin, int):
                self.margin = [self.margin] * 4
            if self.horizontal:
                self.x += self.margin[3]
                self.width -= self.margin[1] + self.margin[3]
                self.length = self.width
                if self.size == self.initial_size:
                    self.size += self.margin[0] + self.margin[2]
                if self.screen.top is self:
                    self.y += self.margin[0]
                else:
                    self.y -= self.margin[2]
            else:
                self.y += self.margin[0]
                self.height -= self.margin[0] + self.margin[2]
                self.length = self.height
                self.size += self.margin[1] + self.margin[3]
                if self.screen.left is self:
                    self.x += self.margin[3]
                else:
                    self.x -= self.margin[1]

        for w in self.widgets:
            # Executing _test_orientation_compatibility later, for example in
            # the _configure() method of each widget, would still pass
            # test/test_bar.py but a segfault would be raised when nosetests is
            # about to exit
            w._test_orientation_compatibility(self.horizontal)

        self.window = window.Internal.create(
            self.qtile,
            self.x, self.y, self.width, self.height,
            self.opacity
        )

        self.drawer = drawer.Drawer(
            self.qtile,
            self.window.window.wid,
            self.width,
            self.height
        )
        self.drawer.clear(self.background)

        self.window.handle_Expose = self.handle_Expose
        self.window.handle_ButtonPress = self.handle_ButtonPress
        self.window.handle_ButtonRelease = self.handle_ButtonRelease
        qtile.windows_map[self.window.window.wid] = self.window
        self.window.unhide()

        for idx, i in enumerate(self.widgets):
            if i.configured:
                i = i.create_mirror()
                self.widgets[idx] = i
            qtile.register_widget(i)
            i._configure(qtile, self)
        self._resize(self.length, self.widgets)
Ejemplo n.º 3
0
Archivo: base.py Proyecto: zero77/qtile
 def _configure(self, qtile, bar):
     self.qtile = qtile
     self.bar = bar
     self.drawer = drawer.Drawer(qtile, self.win.wid, self.bar.width,
                                 self.bar.height)
     if not self.configured:
         self.configured = True
         self.qtile.call_soon(self.timer_setup)
Ejemplo n.º 4
0
 def _configure(self, qtile, bar):
     self.qtile = qtile
     self.bar = bar
     self.drawer = drawer.Drawer(qtile, self.win.wid, self.bar.width,
                                 self.bar.height)
     if not self.configured:
         self.qtile.call_soon(self.timer_setup)
         self.qtile.call_soon(asyncio.create_task, self._config_async())
Ejemplo n.º 5
0
 def _create_drawer(self, screen_rect):
     log_test("creating drawer\n")
     log_test("screen_rect: " + str(screen_rect) + "\n")
     self._drawer = drawer.Drawer(self.group.qtile, self._panel.window.wid,
                                  screen_rect.width, 100)
     #screen_rect.height
     log_test("drawer: " + str(self._drawer) + "\n")
     self._drawer.clear("#0000ff")
     #self._layout =
     self._drawer.textlayout("test text", "#ff0000", "sans", 20, None)
     log_test("created drawer\n")
Ejemplo n.º 6
0
 def _create_drawer(self, screen_rect):
     if self._drawer is None:
         self._drawer = drawer.Drawer(self.group.qtile,
                                      self._panel.window.wid,
                                      self.panel_width, screen_rect.height)
     self._drawer.clear(self.bg_color)
     self._layout = self._drawer.textlayout("",
                                            "ffffff",
                                            self.font,
                                            self.fontsize,
                                            self.fontshadow,
                                            wrap=False)
Ejemplo n.º 7
0
 def _create_drawer(self, screen_rect):
     if self._drawer is None:
         self._drawer = drawer.Drawer(self.group.qtile,
                                      self._panel.window.wid,
                                      self.panel_width, screen_rect.height)
         log_test("self.group and self.group.qtile: " + str(self.group) +
                  " " + str(self.group.qtile) + "\n")
         #YOBLECK
     self._drawer.clear(self.bg_color)
     self._layout = self._drawer.textlayout("",
                                            "ffffff",
                                            self.font,
                                            self.fontsize,
                                            self.fontshadow,
                                            wrap=False)
Ejemplo n.º 8
0
    def __init__(self, qtile, x=50, y=50, width=256, height=64, **config):
        configurable.Configurable.__init__(self, **config)
        self.add_defaults(Popup.defaults)
        self.qtile = qtile

        win = qtile.core.conn.create_window(x, y, width, height)
        win.set_property("QTILE_INTERNAL", 1)
        self.win = window.Internal(win, qtile)
        self.qtile.windows_map[self.win.wid] = self.win
        self.win.opacity = self.opacity
        self.drawer = drawer.Drawer(
            self.qtile,
            self.win.wid,
            width,
            height,
        )
        self.layout = self.drawer.textlayout(
            text='',
            colour=self.foreground,
            font_family=self.font,
            font_size=self.font_size,
            font_shadow=self.fontshadow,
            wrap=self.wrap,
            markup=True,
        )
        self.layout.layout.set_alignment(
            pangocffi.ALIGNMENTS[self.text_alignment])

        if self.border_width:
            self.win.window.configure(borderwidth=self.border_width)
        if self.corner_radius:
            self.win.window.round_corners(width, height, self.corner_radius,
                                          self.border_width)

        self.win.handle_Expose = self._handle_Expose
        self.win.handle_KeyPress = self._handle_KeyPress
        self.win.handle_ButtonPress = self._handle_ButtonPress

        self.x = self.win.x
        self.y = self.win.y
        if not self.border_width:
            self.border = None
Ejemplo n.º 9
0
    def _configure(self, qtile, bar):
        logger.debug('%s\n%s\n%s', str(qtile), str(bar), 'lol')
        _Widget._configure(self, qtile, bar)
        self.winx = self.bar.screen.width - self.winwidth - self.margin
        self.winy = self.bar.height + self.margin
        self.add_defaults(bar.defaults)
        self.qtile = qtile
        self.bar = bar
        self.setup_hooks()
        self.window = window.Internal.create(qtile, self.winx, self.winy,
                                             self.winwidth, self.winheight)

        self.drawer = drawer.Drawer(self.qtile, self.window.window.wid, 800,
                                    400)

        self.drawer.clear(self.background)
        self.layout = HBoxLayout(self.drawer, 0, 0, 15, 10)

        self.window.handle_Expose = self.handle_Expose
        self.window.handle_ButtonPress = self.handle_ButtonPress
        self.window.handle_ButtonRelease = self.handle_ButtonRelease
        qtile.windows_map[self.window.window.wid] = self.window
Ejemplo n.º 10
0
    def _configure(self, qtile, bar):
        _Widget._configure(self, qtile, bar)
        self.winx = self.bar.screen.width - self.winwidth - self.margin
        self.winy = self.bar.height+self.margin
        self.add_defaults(bar.defaults)
        self.qtile = qtile
        self.bar = bar
        self.window = window.Internal.create(qtile,
                                             self.winx,
                                             self.winy,
                                             self.winwidth,
                                             self.winheight)

        self.drawer = drawer.Drawer(self.qtile,
                                    self.window.window.wid,
                                    800, 400)

        self.drawer.clear(self.background) #is this actually used?
        self.layout._configure(qtile, bar, self.window, self.drawer)

        self.window.handle_Expose = self.handle_Expose
        self.window.handle_ButtonPress = self.handle_ButtonPress
        self.window.handle_ButtonRelease = self.handle_ButtonRelease
        qtile.windows_map[self.window.window.wid] = self.window