summaryrefslogtreecommitdiff
path: root/src/lib/elementary/efl_ui_image.eo
blob: 207a264e70960b0a5b3c897bc34067995803cdf5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
struct @beta Efl.Ui.Image_Progress
{
   [[
     Structure associated with smart callback 'download,progress'.
   ]]
   now:   double; [[Current percentage]]
   total: double; [[Total percentage]]
}

struct @beta Efl.Ui.Image_Error
{
   [[
     Structure associated with smart callback 'download,progress'.
   ]]
   status:     int; [[Error status of the download]]
   open_error: bool; [[$true if the error happened when opening the file, $false otherwise]]
}

class Efl.Ui.Image extends Efl.Ui.Widget implements Efl.Input.Clickable, Efl.Ui.Draggable,
                 Efl.File, Efl.Gfx.Image, Efl.Gfx.Image_Load_Controller, Efl.Player, Efl.Playable, Efl.Gfx.View,
                 Efl.Access.Component, Efl.Access.Widget.Action, Efl.Gfx.Color,
                 Efl.Gfx.Image_Orientable,
                 Efl.Layout.Calc, Efl.Layout.Group, Efl.Layout.Signal,
                 Efl.Gfx.Arrangement
{
   [[Efl UI image class

     When loading images from a file, the @Efl.File.key property can be used to access different
     streams. For example, when accessing Evas image caches.

     @since 1.23
   ]]
   event_c_prefix: efl_ui_image;
   methods {
      @property icon {
         [[The image name, using icon standards names.

           For example, freedesktop.org defines standard icon names such
           as "home" and "network". There can be different icon sets to
           match those icon keys. The "name" given as parameter is one of
           these "keys" and will be used to look in the freedesktop.org
           paths and elementary theme.

           If the name is not found in any of the expected locations and is
           the absolute path of an image file, this image will be used.
           Lookup order used by @.icon.set can be set using "icon_theme" in config.

           If the image was set using @Efl.File.file instead of
           @.icon.set, then reading this property will return null.

           Note: The image set by this function is changed when
           @Efl.File.load is called.

           Note: This function does not accept relative icon paths.

           See also @.icon.get.
         ]]
         set {
            return: bool; [[$true on success, $false on error]]
         }
         get {
         }
         values {
            name: string; [[The icon name]]
         }
      }
   }
   implements {
      Efl.Object.constructor;
      Efl.Object.invalidate;
      Efl.File.load;
      Efl.File.unload;
      Efl.Gfx.Color.color { set; }
      Efl.Gfx.Entity.visible { set; }
      Efl.Gfx.Entity.position { set; }
      Efl.Gfx.Entity.size { set; }
      Efl.Gfx.View.view_size { get; }
      Efl.Gfx.Image.can_upscale { get; set; }
      Efl.Gfx.Image.can_downscale { get; set; }
      Efl.Gfx.Image.image_size { get; }
      Efl.Gfx.Image_Load_Controller.load_async_start;
      Efl.Gfx.Image_Load_Controller.load_async_cancel;
      Efl.Gfx.Image_Load_Controller.load_dpi { get; set; }
      Efl.Gfx.Image_Load_Controller.load_size { get; set; }
      Efl.Gfx.Image_Load_Controller.load_orientation { get; set; }
      Efl.Gfx.Image_Load_Controller.load_scale_down { get; set; }
      Efl.Gfx.Image_Load_Controller.load_skip_header { get; set; }
      Efl.Gfx.Image_Load_Controller.load_region { get; set; }
      Efl.Gfx.Image_Load_Controller.load_region_support { get; }
      Efl.Gfx.Image.smooth_scale { get; set; }
      Efl.Gfx.Image.scale_method { get; set; }
      Efl.Gfx.Image_Orientable.image_orientation { get; set; }
      Efl.Gfx.Image.ratio { get; }
      Efl.Gfx.Image.content_region { get; }
      Efl.Gfx.Image.border_insets { get; set; }
      Efl.Gfx.Image.border_insets_scale { get; set; }
      Efl.Gfx.Image.center_fill_mode { get; set; }
      Efl.Gfx.Image.stretch_region { get; set; }
      Efl.Gfx.Image.scale_hint { get; set; }
      Efl.Gfx.Image.content_hint { get; set; }
      Efl.Gfx.Image.image_load_error { get; }
      Efl.Playable.playable { get; }
      Efl.Player.playing { get; set; }
      Efl.Player.paused { get; set; }
      Efl.Player.playback_position { get; set; }
      Efl.Player.playback_progress { get; }
      Efl.Player.playback_speed { get; set; }
      Efl.Layout.Signal.signal_emit;
      Efl.Layout.Signal.message_send;
      Efl.Layout.Signal.signal_callback_add;
      Efl.Layout.Signal.signal_callback_del;
      Efl.Layout.Signal.signal_process;
      Efl.Layout.Group.group_size_min { get; }
      Efl.Layout.Group.group_size_max { get; }
      Efl.Layout.Group.group_data { get; }
      Efl.Layout.Group.part_exist { get; }
      Efl.Layout.Calc.calc_freeze;
      Efl.Layout.Calc.calc_thaw;
      Efl.Layout.Calc.calc_auto_update_hints { get; set; }
      Efl.Layout.Calc.calc_size_min;
      Efl.Layout.Calc.calc_parts_extends;
      Efl.Layout.Calc.calc_force;
      Efl.Canvas.Object.clipper { set; }
      Efl.Canvas.Group.group_member_add;
      Efl.Ui.Draggable.drag_target { get; set; }
      Efl.Ui.Property_Bind.property_bind;
      Efl.Ui.Widget.theme_apply;
      Efl.Ui.Widget.widget_input_event_handler;
      Efl.Access.Component.extents { get; }
      Efl.Access.Widget.Action.elm_actions { get; }
      Efl.Gfx.Arrangement.content_align { get; set; }
   }
   events {
      drop @beta: string; [[Called when drop from drag and drop happened]] /* FIXME - Belongs to DnD interface */
   }
}