Ejemplo n.º 1
0
    def __setitem__(self, item, value):
        """Can currently set the state of mouse buttons as well as the
            mouse position. Supports iterable arguments"""
        ak = self._getButtons().keys() + [self.Pos]

        if isiterable(item) and isiterable(value):
            isfalse = lambda x: True if not x in ak else False
            for i in map(isfalse, item):
                if i:
                    raise MouseException('One of the items is not valid. Items:', item)
            if len(item) != len(value):
                raise MouseException('Not enough values for items')

            for i, v in dict(zip(item, value)).iteritems():
                if i == self.Pos:
                    self._setMousePos(v)
                elif i in self._getButtons().keys():
                    self._setMouseButtonState(self._buttonToInt(i), \
                                              1 if v else 0)
            return
        else:
            if item in ak:
                if item == self.Pos:
                    self._setMousePos(value)
                elif item in self._getButtons().keys():
                    self._setMouseButtonState(self._buttonToInt(item), \
                                              1 if value else 0)
                return
            else:
                raise MouseException('Invalid item / value')

                
            
        raise MouseException('FIXME')
Ejemplo n.º 2
0
    def __setitem__(self, item, value):
        """Can currently set the state of mouse buttons as well as the
            mouse position. Supports iterable arguments"""
        ak = self._getButtons().keys() + [self.Pos]

        if isiterable(item) and isiterable(value):
            isfalse = lambda x: True if not x in ak else False
            for i in map(isfalse, item):
                if i:
                    raise MouseException(
                        'One of the items is not valid. Items:', item)
            if len(item) != len(value):
                raise MouseException('Not enough values for items')

            for i, v in dict(zip(item, value)).iteritems():
                if i == self.Pos:
                    self._setMousePos(v)
                elif i in self._getButtons().keys():
                    self._setMouseButtonState(self._buttonToInt(i), \
                                              1 if v else 0)
            return
        else:
            if item in ak:
                if item == self.Pos:
                    self._setMousePos(value)
                elif item in self._getButtons().keys():
                    self._setMouseButtonState(self._buttonToInt(item), \
                                              1 if value else 0)
                return
            else:
                raise MouseException('Invalid item / value')

        raise MouseException('FIXME')
Ejemplo n.º 3
0
    def __getitem__(self, item):
        """Can currently return the state of mouse buttons as well as the
            mouse position. Supports iterable arguments"""
        if isiterable(item):
            res = []
            for i in item:
                if i == self.Pos:
                    res.append(self._getMousePos())
                elif i in self._getButtons().keys():
                    res.append(self._getMouseButtonState(self._buttonToInt(i)))
                else:
                    raise MouseException('Invalid mouse button')
            return res

        else:
            if item == self.Pos:
                return self._getMousePos() 
            if item in self._getButtons().keys():
                return self._getMouseButtonState(self_buttonToInt(item))

        raise MouseException('item is not iterable nor a (valid) string')
Ejemplo n.º 4
0
    def __getitem__(self, item):
        """Can currently return the state of mouse buttons as well as the
            mouse position. Supports iterable arguments"""
        if isiterable(item):
            res = []
            for i in item:
                if i == self.Pos:
                    res.append(self._getMousePos())
                elif i in self._getButtons().keys():
                    res.append(self._getMouseButtonState(self._buttonToInt(i)))
                else:
                    raise MouseException('Invalid mouse button')
            return res

        else:
            if item == self.Pos:
                return self._getMousePos()
            if item in self._getButtons().keys():
                return self._getMouseButtonState(self_buttonToInt(item))

        raise MouseException('item is not iterable nor a (valid) string')