Example #1
0
 def test_border(self):
     c = Component(
         bounds=[50.0, 60.0],
         position=[20, 20],
         padding=10,
         border_visible=True,
         border_width=1)
     self.assertTrue(c.outer_x == 10)
     self.assertTrue(c.outer_y == 10)
     self.assertTrue(c.outer_bounds[0] == 70)
     self.assertTrue(c.outer_bounds[1] == 80)
     return
Example #2
0
def test_padding_init():
    """ Make sure that padding traits passed to the constructor get set in the
    correct order.
    """
    c = Component()
    assert c.padding_top == 0
    assert c.padding_bottom == 0
    assert c.padding_left == 0
    assert c.padding_right == 0
    c = Component(padding=50)
    assert c.padding_top == 50
    assert c.padding_bottom == 50
    assert c.padding_left == 50
    assert c.padding_right == 50
    c = Component(padding=50, padding_top=15)
    assert c.padding_top == 15
    assert c.padding_bottom == 50
    assert c.padding_left == 50
    assert c.padding_right == 50
    c = Component(padding=50, padding_bottom=15)
    assert c.padding_top == 50
    assert c.padding_bottom == 15
    assert c.padding_left == 50
    assert c.padding_right == 50
    c = Component(padding=50, padding_left=15)
    assert c.padding_top == 50
    assert c.padding_bottom == 50
    assert c.padding_left == 15
    assert c.padding_right == 50
    c = Component(padding=50, padding_right=15)
    assert c.padding_top == 50
    assert c.padding_bottom == 50
    assert c.padding_left == 50
    assert c.padding_right == 15
    def test_adjust_bounds(self):
        container = Container(bounds=[100.0, 100.0])
        component = Component(bounds=[50.0, 50.0], position=[5.0, 5.0])
        container.add(component)
        view = Viewport(component=container,
                        view_bounds=[50.0, 50.0],
                        view_position=[10, 10],
                        position=[0, 0],
                        bounds=[50, 50])

        # simple resize
        view.bounds = [60, 60]
        self.assertEqual(view.view_position, [10, 10])
Example #4
0
 def test_get_outer_position(self):
     c = Component(bounds=[50.0, 60.0], padding=10, border_visible=False)
     self.assertTrue(c.outer_x == -10)
     self.assertTrue(c.outer_y == -10)
     self.assertTrue(c.outer_position[0] == -10)
     self.assertTrue(c.outer_position[1] == -10)
     self.assertTrue(c.outer_x2 == 59)
     self.assertTrue(c.outer_y2 == 69)
     self.assertTrue(c.outer_width == 70)
     self.assertTrue(c.outer_height == 80)
     self.assertTrue(c.outer_bounds[0] == 70)
     self.assertTrue(c.outer_bounds[1] == 80)
     return
    def test_basic_viewport(self):
        container = Container(bounds=[100.0, 100.0])
        component = Component(bounds=[50.0, 50.0], position=[5.0, 5.0])
        container.add(component)
        view = Viewport(component=container,
                        view_position=[10.0, 10.0],
                        view_bounds=[50.0, 50.0],
                        position=[0, 0],
                        bounds=[50, 50])

        self.assertEqual(view.view_position, [10, 10])
        print(view.components_at(0.0, 0.0), view.view_position)
        self.assertTrue(view.components_at(0.0, 0.0)[0] == component)
        self.assertTrue(view.components_at(44.9, 0.0)[0] == component)
        self.assertTrue(view.components_at(0.0, 44.9)[0] == component)
        self.assertTrue(view.components_at(44.9, 44.9)[0] == component)

        self.assertTrue(view.components_at(46.0, 45.0) == [])
        self.assertTrue(view.components_at(46.0, 0.0) == [])
        self.assertTrue(view.components_at(45.0, 46.0) == [])
        self.assertTrue(view.components_at(0.0, 46.0) == [])
    def test_adjust_bounds_vanchor_top(self):
        container = Container(bounds=[100.0, 100.0])
        component = Component(bounds=[50.0, 50.0], position=[5.0, 5.0])
        container.add(component)
        view = Viewport(component=container,
                        view_bounds=[50.0, 50.0],
                        view_position=[20, 20],
                        position=[0, 0],
                        bounds=[50, 50],
                        vertical_anchor='top')

        # simple resize
        view.bounds = [60, 60]
        self.assertEqual(view.view_position, [20, 10.0])

        # resize beyond bottom
        view.bounds = [80, 80]
        self.assertEqual(view.view_position, [20, -10.0])

        # resize bigger than view
        view.bounds = [120, 120]
        self.assertEqual(view.view_position, [20, -50.0])
    def test_adjust_bounds_hanchor_center(self):
        container = Container(bounds=[100.0, 100.0])
        component = Component(bounds=[50.0, 50.0], position=[5.0, 5.0])
        container.add(component)
        view = Viewport(component=container,
                        view_bounds=[50.0, 50.0],
                        view_position=[20, 20],
                        position=[0, 0],
                        bounds=[50, 50],
                        horizontal_anchor='center')

        # simple resize
        view.bounds = [60, 60]
        self.assertEqual(view.view_position, [15.0, 20])

        # resize beyond left
        view.bounds = [95, 95]
        self.assertEqual(view.view_position, [-2.5, 20])

        # resize bigger than view
        view.bounds = [120, 120]
        self.assertEqual(view.view_position, [-15.0, 20])
