Elementary Engine

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

Modules | Functions
Elementary Engine

These are functions setting and querying which rendering engine Elementary will use for drawing its windows' pixels. More...

## Modules
| AT-SPI2 Accessibility
| Elementary widgets support Linux Accessibility standard.

## Functions
EINA_DEPRECATED const char * | elm_config_engine_get (void)
| Get Elementary's rendering engine in use. More...
EINA_DEPRECATED void | elm_config_engine_set (const char *engine)
| Set Elementary's rendering engine for use. More...
const char * | elm_config_preferred_engine_get (void)
| Get Elementary's preferred engine to use. More...
void | elm_config_preferred_engine_set (const char *engine)
| Set Elementary's preferred rendering engine for use. More...
const char * | elm_config_accel_preference_get (void)
| Get Elementary's preferred engine to use. More...
void | elm_config_accel_preference_set (const char *pref)
| Set Elementary's acceleration preferences for new windows. More...
Eina_Bool | elm_config_selection_unfocused_clear_get (void)
| Get whether selection should be cleared when entry widget is unfocused. More...
void | elm_config_selection_unfocused_clear_set (Eina_Bool enabled)
| Set whether selection should be cleared when entry widget is unfocused. More...
Eina_Bool | elm_config_vsync_get (void)
| Get the configured vsync flag. More...
void | elm_config_vsync_set (Eina_Bool enabled)
| Set the configured vsync flag. More...
Eina_Bool | elm_config_accel_preference_override_get (void)
| Get the acceleration override preference flag. More...
void | elm_config_accel_preference_override_set (Eina_Bool enabled)
| Set the acceleration override preference flag. More...
Eina_Bool | elm_config_mirrored_get (void)
| Get the system mirrored mode. More...
void | elm_config_mirrored_set (Eina_Bool mirrored)
| Set the system mirrored mode. More...
Eina_Bool | elm_config_clouseau_enabled_get (void)
| Get the clouseau state. More...
void | elm_config_clouseau_enabled_set (Eina_Bool enabled)
| Get the clouseau state. More...
const char * | elm_config_indicator_service_get (int rotation)
| Get the indicator service name according to the rotation degree. More...
Eina_List * | elm_config_color_classes_list_get (void)
| Get Elementary's list of supported color classes. More...
void | elm_config_color_classes_list_free (Eina_List *list)
| Free Elementary's list of supported color classes. More...
const Eina_List * | elm_config_color_overlay_list_get (void)
| Get Elementary's list of color overlays, set with elm_config_color_overlay_set(). More...
void | elm_config_color_overlay_set (const char *color_class, int r, int g, int b, int a, int r2, int g2, int b2, int a2, int r3, int g3, int b3, int a3)
| Set a color overlay for a given Elementary color class. More...
void | elm_config_color_overlay_unset (const char *color_class)
| Unset a color overlay for a given Elementary color class. More...
void | elm_config_color_overlay_apply (void)
| Apply the changes made with elm_config_color_overlay_set() and elm_config_color_overlay_unset() on the current Elementary window. More...
Eina_Bool | elm_config_magnifier_enable_get (void)
| Get the magnifier enabled state for entries. More...
void | elm_config_magnifier_enable_set (Eina_Bool enable)
| Set the magnifier enabled state for entires. More...
double | elm_config_magnifier_scale_get (void)
| Get the amount of scaling the magnifer does. More...
void | elm_config_magnifier_scale_set (double scale)
| Set the amount of scaling the magnifier does. More...
Eina_Bool | elm_config_audio_mute_get (Edje_Channel channel)
| Get the mute state of an audio channel for effects. More...
void | elm_config_audio_mute_set (Edje_Channel channel, Eina_Bool mute)
| Set the mute state of the specified channel. More...
Eina_Bool | elm_config_window_auto_focus_enable_get (void)
| Get the auto focus enable flag. More...
void | elm_config_window_auto_focus_enable_set (Eina_Bool enable)
| Set the auto focus enabled state. More...
Eina_Bool | elm_config_window_auto_focus_animate_get (void)
| Get the auto focus animate flag. More...
void | elm_config_window_auto_focus_animate_set (Eina_Bool enable)
| Set the auto focus animation flag. More...

## Detailed Description

These are functions setting and querying which rendering engine Elementary will use for drawing its windows' pixels.

The following are the available engines:

