enum @beta Efl.Ui.Zoom_Mode { [[Types of zoom available.]] manual = 0, [[Zoom controlled manually by @Efl.Ui.Zoom.zoom_level.]] auto_fit, [[Zoom until whole image fits inside object. Parts of the object might be left blank.]] auto_fill, [[Zoom until image fills the object. Parts of the image might not show.]] auto_fit_in, [[Zoom in until image fits inside object.]] last [[Internal. Sentinel value to indicate last enum field during iteration.]] } interface @beta Efl.Ui.Zoom { [[Efl UI zoom interface]] event_c_prefix: efl_ui; c_prefix: efl_ui; methods { @property zoom_animation { [[This sets the zoom animation state to on or off for zoomable. The default is off. When $paused is $true, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.]] set {} get {} values { paused: bool; [[The paused state.]] } } @property zoom_level { [[Zoom level of the image. This selects the zoom level. If $zoom is 1, it means no zoom. If it's smaller than 1, it means zoom in. If it's bigger than 1, it means zoom out. For example, $zoom 1 will be 1:1 pixel for pixel. $zoom 2 will be 2:1 (that is 2x2 photo pixels will display as 1 on-screen pixel) which is a zoom out. 4:1 will be 4x4 photo pixels as 1 screen pixel, and so on. The $zoom parameter must be greater than 0. It is suggested to stick to powers of 2. (1, 2, 4, 8, 16, 32, etc.). Note that if you set @.zoom_mode to anything other than @Efl.Ui.Zoom_Mode.manual (which is the default value) the @.zoom_level might be changed at any time by the zoomable object itself to account for image and viewport size changes. ]] set { } get { } values { zoom: double; [[The image's current zoom level.]] } } @property zoom_mode { [[Zoom mode. This sets the zoom mode to manual or one of several automatic levels. @Efl.Ui.Zoom_Mode.manual means that zoom is controlled manually by @.zoom_level and will stay at that level until changed by code or until @.zoom_mode is changed. This is the default mode. The Automatic modes will allow the zoomable object to automatically adjust zoom mode based on image and viewport size changes. ]] set { } get { } values { mode: Efl.Ui.Zoom_Mode(Efl.Ui.Zoom_Mode.manual); [[The zoom mode.]] } } } events { zoom,start: void; [[Called when zooming started]] zoom,stop: void; [[Called when zooming stopped]] zoom,change: void; [[Called when zooming changed]] } }