Example #8
0
    def setUp(self):

        EnamlTestAssistant.setUp(self)

        enaml_source = """
from enaml.widgets.api import MainWindow
from traits_enaml.widgets.enable_canvas import EnableCanvas

enamldef MainView(MainWindow):
    attr model

    EnableCanvas:
        name = 'canvas'
        component << model.component
"""
        self.component = Component()
        self.model = Model(component=self.component)

        view, toolkit_view = self.parse_and_create(enaml_source,
                                                   model=self.model)

        self.view = view
    def test_adjust_bounds_hanchor_top_stay_inside(self):
        container = Container(bounds=[100.0, 100.0])
        component = Component(bounds=[50.0, 50.0], position=[5.0, 5.0])
        container.add(component)
        view = Viewport(component=container,
                        view_bounds=[50.0, 50.0],
                        view_position=[20, 20],
                        position=[0, 0],
                        bounds=[50, 50],
                        horizontal_anchor='right',
                        stay_inside=True)

        # simple resize
        view.bounds = [60, 60]
        self.assertEqual(view.view_position, [10, 20.0])

        # resize beyond left
        view.bounds = [80, 80]
        self.assertEqual(view.view_position, [0, 20.0])

        # resize bigger than view
        view.bounds = [120, 120]
        self.assertEqual(view.view_position, [-20.0, 0])
    def test_adjust_bounds_vanchor_center_stay_inside(self):
        container = Container(bounds=[100.0, 100.0])
        component = Component(bounds=[50.0, 50.0], position=[5.0, 5.0])
        container.add(component)
        view = Viewport(component=container,
                        view_bounds=[50.0, 50.0],
                        view_position=[20, 20],
                        position=[0, 0],
                        bounds=[50, 50],
                        vertical_anchor='center',
                        stay_inside=True)

        # simple resize
        view.bounds = [60, 60]
        self.assertEqual(view.view_position, [20, 15.0])

        # resize beyond left
        view.bounds = [95, 95]
        self.assertEqual(view.view_position, [5, 0.0])

        # resize bigger than view
        view.bounds = [120, 120]
        self.assertEqual(view.view_position, [0, -10.0])
Example #11
0
 def test_set_outer_position(self):
     c = Component(bounds=[50.0, 60.0], padding=10, border_visible=False)
     # Test setting various things
     c.outer_position = [0, 0]
     self.assertTrue(c.outer_x == 0)
     self.assertTrue(c.outer_y == 0)
     self.assertTrue(c.x == 10)
     self.assertTrue(c.y == 10)
     self.assertTrue(c.outer_x2 == 69)
     self.assertTrue(c.outer_y2 == 79)
     c.outer_x = 10
     self.assertTrue(c.x == 20)
     self.assertTrue(c.outer_x2 == 79)
     c.outer_x2 = 99
     self.assertTrue(c.outer_x2 == 99)
     self.assertTrue(c.outer_x == 30)
     self.assertTrue(c.x2 == 89)
     self.assertTrue(c.x == 40)
     c.outer_y2 = 99
     self.assertTrue(c.outer_y2 == 99)
     self.assertTrue(c.outer_y == 20)
     self.assertTrue(c.y2 == 89)
     self.assertTrue(c.y == 30)
    def test_adjust_container_bounds_hanchor_right(self):
        container = Container(bounds=[100.0, 100.0])
        component = Component(bounds=[50.0, 50.0], position=[5.0, 5.0])
        container.add(component)
        view = Viewport(component=container,
                        view_bounds=[50.0, 50.0],
                        view_position=[20, 20],
                        position=[0, 0],
                        bounds=[50, 50],
                        horizontal_anchor='right')

        # simple resize bigger
        container.bounds = [120, 120]
        self.assertEqual(view.view_position, [40, 20.0])

        # simple resize smaller
        container.height = 90
        container.width = 90
        self.assertEqual(view.view_position, [10, 20.0])

        # simple resize much smaller
        container.bounds[0] = 40
        container.bounds[1] = 40
        self.assertEqual(view.view_position, [-40, 20.0])
Example #13
0
 def check_container(self):
     c = Component()
     self.assertTrue(c.container is None)
Example #14
0
 def test_position(self):
     c = Component(bounds=[50.0, 50.0])
     self.assertTrue(c.position[0] == c.x)
     self.assertTrue(c.position[1] == c.y)
     self.assertTrue(c.x == 0.0)
     self.assertTrue(c.y == 0.0)