def register(section, self, winid): assert section in mousebinds for (bindtype, bindkey) in mousebinds[section]: opt = mousebinds[section][(bindtype, bindkey)] if bindtype == 'drag': events.register_drag(eval(opt['start']), eval(opt['drag']), eval(opt['end']), winid, bindkey, propagate=opt['propagate'], grab=opt['grab']) elif bindtype == 'click': events.register_buttonpress(eval(opt['action']), winid, bindkey, propagate=opt['propagate'], grab=opt['grab']) elif bindtype == 'unclick': events.register_buttonrelease(eval(opt['action']), winid, bindkey, propagate=opt['propagate'], grab=opt['grab']) else: assert False, '"%s" is not a valid mouse binding type' % bindtype
def __init__(self, *_): _FrameWindow.__init__(self) self._imgs = dict([(st, None) for st in self.frame.allowed_states]) self._img_w = self._img_h = None self.pos = { 'x': self.frame.pos[self.frm_ident]['x'], 'y': self.frame.pos[self.frm_ident]['y'], 'width': self.frame.pos[self.frm_ident]['width'], 'height': self.frame.pos[self.frm_ident]['height'] } events.register_drag(self.frame.client.cb_move_start, self.frame.client.cb_move_drag, self.frame.client.cb_move_end, self.id, 'Mod4-1', grab=False) events.register_drag(partial(self.frame.client.cb_resize_start, direction=self.direction), self.frame.client.cb_resize_drag, self.frame.client.cb_resize_end, self.id, '1', grab=False) # If this is a corner, then make sure normal resizing uses the # appropriate direction. if self.frm_ident.find('side') == -1: rs_start = partial(self.frame.client.cb_resize_start, direction=self.direction) else: rs_start = self.frame.client.cb_resize_start events.register_drag(rs_start, self.frame.client.cb_resize_drag, self.frame.client.cb_resize_end, self.id, 'Mod4-3', grab=False) self.setup() self.map()
def __init__(self, *_): _FrameWindow.__init__(self) self._imgs = dict([(st, None) for st in self.frame.allowed_states]) self._img_w = self._img_h = None self.pos = {'x': self.frame.pos[self.frm_ident]['x'], 'y': self.frame.pos[self.frm_ident]['y'], 'width': self.frame.pos[self.frm_ident]['width'], 'height': self.frame.pos[self.frm_ident]['height']} events.register_drag(self.frame.client.cb_move_start, self.frame.client.cb_move_drag, self.frame.client.cb_move_end, self.id, 'Mod4-1', grab=False) events.register_drag(partial(self.frame.client.cb_resize_start, direction=self.direction), self.frame.client.cb_resize_drag, self.frame.client.cb_resize_end, self.id, '1', grab=False) # If this is a corner, then make sure normal resizing uses the # appropriate direction. if self.frm_ident.find('side') == -1: rs_start = partial(self.frame.client.cb_resize_start, direction=self.direction) else: rs_start = self.frame.client.cb_resize_start events.register_drag(rs_start, self.frame.client.cb_resize_drag, self.frame.client.cb_resize_end, self.id, 'Mod4-3', grab=False) self.setup() self.map()