示例#1
0
    def on_mouse_pressed(self, x, y, buttons, modifiers):
        # Make a rectangle of the absolute position of our marker
        rectangle = AABox()
        rectangle.position = self.marker.absolute_position
        rectangle.size = self.marker.size

        if rectangle.contains_point(Vector(x, y)):
            logging.debug('Slider Actively Dragging')
            self.actively_dragging = True
示例#2
0
    def test_AABox_contains(self):
        true_tests = [
            ((0,0,1,1), (0,0)),
            ((0,0,1,1), (1,0)),
            ((0,0,1,1), (1,1)),
            ((0,0,1,1), (0,1)),
            ((-10,-10,100,20), (0,0)),
        ]
        
        false_tests = [
            ((0,0,1,1), (-1,0)),
            ((0,0,1,1), (-1,-1)),
            ((0,0,1,1), (0.5,-1)),
            ((0,0,1,1), (-1,0.5)),
            ((0,0,1,1), (0,-1)),
            ((-10,-10,100,20), (-100,-100)),
        ]

        for dimensions, point in true_tests:
            box = AABox(*dimensions)
            self.assertTrue(box.contains(*point))
            self.assertTrue(box.contains_point(Vector(*point)))

        for dimensions, point in false_tests:
            box = AABox(*dimensions)
            self.assertFalse(box.contains(*point))
            self.assertFalse(box.contains_point(Vector(*point)))
示例#3
0
 def on_mouse_pressed(self, x, y, buttons, modifiers):
     rectangle = AABox()
     rectangle.position = self.absolute_position
     rectangle.size = self.size
     if rectangle.contains(x,y):
         self.checked = not self.checked