- "fb" (Framebuffer)
- "buffer" (Pixel Memory Buffer)
- "ews" (Ecore + Evas Single Process Windowing System)
- NULL - no engine config

Deprecated:
  Please use elm_config_accel_preference_override_set() instead

## Function Documentation

const char* elm_config_accel_preference_get | ( | void |  | ) |

Get Elementary's preferred engine to use.

Returns
  The acceleration preference hint string

Note
  there's no need to free the returned string, here.

See elm_config_accel_preference_set() for more information, but this simply returns what was set by this call, nothing more.

See also
  elm_config_accel_preference_set()

Since
  1.10

Eina_Bool elm_config_accel_preference_override_get | ( | void |  | ) |

Get the acceleration override preference flag.

This gets the acceleration override preference. This is a flag that has the global system acceleration preference configuration forcibly override whatever acceleration preference the application may want.

Returns
  If acceleration override is enabled

Since
  1.11

void elm_config_accel_preference_override_set | ( | Eina_Bool | enabled | ) |

Set the acceleration override preference flag.

This sets the acceleration override preference. This is a flag that has the global system acceleration preference configuration forcibly override whatever acceleration preference the application may want.

Parameters

  enabled | This should be `EINA_TRUE` if enabled, or `EINA_FALSE` if not.

See also
  elm_config_accel_preference_set()

Since
  1.11

void elm_config_accel_preference_set | ( | const char * | pref | ) |

Set Elementary's acceleration preferences for new windows.

Parameters

  pref | The preference desired as a normal C string

Note that it will take effect only to Elementary windows created after this is called. The `pref` string is a freeform C string that indicates what kind of acceleration is preferred. Here "acceleration" majorly means to rendering and which hardware unit application renders GUIs with. This may or may not be honored, but a best attempt will be made. Known strings are as follows:

"gl", "opengl" - try use OpenGL. "3d" - try and use a 3d acceleration unit. "hw", "hardware", "accel" - try any acceleration unit (best possible)

Since 1.14, it is also possible to specify some GL properties for the GL window surface. This allows applications to use GLView with depth, stencil and MSAA buffers with direct rendering. The new accel preference string format is thus "{HW Accel}[:depth{value}[:stencil{value}[:msaa{str}]]]".

Accepted values for depth are for instance "depth", "depth16", "depth24". Accepted values for stencil are "stencil", "stencil1", "stencil8". For MSAA, only predefined strings are accepted: "msaa", "msaa_low", "msaa_mid" and "msaa_high". The selected configuration is not garanteed and is only valid in case of GL acceleration. Only the base acceleration string will be saved (e.g. "gl" or "hw").

Full examples include:

"gl", - try to use OpenGL "hw:depth:stencil", - use HW acceleration with default depth and stencil buffers "opengl:depth24:stencil8:msaa_mid" - use OpenGL with 24-bit depth, 8-bit stencil and a medium number of MSAA samples in the backbuffer.

This takes precedence over engine preferences set with elm_config_preferred_engine_set().

See also
  elm_win_add()
  elm_config_accel_preference_override_set()

Since
  1.10

Eina_Bool elm_config_audio_mute_get | ( | Edje_Channel | channel | ) |

Get the mute state of an audio channel for effects.

Parameters

  channel | The channel to get the mute state of

Returns
  The mute state

Since
  1.9

void elm_config_audio_mute_set | ( | Edje_Channel | channel,
|  | Eina_Bool | mute
| ) |  |

Set the mute state of the specified channel.

Parameters

  channel | The channel to set the mute state of
  mute | The mute state to set

Since
  1.9

Eina_Bool elm_config_clouseau_enabled_get | ( | void |  | ) |

Get the clouseau state.

`EINA_TRUE` if clouseau was tried to be run.

Since
  1.8

Returns
  `EINA_TRUE` if clouseau was tried to run, `EINA_FALSE` otherwise

void elm_config_clouseau_enabled_set | ( | Eina_Bool | enabled | ) |

Get the clouseau state.

`EINA_TRUE` if clouseau should be attempted to be run.

Since
  1.8

Parameters

  enabled | `EINA_TRUE` to try and run clouseau, `EINA_FALSE` otherwise.

void elm_config_color_classes_list_free | ( | Eina_List * | list | ) |

Free Elementary's list of supported color classes.

Since
  1.10

