Tizen Native API  5.5

win_inheritance_tree.png

The window class of Elementary. Contains functions to manipulate windows. The Evas engine used to render the window contents is specified in the system or user elementary config files (whichever is found last), and can be overridden with the ELM_ENGINE environment variable for testing. Engines that may be supported (depending on Evas and Ecore-Evas compilation setup and modules actually installed at runtime) are (listed in order of best supported and most likely to be complete and work to lowest quality). Note that ELM_ENGINE is really only needed for special cases and debugging. you should normally use ELM_DISPLAY and ELM_ACCEL environment variables, or core elementary config. ELM_DISPLAY can be set to "x11" or "wl" to indicate the target display system (as on Linux systems you may have both display systems available, so this selects which to use). ELM_ACCEL may also be set to indicate if you want accelerations and which kind to use. see elm_config_accel_preference_set(0 for details on this environment variable values.

  • "x11", "x", "software-x11", "software_x11" (Software rendering in X11)
  • "gl", "opengl", "opengl-x11", "opengl_x11" (OpenGL or OpenGL-ES2 rendering in X11)
  • "shot:..." (Virtual screenshot renderer - renders to output file and exits)
  • "fb", "software-fb", "software_fb" (Linux framebuffer direct software rendering)
  • "sdl", "software-sdl", "software_sdl" (SDL software rendering to SDL buffer)
  • "gl-sdl", "gl_sdl", "opengl-sdl", "opengl_sdl" (OpenGL or OpenGL-ES2 rendering using SDL as the buffer)
  • "gdi", "software-gdi", "software_gdi" (Windows WIN32 rendering via GDI with software)
  • "ddraw", "software-ddraw", "software_ddraw" (Windows WIN32 rendering via DirectDraw with software)
  • "ews" (rendering to EWS - Ecore + Evas Single Process Windowing System)
  • "gl-cocoa", "gl_cocoa", "opengl-cocoa", "opengl_cocoa" (OpenGL rendering in Cocoa)
  • "wayland_shm" (Wayland client SHM rendering)
  • "wayland_egl" (Wayland client OpenGL/EGL rendering)
  • "drm" (Linux drm/kms etc. direct display)

All engines use a simple string to select the engine to render, EXCEPT the "shot" engine. This actually encodes the output of the virtual screenshot and how long to delay in the engine string. The engine string is encoded in the following way:

"shot:[delay=XX][:][repeat=DDD][:][file=XX]"

Where options are separated by a ":" char if more than one option is given, with delay, if provided being the first option and file the last (order is important). The delay specifies how long to wait after the window is shown before doing the virtual "in memory" rendering and then save the output to the file specified by the file option (and then exit). If no delay is given, the default is 0.5 seconds. If no file is given the default output file is "out.png". Repeat option is for continuous capturing screenshots. Repeat range is from 1 to 999 and filename is fixed to "out001.png" Some examples of using the shot engine:

ELM_ENGINE="shot:delay=1.0:repeat=5:file=elm_test.png" elementary_test ELM_ENGINE="shot:delay=1.0:file=elm_test.png" elementary_test ELM_ENGINE="shot:file=elm_test2.png" elementary_test ELM_ENGINE="shot:delay=2.0" elementary_test ELM_ENGINE="shot:" elementary_test

Signals that you can add callbacks for are:

  • "delete,request": the user requested to close the window. See elm_win_autodel_set() and elm_win_autohide_set().
  • "focus,in": window got focus (deprecated. use "focused" instead.)
  • "focus,out": window lost focus (deprecated. use "unfocused" instead.)
  • "moved": window that holds the canvas was moved
  • "withdrawn": window is still managed normally but removed from view
  • "iconified": window is minimized (perhaps into an icon or taskbar)
  • "normal": window is in a normal state (not withdrawn or iconified)
  • "stick": window has become sticky (shows on all desktops)
  • "unstick": window has stopped being sticky
  • "fullscreen": window has become fullscreen
  • "unfullscreen": window has stopped being fullscreen
  • "maximized": window has been maximized
  • "unmaximized": window has stopped being maximized
  • "ioerr": there has been a low-level I/O error with the display system
  • "indicator,prop,changed": an indicator's property has been changed
  • "rotation,changed": window rotation has been changed
  • "profile,changed": profile of the window has been changed
  • "focused" : When the win has received focus. (since 1.8)
  • "unfocused" : When the win has lost focus. (since 1.8)
  • "theme,changed" - The theme was changed. (since 1.13)
  • "conformant,changed" - conformant changed
  • "aux,hint,allowed" - an aux hint allowed
  • "aux,msg,received" - an aux message received
  • "effect,started" - window effect has been started.
  • "effect,done" - window effect has been done.
  • "launch,done" - window launch has been done.
  • "visibility,changed" - visibility of the window has been changed.

Note that calling evas_object_show() after window contents creation is recommended. It will trigger evas_smart_objects_calculate() and some backend calls directly. For example, XMapWindow is called directly during evas_object_show() in X11 engine.

Examples:

Functions

Eina_Bool elm_win_trap_set (const Elm_Win_Trap *trap)
Evas_Objectelm_win_add (Evas_Object *parent, const char *name, Elm_Win_Type type)
Evas_Objectelm_win_fake_add (Ecore_Evas *ee)
Evas_Objectelm_win_util_standard_add (const char *name, const char *title)
Evas_Objectelm_win_util_dialog_add (Evas_Object *parent, const char *name, const char *title)
Eina_Bool elm_win_autodel_get (const Evas_Object *obj)
 Gets the window's autodel state.
void elm_win_floating_mode_set (Evas_Object *obj, Eina_Bool floating)
 Sets the floating mode of a window.
Eina_Bool elm_win_floating_mode_get (const Evas_Object *obj)
 Gets the floating mode of a window.
void elm_win_norender_push (Evas_Object *obj)
void elm_win_norender_pop (Evas_Object *obj)
int elm_win_norender_get (const Evas_Object *obj)
void elm_win_render (Evas_Object *obj)
void elm_win_resize_object_add (Evas_Object *obj, Evas_Object *subobj)
 Adds subobj as a resize object of window obj.
void elm_win_resize_object_del (Evas_Object *obj, Evas_Object *subobj)
 Deletes subobj as a resize object of window obj.
void * elm_win_trap_data_get (const Evas_Object *obj)
 Gets the trap data associated with a window.
void elm_win_override_set (Evas_Object *obj, Eina_Bool override)
 Sets the override state of a window.
Eina_Bool elm_win_override_get (const Evas_Object *obj)
 Gets the override state of a window.
void elm_win_lower (Evas_Object *obj)
 Lowers a window object.
void elm_win_quickpanel_set (Evas_Object *obj, Eina_Bool quickpanel)
 Sets a window to be an illume quickpanel window.
Eina_Bool elm_win_quickpanel_get (const Evas_Object *obj)
 Gets if this window is a quickpanel or not.
void elm_win_quickpanel_zone_set (Evas_Object *obj, int zone)
 Sets which zone this quickpanel should appear in.
int elm_win_quickpanel_zone_get (const Evas_Object *obj)
 Gets which zone this quickpanel should appear in.
void elm_win_quickpanel_priority_major_set (Evas_Object *obj, int priority)
 Sets the major priority of a quickpanel window.
int elm_win_quickpanel_priority_major_get (const Evas_Object *obj)
 Gets the major priority of a quickpanel window.
void elm_win_quickpanel_priority_minor_set (Evas_Object *obj, int priority)
 Sets the minor priority of a quickpanel window.
int elm_win_quickpanel_priority_minor_get (const Evas_Object *obj)
 Gets the minor priority of a quickpanel window.
void elm_win_indicator_mode_set (Evas_Object *obj, Elm_Win_Indicator_Mode mode)
 Sets the indicator mode of the window.
Elm_Win_Indicator_Mode elm_win_indicator_mode_get (const Evas_Object *obj)
 Gets the indicator mode of the window.
void elm_win_indicator_opacity_set (Evas_Object *obj, Elm_Win_Indicator_Opacity_Mode mode)
 Sets the indicator opacity mode of the window.
Elm_Win_Indicator_Opacity_Mode elm_win_indicator_opacity_get (const Evas_Object *obj)
 Gets the indicator opacity mode of the window.
void elm_win_keyboard_win_set (Evas_Object *obj, Eina_Bool is_keyboard)
 Sets whether the window is a keyboard.
Eina_Bool elm_win_keyboard_win_get (const Evas_Object *obj)
 Gets whether the window is a keyboard.
void elm_win_conformant_set (Evas_Object *obj, Eina_Bool conformant)
 Sets if this window is an illume conformant window.
Eina_Bool elm_win_conformant_get (const Evas_Object *obj)
 Gets if this window is an illume conformant window.
void elm_win_wm_rotation_manual_rotation_done_set (Evas_Object *obj, Eina_Bool set)
 Sets the manual rotation done mode.
Eina_Bool elm_win_wm_rotation_manual_rotation_done_get (const Evas_Object *obj)
 Gets the state of manual rotation done mode.
void elm_win_wm_rotation_manual_rotation_done (Evas_Object *obj)
 To notify the rotation done to WM manually.
void elm_win_rotation_set (Evas_Object *obj, int rotation)
 Sets the rotation of the window.
int elm_win_rotation_get (const Evas_Object *obj)
 Gets the rotation of the window.
void elm_win_rotation_with_resize_set (Evas_Object *obj, int rotation)
 Rotates the window and resizes it.
Eina_Bool elm_win_wm_rotation_supported_get (const Evas_Object *obj)
 Queries whether window manager supports window rotation or not.
int elm_win_wm_rotation_preferred_rotation_get (const Evas_Object *obj)
 Gets the preferred rotation value.
void elm_win_screen_position_get (const Evas_Object *obj, int *x, int *y)
 Gets the screen position of a window.
void elm_win_screen_size_get (const Evas_Object *obj, int *x, int *y, int *w, int *h)
 Gets screen geometry details for the screen that a window is on.
void elm_win_screen_dpi_get (const Evas_Object *obj, int *xdpi, int *ydpi)
 Gets screen dpi for the screen that a window is on.
void elm_win_icon_name_set (Evas_Object *obj, const char *icon_name)
 Sets the icon name of the window.
const char * elm_win_icon_name_get (const Evas_Object *obj)
 Gets the icon name of the window.
void elm_win_withdrawn_set (Evas_Object *obj, Eina_Bool withdrawn)
 Sets the withdrawn state of a window.
Eina_Bool elm_win_withdrawn_get (const Evas_Object *obj)
 Gets the withdrawn state of a window.
void elm_win_urgent_set (Evas_Object *obj, Eina_Bool urgent)
 Sets the urgent state of a window.
Eina_Bool elm_win_urgent_get (const Evas_Object *obj)
 Gets the urgent state of a window.
void elm_win_demand_attention_set (Evas_Object *obj, Eina_Bool demand_attention)
 Sets the demand_attention state of a window.
Eina_Bool elm_win_demand_attention_get (const Evas_Object *obj)
 Gets the demand_attention state of a window.
void elm_win_modal_set (Evas_Object *obj, Eina_Bool modal)
 Sets the modal state of a window.
Eina_Bool elm_win_modal_get (const Evas_Object *obj)
 Gets the modal state of a window.
void elm_win_shaped_set (Evas_Object *obj, Eina_Bool shaped)
 Sets the shaped state of a window.
Eina_Bool elm_win_shaped_get (const Evas_Object *obj)
 Gets the shaped state of a window.
void elm_win_title_set (Evas_Object *obj, const char *title)
 Sets the title of the window.
const char * elm_win_title_get (const Evas_Object *obj)
 Gets the title of the window.
void elm_win_size_base_set (Evas_Object *obj, int w, int h)
 Sets the base window size used with stepping calculation.
void elm_win_size_base_get (const Evas_Object *obj, int *w, int *h)
 Gets the base size of a window.
void elm_win_size_step_set (Evas_Object *obj, int w, int h)
 Sets the window stepping used with sizing calculation.
void elm_win_size_step_get (const Evas_Object *obj, int *w, int *h)
 Gets the stepping of a window.
void elm_win_illume_command_send (Evas_Object *obj, Elm_Illume_Command command, void *params)
 Sends a command to the windowing environment.
void elm_win_profile_set (Evas_Object *obj, const char *profile)
 Sets the profile of a window.
const char * elm_win_profile_get (const Evas_Object *obj)
 Gets the profile of a window.
void elm_win_layer_set (Evas_Object *obj, int layer)
 Sets the layer of the window.
int elm_win_layer_get (const Evas_Object *obj)
 Gets the layer of the window.
Evas_Objectelm_win_inlined_image_object_get (const Evas_Object *obj)
 Gets the inlined image object handle.
void elm_win_fake_canvas_set (Evas_Object *obj, Ecore_Evas *oee) EINA_DEPRECATED
 Internal. Used to complete the fake window type.
Ecore_Window elm_win_window_id_get (const Evas_Object *obj)
 Gets the Ecore_Window of an Evas_Object.
void elm_win_keyboard_mode_set (Elm_Win *obj, Elm_Win_Keyboard_Mode mode)
 Sets the keyboard mode of the window.
Elm_Win_Keyboard_Mode elm_win_keyboard_mode_get (const Elm_Win *obj)
 Gets the keyboard mode of the window.
Eina_Bool elm_win_socket_listen (Elm_Win *obj, const char *svcname, int svcnum, Eina_Bool svcsys)
 Creates a socket to provide the service for Plug widget.
Eina_Bool elm_win_focus_get (const Elm_Win *obj)
 Gets whether a window has focus.
Eina_Bool elm_win_focus_highlight_style_set (Elm_Win *obj, const char *style)
 Sets the style for the focus highlight on this window.
const char * elm_win_focus_highlight_style_get (const Elm_Win *obj)
 Gets the style set for the focus highlight object.
void elm_win_focus_highlight_enabled_set (Elm_Win *obj, Eina_Bool enabled)
 Sets the enabled status for the focus highlight in a window.
Eina_Bool elm_win_focus_highlight_enabled_get (const Elm_Win *obj)
 Gets the enabled value of the focus highlight for this window.
void elm_win_focus_highlight_animate_set (Elm_Win *obj, Eina_Bool animate)
 Sets the animate status for the focus highlight for this window.
Eina_Bool elm_win_focus_highlight_animate_get (const Elm_Win *obj)
 Gets the animate value of the focus highlight for this window.
void elm_win_raise (Elm_Win *obj)
 Raise a window object.
void elm_win_available_profiles_set (Elm_Win *obj, const char **profiles, unsigned int count)
 Sets the array of available profiles to a window.
Eina_Bool elm_win_available_profiles_get (const Elm_Win *obj, char ***profiles, unsigned int *count)
 Gets the array of available profiles of a window.
void elm_win_wm_rotation_available_rotations_set (Elm_Win *obj, const int *rotations, unsigned int count)
 Sets the array of available window rotations.
Eina_Bool elm_win_wm_rotation_available_rotations_get (const Elm_Win *obj, int **rotations, unsigned int *count)
 Gets the array of available window rotations.
const Eina_Listelm_win_aux_hints_supported_get (const Evas_Object *obj)
 Gets the list of supported auxiliary hint strings.
int elm_win_aux_hint_add (Evas_Object *obj, const char *hint, const char *val)
 Creates an auxiliary hint of the window.
Eina_Bool elm_win_aux_hint_del (Evas_Object *obj, const int id)
 Deletes an auxiliary hint of the window.
Eina_Bool elm_win_aux_hint_val_set (Evas_Object *obj, const int id, const char *val)
 Changes a value of the auxiliary hint.
const char * elm_win_aux_hint_val_get (Evas_Object *obj, int id)
 Gets a value of the auxiliary hint.
int elm_win_aux_hint_id_get (Evas_Object *obj, const char *hint)
 Gets an ID of the auxiliary hint string.
const char * elm_win_aux_msg_key_get (Evas_Object *obj, Elm_Win_Aux_Message *msg)
 Gets the key string from an aux message.
const char * elm_win_aux_msg_val_get (Evas_Object *obj, Elm_Win_Aux_Message *msg)
 Gets the value string from an aux message.
const Eina_Listelm_win_aux_msg_options_get (Evas_Object *obj, Elm_Win_Aux_Message *msg)
 Gets the list of option from an aux message.
void elm_win_type_set (Evas_Object *obj, Elm_Win_Type type)
 The type of the window.
void elm_win_screen_constrain_set (Evas_Object *obj, Eina_Bool constrain)
 Constrain the maximum width and height of a window to the width and height of the screen.
Eina_Bool elm_win_screen_constrain_get (const Evas_Object *obj)
 Get the constraints on the maximum width and height of a window relative to the width and height of the screen.
void elm_win_prop_focus_skip_set (Evas_Object *obj, Eina_Bool skip)
 Set the window to be skipped by keyboard focus.
void elm_win_autohide_set (Evas_Object *obj, Eina_Bool autohide)
 Window's autohide state.
Eina_Bool elm_win_autohide_get (const Evas_Object *obj)
 Window's autohide state.
void elm_win_icon_object_set (Evas_Object *obj, Evas_Object *icon)
 Set a window object's icon.
const Evas_Objectelm_win_icon_object_get (const Evas_Object *obj)
 Get the icon object used for the window.
void elm_win_iconified_set (Evas_Object *obj, Eina_Bool iconified)
 Set the iconified state of a window.
Eina_Bool elm_win_iconified_get (const Evas_Object *obj)
 Get the iconified state of a window.
void elm_win_maximized_set (Evas_Object *obj, Eina_Bool maximized)
 Set the maximized state of a window.
Eina_Bool elm_win_maximized_get (const Evas_Object *obj)
 Get the maximized state of a window.
void elm_win_fullscreen_set (Evas_Object *obj, Eina_Bool fullscreen)
 Set the fullscreen state of a window.
Eina_Bool elm_win_fullscreen_get (const Evas_Object *obj)
 Get the fullscreen state of a window.
void elm_win_sticky_set (Evas_Object *obj, Eina_Bool sticky)
 Set the sticky state of the window.
Eina_Bool elm_win_sticky_get (const Evas_Object *obj)
 Get the sticky state of the window.
void elm_win_noblank_set (Evas_Object *obj, Eina_Bool noblank)
 Set the noblank property of a window.
Eina_Bool elm_win_noblank_get (const Evas_Object *obj)
 Get the noblank property of a window.
void elm_win_borderless_set (Evas_Object *obj, Eina_Bool borderless)
 Set the borderless state of a window.
Eina_Bool elm_win_borderless_get (const Evas_Object *obj)
 Get the borderless state of a window.
void elm_win_role_set (Evas_Object *obj, const char *role)
 The role of the window.
const char * elm_win_role_get (const Evas_Object *obj)
 The role of the window.
Elm_Win_Type elm_win_type_get (const Evas_Object *obj)
 The type of the window.
void elm_win_alpha_set (Evas_Object *obj, Eina_Bool alpha)
 Set the alpha channel state of a window.
Eina_Bool elm_win_alpha_get (const Evas_Object *obj)
 Get the alpha channel state of a window.
void elm_win_activate (Evas_Object *obj)
 Activate a window object.
void elm_win_center (Evas_Object *obj, Eina_Bool h, Eina_Bool v)
 Center a window on the screen.

Typedefs

typedef struct _Elm_Win_Trap Elm_Win_Trap

Typedef Documentation

Trap can be set with elm_win_trap_set() and will intercept the calls to internal ecore_evas with the same name and parameters. If there is a trap and it returns EINA_TRUE then the call will be allowed, otherwise it will be ignored.

Since (EFL) :
1.7

Enumeration Type Documentation

In some environments, like phones, you may have an indicator that shows battery status, reception, time etc. This is the indicator.

Sometimes you don't want it because you provide the same functionality inside your app, so this will request that the indicator is hidden in this circumstance. The default is depend on the environments. For example, like phones, default is to have the indicator shown. But like TV, default is to have the indicator hidden.

Enumerator:
ELM_WIN_INDICATOR_HIDE 

Unknown indicator state

ELM_WIN_INDICATOR_SHOW 

Hides the indicator Shows the indicator

Defines the opacity modes of indicator that can be shown

Enumerator:
ELM_WIN_INDICATOR_OPAQUE 

Unknown indicator opacity mode

ELM_WIN_INDICATOR_TRANSLUCENT 

Opacifies the indicator

ELM_WIN_INDICATOR_TRANSPARENT 

Be translucent the indicator

ELM_WIN_INDICATOR_BG_TRANSPARENT 

Transparentizes the indicator Bg Transparentizes the indicator

The different layouts that can be requested for the virtual keyboard.

When the application window is being managed by Illume it may request any of the following layouts for the virtual keyboard.

Enumerator:
ELM_WIN_KEYBOARD_UNKNOWN 

Unknown keyboard state

ELM_WIN_KEYBOARD_OFF 

Request to deactivate the keyboard

ELM_WIN_KEYBOARD_ON 

Enable keyboard with default layout

ELM_WIN_KEYBOARD_ALPHA 

Alpha (a-z) keyboard layout

ELM_WIN_KEYBOARD_NUMERIC 

Numeric keyboard layout

ELM_WIN_KEYBOARD_PIN 

PIN keyboard layout

ELM_WIN_KEYBOARD_PHONE_NUMBER 

Phone keyboard layout

ELM_WIN_KEYBOARD_HEX 

Hexadecimal numeric keyboard layout

ELM_WIN_KEYBOARD_TERMINAL 

Full (QWERTY) keyboard layout

ELM_WIN_KEYBOARD_PASSWORD 

Password keyboard layout

ELM_WIN_KEYBOARD_IP 

IP keyboard layout

ELM_WIN_KEYBOARD_HOST 

Host keyboard layout

ELM_WIN_KEYBOARD_FILE 

File keyboard layout

ELM_WIN_KEYBOARD_URL 

URL keyboard layout

ELM_WIN_KEYBOARD_KEYPAD 

Keypad layout

ELM_WIN_KEYBOARD_J2ME 

J2ME keyboard layout

Define the keygrab modes of window. A window may send commands to the Keyrouter according this mode, and perform different actions.

Enumerator:
ELM_WIN_KEYGRAB_UNKNOWN 

Unknown keygrab mode

ELM_WIN_KEYGRAB_SHARED 

Get the grabbed-key together with the other client windows

ELM_WIN_KEYGRAB_TOPMOST 

Get the grabbed-key only when window is top of the stack

ELM_WIN_KEYGRAB_EXCLUSIVE 

Get the grabbed-key exclusively regardless of window's position

ELM_WIN_KEYGRAB_OVERRIDE_EXCLUSIVE 

Get the grabbed-key exclusively regardless of window's position. This is overrided by grabs from the other client window

Define the move or resize mode of window.

The user can request the display server to start moving or resizing the window by combining these modes. However only limited combinations are allowed.

Currently, only the following 9 combinations are permitted. More combinations may be added in future: 1. move, 2. top, 3. bottom, 4. left, 5. right, 6. top | left, 7. top | right, 8. bottom | left, 9. bottom | right.

Since (EFL) :
1.19
Enumerator:
ELM_WIN_MOVE_RESIZE_MOVE 

Start moving window

ELM_WIN_MOVE_RESIZE_TOP 

Start resizing window to the top

ELM_WIN_MOVE_RESIZE_BOTTOM 

Start resizing window to the bottom

ELM_WIN_MOVE_RESIZE_LEFT 

Start resizing window to the left

ELM_WIN_MOVE_RESIZE_RIGHT 

Start resizing window to the right

Defines the types of window that can be created.

These are hints set on a window so that a running Window Manager knows how the window should be handled and/or what kind of decorations it should have.

Currently, only the X11 backed engines use them.

Enumerator:
ELM_WIN_UNKNOWN 

Default, unknown, type

ELM_WIN_BASIC 

A normal window. Indicates a normal, top-level window. Almost every window will be created with this type.

ELM_WIN_DIALOG_BASIC 

Used for simple dialog windows.

ELM_WIN_DESKTOP 

For special desktop windows, like a background window holding desktop icons.

ELM_WIN_DOCK 

The window is used as a dock or panel. Usually would be kept on top of any other window by the Window Manager.

ELM_WIN_TOOLBAR 

The window is used to hold a floating toolbar, or similar.

ELM_WIN_MENU 

Similar to @.toolbar.

ELM_WIN_UTILITY 

A persistent utility window, like a toolbox or palette.

ELM_WIN_SPLASH 

Splash window for a starting up application.

ELM_WIN_DROPDOWN_MENU 

The window is a dropdown menu, as when an entry in a menubar is clicked. This hint exists for completion only, as the EFL way of implementing a menu would not normally use a separate window for its contents.

ELM_WIN_POPUP_MENU 

Like @.dropdown_menu, but for the menu triggered by right-clicking an object.

ELM_WIN_TOOLTIP 

The window is a tooltip. A short piece of explanatory text that typically appear after the mouse cursor hovers over an object for a while. Typically not very commonly used in the EFL.

ELM_WIN_NOTIFICATION 

A notification window, like a warning about battery life or a new E-Mail received.

ELM_WIN_COMBO 

A window holding the contents of a combo box. Not usually used in the EFL.

ELM_WIN_DND 

Used to indicate the window is a representation of an object being dragged across different windows, or even applications. Typically used with elm_win_override_set().

ELM_WIN_NAVIFRAME_BASIC 

Used for naviframe style replacement with a back button instead of a close button.

Since (EFL) :
1.19
ELM_WIN_FAKE 

See elm_win_fake_add().

Since (EFL) :
1.13

Function Documentation

void elm_win_activate ( Evas_Object obj)

Activate a window object.

This function sends a request to the Window Manager to activate the window pointed by obj. If honored by the WM, the window will receive the keyboard focus.

Note:
This is just a request that a Window Manager may ignore, so calling this function does not ensure in any way that the window will be the active one afterwards.
Parameters:
[in]objThe object.
Since :
2.3
Examples:
win_example.c.
Evas_Object* elm_win_add ( Evas_Object parent,
const char *  name,
Elm_Win_Type  type 
)

Adds a window object. If this is the first window created, pass NULL as parent.

Parameters:
parentParent object to add the window to, or NULL
nameThe name of the window
typeThe window type, one of Elm_Win_Type.

The parent parameter can be NULL for every window type except #ELM_WIN_INLINED_IMAGE, which needs a parent to retrieve the canvas on which the image object will be created.

Returns:
The created object, or NULL on failure
Since :
2.3
Examples:
bg_example_02.c, and win_example.c.

Get the alpha channel state of a window.

Parameters:
[in]objThe object.
Returns:
true if the window alpha channel is enabled, false otherwise.
Since :
2.3
Examples:
win_example.c.
void elm_win_alpha_set ( Evas_Object obj,
Eina_Bool  alpha 
)

Set the alpha channel state of a window.

If alpha is true, the alpha channel of the canvas will be enabled possibly making parts of the window completely or partially transparent. This is also subject to the underlying system supporting it, for example a system using a compositing manager.

Note:
Alpha window can be enabled automatically by window theme style's property. If "alpha" data.item is "1" or "true" in window style(eg. elm/win/base/default), the window is switched to alpha automatically without the explicit api call.
Parameters:
[in]objThe object.
[in]alphatrue if the window alpha channel is enabled, false otherwise.
Since :
2.3
Examples:
win_example.c.

Gets the window's autodel state.

Parameters:
[in]objThe object.
Returns:
If true, the window will automatically delete itself when closed.
Since :
2.3
void elm_win_autodel_set ( Evas_Object obj,
Eina_Bool  autodel 
)

Sets the window's autodel state.

Since :
2.3

When closing the window in any way outside of the program control, like pressing the X button in the titlebar or using a command from the Window Manager, a "delete,request" signal is emitted to indicate that this event occurred and the developer can take any action, which may include, or not, destroying the window object.

When the autodel parameter is set, the window will be automatically destroyed when this event occurs, after the signal is emitted. If autodel is false, then the window will not be destroyed and is up to the program to do so when it's required.

Parameters:
[in]objThe object.
[in]autodelIf true, the window will automatically delete itself when closed.
Since :
2.3
Examples:
actionslider_example_01.c, bg_example_01.c, bg_example_02.c, bg_example_03.c, box_example_02.c, bubble_example_01.c, button_example_00.c, button_example_01.c, calendar_example_01.c, calendar_example_02.c, calendar_example_03.c, calendar_example_04.c, calendar_example_05.c, calendar_example_06.c, check_example_01.c, clock_example.c, codegen_example.c, colorselector_example_01.c, combobox_example_01.c, conformant_example_01.c, conformant_example_02.c, ctxpopup_example_01.c, datetime_example.c, dayselector_example.c, diskselector_example_01.c, diskselector_example_02.c, efl_thread_6.c, entry_example.c, fileselector_button_example.c, fileselector_entry_example.c, fileselector_example.c, flip_example_01.c, flipselector_example.c, frame_example_01.c, general_funcs_example.c, gengrid_example.c, genlist_example_01.c, genlist_example_02.c, genlist_example_03.c, genlist_example_04.c, genlist_example_05.c, glview_example_01.c, hover_example_01.c, hoversel_example_01.c, icon_example_01.c, image_example_01.c, index_example_01.c, index_example_02.c, inwin_example.c, label_example_01.c, layout_example_01.c, layout_example_02.c, layout_example_03.c, list_example_01.c, list_example_02.c, list_example_03.c, map_example_01.c, map_example_02.c, map_example_03.c, mapbuf_example.c, menu_example_01.c, naviframe_example.c, notify_example_01.c, panel_example_01.c, panes_example.c, photocam_example_01.c, popup_example_01.c, popup_example_02.c, popup_example_03.c, prefs_example_01.c, prefs_example_02.c, prefs_example_03.c, radio_example_01.c, scroller_example_01.c, segment_control_example.c, separator_example_01.c, slider_example.c, slideshow_example.c, spinner_example.c, table_example_01.c, table_example_02.c, theme_example_01.c, theme_example_02.c, thumb_example_01.c, toolbar_example_01.c, toolbar_example_02.c, toolbar_example_03.c, track_example_01.c, transit_example_01.c, transit_example_02.c, transit_example_03.c, transit_example_04.c, web_example_02.c, and win_example.c.

Window's autohide state.

When closing the window in any way outside of the program control, like pressing the X button in the titlebar or using a command from the Window Manager, a "delete,request" signal is emitted to indicate that this event occurred and the developer can take any action, which may include, or not, destroying the window object.

When this property is set to true, the window will be automatically hidden when this event occurs, after the signal is emitted. If this property is false nothing will happen, beyond the event emission.

C applications can use this option along with the quit policy ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN which allows exiting EFL's main loop when all the windows are hidden.

Note:
autodel and autohide are not mutually exclusive. The window will be deleted if both are set to true.
Parameters:
[in]objThe object.
Returns:
If true, the window will automatically hide itself when closed.
Since :
3.0
void elm_win_autohide_set ( Evas_Object obj,
Eina_Bool  autohide 
)

Window's autohide state.

When closing the window in any way outside of the program control, like pressing the X button in the titlebar or using a command from the Window Manager, a "delete,request" signal is emitted to indicate that this event occurred and the developer can take any action, which may include, or not, destroying the window object.

When this property is set to true, the window will be automatically hidden when this event occurs, after the signal is emitted. If this property is false nothing will happen, beyond the event emission.

C applications can use this option along with the quit policy ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN which allows exiting EFL's main loop when all the windows are hidden.

Note:
autodel and autohide are not mutually exclusive. The window will be deleted if both are set to true.
Parameters:
[in]objThe object.
[in]autohideIf true, the window will automatically hide itself when closed.
Since :
3.0
int elm_win_aux_hint_add ( Evas_Object obj,
const char *  hint,
const char *  val 
)

Creates an auxiliary hint of the window.

Since (EFL) :
1.8
Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
hintThe auxiliary hint string
valThe value string
Returns:
The ID of the created auxiliary hint, otherwise -1 on failure
Since :
5.5
Eina_Bool elm_win_aux_hint_del ( Evas_Object obj,
const int  id 
)

Deletes an auxiliary hint of the window.

Since (EFL) :
1.8
Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
idThe ID of the auxiliary hint
Returns:
EINA_TRUE if no error occurs, otherwise EINA_FALSE
Since :
5.5
int elm_win_aux_hint_id_get ( Evas_Object obj,
const char *  hint 
)

Gets an ID of the auxiliary hint string.

Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
hintThe auxiliary hint string
Returns:
The ID of the auxiliary hint, otherwise -1 on failure
Since :
5.5
const char* elm_win_aux_hint_val_get ( Evas_Object obj,
int  id 
)

Gets a value of the auxiliary hint.

Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
idThe auxiliary hint ID
Returns:
The string value of the auxiliary hint ID, otherwise NULL
Since :
5.5
Eina_Bool elm_win_aux_hint_val_set ( Evas_Object obj,
const int  id,
const char *  val 
)

Changes a value of the auxiliary hint.

Since (EFL) :
1.8
Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
idThe auxiliary hint ID
valThe value string to be set
Returns:
EINA_TRUE if no error occurs, otherwise EINA_FALSE
Since :
5.5

Gets the list of supported auxiliary hint strings.

Since (EFL) :
1.8
Remarks:
Do not change the returned list of contents. Auxiliary hint strings are internal and should be considered constants, do not free or modify them.
Support for this depends on the underlying windowing system.
The window auxiliary hint is the value that is used to decide which action should be made available to the user by the Windows Manager. If you want to set a specific hint to your window, then you should check whether it exists in the supported auxiliary hints that are registered in the root window by the Windows Manager. Once you have added an auxiliary hint, you can get a new ID which is used to change the value and delete the hint. The Windows Manager sends a response message to the application on receiving the auxiliary hint change event.
Parameters:
objThe window object
Returns:
The list of supported auxiliary hint strings
Since :
5.5
const char* elm_win_aux_msg_key_get ( Evas_Object obj,
Elm_Win_Aux_Message *  msg 
)

Gets the key string from an aux message.

Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
Returns:
Constant key string of the aux message. otherwise NULL on failure. Do not use this return value after end of the aux message callback.
const Eina_List* elm_win_aux_msg_options_get ( Evas_Object obj,
Elm_Win_Aux_Message *  msg 
)

Gets the list of option from an aux message.

Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
Returns:
Constant list of option of the aux message. otherwise NULL on failure. Do not use this return value after end of the aux message callback.
Since :
5.5
const char* elm_win_aux_msg_val_get ( Evas_Object obj,
Elm_Win_Aux_Message *  msg 
)

Gets the value string from an aux message.

Remarks:
Support for this depends on the underlying windowing system.
Parameters:
objThe window object
Returns:
Constant value string of the aux message. otherwise NULL on failure. Do not use this return value after end of the aux message callback.
Since :
5.5
Eina_Bool elm_win_available_profiles_get ( const Elm_Win *  obj,
char ***  profiles,
unsigned int *  count 
)

Gets the array of available profiles of a window.

Parameters:
[out]profilesThe string array of available profiles.
[out]countThe number of members in profiles.
Returns:
true on success, false otherwise
Since (EFL) :
1.8
Since :
3.0
void elm_win_available_profiles_set ( Elm_Win *  obj,
const char **  profiles,
unsigned int  count 
)

Sets the array of available profiles to a window.

Parameters:
[in]profilesThe string array of available profiles.
[in]countThe number of members in profiles.
Since (EFL) :
1.8
Since :
3.0

Get the borderless state of a window.

Parameters:
[in]objThe object.
Returns:
If true, the window is borderless.
Since :
2.3
Examples:
win_example.c.
void elm_win_borderless_set ( Evas_Object obj,
Eina_Bool  borderless 
)

Set the borderless state of a window.

This function requests the Window Manager not to draw any decoration around the window.

Parameters:
[in]objThe object.
[in]borderlessIf true, the window is borderless.
Since :
2.3
Examples:
win_example.c.
void elm_win_center ( Evas_Object obj,
Eina_Bool  h,
Eina_Bool  v 
)

Center a window on the screen.

This function centers window obj horizontally and/or vertically based on the values of h and v.

Note:
This is just a request that a Window Manager may ignore, so calling this function does not ensure in any way that the window will be centered afterwards.
Parameters:
[in]objThe object.
[in]hIf true, center horizontally. If false, do not change horizontal location.
[in]vIf true, center vertically. If false, do not change vertical location.
Since :
2.3

Gets if this window is an illume conformant window.

Returns:
The conformant flag.
Since :
2.3
void elm_win_conformant_set ( Evas_Object obj,
Eina_Bool  conformant 
)

Sets if this window is an illume conformant window.

Parameters:
[in]conformantThe conformant flag.
Since :
2.3
Examples:
conformant_example_02.c.

Gets the demand_attention state of a window.

Returns:
If true, the window is demand_attention.
Since :
2.3
void elm_win_demand_attention_set ( Evas_Object obj,
Eina_Bool  demand_attention 
)

Sets the demand_attention state of a window.

Parameters:
[in]demand_attentionIf true, the window is demand_attention.
Since :
2.3
Evas_Object* elm_win_fake_add ( Ecore_Evas *  ee)

Creates a fake window object using a pre-existing canvas.

Parameters:
eeThe Ecore_Evas to use

The returned window widget will not manage or modify the canvas; this canvas must continue to be managed externally.

Do not use this function if you are not writing a window manager.

Warning:
Exact behaviors of this function are not guaranteed.
Returns:
The created object, or NULL on failure
Since (EFL) :
1.13
Since :
3.0
void elm_win_fake_canvas_set ( Evas_Object obj,
Ecore_Evas *  oee 
)

Internal. Used to complete the fake window type.

Parameters:
[in]oee
Deprecated:
Since :
3.0

Gets the floating mode of a window.

Parameters:
objThe window object
Returns:
If true, the window is floating mode
See also:
elm_win_floating_mode_set()
Since (EFL) :
1.8
Since :
2.3
void elm_win_floating_mode_set ( Evas_Object obj,
Eina_Bool  floating 
)

Sets the floating mode of a window.

Parameters:
objThe window object
floatingIf true, the window is floating mode

The floating mode can be used on mobile environment. For example, if the video-player window sets the floating mode, then e (enlightenment window manager) changes its geometry and handles it like a popup. This is similar to a multi window concept in a mobile phone. The way of handling floating mode window is decided by enlightenment window manager.

See also:
elm_win_floating_mode_get()
Since (EFL) :
1.8
Since :
2.3
Eina_Bool elm_win_focus_get ( const Elm_Win *  obj)

Gets whether a window has focus.

Returns:
true if window has focus, false otherwise
Since :
2.3

Gets the animate value of the focus highlight for this window.

Get the animate value of the focus highlight for this window.

Returns:
The enabled value for the highlight animation.
Since :
3.0
void elm_win_focus_highlight_animate_set ( Elm_Win *  obj,
Eina_Bool  animate 
)

Sets the animate status for the focus highlight for this window.

Set the animate status for the focus highlight for this window.

This function will enable or disable the animation of focus highlight only for the given window, rof the global setting for it.

Parameters:
[in]animateThe enabled value for the highlight animation.
Since :
3.0

This function will enable or disable the animation of focus highlight only for the given window, regardless of the global setting for it.

Parameters:
[in]animateThe enabled value for the highlight animation.
Since :
3.0

Gets the enabled value of the focus highlight for this window.

Get the enabled value of the focus highlight for this window.

Returns:
The enabled value for the highlight.
Since :
2.3
void elm_win_focus_highlight_enabled_set ( Elm_Win *  obj,
Eina_Bool  enabled 
)

Sets the enabled status for the focus highlight in a window.

Set the enabled status for the focus highlight in a window.

This function will enable or disable the focus highlight only for the given window, regardless of the global setting for it.

Parameters:
[in]enabledThe enabled value for the highlight.
Since :
2.3
Examples:
general_funcs_example.c, panes_example.c, and win_example.c.
const char * elm_win_focus_highlight_style_get ( const Elm_Win *  obj)

Gets the style set for the focus highlight object.

Get the style set for the focus highlight object.

Returns:
The style or null if none.
Since :
2.3
Eina_Bool elm_win_focus_highlight_style_set ( Elm_Win *  obj,
const char *  style 
)

Sets the style for the focus highlight on this window.

Set the style for the focus highlight on this window.

Sets the style to use for theming the highlight of focused objects on the given window. If style is NULL, the default will be used.

Parameters:
[in]styleThe style or null if none.
Since :
2.3

Get the fullscreen state of a window.

Parameters:
[in]objThe object.
Returns:
If true, the window is fullscreen.
Since :
2.3
Examples:
win_example.c.
void elm_win_fullscreen_set ( Evas_Object obj,
Eina_Bool  fullscreen 
)

Set the fullscreen state of a window.

Parameters:
[in]objThe object.
[in]fullscreenIf true, the window is fullscreen.
Since :
2.3
Examples:
win_example.c.
const char* elm_win_icon_name_get ( const Evas_Object obj)

Gets the icon name of the window.

The returned string is an internal one and should not be freed or modified. It will also be invalid if a new icon name is set or if the window is destroyed.

Returns:
The icon name to set.
Since :
2.3
void elm_win_icon_name_set ( Evas_Object obj,
const char *  icon_name 
)

Sets the icon name of the window.

Parameters:
[in]icon_nameThe icon name to set.
Since :
2.3

Get the icon object used for the window.

The object returns is the one marked by elm_win_icon_object_set as the object to use for the window icon.

Parameters:
[in]objThe object.
Returns:
The Evas image object to use for an icon.
Since :
2.3
void elm_win_icon_object_set ( Evas_Object obj,
Evas_Object icon 
)

Set a window object's icon.

This sets an image to be used as the icon for the given window, in the window manager decoration part. The exact pixel dimensions of the object (not object size) will be used and the image pixels will be used as-is when this function is called. If the image object has been updated, then call this function again to source the image pixels and place them in the window's icon. Note that only objects of type Efl_Canvas_Image or Efl_Ui_Image are allowed.

Parameters:
[in]objThe object.
[in]iconThe image object to use for an icon.
Since :
2.3

Get the iconified state of a window.

Parameters:
[in]objThe object.
Returns:
If true, the window is iconified.
Since :
2.3
Examples:
win_example.c.
void elm_win_iconified_set ( Evas_Object obj,
Eina_Bool  iconified 
)

Set the iconified state of a window.

Parameters:
[in]objThe object.
[in]iconifiedIf true, the window is iconified.
Since :
2.3
Examples:
win_example.c.
void elm_win_illume_command_send ( Evas_Object obj,
Elm_Illume_Command  command,
void *  params 
)

Sends a command to the windowing environment.

This is intended to work in touchscreen or small screen device environments where there is a more simplistic window management policy in place. This uses the window object indicated to select which part of the environment to control (the part that this window lives in), and provides a command and an optional parameter structure (use NULL for this if not needed).

Parameters:
[in]paramsOptional parameters for the command.
Since :
2.3

Gets the indicator mode of the window.

Returns:
The mode, one of Elm_Win_Indicator_Mode.
Since :
2.3

Sets the indicator mode of the window.

Parameters:
[in]modeThe mode, one of Elm_Win_Indicator_Mode.
Since :
2.3

Gets the indicator opacity mode of the window.

Returns:
The mode, one of Elm_Win_Indicator_Opacity_Mode.
Since :
2.3

Sets the indicator opacity mode of the window.

Parameters:
[in]modeThe mode, one of Elm_Win_Indicator_Opacity_Mode.
Since :
2.3

Gets the inlined image object handle.

When you create a window with elm_win_add() of type #ELM_WIN_INLINED_IMAGE, then the window is in fact an evas image object inlined in the parent canvas. You can get this object (be careful to not manipulate it as it is under control of elementary), and use it to do things like get pixel data, save the image to a file, etc.

Returns:
The inlined image object or null if none exists.
Since :
2.3

Gets the keyboard mode of the window.

Returns:
The mode, one of Elm_Win_Keyboard_Mode.
Since :
2.3
void elm_win_keyboard_mode_set ( Elm_Win *  obj,
Elm_Win_Keyboard_Mode  mode 
)

Sets the keyboard mode of the window.

Parameters:
[in]modeThe mode, one of Elm_Win_Keyboard_Mode.
Since :
2.3

Gets whether the window is a keyboard.

Returns:
The mode, If true, the window is a virtual keyboard..
Since :
2.3
void elm_win_keyboard_win_set ( Evas_Object obj,
Eina_Bool  is_keyboard 
)

Sets whether the window is a keyboard.

Parameters:
[in]modeIf true, the window is a virtual keyboard..
Since :
2.3
int elm_win_layer_get ( const Evas_Object obj)

Gets the layer of the window.

Returns:
The layer of the window.
Since :
2.3
void elm_win_layer_set ( Evas_Object obj,
int  layer 
)

Sets the layer of the window.

What this means exactly will depend on the underlying engine used.

In the case of X11 backed engines, the value in layer has the following meanings - less than 3 means that the window will be placed below all others, more than 5 means that the window will be placed above all others, and anything else means that the window will be placed in the default layer.

Parameters:
[in]layerThe layer of the window.
Since :
2.3
void elm_win_lower ( Evas_Object obj)

Lowers a window object.

Places the window pointed by obj at the bottom of the stack, so that no other window is covered by it.

If elm_win_override_set is not set, the Window Manager may ignore this request.

Since :
2.3
Examples:
win_example.c.

Get the maximized state of a window.

Parameters:
[in]objThe object.
Returns:
If true, the window is maximized.
Since :
2.3
Examples:
win_example.c.
void elm_win_maximized_set ( Evas_Object obj,
Eina_Bool  maximized 
)

Set the maximized state of a window.

Parameters:
[in]objThe object.
[in]maximizedIf true, the window is maximized.
Since :
2.3
Examples:
win_example.c.

Gets the modal state of a window.

Returns:
If true, the window is modal.
Since :
2.3
void elm_win_modal_set ( Evas_Object obj,
Eina_Bool  modal 
)

Sets the modal state of a window.

Parameters:
[in]modalIf true, the window is modal.
Since :
2.3

Get the noblank property of a window.

Parameters:
[in]objThe object.
Returns:
If true, the window is set to noblank.
Since (EFL) :
1.11
Since :
3.0
void elm_win_noblank_set ( Evas_Object obj,
Eina_Bool  noblank 
)

Set the noblank property of a window.

The "noblank" property is a way to request the display on which the window is shown does not blank, go to screensaver or otherwise hide or obscure the window. It is intended for uses such as media playback on a television where a user may not want to be interrupted by an idle screen. The noblank property may have no effect if the window is iconified/minimized or hidden.

Parameters:
[in]objThe object.
[in]noblankIf true, the window is set to noblank.
Since (EFL) :
1.11
Since :
3.0
int elm_win_norender_get ( const Evas_Object obj)

The returns how many times norender has been pushed on the window

Parameters:
objThe window object
Returns:
The number of times norender has been pushed
See also:
elm_win_norender_push()
elm_win_norender_pop()
elm_win_render()
Since (EFL) :
1.7
Since :
2.3

This pops (decrements) the norender counter on the window

Parameters:
objThe window object

Once norender has gone back to 0, then automatic rendering will continue in the given window. If it is already at 0, this will have no effect.

See also:
elm_win_norender_push()
elm_win_norender_get()
elm_win_render()
Since (EFL) :
1.7
Since :
2.3

This pushes (increments) the norender counter on the window

Parameters:
objThe window object

There are some occasions where you wish to suspend rendering on a window. You may be "sleeping" and have nothing to update and do not want animations or other theme side-effects causing rendering to the window while "asleep". You can push (and pop) the norender mode to have this work.

If combined with evas_render_dump(), evas_image_cache_flush() and evas_font_cache_flush() (and maybe edje_file_cache_flush() and edje_collection_cache_flush()), you can minimize memory footprint significantly while "asleep", and the pausing of rendering ensures evas does not re-load data into memory until needed. When rendering is resumed, data will be re-loaded as needed, which may result in some lag, but does save memory.

See also:
elm_win_norender_pop()
elm_win_norender_get()
elm_win_render()
Since (EFL) :
1.7
Since :
2.3

Gets the override state of a window.

Returns:
If true, the window is overridden.
Since :
2.3
void elm_win_override_set ( Evas_Object obj,
Eina_Bool  override 
)

Sets the override state of a window.

A window with override set to true will not be managed by the Window Manager. This means that no decorations of any kind will be shown for it, moving and resizing must be handled by the application, as well as the window visibility.

This should not be used for normal windows, and even for not so normal ones, it should only be used when there's a good reason and with a lot of care. Mishandling override windows may result situations that disrupt the normal workflow of the end user.

Parameters:
[in]overrideIf true, the window is overridden.
Since :
2.3
Examples:
win_example.c.
const char* elm_win_profile_get ( const Evas_Object obj)

Gets the profile of a window.

Returns:
The string value of a window profile.
Since (EFL) :
1.8
Since :
2.3
void elm_win_profile_set ( Evas_Object obj,
const char *  profile 
)

Sets the profile of a window.

Parameters:
[in]profileThe string value of a window profile.
Since (EFL) :
1.8
Since :
2.4

Set the window to be skipped by keyboard focus.

This sets the window to be skipped by normal keyboard input. This means a window manager will be asked not to focus this window as well as omit it from things like the taskbar, pager, "alt-tab" list etc. etc.

Call this and enable it on a window BEFORE you show it for the first time, otherwise it may have no effect.

Use this for windows that have only output information or might only be interacted with by the mouse or touchscreen, never for typing. This may have side-effects like making the window non-accessible in some cases unless the window is specially handled. Use this with care.

Parameters:
[in]objThe object.
[in]skipThe skip flag state ($true if it is to be skipped).
Since :
2.3

Gets if this window is a quickpanel or not.

Returns:
The quickpanel flag.
Since :
2.3

Gets the major priority of a quickpanel window.

Returns:
The major priority for this quickpanel or -1.
Since :
2.3
void elm_win_quickpanel_priority_major_set ( Evas_Object obj,
int  priority 
)

Sets the major priority of a quickpanel window.

Parameters:
[in]priorityThe major priority for this quickpanel or -1.
Since :
2.3

Gets the minor priority of a quickpanel window.

Returns:
The minor priority for this quickpanel.
Since :
2.3
void elm_win_quickpanel_priority_minor_set ( Evas_Object obj,
int  priority 
)

Sets the minor priority of a quickpanel window.

Parameters:
[in]priorityThe minor priority for this quickpanel.
Since :
2.3
void elm_win_quickpanel_set ( Evas_Object obj,
Eina_Bool  quickpanel 
)

Sets a window to be an illume quickpanel window.

By default window objects are not quickpanel windows.

Parameters:
[in]quickpanelThe quickpanel flag.
Since :
2.3

Gets which zone this quickpanel should appear in.

Returns:
The requested zone for this quickpanel.
Since :
2.3
void elm_win_quickpanel_zone_set ( Evas_Object obj,
int  zone 
)

Sets which zone this quickpanel should appear in.

Parameters:
[in]zoneThe requested zone for this quickpanel.
Since :
2.3
void elm_win_raise ( Elm_Win *  obj)

Raise a window object.

Places the window pointed by obj at the top of the stack, so that it's not covered by any other window.

Since :
2.3
Examples:
win_example.c.
void elm_win_render ( Evas_Object obj)

This manually asks evas to render the window now

Parameters:
objThe window object

You should NEVER call this unless you really know what you are doing and why. Never call this unless you are asking for performance degradation and possibly weird behavior. Windows get automatically rendered when the application goes into the idle enter state so there is never a need to call this UNLESS you have enabled "norender" mode.

See also:
elm_win_norender_push()
elm_win_norender_pop()
elm_win_norender_get()
Since (EFL) :
1.7
Since :
2.3
void elm_win_resize_object_add ( Evas_Object obj,
Evas_Object subobj 
)

Adds subobj as a resize object of window obj.

Setting an object as a resize object of the window means that the subobj child's size and position will be controlled by the window directly. That is, the object will be resized to match the window size and should never be moved or resized manually by the developer.

In addition, resize objects of the window control what the minimum size of it will be, as well as whether it can or not be resized by the user.

For the end user to be able to resize a window by dragging the handles or borders provided by the Window Manager, or using any other similar mechanism, all of the resize objects in the window should have their evas_object_size_hint_weight_set set to EVAS_HINT_EXPAND.

Also notice that the window can get resized to the current size of the object if the EVAS_HINT_EXPAND is set after the call to this. So if the object should get resized to the size of the window, set this hint before adding it as a resize object (this happens because the size of the window and the object are evaluated as soon as the object is added to the window).

Parameters:
[in]subobjThe resize object to add.
Since :
2.3
Examples:
actionslider_example_01.c, bg_example_02.c, bg_example_03.c, box_example_02.c, button_example_01.c, calendar_example_01.c, calendar_example_02.c, calendar_example_03.c, calendar_example_04.c, calendar_example_05.c, calendar_example_06.c, clock_example.c, codegen_example.c, colorselector_example_01.c, combobox_example_01.c, conformant_example_01.c, conformant_example_02.c, ctxpopup_example_01.c, datetime_example.c, dayselector_example.c, diskselector_example_01.c, diskselector_example_02.c, entry_example.c, fileselector_button_example.c, fileselector_entry_example.c, fileselector_example.c, flipselector_example.c, general_funcs_example.c, gengrid_example.c, genlist_example_01.c, genlist_example_02.c, genlist_example_03.c, genlist_example_04.c, genlist_example_05.c, glview_example_01.c, icon_example_01.c, image_example_01.c, index_example_01.c, index_example_02.c, inwin_example.c, layout_example_01.c, layout_example_02.c, layout_example_03.c, list_example_01.c, list_example_02.c, list_example_03.c, map_example_01.c, map_example_02.c, map_example_03.c, mapbuf_example.c, menu_example_01.c, naviframe_example.c, notify_example_01.c, panel_example_01.c, panes_example.c, prefs_example_01.c, prefs_example_02.c, progressbar_example.c, radio_example_01.c, scroller_example_01.c, segment_control_example.c, separator_example_01.c, slider_example.c, slideshow_example.c, spinner_example.c, table_example_01.c, table_example_02.c, theme_example_01.c, theme_example_02.c, thumb_example_01.c, toolbar_example_01.c, toolbar_example_02.c, toolbar_example_03.c, track_example_01.c, transit_example_03.c, transit_example_04.c, web_example_02.c, and win_example.c.
void elm_win_resize_object_del ( Evas_Object obj,
Evas_Object subobj 
)

Deletes subobj as a resize object of window obj.

This function removes the object subobj from the resize objects of the window obj. It will not delete the object itself, which will be left unmanaged and should be deleted by the developer, manually handled or set as child of some other container.

Parameters:
[in]subobjThe resize object to add.
Since :
2.3
const char* elm_win_role_get ( const Evas_Object obj)

The role of the window.

It is a hint of how the Window Manager should handle it. Unlike elm_win_type_get and elm_win_name_get this can be changed at runtime.

Get the role of the window.

The returned string is an internal one and should not be freed or modified. It will also be invalid if a new role is set or if the window is destroyed.

Parameters:
[in]objThe object.
Returns:
The role to set.
Since :
2.3
void elm_win_role_set ( Evas_Object obj,
const char *  role 
)

The role of the window.

It is a hint of how the Window Manager should handle it. Unlike elm_win_type_get and elm_win_name_get this can be changed at runtime.

Set the role of the window.

Parameters:
[in]objThe object.
[in]roleThe role to set.
Since :
2.3
int elm_win_rotation_get ( const Evas_Object obj)

Gets the rotation of the window.

Returns:
The rotation of the window, in degrees (0-360), counter-clockwise.
Since :
2.3
Examples:
win_example.c.
void elm_win_rotation_set ( Evas_Object obj,
int  rotation 
)

Sets the rotation of the window.

Most engines only work with multiples of 90.

This function is used to set the orientation of the window obj to match that of the screen. The window itself will be resized to adjust to the new geometry of its contents. If you want to keep the window size, see elm_win_rotation_with_resize_set.

Parameters:
[in]rotationThe rotation of the window, in degrees (0-360), counter-clockwise.
Since :
2.3
Examples:
win_example.c.
void elm_win_rotation_with_resize_set ( Evas_Object obj,
int  rotation 
)

Rotates the window and resizes it.

Like elm_win_rotation_set, but it also resizes the window's contents so that they fit inside the current window geometry.

Parameters:
[in]rotationThe rotation of the window in degrees (0-360), counter-clockwise.
Since :
2.3
Examples:
win_example.c.

Get the constraints on the maximum width and height of a window relative to the width and height of the screen.

When this function returns true, obj will never resize larger than the screen.

Parameters:
[in]objThe object.
Returns:
true to restrict the window's maximum size.
Since :
2.3
void elm_win_screen_constrain_set ( Evas_Object obj,
Eina_Bool  constrain 
)

Constrain the maximum width and height of a window to the width and height of the screen.

When constrain is true, obj will never resize larger than the screen.

Parameters:
[in]objThe object.
[in]constraintrue to restrict the window's maximum size.
Since :
2.3
void elm_win_screen_dpi_get ( const Evas_Object obj,
int *  xdpi,
int *  ydpi 
)

Gets screen dpi for the screen that a window is on.

Parameters:
[out]xdpiPointer to value to store return horizontal dpi. May be null.
[out]ydpiPointer to value to store return vertical dpi. May be null.
Since (EFL) :
1.7
Since :
2.3
void elm_win_screen_position_get ( const Evas_Object obj,
int *  x,
int *  y 
)

Gets the screen position of a window.

Parameters:
[out]xThe int to store the x coordinate to.
[out]yThe int to store the y coordinate to.
Since :
2.3
void elm_win_screen_size_get ( const Evas_Object obj,
int *  x,
int *  y,
int *  w,
int *  h 
)

Gets screen geometry details for the screen that a window is on.

Parameters:
[out]xWhere to return the horizontal offset value. May be null.
[out]yWhere to return the vertical offset value. May be null.
[out]wWhere to return the width value. May be null.
[out]hWhere to return the height value. May be null.
Since :
2.3

Gets the shaped state of a window.

Returns:
If true, the window is shaped.
Since :
2.3
Examples:
win_example.c.
void elm_win_shaped_set ( Evas_Object obj,
Eina_Bool  shaped 
)

Sets the shaped state of a window.

Shaped windows, when supported, will render the parts of the window that has no content, transparent.

If shaped is false, then it is strongly advised to have some background object or cover the entire window in any other way, or the parts of the canvas that have no data will show framebuffer artifacts.

Parameters:
[in]shapedIf true, the window is shaped.
Since :
2.3
Examples:
win_example.c.
void elm_win_size_base_get ( const Evas_Object obj,
int *  w,
int *  h 
)

Gets the base size of a window.

Parameters:
[out]wThe base width.
[out]hThe base height.
Since (EFL) :
1.7
Since :
2.3
void elm_win_size_base_set ( Evas_Object obj,
int  w,
int  h 
)

Sets the base window size used with stepping calculation.

Base size + stepping is what is calculated for window sizing restrictions.

Parameters:
[in]wThe base width.
[in]hThe base height.
Since (EFL) :
1.7
Since :
2.3
void elm_win_size_step_get ( const Evas_Object obj,
int *  w,
int *  h 
)

Gets the stepping of a window.

Parameters:
[out]wThe stepping width (0 disables).
[out]hThe stepping height (0 disables).
Since (EFL) :
1.7
Since :
2.3
void elm_win_size_step_set ( Evas_Object obj,
int  w,
int  h 
)

Sets the window stepping used with sizing calculation.

Base size + stepping is what is calculated for window sizing restrictions.

Parameters:
[in]wThe stepping width (0 disables).
[in]hThe stepping height (0 disables).
Since (EFL) :
1.7
Since :
2.3
Eina_Bool elm_win_socket_listen ( Elm_Win *  obj,
const char *  svcname,
int  svcnum,
Eina_Bool  svcsys 
)

Creates a socket to provide the service for Plug widget.

Parameters:
[in]svcnameThe name of the service to be advertised. Eensure that it is unique (when combined with svcnum) otherwise creation may fail.
[in]svcnumA number (any value, 0 being the common default) to differentiate multiple instances of services with the same name.
[in]svcsysA boolean that if true, specifies to create a system-wide service all users can connect to, otherwise the service is private to the user id that created the service.
Returns:
true on success, false otherwise
Since :
2.3

Get the sticky state of the window.

Parameters:
[in]objThe object.
Returns:
If true, the window's sticky state is enabled.
Since :
2.3
Examples:
win_example.c.
void elm_win_sticky_set ( Evas_Object obj,
Eina_Bool  sticky 
)

Set the sticky state of the window.

Hints the Window Manager that the window in obj should be left fixed at its position even when the virtual desktop it's on moves or changes.

Parameters:
[in]objThe object.
[in]stickyIf true, the window's sticky state is enabled.
Since :
2.3
Examples:
win_example.c.
const char* elm_win_title_get ( const Evas_Object obj)

Gets the title of the window.

The returned string is an internal one and should not be freed or modified. It will also be invalid if a new title is set or if the window is destroyed.

Returns:
The title.
Since :
2.3
void elm_win_title_set ( Evas_Object obj,
const char *  title 
)

Sets the title of the window.

Parameters:
[in]titleThe title.
Since :
2.3
Examples:
bg_example_02.c, codegen_example.c, layout_example_01.c, layout_example_03.c, and win_example.c.
void* elm_win_trap_data_get ( const Evas_Object obj)

Gets the trap data associated with a window.

Returns:
The trap data of the window.
Since (EFL) :
1.12
Since :
3.0

Sets the trap to be used for internal Ecore_Evas management.

Parameters:
trapthe trap to be used or NULL to remove traps. Pointer is not modified or copied, keep it alive.
Returns:
EINA_TRUE on success, EINA_FALSE if there was a problem, such as invalid version number.
Warning:
this is an advanced feature that you should avoid using.
Since (EFL) :
1.7
Since :
2.3

The type of the window.

It is a hint of how the Window Manager should handle it.

The window type is a construction property that can only be set at creation time, before finalize. In C this means inside efl_add().

Note:
Once set, it cannot be modified afterward.

If the object is not window object, returns unknown.

Parameters:
[in]objThe object.
Returns:
Window type
Since :
2.3
void elm_win_type_set ( Evas_Object obj,
Elm_Win_Type  type 
)

The type of the window.

It is a hint of how the Window Manager should handle it.

The window type is a constructing property that need to be set at creation within eo_add.

Note:
Once set, it can NOT be modified afterward.

Can only be used at creation time, within eo_add.

Since :
3.0
Parameters:
[in]objThe object.
[in]typeWindow type

Gets the urgent state of a window.

Returns:
If true, the window is urgent.
Since :
2.3
void elm_win_urgent_set ( Evas_Object obj,
Eina_Bool  urgent 
)

Sets the urgent state of a window.

Parameters:
[in]urgentIf true, the window is urgent.
Since :
2.3
Evas_Object* elm_win_util_dialog_add ( Evas_Object parent,
const char *  name,
const char *  title 
)

Adds a window object with dialog setup

Parameters:
parentThe parent window
nameThe name of the window
titleThe title for the window

This creates a window like elm_win_add() but also puts in a standard background with elm_bg_add(), as well as setting the window title to title. The window type created is of type ELM_WIN_DIALOG_BASIC. This type of window will be handled in special mode by window managers with regards of it's parent window.

Returns:
The created object, or NULL on failure
See also:
elm_win_add()
Since (EFL) :
1.13
Since :
3.0
Evas_Object* elm_win_util_standard_add ( const char *  name,
const char *  title 
)

Adds a window object with standard setup

Parameters:
nameThe name of the window
titleThe title for the window

This creates a window like elm_win_add() but also puts in a standard background with elm_bg_add(), as well as setting the window title to title. The window type created is of type ELM_WIN_BASIC, with NULL as the parent widget.

Returns:
The created object, or NULL on failure
See also:
elm_win_add()
Since :
2.3
Examples:
actionslider_example_01.c, bg_example_01.c, bg_example_03.c, box_example_02.c, bubble_example_01.c, button_example_00.c, button_example_01.c, calendar_example_01.c, calendar_example_02.c, calendar_example_03.c, calendar_example_04.c, calendar_example_05.c, calendar_example_06.c, check_example_01.c, clock_example.c, codegen_example.c, colorselector_example_01.c, combobox_example_01.c, conformant_example_01.c, conformant_example_02.c, ctxpopup_example_01.c, datetime_example.c, dayselector_example.c, diskselector_example_01.c, diskselector_example_02.c, efl_thread_1.c, efl_thread_2.c, efl_thread_3.c, efl_thread_4.c, efl_thread_5.c, efl_thread_6.c, entry_example.c, fileselector_button_example.c, fileselector_entry_example.c, fileselector_example.c, flip_example_01.c, flipselector_example.c, frame_example_01.c, general_funcs_example.c, gengrid_example.c, genlist_example_01.c, genlist_example_02.c, genlist_example_03.c, genlist_example_04.c, genlist_example_05.c, glview_example_01.c, hover_example_01.c, hoversel_example_01.c, icon_example_01.c, image_example_01.c, index_example_01.c, index_example_02.c, inwin_example.c, label_example_01.c, layout_example_01.c, layout_example_02.c, layout_example_03.c, list_example_01.c, list_example_02.c, list_example_03.c, map_example_01.c, map_example_02.c, map_example_03.c, mapbuf_example.c, menu_example_01.c, naviframe_example.c, notify_example_01.c, panel_example_01.c, panes_example.c, photocam_example_01.c, popup_example_01.c, popup_example_02.c, popup_example_03.c, prefs_example_01.c, prefs_example_02.c, prefs_example_03.c, progressbar_example.c, radio_example_01.c, scroller_example_01.c, segment_control_example.c, separator_example_01.c, slider_example.c, slideshow_example.c, spinner_example.c, table_example_01.c, table_example_02.c, theme_example_01.c, theme_example_02.c, thumb_example_01.c, toolbar_example_01.c, toolbar_example_02.c, toolbar_example_03.c, track_example_01.c, transit_example_01.c, transit_example_02.c, transit_example_03.c, transit_example_04.c, web_example_02.c, and win_example.c.
Ecore_Window elm_win_window_id_get ( const Evas_Object obj)

Gets the Ecore_Window of an Evas_Object.

When Elementary is using a Wayland engine, this function will return the surface id of the elm window's surface.

Parameters:
objThe window object
Returns:
The Ecore_Window of an Evas_Object
Since (EFL) :
1.8
Note:
Unless you are getting the window id for the purpose of communicating between client<->compositor over dbus, this is definitely not the function you are looking for.
Since :
4.0

Gets the withdrawn state of a window.

Returns:
If true, the window is withdrawn.
Since :
2.3
void elm_win_withdrawn_set ( Evas_Object obj,
Eina_Bool  withdrawn 
)

Sets the withdrawn state of a window.

Parameters:
[in]withdrawnIf true, the window is withdrawn.
Since :
2.3
Eina_Bool elm_win_wm_rotation_available_rotations_get ( const Elm_Win *  obj,
int **  rotations,
unsigned int *  count 
)

Gets the array of available window rotations.

This function is used to get the available rotations.

Parameters:
[in]objThe object.
[out]rotationsThe array of rotation value.
[out]countThe size of the rotations array.
Returns:
true on success, false otherwise
Since (EFL) :
1.9
Since :
2.3
void elm_win_wm_rotation_available_rotations_set ( Elm_Win *  obj,
const int *  rotations,
unsigned int  count 
)

Sets the array of available window rotations.

This function is used to set the available rotations to give the hints to WM. WM will refer this hints and set the orientation window properly.

Parameters:
[in]objThe object.
[in]rotationsThe array of rotation value.
[in]countThe size of the rotations array.
Since (EFL) :
1.9
Since :
2.3

To notify the rotation done to WM manually.

This function is used to notify the rotation done to WM manually.

Since (EFL) :
1.9
Since :
2.3

Gets the state of manual rotation done mode.

This function is used to get the state of manual rotation done mode.

Returns:
true to set manual rotation done mode, false otherwise.
Since (EFL) :
1.9
Since :
2.3

Sets the manual rotation done mode.

This function is used to set or reset the manual rotation done mode. the message of rotation done is sent to WM after rendering its canvas in Ecore_Evas. but if set the manual rotation done mode, it's disabled and user should call this explicitly to sends the message.

Parameters:
[in]settrue to set manual rotation done mode, false otherwise.
Since (EFL) :
1.9
Since :
2.3

Gets the preferred rotation value.

This function is used to get the preferred rotation value.

Returns:
The preferred rotation of the window in degrees (0-360), counter-clockwise.
Since (EFL) :
1.9
Since :
2.3

Queries whether window manager supports window rotation or not.

The window manager rotation allows the WM to controls the rotation of application windows. It is designed to support synchronized rotation for the multiple application windows at same time.

See also elm_win_wm_rotation_preferred_rotation_get, elm_win_wm_rotation_available_rotations_get.

Since (EFL) :
1.9
Since :
2.3