efl::gfx::stack Struct Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files
- Examples

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

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)
concrete & | operator= (concrete const &other)
| Assignment operator.
concrete & | operator= (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< concrete > | parent_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

  eo | The 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

  below | the 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

  above | the 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

  l | The 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

  l | The 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()