Gaphas gaphas-canvas (1.0, 0.0, 0.0, 1.0, 703.7048118590997, 594.203125) 173.0 193.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 305.7109375, 599.703125) 144.0 91.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 206.8898501407507, 130.51953125) 164.04856185909966 83.0 1 0 0 (1.0, 0.0, 0.0, 1.0, 414.96653060909966, 348.71875) 100.0 58.0 0 0 0 (1.0, 0.0, 0.0, 1.0, 485.5859375, 122.51953125) 100.0 91.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 653.6423118590997, 832.4921875) 124.0 85.19921875 1 0 0 (1.0, 0.0, 0.0, 1.0, 322.50619421075066, 213.51953125) 1 0 [(0.0, 0.0), (0.0, 61.26953125), (75.960336398349, 61.26953125)] 0 (1.0, 0.0, 0.0, 1.0, 370.93841199985036, 166.05078125) 0 0 [(0.0, 0.0), (114.64752550014964, 2.9431266681999944)] 0 (1.0, 0.0, 0.0, 1.0, 741.84765625, 832.4921875) 0 0 [(0.0, 0.0), (-0.43359375, -45.2890625)] 0 (1.0, 0.0, 0.0, 1.0, 703.7048118590997, 662.8133352987421) 0 0 [(0.0, 0.0), (-253.99387435909966, -6.110210298742118)] 0 (1.0, 0.0, 0.0, 1.0, 264.35775671075066, 213.51953125) 1 0 [(0.0, 0.0), (0.0, 115.0020841969997), (20.052468109549864, 115.0020841969997), (20.052468109549864, 244.90625)] 0 (1.0, 0.0, 0.0, 1.0, 111.2109375, 798.3515625) 100.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 162.12109375, 689.3515625) 0 0 [(0.0, 0.0), (1.1484375, 109.0)] 0 (1.0, 0.0, 0.0, 1.0, 803.3046875, 67.60546875) 101.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 803.3046875, 139.51953125) 120.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 806.4140625, 213.51953125) 109.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 973.65625, 217.7890625) 123.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 923.3046875, 170.8515625) 1 1 [(0.0, 0.0), (66.6328125, 0.0), (66.6328125, 46.9375)] 0 (1.0, 0.0, 0.0, 1.0, 904.3046875, 91.54296875) 1 1 [(0.0, 0.0), (112.1875, 0.0), (112.1875, 126.24609375)] 0 (1.0, 0.0, 0.0, 1.0, 255.7109375, 798.3515625) 100.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 423.58203125, 798.3515625) 100.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 423.58203125, 826.4140625) 0 0 [(0.0, 0.0), (-67.87109375, 0.5546875)] 0 (1.0, 0.0, 0.0, 1.0, 211.2109375, 826.4921875) 0 0 [(0.0, 0.0), (44.5, -1.50390625)] 0 (1.0, 0.0, 0.0, 1.0, 223.9384120003005, 15.4765625) 129.95143814 61.2912483318 0 0 0 (1.0, 0.0, 0.0, 1.0, 289.52963171075066, 76.7678108318) 0 0 [(0.0, 0.0), (0.453125, 53.751720418199994)] (1.0, 0.0, 0.0, 1.0, 653.6423118590997, 871.3065485846857) 1 1 [(0.0, 0.0), (-68.05637435909966, 0.0), (-68.05637435909966, -47.10342358468574), (-130.06028060909966, -47.10342358468574)] 0 (1.0, 0.0, 0.0, 1.0, 546.5573460623677, 458.42578125) 100.0 74.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 594.4467233747355, 458.42578125) 1 0 [(0.0, 0.0), (0.0, -81.30804393350002), (-79.48019276563582, -81.30804393350002)] 0 (1.0, 0.0, 0.0, 1.0, 794.8828125, 594.203125) 1 0 [(0.0, 0.0), (0.0, -34.390625), (-201.73296412526452, -34.390625), (-201.73296412526452, -61.77734375)] 0 (1.0, 0.0, 0.0, 1.0, 698.9329699061839, 352.83203125) 169.0 129.0 (1.0, 0.0, 0.0, 1.0, 698.9329699061839, 447.83203125) 0 0 [(0.0, 0.0), (-69.96156134381613, 10.59375)] (1.0, 0.0, 0.0, 1.0, 108.7109375, 632.3515625) 105.0 57.0 (1.0, 0.0, 0.0, 1.0, 213.7109375, 664.9140625) 0 0 [(0.0, 0.0), (92.0, -3.265625)] 0 (1.0, 0.0, 0.0, 1.0, 236.45999079917829, 458.42578125) 100.0 74.0 (1.0, 0.0, 0.0, 1.0, 288.5547560703005, 532.42578125) 1 0 [(0.0, 0.0), (0.0, 34.9453125), (96.00094670082171, 34.9453125), (96.00094670082171, 67.27734375)] 0 (1.0, 0.0, 0.0, 1.0, 398.46653060909966, 237.8046875) 133.0 70.0 0 0 (1.0, 0.0, 0.0, 1.0, 465.7734375, 307.8046875) 0 0 [(0.0, 0.0), (0.00390625, 40.9140625)] (1.0, 0.0, 0.0, 1.0, 809.2331273123677, 832.4921875) 117.39968518763226 85.19921875 0 (1.0, 0.0, 0.0, 1.0, 844.28515625, 787.203125) 0 0 [(0.0, 0.0), (2.618225458220536, 45.2890625)] 0 (1.0, 0.0, 0.0, 1.0, 585.5859375, 145.62890625) 1 1 [(0.0, 0.0), (74.09375, 0.0), (74.09375, -54.17578125), (217.71875, -54.17578125)] 0 (1.0, 0.0, 0.0, 1.0, 585.5859375, 197.8203125) 1 1 [(0.0, 0.0), (71.57421875, 0.0), (71.57421875, 46.65234375), (220.828125, 46.65234375)] 0 (1.0, 0.0, 0.0, 1.0, 585.5859375, 172.48046875) 1 1 [(0.0, 0.0), (74.09375, 0.0), (74.09375, -4.62890625), (217.71875, -4.62890625)] 0 (1.0, 0.0, 0.0, 1.0, 915.4140625, 249.83203125) 0 0 [(0.0, 0.0), (58.2421875, 0.0)] 0 1 Item Canvas GtkView 1 Tool 1 Painter Handle position Point painter 1 1 composite * * composite items * * canvas * * * * model 1 1 Solver composite paint return ItemPainter HandlePainter PainterChain DefaultPainter composite composite Constraint Variable draw return context point return x y matrix handles return bounding_box selection request_update return update return gtk (1.0, 0.0, 0.0, 1.0, 150.0, 139.0) 515.46875 280.4921875 (1.0, 0.0, 0.0, 1.0, 222.625, 318.76171875) 110.0 54.0 0 0 0 (1.0, 0.0, 0.0, 1.0, 473.2421875, 318.76171875) 133.0 54.0 0 0 gtk DrawingArea controller * * 2 2 1 Generic Aspects are used as mediators between tool and item. Tools take care of the "what", aspects take care of the "how." Profile Profile diagram (1.0, 0.0, 0.0, 1.0, 238.0, 289.0) 117.0 74.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 327.18359375, 140.55859375) 100.0 74.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 377.18359375, 214.55859375) 0 0 [(0.0, 0.0), (-84.18359375, 74.44140625)] (1.0, 0.0, 0.0, 1.0, 408.44140625, 289.0) 129.0 74.0 (1.0, 0.0, 0.0, 1.0, 400.16015625, 214.55859375) 0 0 [(0.0, 0.0), (72.6875, 74.44140625)] Aspect Class baseClass composite * { background-color: transparent; color: black; font-family: sans; font-size: 14; highlight-color: rgba(0, 0, 255, 0.4); line-width: 2; padding: 0; } diagram { background-color: white; line-style: normal; line-style: sloppy 0.3; } Protocol baseClass composite Connections composite 1 Model EventController ports matrix_i2c Port composite * * glue return constraint return view (1.0, 0.0, 0.0, 1.0, 165.3625063907507, 172.79296875) 164.04856185909966 83.0 1 0 0 (1.0, 0.0, 0.0, 1.0, 293.50718865618387, 478.984375) 169.0 129.0 (1.0, 0.0, 0.0, 1.0, 356.93918685909966, 280.078125) 133.0 70.0 0 0 (1.0, 0.0, 0.0, 1.0, 250.1015625, 119.0412483318) 0 0 [(0.0, 0.0), (-1.32421875, 53.751720418199994)] (1.0, 0.0, 0.0, 1.0, 182.4110682503005, 57.75) 129.95143814 61.2912483318 0 0 0 (1.0, 0.0, 0.0, 1.0, 373.43918685909966, 390.9921875) 100.0 58.0 0 0 0 (1.0, 0.0, 0.0, 1.0, 462.50718865618387, 520.78515625) 0 0 [(0.0, 0.0), (53.01109490618387, -20.0859375)] (1.0, 0.0, 0.0, 1.0, 515.5182835623677, 448.9921875) 100.0 74.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 439.93918685909966, 162.32421875) 100.0 91.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 424.24609375, 350.078125) 0 0 [(0.0, 0.0), (0.00390625, 40.9140625)] (1.0, 0.0, 0.0, 1.0, 222.83041296075066, 255.79296875) 1 0 [(0.0, 0.0), (0.0, 115.0020841969997), (-9.517672548877727, 115.0020841969997), (-9.517672548877727, 170.90625)] 0 (1.0, 0.0, 0.0, 1.0, 165.3625063907507, 426.69921875) 100.0 74.0 (1.0, 0.0, 0.0, 1.0, 280.97885046075066, 255.79296875) 1 0 [(0.0, 0.0), (0.0, 61.26953125), (75.960336398349, 61.26953125)] 0 (1.0, 0.0, 0.0, 1.0, 563.4076608747355, 448.9921875) 1 0 [(0.0, 0.0), (0.0, -29.601012683500016), (-89.96847401563582, -29.601012683500016)] 0 (1.0, 0.0, 0.0, 1.0, 329.41106824985036, 208.32421875) 0 0 [(0.0, 0.0), (110.5281186092493, 0.47437666819999436)] 0 painter (1.0, 0.0, 0.0, 1.0, 163.2421875, 175.03515625) 1 1 [(0.0, 0.0), (71.57421875, 0.0), (71.57421875, 72.69921875), (220.828125, 72.69921875)] 0 (1.0, 0.0, 0.0, 1.0, 63.2421875, 99.734375) 100.0 91.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 384.0703125, 190.734375) 109.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 380.9609375, 116.734375) 120.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 163.2421875, 149.6953125) 1 1 [(0.0, 0.0), (74.09375, 0.0), (74.09375, -4.62890625), (217.71875, -4.62890625)] 0 (1.0, 0.0, 0.0, 1.0, 493.0703125, 227.046875) 0 0 [(0.0, 0.0), (58.2421875, 0.0)] 0 (1.0, 0.0, 0.0, 1.0, 551.3125, 195.00390625) 123.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 500.9609375, 148.06640625) 1 1 [(0.0, 0.0), (66.6328125, 0.0), (66.6328125, 46.9375)] 0 (1.0, 0.0, 0.0, 1.0, 481.9609375, 68.7578125) 1 1 [(0.0, 0.0), (112.1875, 0.0), (112.1875, 126.24609375)] 0 (1.0, 0.0, 0.0, 1.0, 380.9609375, 44.8203125) 101.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 163.2421875, 122.84375) 1 1 [(0.0, 0.0), (74.09375, 0.0), (74.09375, -54.17578125), (217.71875, -54.17578125)] 0 canvas (1.0, 0.0, 0.0, 1.0, 633.8454368590997, 259.15625) 0 0 [(0.0, 0.0), (-107.14746579673192, -1.3359375)] 0 (1.0, 0.0, 0.0, 1.0, 633.8454368590997, 195.3203125) 173.0 193.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 382.69797106236774, 200.8203125) 144.0 91.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 402.19797106236774, 340.859375) 105.0 57.0 0 0 (1.0, 0.0, 0.0, 1.0, 455.25, 340.859375) 0 0 [(0.0, 0.0), (-1.41796875, -49.0390625)] 0 (1.0, 0.0, 0.0, 1.0, 397.4638970491783, 67.171875) 100.0 58.0 0 0 (1.0, 0.0, 0.0, 1.0, 449.5586623203005, 125.171875) 1 0 [(0.0, 0.0), (0.0, 42.29296875), (11.984074013189456, 42.29296875), (11.984074013189456, 75.6484375)] 0 (1.0, 0.0, 0.0, 1.0, 739.3737523123677, 433.609375) 117.39968518763226 85.19921875 0 (1.0, 0.0, 0.0, 1.0, 774.42578125, 388.3203125) 0 0 [(0.0, 0.0), (2.618225458220536, 45.2890625)] 0 (1.0, 0.0, 0.0, 1.0, 404.69797106236774, 447.708984375) 100.0 57.0 0 0 0 (1.0, 0.0, 0.0, 1.0, 583.7829368590997, 433.609375) 124.0 85.19921875 1 0 0 (1.0, 0.0, 0.0, 1.0, 583.7829368590997, 472.42373608468574) 1 1 [(0.0, 0.0), (-37.478249359099664, 0.0), (-37.478249359099664, 1.1368107903142572), (-79.08496579673192, 1.1368107903142572)] 0 (1.0, 0.0, 0.0, 1.0, 611.9714085623677, 67.171875) 103.69656018763226 58.0 0 0 0 (1.0, 0.0, 0.0, 1.0, 725.0234375, 195.3203125) 1 0 [(0.0, 0.0), (0.0, -34.390625), (-64.7372067343639, -34.390625), (-64.7372067343639, -70.1484375)] 0 (1.0, 0.0, 0.0, 1.0, 671.98828125, 433.609375) 0 0 [(0.0, 0.0), (-0.43359375, -45.2890625)] 0 connections (1.0, 0.0, 0.0, 1.0, 48.98828125, 293.05078125) 105.0 57.0 (1.0, 0.0, 0.0, 1.0, 48.98828125, 405.453125) 100.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 102.3984375, 350.05078125) 0 0 [(0.0, 0.0), (-1.3515625, 55.40234375)] 0 (1.0, 0.0, 0.0, 1.0, 193.48828125, 405.453125) 100.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 361.359375, 405.453125) 100.0 57.0 1 1 0 (1.0, 0.0, 0.0, 1.0, 361.359375, 433.515625) 0 0 [(0.0, 0.0), (-67.87109375, 0.5546875)] 0 (1.0, 0.0, 0.0, 1.0, 148.98828125, 433.59375) 0 0 [(0.0, 0.0), (44.5, -1.50390625)] 0 (1.0, 0.0, 0.0, 1.0, 239.5234375, 405.453125) 1 0 [(0.0, 0.0), (0.0, -87.046875), (-85.53515625, -87.046875)] 0