See also
  elm_config_color_classes_list_get().

Eina_List* elm_config_color_classes_list_get | ( | void |  | ) |

Get Elementary's list of supported color classes.

Returns
  The color classes list, with `Elm_Color_Class` blobs as data.

Since
  1.10

Release the list with elm_color_classes_list_free().

void elm_config_color_overlay_apply | ( | void |  | ) |

Apply the changes made with elm_config_color_overlay_set() and elm_config_color_overlay_unset() on the current Elementary window.

Since
  1.10

This applies all color overlays set to all objects in the UI.

const Eina_List* elm_config_color_overlay_list_get | ( | void |  | ) |

Get Elementary's list of color overlays, set with elm_config_color_overlay_set().

Returns
  The color overlays list, with `Elm_Color_Overlay` blobs as data.

Since
  1.10

For each color class, one can set a color overlay for it, overriding the default color properties for that class coming from the theme in use. There is no need to free this list.

See also
  elm_config_color_overlay_set()
  elm_config_color_overlay_unset().

void elm_config_color_overlay_set | ( | const char * | color_class,
|  | int | r,
|  | int | g,
|  | int | b,
|  | int | a,
|  | int | r2,
|  | int | g2,
|  | int | b2,
|  | int | a2,
|  | int | r3,
|  | int | g3,
|  | int | b3,
|  | int | a3
| ) |  |

Set a color overlay for a given Elementary color class.

Parameters

  color_class | Color class name
  r | Object Red value
  g | Object Green value
  b | Object Blue value
  a | Object Alpha value
  r2 | Text outline Red value
  g2 | Text outline Green value
  b2 | Text outline Blue value
  a2 | Text outline Alpha value
  r3 | Text shadow Red value
  g3 | Text shadow Green value
  b3 | Text shadow Blue value
  a3 | Text shadow Alpha value

Since
  1.10

The first color is for the object itself, the second color is for the text outline, and the third color is for the text shadow.

Note
  The second two color are only for texts.

Setting color emits a signal "color_class,set" with source being the given color class in all edje objects.

See also
  elm_config_color_overlay_list_get()
  elm_config_color_overlay_unset()
  edje_color_class_set()

Note
  unlike Evas, Edje colors are not pre-multiplied. That is, half-transparent white is 255 255 255 128.

void elm_config_color_overlay_unset | ( | const char * | color_class | ) |

Unset a color overlay for a given Elementary color class.

Parameters

  color_class | Color class name

Since
  1.10

This will bring back color elements belonging to color class `color_class` back to their default color settings.

EINA_DEPRECATED const char* elm_config_engine_get | ( | void |  | ) |

Get Elementary's rendering engine in use.

Returns
  The rendering engine's name

Note
  there's no need to free the returned string, here.

This gets the global rendering engine that is applied to all Elementary applications.

See also
  elm_config_engine_set()

Deprecated:
  use elm_config_accel_preference_get() + elm_config_accel_preference_set()

EINA_DEPRECATED void elm_config_engine_set | ( | const char * | engine | ) |

Set Elementary's rendering engine for use.

Parameters

  engine | The rendering engine's name

Note that it will take effect only to Elementary windows created after this is called.

See also
  elm_win_add()

Deprecated:
  use elm_config_accel_preference_get() + elm_config_accel_preference_set()

const char* elm_config_indicator_service_get | ( | int | rotation | ) |

Get the indicator service name according to the rotation degree.

Parameters

  rotation | The rotation which related with the indicator service name, in degrees (0-360),

Returns
  The indicator service name according to the rotation degree. The indicator service name can be either `"elm_indicator_portrait"` or `"elm_indicator_landscape"`.

Note
  Do not free the return string.

Eina_Bool elm_config_magnifier_enable_get | ( | void |  | ) |

Get the magnifier enabled state for entries.

Returns
  The enabled state for magnifier

Since
  1.9

void elm_config_magnifier_enable_set | ( | Eina_Bool | enable | ) |

Set the magnifier enabled state for entires.

Parameters

  enable | The magnifier config state

Since
  1.9

double elm_config_magnifier_scale_get | ( | void |  | ) |

Get the amount of scaling the magnifer does.

Returns
  The scaling amount (1.0 is none, 2.0 is twice as big etc.)

Since
  1.9

void elm_config_magnifier_scale_set | ( | double | scale | ) |

Set the amount of scaling the magnifier does.

