Public Member Functions | Static Public Member Functions
efl::gfx::stack Struct Reference

Class stack. More...

Public Member Functions

 stack (Eo *eo)
 Eo Constructor. More...
 
 stack (std::nullptr_t)
 nullptr_t Constructor. More...
 
 stack (stack const &other)
 Copy Constructor.
 
void stack_below (Efl_Gfx_Stack *below_) const
 Stack obj immediately below below. More...
 
void raise () const
 Raise obj to the top of its layer. More...
 
void stack_above (Efl_Gfx_Stack *above_) const
 Stack obj immediately above above. More...
 
void lower () const
 Lower obj to the bottom of its layer. More...
 
short layer_get () const
 Retrieves the layer of its canvas that the given object is part of. More...
 
void layer_set (short l_) const
 Sets the layer of its canvas that the given object will be part of. More...
 
Efl_Gfx_Stack * below_get () const
 Get the Evas object stacked right below obj. More...
 
Efl_Gfx_Stack * above_get () const
 Get the Evas object stacked right above obj. More...
 
 stack (::efl::eo::parent_type _p)
 Constructs a new efl::gfx::stack object. More...
 
- Public Member Functions inherited from efl::eo::concrete
 concrete (Eo *eo)
 Class constructor. More...
 
 concrete ()
 Default constructor. More...
 
 ~concrete ()
 Class destructor.
 
 concrete (concrete const &other)
 
 concrete (concrete &&other)
 
concreteoperator= (concrete const &other)
 Assignment operator.
 
concreteoperator= (concrete &&other)
 
Eo_eo_ptr () const
 Return a pointer to the EO Object stored in this instance. More...
 
Eo_release ()
 Releases the reference from this concrete object and return the pointer to the EO Object stored in this instance. More...
 
void _reset (Eo *_ptr=nullptr)
 Reset the current pointer to reference a new Eo object.
 
int ref_get () const
 Get the reference count of this object. More...
 
void parent_set (concrete parent)
 Set the parent of this object. More...
 
eina::optional< concreteparent_get ()
 Get the parent of this object. More...
 
Eo_Dbg_Info dbg_info_get ()
 Get debug information of this object. More...
 
 operator bool () const
 

Static Public Member Functions

static Eo_Class const * _eo_class ()
 

Additional Inherited Members

- Protected Attributes inherited from efl::eo::concrete
Eo_eo_raw
 The opaque EO Object.
 

Detailed Description

Class stack.

Constructor & Destructor Documentation

efl::gfx::stack::stack ( ::efl::eo::parent_type  _p)
inlineexplicit

Constructs a new efl::gfx::stack object.

Constructs a new efl::gfx::stack object. If you want this object to be a child of another Eo object, use an efl::eo::parent expression, like the example.

Example:

efl::gfx::stack my_stack(efl::eo::parent = parent_object);
See also
stack(Eo* eo)
efl::gfx::stack::stack ( Eo eo)
inlineexplicit

Eo Constructor.

Constructs the object from an Eo* pointer stealing its ownership.

Parameters
eoThe Eo object pointer.
efl::gfx::stack::stack ( std::nullptr_t  )
inlineexplicit

nullptr_t Constructor.

Constructs an empty (null) object.

Member Function Documentation

void efl::gfx::stack::stack_below ( Efl_Gfx_Stack *  below_) const

Stack obj immediately below below.

Objects, in a given canvas, are stacked in the order they get added to it. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.

This function is intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).

If you have smart objects on your canvas and obj is a member of one of them, then below must also be a member of the same smart object.

Similarly, if obj is not a member of a smart object, below must not be either.

See also
evas_object_layer_get()
evas_object_layer_set()
evas_object_stack_below()
Parameters
belowthe object below which to stack
void efl::gfx::stack::raise ( ) const

Raise obj to the top of its layer.

obj will, then, be the highest one in the layer it belongs to. Object on other layers won't get touched.

See also
evas_object_stack_above()
evas_object_stack_below()
evas_object_lower()
void efl::gfx::stack::stack_above ( Efl_Gfx_Stack *  above_) const

Stack obj immediately above above.

Objects, in a given canvas, are stacked in the order they get added to it. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.

This function is intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).

If you have smart objects on your canvas and obj is a member of one of them, then above must also be a member of the same smart object.

Similarly, if obj is not a member of a smart object, above must not be either.

See also
evas_object_layer_get()
evas_object_layer_set()
evas_object_stack_below()
Parameters
abovethe object above which to stack
void efl::gfx::stack::lower ( ) const

Lower obj to the bottom of its layer.

obj will, then, be the lowest one in the layer it belongs to. Objects on other layers won't get touched.

See also
evas_object_stack_above()
evas_object_stack_below()
evas_object_raise()
short efl::gfx::stack::layer_get ( ) const

Retrieves the layer of its canvas that the given object is part of.

Returns
Number of its layer
See also
evas_object_layer_set()
Parameters
lThe number of the layer to place the object on. Must be between EVAS_LAYER_MIN and EVAS_LAYER_MAX.
void efl::gfx::stack::layer_set ( short  l_) const

Sets the layer of its canvas that the given object will be part of.

If you don't use this function, you'll be dealing with an unique layer of objects, the default one. Additional layers are handy when you don't want a set of objects to interfere with another set with regard to stacking. Two layers are completely disjoint in that matter.

This is a low-level function, which you'd be using when something should be always on top, for example.

Warning
Be careful, it doesn't make sense to change the layer of smart objects' children. Smart objects have a layer of their own, which should contain all their children objects.
See also
evas_object_layer_get()
Parameters
lThe number of the layer to place the object on. Must be between EVAS_LAYER_MIN and EVAS_LAYER_MAX.
Efl_Gfx_Stack* efl::gfx::stack::below_get ( ) const

Get the Evas object stacked right below obj.

Returns
the #Efl_Gfx_Stack directly below obj, if any, or NULL, if none

This function will traverse layers in its search, if there are objects on layers below the one obj is placed at.

See also
evas_object_layer_get()
evas_object_layer_set()
evas_object_below_get()
Efl_Gfx_Stack* efl::gfx::stack::above_get ( ) const

Get the Evas object stacked right above obj.

Returns
the #Efl_Gfx_Stack directly above obj, if any, or NULL, if none

This function will traverse layers in its search, if there are objects on layers above the one obj is placed at.

See also
evas_object_layer_get()
evas_object_layer_set()
evas_object_below_get()