aboutsummaryrefslogblamecommitdiffstats
path: root/src/lib/evas/canvas/efl_canvas_object_event_grabber.eo
blob: 24b1bf4af9338392e1ca474b17f29636e6acaa64 (plain) (tree)





















                                                                                    









                                                                                      















                                                           
class Efl.Canvas.Object.Event.Grabber (Efl.Canvas.Group)
{
   [[Low-level rectangle object.

     This provides a smart version of the typical "event rectangle",
     which allows objects to set this as their parent and route events
     to a group of objects. Events will not propagate to non-member objects
     below this object.

     Adding members is done just like a normal smart object, using
     efl_canvas_group_member_add (Eo API) or evas_object_smart_member_add (legacy).

     Child objects are not modified in any way, unlike other types of smart objects.

     It is a user error for any child objects to be stacked above the event
     grabber parent while the event grabber is visible.
     A critical error will be raised if this is detected at any point.

     @since 1.20
   ]]
   data: Efl_Object_Event_Grabber_Data;
   legacy_prefix: evas_object_event_grabber;
   methods {
      @property freeze_when_visible {
         [[Stops the grabber from updating its internal stacking order while visible]]
         values {
            set: bool;
         }
         set {}
         get {}
      }
   }
   implements {
      class.constructor;
      Efl.Object.constructor;
      Efl.Object.destructor;
      Efl.Canvas.Group.group_member_add;
      Efl.Canvas.Group.group_member_del;
      Efl.Canvas.Group.group_children_iterate;
      Efl.Canvas.Group.group_calculate;
      Efl.Canvas.Group.group_change;
      Efl.Canvas.Group.group_need_recalculate { get; set; }
      Efl.Gfx.position { set; }
      Efl.Gfx.size { set; }
      Efl.Gfx.visible { get; set; }
      Efl.Gfx.Stack.layer { set; }
   }
}