summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/efl_canvas_surface.eo
blob: cc4b8d729d20aa934f346dbf12f98ab8df29dfda (plain)
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
mixin Efl.Canvas.Surface (Evas.Image, Efl.Gfx.Buffer, Efl.Gfx.View)
{
   [[Native surfaces usually bound to an externally-managed buffer.

     The attached @.native_buffer is entirely platform-dependent, which means
     some of this mixin's subclasses will not work (constructor returns $null)
     on some platforms. This class is meant to be used from native code only
     (C or C++), with direct access to the display system or a buffer
     allocation system.
   ]]
   legacy_prefix: null;
   methods {
      @property native_buffer {
          [[External buffer attached to this native surface.

            Set to $null to detach this surface from the external buffer.
          ]]
          get {}
          set {
             [[Set the buffer. If this fails, this function returns $false,
               and the surface is left without any attached buffer.
             ]]
             return: bool @warn_unused;
          }
          values {
             buffer: void*; [[The external buffer, depends on its type.]]
          }
      }
   }
   implements {
      Eo.Base.constructor;
   }
}