summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/efl_canvas_proxy.eo
blob: caae9e776732410d92db211baa499f9de3072aa7 (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
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
class Efl.Canvas.Proxy (Efl.Canvas.Image.Internal, Efl.Gfx.Buffer)
{
   [[Low-level proxy image object.

     A proxy is a special kind of image containing the pixels from a source
     object attached to it. It can be used to apply some sort of image
     transformation to any object (eg. filters, map or zoom).
   ]]
   data: null;
   methods {
      @property source {
         [[The source object for this proxy.

           The proxy object will mirror the rendering contents of a given
           source object in its drawing region, without affecting that
           source in any way. The source must be another valid @Efl.Canvas.Object.
           Other effects may be applied to the proxy, such as a map (see
           @Efl.Canvas.Object.map) to create a reflection of the original object
           (for example).

           Any existing source object will be removed after this call.

           Note: This property should be set as soon as creating a proxy
           object, otherwise the proxy will do nothing.

           Warning: You cannot set a proxy as another proxy's source.
         ]]
         set {
            return: bool; [[Returns $true in case of success.]]
         }
         get {}
         values {
            src: Efl.Canvas.Object @nonull; [[Source object to use for the proxy.]]
         }
      }
      @property source_clip {
         [[Clip this proxy object with the source object's clipper.

           Use this if you want to overlay an existing object with its proxy,
           and apply some sort of transformation on it.

           $true means both objects will share the same clip.

           @since 1.8
         ]]
         set {}
         get {}
         values {
            source_clip: bool; [[Whether $obj is clipped by the source
                                clipper ($true) or not ($false).]]
         }
      }
      @property source_events {
         [[Defines whether the events on this object are repeated to the source.

           If $source is $true, it will make events on $obj to also be
           repeated for the source object (see @.source.set). Even the
           $obj and source geometries are different, the event position
           will be transformed to the source object's space.

           If $source is $false, events occurring on $obj will be
           processed only on it.

           @since 1.8
         ]]
         set {}
         get {}
         values {
            repeat: bool; [[Whether this object should pass events ($true) or not
                            ($false) to its source.]]
         }
      }
   }
   implements {
      Efl.Gfx.Buffer.buffer_map;
      Efl.Gfx.Buffer.buffer_unmap;
   }
}