Parameters

  scale | The scaling amount for magnifiers

Since
  1.9

Eina_Bool elm_config_mirrored_get | ( | void |  | ) |

Get the system mirrored mode.

This determines the default mirrored mode of widgets.

Returns
  `EINA_TRUE` if mirrored is set, `EINA_FALSE` otherwise

void elm_config_mirrored_set | ( | Eina_Bool | mirrored | ) |

Set the system mirrored mode.

This determines the default mirrored mode of widgets.

Parameters

  mirrored | `EINA_TRUE` to set mirrored mode, `EINA_FALSE` to unset it.

const char* elm_config_preferred_engine_get | ( | void |  | ) |

Get Elementary's preferred engine to use.

Returns
  The rendering engine's name

Note
  there's no need to free the returned string, here.

This gets the global rendering engine that is applied to all Elementary applications and is PREFERRED by the application. This can (and will) override the engine configured for all applications which. It is rare to explicitly ask for an engine (likely need is the buffer engine and not much more), so use elm_config_accel_preference_get() and elm_config_accel_preference_set() normally.

See also
  elm_config_preferred_engine_set()

void elm_config_preferred_engine_set | ( | const char * | engine | ) |

Set Elementary's preferred rendering engine for use.

Parameters

  engine | The rendering engine's name

Note that it will take effect only to Elementary windows created after this is called. This overrides the engine set by configuration at application startup. Note that it is a hint and may not be honored. It is rare to explicitly ask for an engine (likely need is the buffer engine and not much more), so use elm_config_accel_preference_get() and elm_config_accel_preference_set() normally.

See also
  elm_win_add()
  elm_config_accel_preference_set()
  elm_config_engine_set()

Eina_Bool elm_config_selection_unfocused_clear_get | ( | void |  | ) |

Get whether selection should be cleared when entry widget is unfocused.

Returns
  if the selection would be cleared on unfocus.

Since
  1.7

See also
  elm_config_selection_unfocused_clear_set()

void elm_config_selection_unfocused_clear_set | ( | Eina_Bool | enabled | ) |

Set whether selection should be cleared when entry widget is unfocused.

Parameters

  enabled | If `EINA_TRUE`, clear selection when unfocus, otherwise does not clear selection when unfocus.

Since
  1.7

See also
  elm_config_selection_unfocused_clear_get()

Eina_Bool elm_config_vsync_get | ( | void |  | ) |

Get the configured vsync flag.

This gets the globally configured vsync flag that asks some backend engines to use vsync display if possible.

Returns
  If vsync is enabled

Since
  1.11

void elm_config_vsync_set | ( | Eina_Bool | enabled | ) |

Set the configured vsync flag.

This sets the globally configured vsync flag that asks some backend engines to use vsync display if possible.

Parameters

  enabled | This should be `EINA_TRUE` if enabled, or `EINA_FALSE` if not.

Since
  1.11

Eina_Bool elm_config_window_auto_focus_animate_get | ( | void |  | ) |

Get the auto focus animate flag.

If auto focus - see elm_config_window_auto_focus_enable_set() , is enabled then this will determine if the focus display will be animated or not.

Returns
  The enabled state for auto focus animation

Since
  1.14

void elm_config_window_auto_focus_animate_set | ( | Eina_Bool | enable | ) |

Set the auto focus animation flag.

If auto focus - see elm_config_window_auto_focus_enable_set() , is enabled then this will determine if the focus display will be animated or not.

Parameters

  enable | the auto focus animation state

Since
  1.14

Eina_Bool elm_config_window_auto_focus_enable_get | ( | void |  | ) |

Get the auto focus enable flag.

This determines if elementary will show a focus box indicating the focused widget automatically if keyboard controls like "Tab" are used to switch focus between widgets. Mouse or touch control will hide this auto shown focus, unless focus display has been expliccitly forced on for the window.

Returns
  The enabled state for auto focus display

Since
  1.14

void elm_config_window_auto_focus_enable_set | ( | Eina_Bool | enable | ) |

Set the auto focus enabled state.

This determines if elementary will show a focus box indicating the focused widget automatically if keyboard controls like "Tab" are used to switch focus between widgets. Mouse or touch control will hide this auto shown focus, unless focus display has been expliccitly forced on for the window.

Parameters

  enable | the auto focus display enabled state

Since
  1.14