1class @beta Efl.Ui.Pan extends Efl.Canvas.Group implements Efl.Content 2{ 3 [[Pan widget class. 4 5 This widget positions its contents (set using @Efl.Content.content) relative to the widget itself. 6 This is particularly useful for large content which does not fit inside its container. In this case 7 only a portion is shown. 8 9 The position of this "window" into the content can be changed using @Efl.Ui.Pan.pan_position. 10 This widget does not provide means for a user to change the content's position (like scroll bars). 11 This widget is meant to be used internally by other classes like @Efl.Ui.Scroll.Manager. 12 ]] 13 methods { 14 @property pan_position { 15 [[Position of the content inside the Pan widget. 16 17 Setting the position to @Efl.Ui.Pan.pan_position_min makes the upper left corner of the content visible. 18 Setting the position to @Efl.Ui.Pan.pan_position_max makes the lower right corner of the content visible. 19 Values outside this range are valid and make the background show. 20 ]] 21 values { 22 position: Eina.Position2D; [[Content position.]] 23 } 24 } 25 @property content_size { 26 [[Size of the content currently set through @Efl.Content.content. 27 This is a convenience proxy. 28 ]] 29 get { 30 } 31 values { 32 size: Eina.Size2D; [[The size of the content.]] 33 } 34 } 35 @property pan_position_min { 36 [[Position you can set to @Efl.Ui.Pan.pan_position so that the content's upper left corner is visible. 37 Always (0, 0). 38 ]] 39 get { 40 } 41 values { 42 pos: Eina.Position2D; [[Content's upper left corner position.]] 43 } 44 } 45 @property pan_position_max { 46 [[Position you can set to @Efl.Ui.Pan.pan_position so that the content's lower right corner is visible. 47 It depends both on the content's size and this widget's size. 48 ]] 49 get { 50 } 51 values { 52 pos: Eina.Position2D; [[Content's lower right corner position.]] 53 } 54 } 55 } 56 implements { 57 Efl.Object.constructor; 58 Efl.Object.destructor; 59 Efl.Gfx.Entity.visible { set; } 60 Efl.Gfx.Entity.position { set; } 61 Efl.Gfx.Entity.size { set; } 62 Efl.Content.content { set; get; } 63 Efl.Content.content_unset; 64 Efl.Canvas.Group.group_calculate; 65 } 66 events { 67 pan,content_position,changed: Eina.Position2D; [[The content's position has changed, its position in the event 68 is the new position.]] 69 pan,content_size,changed: Eina.Size2D; [[The content's size has changed, its size in the event is the new size.]] 70 } 71} 72